aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-02-18 13:03:08 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-02-18 13:03:08 -0800
commit85eeccf5f9a389b6852c0a8e90675905c2749788 (patch)
tree9a857e306bd1f2e0f0086d3b6713a42bef09159c
parent68054859f00431a38a9b058f7bb743425d050046 (diff)
downloadltsi-kernel-85eeccf5f9a389b6852c0a8e90675905c2749788.tar.gz
Update to 3.10.30
-rw-r--r--KERNEL_VERSION2
-rw-r--r--patches.baytrail/0003-usb-xhci-check-usb2-port-capabilities-before-adding-.patch25
-rw-r--r--patches.baytrail/0004-usb-xhci-define-port-register-names-and-use-them-ins.patch23
-rw-r--r--patches.baytrail/0005-usb-xhci-add-USB2-Link-power-management-BESL-support.patch31
-rw-r--r--patches.baytrail/0006-usb-add-usb2-Link-PM-variables-to-sysfs-and-usb_devi.patch27
-rw-r--r--patches.baytrail/0008-usb-Don-t-enable-USB-2.0-Link-PM-by-default.patch6
-rw-r--r--patches.baytrail/0021-drm-i915-turbo-RC6-support-for-VLV-v7.patch75
-rw-r--r--patches.baytrail/0026-drm-i915-update-VLV-PLL-and-DPIO-code-v11.patch82
-rw-r--r--patches.baytrail/0027-drm-i915-report-Gen5-CPU-and-PCH-FIFO-underruns.patch67
-rw-r--r--patches.baytrail/0028-drm-i915-print-Gen5-CPU-PCH-poison-interrupts.patch23
-rw-r--r--patches.baytrail/0031-drm-i915-Move-the-CSC_MODE-bits-next-to-the-register.patch11
-rw-r--r--patches.baytrail/0058-drm-i915-hsw-backlight-registers-need-transcoder-ins.patch17
-rw-r--r--patches.baytrail/0078-drm-i915-hw-state-readout-support-for-pipe_config-fd.patch37
-rw-r--r--patches.baytrail/0088-drm-i915-hw-state-readout-support-for-fdi-m-n.patch21
-rw-r--r--patches.baytrail/0089-drm-i915-hw-state-readout-support-for-pipe-timings.patch25
-rw-r--r--patches.baytrail/0105-drm-i915-simplify-DP-DDI-port-width-macros.patch27
-rw-r--r--patches.baytrail/0112-drm-i915-s-TRANSCONF-PCH_TRANSCONF.patch45
-rw-r--r--patches.baytrail/0113-drm-i915-PCH_-prefix-for-transcoder-timings.patch33
-rw-r--r--patches.baytrail/0115-drm-i915-Apply-OCD-to-data-link-m-n-register-defines.patch53
-rw-r--r--patches.baytrail/0141-drm-i915-stop-using-is_pch_edp-in-intel_dp_init_conn.patch15
-rw-r--r--patches.baytrail/0143-drm-i915-remove-is_pch_edp-helpers-and-state-variabl.patch19
-rw-r--r--patches.baytrail/0144-drm-i915-print-DP-init-debug-messages-from-a-single-.patch17
-rw-r--r--patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch8
-rw-r--r--patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch6
-rw-r--r--patches.baytrail/0169-drm-i915-add-encoder-get_config-function-v5.patch2
-rw-r--r--patches.baytrail/0177-drm-i915-set-FORCE_ARB_IDLE_PLANES-workaround.patch15
-rw-r--r--patches.baytrail/0181-drm-i915-Cocci-spatch-memdup.spatch.patch9
-rw-r--r--patches.baytrail/0184-drm-i915-refactor-VLV-IOSF-sideband-accessors-to-use.patch15
-rw-r--r--patches.baytrail/0191-drm-i915-track-ring-progression-using-seqnos.patch25
-rw-r--r--patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch2
-rw-r--r--patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch2
-rw-r--r--patches.baytrail/0202-drm-i915-replace-is_cpu_edp-with-a-check-for-port-A.patch39
-rw-r--r--patches.baytrail/0212-drm-i915-Comments-for-semaphore-clarification.patch21
-rw-r--r--patches.baytrail/0213-drm-i915-Semaphore-MBOX-update-generalization.patch23
-rw-r--r--patches.baytrail/0215-drm-i915-Add-VECS-semaphore-bits.patch17
-rw-r--r--patches.baytrail/0216-drm-i915-Rename-ring-flush-functions.patch15
-rw-r--r--patches.baytrail/0218-drm-i915-Vebox-ringbuffer-init.patch39
-rw-r--r--patches.baytrail/0220-drm-i915-properly-set-HSW-WM_PIPE-registers.patch57
-rw-r--r--patches.baytrail/0221-drm-i915-properly-set-HSW-WM_LP-watermarks.patch45
-rw-r--r--patches.baytrail/0226-drm-i915-make-PM-interrupt-writes-non-destructive.patch37
-rw-r--r--patches.baytrail/0228-drm-i915-consolidate-interrupt-naming-scheme.patch53
-rw-r--r--patches.baytrail/0229-drm-i915-vebox-interrupt-get-put.patch15
-rw-r--r--patches.baytrail/0230-drm-i915-Enable-vebox-interrupts.patch23
-rw-r--r--patches.baytrail/0235-drm-i915-implement-IPS-feature.patch37
-rw-r--r--patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch2
-rw-r--r--patches.baytrail/0286-drm-i915-WA-FBC-Render-Nuke.patch25
-rw-r--r--patches.baytrail/0296-drm-i915-refactor-PCH_DPLL_SEL-defines.patch17
-rw-r--r--patches.baytrail/0300-drm-i915-scrap-register-address-storage.patch39
-rw-r--r--patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch2
-rw-r--r--patches.baytrail/0327-drm-i915-explicitly-set-up-PIPECONF-and-gamma-table-.patch17
-rw-r--r--patches.baytrail/0334-drm-i915-don-t-check-encoder-at-DP-connector-destroy.patch9
-rw-r--r--patches.baytrail/0335-drm-i915-extract-intel_edp_init_connector.patch13
-rw-r--r--patches.baytrail/0336-drm-i915-propagate-errors-from-intel_dp_init_connect.patch6
-rw-r--r--patches.baytrail/0337-drm-i915-fix-the-ghost-eDP-connector-unwind-path.patch6
-rw-r--r--patches.baytrail/0338-drm-i915-fix-the-ghost-eDP-encoder-unwind-path.patch6
-rw-r--r--patches.baytrail/0339-drm-i915-check-the-return-value-of-intel_dp_i2c_init.patch11
-rw-r--r--patches.baytrail/0340-drm-i915-rename-intel_dp_destroy-to-intel_dp_connect.patch11
-rw-r--r--patches.baytrail/0357-drm-i915-Fix-VLV-sprite-register-offsets.patch38
-rw-r--r--patches.baytrail/0369-drm-i915-reinit-status-page-registers-after-gpu-rese.patch19
-rw-r--r--patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch6
-rw-r--r--patches.baytrail/0444-drm-i915-improve-SERR_INT-clearing-for-fifo-underrun.patch15
-rw-r--r--patches.baytrail/0452-drm-i915-don-t-enable-PM_VEBOX_CS_ERROR_INTERRUPT.patch15
-rw-r--r--patches.baytrail/0460-drm-i915-Define-some-of-the-eLLC-magic.patch13
-rw-r--r--patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch4
-rw-r--r--patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch2
-rw-r--r--patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch2
-rw-r--r--patches.baytrail/0485-drm-i915-Enable-Disable-PSR.patch23
-rw-r--r--patches.baytrail/0487-drm-i915-Match-all-PSR-mode-entry-conditions-before-.patch25
-rw-r--r--patches.baytrail/0505-drm-i915-kill-Ivybridge-vblank-irq-vfuncs.patch19
-rw-r--r--patches.baytrail/0510-drm-i915-Add-some-debug-breadcrumbs-to-connector-det.patch43
-rw-r--r--patches.baytrail/0512-drm-i915-extend-lpt_enable_clkout_dp.patch28
-rw-r--r--patches.baytrail/0514-drm-i915-add-functions-to-disable-and-restore-LCPLL.patch25
-rw-r--r--patches.baytrail/0545-drm-i915-dp-use-native-encoder-mode_set-callback.patch15
-rw-r--r--patches.baytrail/0566-drm-i915-rearrange-vlv-dp-enable-and-pre_enable-call.patch28
-rw-r--r--patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch2
-rw-r--r--patches.baytrail/0588-drm-i915-Use-the-watermark-latency-values-from-dev_p.patch55
-rw-r--r--patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch2
-rw-r--r--patches.baytrail/0684-drm-i915-Initialize-seqno-for-VECS-too.patch9
-rw-r--r--patches.baytrail/0692-drm-i915-clarify-Haswell-power-well-bit-names.patch25
-rw-r--r--patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch2
-rw-r--r--patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch2
-rw-r--r--patches.baytrail/0737-drm-i915-hdmi-Write-HDMI-vendor-specific-infoframes.patch33
-rw-r--r--patches.baytrail/0740-drm-i915-Support-render-nodes.patch4
-rw-r--r--patches.baytrail/0748-drm-i915-Embed-the-ring-private-within-the-struct-in.patch35
-rw-r--r--patches.baytrail/0753-drm-i915-enable-trickle-feed-on-Haswell.patch29
-rw-r--r--patches.baytrail/0768-drm-i915-add-VLV-pipeconf-bit-definition-for-DSI-PLL.patch9
-rw-r--r--patches.baytrail/0772-drm-i915-add-MIPI-DSI-register-definitions.patch9
-rw-r--r--patches.baytrail/0798-drm-i915-Rename-ring-outstanding_lazy_request.patch39
-rw-r--r--patches.baytrail/0806-drm-i915-name-intel-dp-hooks-per-platform.patch15
-rw-r--r--patches.baytrail/0808-drm-i915-clean-up-power-sequencing-register-port-sel.patch19
-rw-r--r--patches.baytrail/0809-drm-i915-add-support-for-per-pipe-power-sequencing-o.patch37
-rw-r--r--patches.baytrail/0821-drm-i915-Write-RING_TAIL-once-per-request.patch43
-rw-r--r--patches.baytrail/0846-drm-i915-Fix-port_clock-and-adjusted_mode.clock-read.patch112
-rw-r--r--patches.baytrail/0876-drm-i915-write-D_COMP-using-the-mailbox.patch17
-rw-r--r--patches.baytrail/0880-drm-i915-Add-second-slice-l3-remapping.patch118
-rw-r--r--patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch2
-rw-r--r--patches.baytrail/0905-drm-i915-VBT-s-child_device_config-changes-over-time.patch49
-rw-r--r--patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch4
-rw-r--r--patches.baytrail/0955-drm-i915-vlv-use-lower-precision-RC6-counter.patch15
-rw-r--r--patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch2
-rw-r--r--patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch4
-rw-r--r--patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch2
-rw-r--r--patches.baytrail/0971-drm-i915-Tweak-RPS-thresholds-to-more-aggressively-d.patch39
-rw-r--r--patches.baytrail/0993-drm-i915-dp-use-drm_edid_duplicate.patch9
-rw-r--r--patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch2
-rw-r--r--patches.baytrail/1068-drm-i915-Fix-VLV-frame-counter-registers.patch11
-rw-r--r--patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch2
-rw-r--r--patches.baytrail/1096-drm-i915-Adjust-watermark-register-masks.patch11
-rw-r--r--patches.baytrail/1125-i2c-vt8500-Add-support-for-I2C-bus-on-Wondermedia-So.patch27
-rw-r--r--patches.baytrail/1128-i2c-mv64xxx-Add-Allwinner-sun4i-compatible.patch17
-rw-r--r--patches.baytrail/1173-i2c-move-OF-helpers-into-the-core.patch261
-rw-r--r--patches.ltsi/ltsi-makefile-addition.patch2
-rw-r--r--patches.renesas/0581-mmc-remove-unnecessary-platform_set_drvdata.patch2
-rw-r--r--patches.zynq/0001-i2c-xilinx-merge-i2c-driver-from-Xilinx-repository-i.patch2
-rw-r--r--patches.zynq/0009-usb-zynq-merge-usb-support-for-xilinx-zynq-soc.patch2
115 files changed, 992 insertions, 1759 deletions
diff --git a/KERNEL_VERSION b/KERNEL_VERSION
index 31358ba7b58f1..6b266693cd8db 100644
--- a/KERNEL_VERSION
+++ b/KERNEL_VERSION
@@ -1 +1 @@
-3.10.28
+3.10.30
diff --git a/patches.baytrail/0003-usb-xhci-check-usb2-port-capabilities-before-adding-.patch b/patches.baytrail/0003-usb-xhci-check-usb2-port-capabilities-before-adding-.patch
index a7fa62d4a2c2e..5a172886a4bfc 100644
--- a/patches.baytrail/0003-usb-xhci-check-usb2-port-capabilities-before-adding-.patch
+++ b/patches.baytrail/0003-usb-xhci-check-usb2-port-capabilities-before-adding-.patch
@@ -21,13 +21,11 @@ Commit-Queue: Benson Leung <bleung@chromium.org>
Tested-by: Benson Leung <bleung@chromium.org>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/usb/host/xhci-mem.c | 33 +++++++++++++++++++++++++++++----
- drivers/usb/host/xhci.c | 27 ++++++++++++++++++++++++++-
- drivers/usb/host/xhci.h | 3 +++
+ drivers/usb/host/xhci-mem.c | 33 +++++++++++++++++++++++++++++----
+ drivers/usb/host/xhci.c | 27 ++++++++++++++++++++++++++-
+ drivers/usb/host/xhci.h | 3 +++
3 files changed, 58 insertions(+), 5 deletions(-)
-diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c
-index 19a0cc38b6d9..0fc539dc1cb8 100644
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
@@ -1860,6 +1860,7 @@ no_bw:
@@ -38,7 +36,7 @@ index 19a0cc38b6d9..0fc539dc1cb8 100644
xhci->page_size = 0;
xhci->page_shift = 0;
-@@ -2047,7 +2048,7 @@ static void xhci_set_hc_event_deq(struct xhci_hcd *xhci)
+@@ -2047,7 +2048,7 @@ static void xhci_set_hc_event_deq(struct
}
static void xhci_add_in_port(struct xhci_hcd *xhci, unsigned int num_ports,
@@ -47,7 +45,7 @@ index 19a0cc38b6d9..0fc539dc1cb8 100644
{
u32 temp, port_offset, port_count;
int i;
-@@ -2072,6 +2073,10 @@ static void xhci_add_in_port(struct xhci_hcd *xhci, unsigned int num_ports,
+@@ -2072,6 +2073,10 @@ static void xhci_add_in_port(struct xhci
/* WTF? "Valid values are ‘1’ to MaxPorts" */
return;
@@ -58,7 +56,7 @@ index 19a0cc38b6d9..0fc539dc1cb8 100644
/* Check the host's USB2 LPM capability */
if ((xhci->hci_version == 0x96) && (major_revision != 0x03) &&
(temp & XHCI_L1C)) {
-@@ -2129,10 +2134,11 @@ static void xhci_add_in_port(struct xhci_hcd *xhci, unsigned int num_ports,
+@@ -2129,10 +2134,11 @@ static void xhci_add_in_port(struct xhci
*/
static int xhci_setup_port_arrays(struct xhci_hcd *xhci, gfp_t flags)
{
@@ -72,7 +70,7 @@ index 19a0cc38b6d9..0fc539dc1cb8 100644
addr = &xhci->cap_regs->hcc_params;
offset = XHCI_HCC_EXT_CAPS(xhci_readl(xhci, addr));
-@@ -2165,13 +2171,32 @@ static int xhci_setup_port_arrays(struct xhci_hcd *xhci, gfp_t flags)
+@@ -2165,13 +2171,32 @@ static int xhci_setup_port_arrays(struct
* See section 5.3.6 for offset calculation.
*/
addr = &xhci->cap_regs->hc_capbase + offset;
@@ -106,11 +104,9 @@ index 19a0cc38b6d9..0fc539dc1cb8 100644
offset = XHCI_EXT_CAPS_NEXT(cap_id);
if (!offset || (xhci->num_usb2_ports + xhci->num_usb3_ports)
== num_ports)
-diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index 4a5251f3614c..ae20252e22aa 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -4045,15 +4045,40 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
+@@ -4048,15 +4048,40 @@ int xhci_set_usb2_hardware_lpm(struct us
return 0;
}
@@ -152,8 +148,6 @@ index 4a5251f3614c..ae20252e22aa 100644
udev->usb2_hw_lpm_capable = 1;
ret = xhci_set_usb2_hardware_lpm(hcd, udev, 1);
if (!ret)
-diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
-index cd35c1fc596f..140b2edebde4 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1543,6 +1543,9 @@ struct xhci_hcd {
@@ -166,6 +160,3 @@ index cd35c1fc596f..140b2edebde4 100644
/* Compliance Mode Recovery Data */
struct timer_list comp_mode_recovery_timer;
u32 port_status_u0;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0004-usb-xhci-define-port-register-names-and-use-them-ins.patch b/patches.baytrail/0004-usb-xhci-define-port-register-names-and-use-them-ins.patch
index c996c1bd31f3f..6c5604d419253 100644
--- a/patches.baytrail/0004-usb-xhci-define-port-register-names-and-use-them-ins.patch
+++ b/patches.baytrail/0004-usb-xhci-define-port-register-names-and-use-them-ins.patch
@@ -16,16 +16,14 @@ Commit-Queue: Benson Leung <bleung@chromium.org>
Tested-by: Benson Leung <bleung@chromium.org>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/usb/host/xhci-hub.c | 16 +++++++---------
- drivers/usb/host/xhci.c | 4 ++--
- drivers/usb/host/xhci.h | 5 +++++
+ drivers/usb/host/xhci-hub.c | 16 +++++++---------
+ drivers/usb/host/xhci.c | 4 ++--
+ drivers/usb/host/xhci.h | 5 +++++
3 files changed, 14 insertions(+), 11 deletions(-)
-diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c
-index 1f94d42bcc56..f6395dd6a8d6 100644
--- a/drivers/usb/host/xhci-hub.c
+++ b/drivers/usb/host/xhci-hub.c
-@@ -920,18 +920,18 @@ int xhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue,
+@@ -920,18 +920,18 @@ int xhci_hub_control(struct usb_hcd *hcd
case USB_PORT_FEAT_U1_TIMEOUT:
if (hcd->speed != HCD_USB3)
goto error;
@@ -48,7 +46,7 @@ index 1f94d42bcc56..f6395dd6a8d6 100644
break;
default:
goto error;
-@@ -1151,10 +1151,8 @@ int xhci_bus_suspend(struct usb_hcd *hcd)
+@@ -1151,10 +1151,8 @@ int xhci_bus_suspend(struct usb_hcd *hcd
__le32 __iomem *addr;
u32 tmp;
@@ -70,11 +68,9 @@ index 1f94d42bcc56..f6395dd6a8d6 100644
tmp = xhci_readl(xhci, addr);
tmp &= ~PORT_RWE;
xhci_writel(xhci, tmp, addr);
-diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index ae20252e22aa..1bd8ddb12d36 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -3923,7 +3923,7 @@ static int xhci_usb2_software_lpm_test(struct usb_hcd *hcd,
+@@ -3926,7 +3926,7 @@ static int xhci_usb2_software_lpm_test(s
* Check device's USB 2.0 extension descriptor to determine whether
* HIRD or BESL shoule be used. See USB2.0 LPM errata.
*/
@@ -83,7 +79,7 @@ index ae20252e22aa..1bd8ddb12d36 100644
hird = xhci_calculate_hird_besl(xhci, udev);
temp = PORT_L1DS(udev->slot_id) | PORT_HIRD(hird);
xhci_writel(xhci, temp, pm_addr);
-@@ -4021,7 +4021,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
+@@ -4024,7 +4024,7 @@ int xhci_set_usb2_hardware_lpm(struct us
port_array = xhci->usb2_ports;
port_num = udev->portnum - 1;
@@ -92,8 +88,6 @@ index ae20252e22aa..1bd8ddb12d36 100644
temp = xhci_readl(xhci, pm_addr);
xhci_dbg(xhci, "%s port %d USB2 hardware LPM\n",
-diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
-index 140b2edebde4..9d3766be3a64 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -132,6 +132,11 @@ struct xhci_cap_regs {
@@ -108,6 +102,3 @@ index 140b2edebde4..9d3766be3a64 100644
/**
* struct xhci_op_regs - xHCI Host Controller Operational Registers.
* @command: USBCMD - xHC command register
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0005-usb-xhci-add-USB2-Link-power-management-BESL-support.patch b/patches.baytrail/0005-usb-xhci-add-USB2-Link-power-management-BESL-support.patch
index 8f7eaa995fc0c..3cd7d358f942f 100644
--- a/patches.baytrail/0005-usb-xhci-add-USB2-Link-power-management-BESL-support.patch
+++ b/patches.baytrail/0005-usb-xhci-add-USB2-Link-power-management-BESL-support.patch
@@ -23,14 +23,12 @@ Signed-off-by: Benson Leung <bleung@chromium.org>
UPSTREAM]
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/usb/host/xhci-ext-caps.h | 1 +
- drivers/usb/host/xhci.c | 204 +++++++++++++++++++++++++++------------
- drivers/usb/host/xhci.h | 21 ++++
- include/linux/usb.h | 2 +
+ drivers/usb/host/xhci-ext-caps.h | 1
+ drivers/usb/host/xhci.c | 204 ++++++++++++++++++++++++++-------------
+ drivers/usb/host/xhci.h | 21 ++++
+ include/linux/usb.h | 2
4 files changed, 164 insertions(+), 64 deletions(-)
-diff --git a/drivers/usb/host/xhci-ext-caps.h b/drivers/usb/host/xhci-ext-caps.h
-index 377f4242dabb..8d7a1324e2f3 100644
--- a/drivers/usb/host/xhci-ext-caps.h
+++ b/drivers/usb/host/xhci-ext-caps.h
@@ -71,6 +71,7 @@
@@ -41,11 +39,9 @@ index 377f4242dabb..8d7a1324e2f3 100644
/* command register values to disable interrupts and halt the HC */
/* start/stop HC execution - do not write unless HC is halted*/
-diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index 1bd8ddb12d36..0ea9df4df4b4 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -3827,6 +3827,56 @@ int xhci_find_raw_port_number(struct usb_hcd *hcd, int port1)
+@@ -3830,6 +3830,56 @@ int xhci_find_raw_port_number(struct usb
return raw_port;
}
@@ -102,7 +98,7 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
#ifdef CONFIG_PM_RUNTIME
/* BESL to HIRD Encoding array for USB2 LPM */
-@@ -3868,6 +3918,28 @@ static int xhci_calculate_hird_besl(struct xhci_hcd *xhci,
+@@ -3871,6 +3921,28 @@ static int xhci_calculate_hird_besl(stru
return besl;
}
@@ -131,7 +127,7 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
static int xhci_usb2_software_lpm_test(struct usb_hcd *hcd,
struct usb_device *udev)
{
-@@ -4000,11 +4072,12 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
+@@ -4003,11 +4075,12 @@ int xhci_set_usb2_hardware_lpm(struct us
{
struct xhci_hcd *xhci = hcd_to_xhci(hcd);
__le32 __iomem **port_array;
@@ -147,7 +143,7 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
if (hcd->speed == HCD_USB3 || !xhci->hw_lpm_support ||
!udev->lpm_capable)
-@@ -4022,23 +4095,73 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
+@@ -4025,23 +4098,73 @@ int xhci_set_usb2_hardware_lpm(struct us
port_array = xhci->usb2_ports;
port_num = udev->portnum - 1;
pm_addr = port_array[port_num] + PORTPMSC;
@@ -232,7 +228,7 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
}
spin_unlock_irqrestore(&xhci->lock, flags);
-@@ -4080,6 +4203,9 @@ int xhci_update_device(struct usb_hcd *hcd, struct usb_device *udev)
+@@ -4083,6 +4206,9 @@ int xhci_update_device(struct usb_hcd *h
if (xhci->hw_lpm_support == 1 &&
xhci_check_usb2_port_capability(xhci, portnum, XHCI_HLC)) {
udev->usb2_hw_lpm_capable = 1;
@@ -242,7 +238,7 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
ret = xhci_set_usb2_hardware_lpm(hcd, udev, 1);
if (!ret)
udev->usb2_hw_lpm_enabled = 1;
-@@ -4410,56 +4536,6 @@ static u16 xhci_calculate_lpm_timeout(struct usb_hcd *hcd,
+@@ -4413,56 +4539,6 @@ static u16 xhci_calculate_lpm_timeout(st
return timeout;
}
@@ -299,8 +295,6 @@ index 1bd8ddb12d36..0ea9df4df4b4 100644
static int calculate_max_exit_latency(struct usb_device *udev,
enum usb3_link_state state_changed,
u16 hub_encoded_timeout)
-diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
-index 9d3766be3a64..65aef567ad34 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -386,6 +386,27 @@ struct xhci_op_regs {
@@ -331,8 +325,6 @@ index 9d3766be3a64..65aef567ad34 100644
/**
* struct xhci_intr_reg - Interrupt Register Set
* @irq_pending: IMAN - Interrupt Management Register. Used to enable
-diff --git a/include/linux/usb.h b/include/linux/usb.h
-index a0bee5a28d1a..3a1b864ad541 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -468,6 +468,7 @@ struct usb3_lpm_parameters {
@@ -351,6 +343,3 @@ index a0bee5a28d1a..3a1b864ad541 100644
unsigned usb2_hw_lpm_enabled:1;
unsigned usb3_lpm_enabled:1;
int string_langid;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0006-usb-add-usb2-Link-PM-variables-to-sysfs-and-usb_devi.patch b/patches.baytrail/0006-usb-add-usb2-Link-PM-variables-to-sysfs-and-usb_devi.patch
index 2188d406b07e6..2133d812459c0 100644
--- a/patches.baytrail/0006-usb-add-usb2-Link-PM-variables-to-sysfs-and-usb_devi.patch
+++ b/patches.baytrail/0006-usb-add-usb2-Link-PM-variables-to-sysfs-and-usb_devi.patch
@@ -21,14 +21,12 @@ Commit-Queue: Benson Leung <bleung@chromium.org>
Tested-by: Benson Leung <bleung@chromium.org>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- Documentation/ABI/testing/sysfs-bus-usb | 27 +++++++++++++++++
- drivers/usb/core/sysfs.c | 54 +++++++++++++++++++++++++++++++++
- drivers/usb/host/xhci.c | 6 ++--
- include/linux/usb.h | 18 +++++++++++
+ Documentation/ABI/testing/sysfs-bus-usb | 27 ++++++++++++++++
+ drivers/usb/core/sysfs.c | 54 ++++++++++++++++++++++++++++++++
+ drivers/usb/host/xhci.c | 6 ++-
+ include/linux/usb.h | 18 ++++++++++
4 files changed, 103 insertions(+), 2 deletions(-)
-diff --git a/Documentation/ABI/testing/sysfs-bus-usb b/Documentation/ABI/testing/sysfs-bus-usb
-index f093e59cbe5f..9759b8c91332 100644
--- a/Documentation/ABI/testing/sysfs-bus-usb
+++ b/Documentation/ABI/testing/sysfs-bus-usb
@@ -236,3 +236,30 @@ Description:
@@ -62,11 +60,9 @@ index f093e59cbe5f..9759b8c91332 100644
+ Supported values are 0 - 15.
+ More information on how besl values map to microseconds can be found in
+ USB 2.0 ECN Errata for Link Power Management, section 4.10)
-diff --git a/drivers/usb/core/sysfs.c b/drivers/usb/core/sysfs.c
-index aa38db44818a..d9284b998bd7 100644
--- a/drivers/usb/core/sysfs.c
+++ b/drivers/usb/core/sysfs.c
-@@ -497,8 +497,62 @@ set_usb2_hardware_lpm(struct device *dev, struct device_attribute *attr,
+@@ -497,8 +497,62 @@ set_usb2_hardware_lpm(struct device *dev
static DEVICE_ATTR(usb2_hardware_lpm, S_IRUGO | S_IWUSR, show_usb2_hardware_lpm,
set_usb2_hardware_lpm);
@@ -129,11 +125,9 @@ index aa38db44818a..d9284b998bd7 100644
NULL,
};
static struct attribute_group usb2_hardware_lpm_attr_group = {
-diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index 0ea9df4df4b4..a228b796c300 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -3929,7 +3929,7 @@ static int xhci_calculate_usb2_hw_lpm_params(struct usb_device *udev)
+@@ -3932,7 +3932,7 @@ static int xhci_calculate_usb2_hw_lpm_pa
field = le32_to_cpu(udev->bos->ext_cap->bmAttributes);
/* xHCI l1 is set in steps of 256us, xHCI 1.0 section 5.4.11.2 */
@@ -142,7 +136,7 @@ index 0ea9df4df4b4..a228b796c300 100644
/* device has preferred BESLD */
if (field & USB_BESL_DEEP_VALID) {
-@@ -4113,7 +4113,7 @@ int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
+@@ -4116,7 +4116,7 @@ int xhci_set_usb2_hardware_lpm(struct us
(field & USB_BESL_BASELINE_VALID))
hird = USB_GET_BESL_BASELINE(field);
else
@@ -151,7 +145,7 @@ index 0ea9df4df4b4..a228b796c300 100644
exit_latency = xhci_besl_encoding[hird];
spin_unlock_irqrestore(&xhci->lock, flags);
-@@ -4203,6 +4203,8 @@ int xhci_update_device(struct usb_hcd *hcd, struct usb_device *udev)
+@@ -4206,6 +4206,8 @@ int xhci_update_device(struct usb_hcd *h
if (xhci->hw_lpm_support == 1 &&
xhci_check_usb2_port_capability(xhci, portnum, XHCI_HLC)) {
udev->usb2_hw_lpm_capable = 1;
@@ -160,8 +154,6 @@ index 0ea9df4df4b4..a228b796c300 100644
if (xhci_check_usb2_port_capability(xhci, portnum,
XHCI_BLC))
udev->usb2_hw_lpm_besl_capable = 1;
-diff --git a/include/linux/usb.h b/include/linux/usb.h
-index 3a1b864ad541..1f7d63f3ab8b 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -394,6 +394,22 @@ enum usb_port_connect_type {
@@ -203,6 +195,3 @@ index 3a1b864ad541..1f7d63f3ab8b 100644
struct usb3_lpm_parameters u1_params;
struct usb3_lpm_parameters u2_params;
unsigned lpm_disable_count;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0008-usb-Don-t-enable-USB-2.0-Link-PM-by-default.patch b/patches.baytrail/0008-usb-Don-t-enable-USB-2.0-Link-PM-by-default.patch
index 333541c21de79..e890a9501dfef 100644
--- a/patches.baytrail/0008-usb-Don-t-enable-USB-2.0-Link-PM-by-default.patch
+++ b/patches.baytrail/0008-usb-Don-t-enable-USB-2.0-Link-PM-by-default.patch
@@ -97,7 +97,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
if (!ret)
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -5187,6 +5187,7 @@ static int usb_reset_and_verify_device(s
+@@ -5165,6 +5165,7 @@ static int usb_reset_and_verify_device(s
done:
/* Now that the alt settings are re-installed, enable LTM and LPM. */
@@ -164,7 +164,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
page_size = xhci_readl(xhci, &xhci->op_regs->page_size);
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -3940,133 +3940,6 @@ static int xhci_calculate_usb2_hw_lpm_pa
+@@ -3943,133 +3943,6 @@ static int xhci_calculate_usb2_hw_lpm_pa
return PORT_BESLD(besld) | PORT_L1_TIMEOUT(l1) | PORT_HIRDM(hirdm);
}
@@ -298,7 +298,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd,
struct usb_device *udev, int enable)
{
-@@ -4194,24 +4067,26 @@ static int xhci_check_usb2_port_capabili
+@@ -4197,24 +4070,26 @@ static int xhci_check_usb2_port_capabili
int xhci_update_device(struct usb_hcd *hcd, struct usb_device *udev)
{
struct xhci_hcd *xhci = hcd_to_xhci(hcd);
diff --git a/patches.baytrail/0021-drm-i915-turbo-RC6-support-for-VLV-v7.patch b/patches.baytrail/0021-drm-i915-turbo-RC6-support-for-VLV-v7.patch
index 37aba6da53560..9fd23dfae9c91 100644
--- a/patches.baytrail/0021-drm-i915-turbo-RC6-support-for-VLV-v7.patch
+++ b/patches.baytrail/0021-drm-i915-turbo-RC6-support-for-VLV-v7.patch
@@ -30,19 +30,17 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 0a073b843bcd9a660f76e497182aac97cafddc4c)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 58 +++++++++--
- drivers/gpu/drm/i915/i915_drv.h | 5 +
- drivers/gpu/drm/i915/i915_irq.c | 5 +-
- drivers/gpu/drm/i915/i915_reg.h | 21 ++++
- drivers/gpu/drm/i915/i915_sysfs.c | 71 +++++++++----
- drivers/gpu/drm/i915/intel_pm.c | 199 ++++++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/i915/i915_debugfs.c | 58 ++++++++--
+ drivers/gpu/drm/i915/i915_drv.h | 5
+ drivers/gpu/drm/i915/i915_irq.c | 5
+ drivers/gpu/drm/i915/i915_reg.h | 21 +++
+ drivers/gpu/drm/i915/i915_sysfs.c | 71 +++++++++---
+ drivers/gpu/drm/i915/intel_pm.c | 199 ++++++++++++++++++++++++++++++++++--
6 files changed, 320 insertions(+), 39 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index e913d325d5b8..367b534d2260 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -941,7 +941,7 @@ static int i915_cur_delayinfo(struct seq_file *m, void *unused)
+@@ -941,7 +941,7 @@ static int i915_cur_delayinfo(struct seq
MEMSTAT_VID_SHIFT);
seq_printf(m, "Current P-state: %d\n",
(rgvstat & MEMSTAT_PSTATE_MASK) >> MEMSTAT_PSTATE_SHIFT);
@@ -51,7 +49,7 @@ index e913d325d5b8..367b534d2260 100644
u32 gt_perf_status = I915_READ(GEN6_GT_PERF_STATUS);
u32 rp_state_limits = I915_READ(GEN6_RP_STATE_LIMITS);
u32 rp_state_cap = I915_READ(GEN6_RP_STATE_CAP);
-@@ -1009,6 +1009,25 @@ static int i915_cur_delayinfo(struct seq_file *m, void *unused)
+@@ -1009,6 +1009,25 @@ static int i915_cur_delayinfo(struct seq
seq_printf(m, "Max overclocked frequency: %dMHz\n",
dev_priv->rps.hw_max * GT_FREQUENCY_MULTIPLIER);
@@ -142,11 +140,9 @@ index e913d325d5b8..367b534d2260 100644
mutex_unlock(&dev_priv->rps.hw_lock);
return 0;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 3be035a8a7b1..b32a0b18f003 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1860,6 +1860,9 @@ extern void intel_disable_fbc(struct drm_device *dev);
+@@ -1860,6 +1860,9 @@ extern void intel_disable_fbc(struct drm
extern bool ironlake_set_drps(struct drm_device *dev, u8 val);
extern void intel_init_pch_refclk(struct drm_device *dev);
extern void gen6_set_rps(struct drm_device *dev, u8 val);
@@ -156,7 +152,7 @@ index 3be035a8a7b1..b32a0b18f003 100644
extern void intel_detect_pch(struct drm_device *dev);
extern int intel_trans_dp_port_sel(struct drm_crtc *crtc);
extern int intel_enable_rc6(const struct drm_device *dev);
-@@ -1891,6 +1894,8 @@ int sandybridge_pcode_read(struct drm_i915_private *dev_priv, u8 mbox, u32 *val)
+@@ -1891,6 +1894,8 @@ int sandybridge_pcode_read(struct drm_i9
int sandybridge_pcode_write(struct drm_i915_private *dev_priv, u8 mbox, u32 val);
int valleyview_punit_read(struct drm_i915_private *dev_priv, u8 addr, u32 *val);
int valleyview_punit_write(struct drm_i915_private *dev_priv, u8 addr, u32 val);
@@ -165,11 +161,9 @@ index 3be035a8a7b1..b32a0b18f003 100644
int vlv_gpu_freq(int ddr_freq, int val);
int vlv_freq_opcode(int ddr_freq, int val);
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index c939df03b229..11a8f81a7fd1 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -473,7 +473,10 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -473,7 +473,10 @@ static void gen6_pm_rps_work(struct work
*/
if (!(new_delay > dev_priv->rps.max_delay ||
new_delay < dev_priv->rps.min_delay)) {
@@ -181,11 +175,9 @@ index c939df03b229..11a8f81a7fd1 100644
}
mutex_unlock(&dev_priv->rps.hw_lock);
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index b1a0cdba59e7..acf0608cc761 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4315,6 +4315,7 @@
+@@ -4319,6 +4319,7 @@
#define GEN6_RC_CTL_RC6_ENABLE (1<<18)
#define GEN6_RC_CTL_RC1e_ENABLE (1<<20)
#define GEN6_RC_CTL_RC7_ENABLE (1<<22)
@@ -193,7 +185,7 @@ index b1a0cdba59e7..acf0608cc761 100644
#define GEN6_RC_CTL_EI_MODE(x) ((x)<<27)
#define GEN6_RC_CTL_HW_ENABLE (1<<31)
#define GEN6_RP_DOWN_TIMEOUT 0xA010
-@@ -4406,12 +4407,32 @@
+@@ -4410,12 +4411,32 @@
#define IOSF_BAR_SHIFT 1
#define IOSF_SB_BUSY (1<<0)
#define IOSF_PORT_PUNIT 0x4
@@ -226,11 +218,9 @@ index b1a0cdba59e7..acf0608cc761 100644
#define GEN6_GT_CORE_STATUS 0x138060
#define GEN6_CORE_CPD_STATE_MASK (7<<4)
#define GEN6_RCn_MASK 7
-diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c
-index d5e1890678f9..ca00df2de07b 100644
--- a/drivers/gpu/drm/i915/i915_sysfs.c
+++ b/drivers/gpu/drm/i915/i915_sysfs.c
-@@ -212,7 +212,10 @@ static ssize_t gt_cur_freq_mhz_show(struct device *kdev,
+@@ -212,7 +212,10 @@ static ssize_t gt_cur_freq_mhz_show(stru
int ret;
mutex_lock(&dev_priv->rps.hw_lock);
@@ -242,7 +232,7 @@ index d5e1890678f9..ca00df2de07b 100644
mutex_unlock(&dev_priv->rps.hw_lock);
return snprintf(buf, PAGE_SIZE, "%d\n", ret);
-@@ -226,7 +229,10 @@ static ssize_t gt_max_freq_mhz_show(struct device *kdev, struct device_attribute
+@@ -226,7 +229,10 @@ static ssize_t gt_max_freq_mhz_show(stru
int ret;
mutex_lock(&dev_priv->rps.hw_lock);
@@ -254,7 +244,7 @@ index d5e1890678f9..ca00df2de07b 100644
mutex_unlock(&dev_priv->rps.hw_lock);
return snprintf(buf, PAGE_SIZE, "%d\n", ret);
-@@ -246,16 +252,25 @@ static ssize_t gt_max_freq_mhz_store(struct device *kdev,
+@@ -246,16 +252,25 @@ static ssize_t gt_max_freq_mhz_store(str
if (ret)
return ret;
@@ -274,20 +264,20 @@ index d5e1890678f9..ca00df2de07b 100644
+ non_oc_max = hw_max;
+ } else {
+ val /= GT_FREQUENCY_MULTIPLIER;
-
-- if (val < hw_min || val > hw_max || val < dev_priv->rps.min_delay) {
++
+ rp_state_cap = I915_READ(GEN6_RP_STATE_CAP);
+ hw_max = dev_priv->rps.hw_max;
+ non_oc_max = (rp_state_cap & 0xff);
+ hw_min = ((rp_state_cap & 0xff0000) >> 16);
+ }
-+
+
+- if (val < hw_min || val > hw_max || val < dev_priv->rps.min_delay) {
+ if (val < hw_min || val > hw_max ||
+ val < dev_priv->rps.min_delay) {
mutex_unlock(&dev_priv->rps.hw_lock);
return -EINVAL;
}
-@@ -264,8 +279,12 @@ static ssize_t gt_max_freq_mhz_store(struct device *kdev,
+@@ -264,8 +279,12 @@ static ssize_t gt_max_freq_mhz_store(str
DRM_DEBUG("User requested overclocking to %d\n",
val * GT_FREQUENCY_MULTIPLIER);
@@ -302,7 +292,7 @@ index d5e1890678f9..ca00df2de07b 100644
dev_priv->rps.max_delay = val;
-@@ -282,7 +301,10 @@ static ssize_t gt_min_freq_mhz_show(struct device *kdev, struct device_attribute
+@@ -282,7 +301,10 @@ static ssize_t gt_min_freq_mhz_show(stru
int ret;
mutex_lock(&dev_priv->rps.hw_lock);
@@ -314,7 +304,7 @@ index d5e1890678f9..ca00df2de07b 100644
mutex_unlock(&dev_priv->rps.hw_lock);
return snprintf(buf, PAGE_SIZE, "%d\n", ret);
-@@ -302,21 +324,32 @@ static ssize_t gt_min_freq_mhz_store(struct device *kdev,
+@@ -302,21 +324,32 @@ static ssize_t gt_min_freq_mhz_store(str
if (ret)
return ret;
@@ -354,11 +344,9 @@ index d5e1890678f9..ca00df2de07b 100644
dev_priv->rps.min_delay = val;
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 746990fd1bd4..ca43c4e33c45 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -2481,6 +2481,52 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
+@@ -2481,6 +2481,52 @@ void gen6_set_rps(struct drm_device *dev
trace_intel_gpu_freq_change(val * 50);
}
@@ -411,7 +399,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
static void gen6_disable_rps(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -2742,6 +2788,127 @@ static void gen6_update_ring_freq(struct drm_device *dev)
+@@ -2742,6 +2788,127 @@ static void gen6_update_ring_freq(struct
}
}
@@ -539,7 +527,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
void ironlake_teardown_rc6(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -3468,7 +3635,7 @@ void intel_disable_gt_powersave(struct drm_device *dev)
+@@ -3468,7 +3635,7 @@ void intel_disable_gt_powersave(struct d
if (IS_IRONLAKE_M(dev)) {
ironlake_disable_drps(dev);
ironlake_disable_rc6(dev);
@@ -548,7 +536,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
cancel_delayed_work_sync(&dev_priv->rps.delayed_resume_work);
mutex_lock(&dev_priv->rps.hw_lock);
gen6_disable_rps(dev);
-@@ -3484,8 +3651,13 @@ static void intel_gen6_powersave_work(struct work_struct *work)
+@@ -3484,8 +3651,13 @@ static void intel_gen6_powersave_work(st
struct drm_device *dev = dev_priv->dev;
mutex_lock(&dev_priv->rps.hw_lock);
@@ -564,7 +552,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
mutex_unlock(&dev_priv->rps.hw_lock);
}
-@@ -3497,7 +3669,7 @@ void intel_enable_gt_powersave(struct drm_device *dev)
+@@ -3497,7 +3669,7 @@ void intel_enable_gt_powersave(struct dr
ironlake_enable_drps(dev);
ironlake_enable_rc6(dev);
intel_init_emon(dev);
@@ -573,7 +561,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
/*
* PCU communication is slow and this doesn't need to be
* done at any specific time, so do this out of our fast path
-@@ -4603,14 +4775,13 @@ int sandybridge_pcode_write(struct drm_i915_private *dev_priv, u8 mbox, u32 val)
+@@ -4603,14 +4775,13 @@ int sandybridge_pcode_write(struct drm_i
return 0;
}
@@ -590,7 +578,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
devfn = PCI_DEVFN(2, 0);
cmd = (devfn << IOSF_DEVFN_SHIFT) | (opcode << IOSF_OPCODE_SHIFT) |
-@@ -4632,7 +4803,7 @@ static int vlv_punit_rw(struct drm_i915_private *dev_priv, u8 opcode,
+@@ -4632,7 +4803,7 @@ static int vlv_punit_rw(struct drm_i915_
I915_WRITE(VLV_IOSF_DOORBELL_REQ, cmd);
if (wait_for((I915_READ(VLV_IOSF_DOORBELL_REQ) & IOSF_SB_BUSY) == 0,
@@ -599,7 +587,7 @@ index 746990fd1bd4..ca43c4e33c45 100644
DRM_ERROR("timeout waiting for pcode %s (%d) to finish\n",
opcode == PUNIT_OPCODE_REG_READ ? "read" : "write",
addr);
-@@ -4648,12 +4819,20 @@ static int vlv_punit_rw(struct drm_i915_private *dev_priv, u8 opcode,
+@@ -4648,12 +4819,20 @@ static int vlv_punit_rw(struct drm_i915_
int valleyview_punit_read(struct drm_i915_private *dev_priv, u8 addr, u32 *val)
{
@@ -622,6 +610,3 @@ index 746990fd1bd4..ca43c4e33c45 100644
}
int vlv_gpu_freq(int ddr_freq, int val)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0026-drm-i915-update-VLV-PLL-and-DPIO-code-v11.patch b/patches.baytrail/0026-drm-i915-update-VLV-PLL-and-DPIO-code-v11.patch
index 416046abc41dd..cb9531237e044 100644
--- a/patches.baytrail/0026-drm-i915-update-VLV-PLL-and-DPIO-code-v11.patch
+++ b/patches.baytrail/0026-drm-i915-update-VLV-PLL-and-DPIO-code-v11.patch
@@ -53,17 +53,15 @@ Conflicts:
drivers/gpu/drm/i915/intel_display.c
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 235 +++++++++++++++++++++++++++--------
- drivers/gpu/drm/i915/intel_dp.c | 69 +++++++++-
- drivers/gpu/drm/i915/intel_drv.h | 14 +++
- drivers/gpu/drm/i915/intel_hdmi.c | 108 ++++++++++++++++
+ drivers/gpu/drm/i915/intel_display.c | 235 ++++++++++++++++++++++++++---------
+ drivers/gpu/drm/i915/intel_dp.c | 69 +++++++++-
+ drivers/gpu/drm/i915/intel_drv.h | 14 ++
+ drivers/gpu/drm/i915/intel_hdmi.c | 108 ++++++++++++++++
4 files changed, 369 insertions(+), 57 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 9a284ac81c34..913860931245 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -1576,6 +1576,20 @@ intel_sbi_read(struct drm_i915_private *dev_priv, u16 reg,
+@@ -1576,6 +1576,20 @@ intel_sbi_read(struct drm_i915_private *
return I915_READ(SBI_DATA);
}
@@ -84,7 +82,7 @@ index 9a284ac81c34..913860931245 100644
/**
* ironlake_enable_pch_pll - enable PCH PLL
* @dev_priv: i915 private structure
-@@ -3678,6 +3692,52 @@ g4x_fixup_plane(struct drm_i915_private *dev_priv, enum pipe pipe)
+@@ -3678,6 +3692,52 @@ g4x_fixup_plane(struct drm_i915_private
}
}
@@ -137,7 +135,7 @@ index 9a284ac81c34..913860931245 100644
static void i9xx_crtc_enable(struct drm_crtc *crtc)
{
struct drm_device *dev = crtc->dev;
-@@ -3766,6 +3826,10 @@ static void i9xx_crtc_disable(struct drm_crtc *crtc)
+@@ -3766,6 +3826,10 @@ static void i9xx_crtc_disable(struct drm
i9xx_pfit_disable(intel_crtc);
@@ -148,7 +146,7 @@ index 9a284ac81c34..913860931245 100644
intel_disable_pll(dev_priv, pipe);
intel_crtc->active = false;
-@@ -4214,6 +4278,34 @@ static void i9xx_update_pll_dividers(struct intel_crtc *crtc,
+@@ -4214,6 +4278,34 @@ static void i9xx_update_pll_dividers(str
}
}
@@ -183,7 +181,7 @@ index 9a284ac81c34..913860931245 100644
static void intel_dp_set_m_n(struct intel_crtc *crtc)
{
if (crtc->config.has_pch_encoder)
-@@ -4226,24 +4318,18 @@ static void vlv_update_pll(struct intel_crtc *crtc)
+@@ -4226,24 +4318,18 @@ static void vlv_update_pll(struct intel_
{
struct drm_device *dev = crtc->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -215,7 +213,7 @@ index 9a284ac81c34..913860931245 100644
bestn = crtc->config.dpll.n;
bestm1 = crtc->config.dpll.m1;
-@@ -4251,71 +4337,105 @@ static void vlv_update_pll(struct intel_crtc *crtc)
+@@ -4251,72 +4337,106 @@ static void vlv_update_pll(struct intel_
bestp1 = crtc->config.dpll.p1;
bestp2 = crtc->config.dpll.p2;
@@ -246,22 +244,16 @@ index 9a284ac81c34..913860931245 100644
mdiv |= ((bestn << DPIO_N_SHIFT));
- mdiv |= (1 << DPIO_POST_DIV_SHIFT);
mdiv |= (1 << DPIO_K_SHIFT);
-- mdiv |= DPIO_ENABLE_CALIBRATION;
+ if (intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_HDMI) ||
+ intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_EDP) ||
+ intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_DISPLAYPORT))
+ mdiv |= (DPIO_POST_DIV_HDMIDP << DPIO_POST_DIV_SHIFT);
++ intel_dpio_write(dev_priv, DPIO_DIV(pipe), mdiv);
++
+ mdiv |= DPIO_ENABLE_CALIBRATION;
intel_dpio_write(dev_priv, DPIO_DIV(pipe), mdiv);
- intel_dpio_write(dev_priv, DPIO_CORE_CLK(pipe), 0x01000000);
-+ mdiv |= DPIO_ENABLE_CALIBRATION;
-+ intel_dpio_write(dev_priv, DPIO_DIV(pipe), mdiv);
-
-- pdiv = (1 << DPIO_REFSEL_OVERRIDE) | (5 << DPIO_PLL_MODESEL_SHIFT) |
-- (3 << DPIO_BIAS_CURRENT_CTL_SHIFT) | (1<<20) |
-- (7 << DPIO_PLL_REFCLK_SEL_SHIFT) | (8 << DPIO_DRIVER_CTL_SHIFT) |
-- (5 << DPIO_CLK_BIAS_CTL_SHIFT);
-- intel_dpio_write(dev_priv, DPIO_REFSFR(pipe), pdiv);
+ /* Set HBR and RBR LPF coefficients */
+ if (adjusted_mode->clock == 162000 ||
+ intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_HDMI))
@@ -270,7 +262,12 @@ index 9a284ac81c34..913860931245 100644
+ else
+ intel_dpio_write(dev_priv, DPIO_LFP_COEFF(pipe),
+ 0x00d0000f);
-+
+
+- pdiv = (1 << DPIO_REFSEL_OVERRIDE) | (5 << DPIO_PLL_MODESEL_SHIFT) |
+- (3 << DPIO_BIAS_CURRENT_CTL_SHIFT) | (1<<20) |
+- (7 << DPIO_PLL_REFCLK_SEL_SHIFT) | (8 << DPIO_DRIVER_CTL_SHIFT) |
+- (5 << DPIO_CLK_BIAS_CTL_SHIFT);
+- intel_dpio_write(dev_priv, DPIO_REFSFR(pipe), pdiv);
+ if (intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_EDP) ||
+ intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_DISPLAYPORT)) {
+ /* Use SSC source */
@@ -347,22 +344,24 @@ index 9a284ac81c34..913860931245 100644
- if(pipe == 1)
- temp |= (1 << 21);
- intel_dpio_write(dev_priv, DPIO_DATA_CHANNEL1, temp);
-+ I915_WRITE(DPLL_MD(pipe), temp);
-+ POSTING_READ(DPLL_MD(pipe));
- }
-
+- }
+-
- if(intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_EDP)) {
- temp = 0x1000C4;
- if(pipe == 1)
- temp |= (1 << 21);
- intel_dpio_write(dev_priv, DPIO_DATA_CHANNEL2, temp);
-- }
++ I915_WRITE(DPLL_MD(pipe), temp);
++ POSTING_READ(DPLL_MD(pipe));
+ }
+
+ if (crtc->config.has_dp_encoder)
+ intel_dp_set_m_n(crtc);
-
++
mutex_unlock(&dev_priv->dpio_lock);
}
-@@ -8792,6 +8912,13 @@ static void intel_init_display(struct drm_device *dev)
+
+@@ -8792,6 +8912,13 @@ static void intel_init_display(struct dr
dev_priv->display.crtc_disable = ironlake_crtc_disable;
dev_priv->display.off = ironlake_crtc_off;
dev_priv->display.update_plane = ironlake_update_plane;
@@ -376,11 +375,9 @@ index 9a284ac81c34..913860931245 100644
} else {
dev_priv->display.get_pipe_config = i9xx_get_pipe_config;
dev_priv->display.crtc_mode_set = i9xx_crtc_mode_set;
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index cd460c90e4aa..415caad2b10f 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1392,15 +1392,77 @@ static void intel_enable_dp(struct intel_encoder *encoder)
+@@ -1392,15 +1392,77 @@ static void intel_enable_dp(struct intel
intel_dp_complete_link_train(intel_dp);
intel_dp_stop_link_train(intel_dp);
ironlake_edp_backlight_on(intel_dp);
@@ -458,7 +455,7 @@ index cd460c90e4aa..415caad2b10f 100644
}
/*
-@@ -1544,6 +1606,8 @@ static uint32_t intel_vlv_signal_levels(struct intel_dp *intel_dp)
+@@ -1544,6 +1606,8 @@ static uint32_t intel_vlv_signal_levels(
else
BUG();
@@ -467,7 +464,7 @@ index cd460c90e4aa..415caad2b10f 100644
switch (train_set & DP_TRAIN_PRE_EMPHASIS_MASK) {
case DP_TRAIN_PRE_EMPHASIS_0:
preemph_reg_value = 0x0004000;
-@@ -1617,8 +1681,6 @@ static uint32_t intel_vlv_signal_levels(struct intel_dp *intel_dp)
+@@ -1617,8 +1681,6 @@ static uint32_t intel_vlv_signal_levels(
return 0;
}
@@ -476,7 +473,7 @@ index cd460c90e4aa..415caad2b10f 100644
intel_dpio_write(dev_priv, DPIO_TX_OCALINIT(port), 0x00000000);
intel_dpio_write(dev_priv, DPIO_TX_SWING_CTL4(port), demph_reg_value);
intel_dpio_write(dev_priv, DPIO_TX_SWING_CTL2(port),
-@@ -1627,7 +1689,6 @@ static uint32_t intel_vlv_signal_levels(struct intel_dp *intel_dp)
+@@ -1627,7 +1689,6 @@ static uint32_t intel_vlv_signal_levels(
intel_dpio_write(dev_priv, DPIO_PCS_STAGGER0(port), 0x00030000);
intel_dpio_write(dev_priv, DPIO_PCS_CTL_OVER1(port), preemph_reg_value);
intel_dpio_write(dev_priv, DPIO_TX_OCALINIT(port), 0x80000000);
@@ -484,7 +481,7 @@ index cd460c90e4aa..415caad2b10f 100644
return 0;
}
-@@ -3119,6 +3180,8 @@ intel_dp_init(struct drm_device *dev, int output_reg, enum port port)
+@@ -3135,6 +3196,8 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->disable = intel_disable_dp;
intel_encoder->post_disable = intel_post_disable_dp;
intel_encoder->get_hw_state = intel_dp_get_hw_state;
@@ -493,8 +490,6 @@ index cd460c90e4aa..415caad2b10f 100644
intel_dig_port->port = port;
intel_dig_port->dp.output_reg = output_reg;
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 4b8bec2ca2ab..310899f4c3b5 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -431,6 +431,19 @@ struct intel_digital_port {
@@ -517,7 +512,7 @@ index 4b8bec2ca2ab..310899f4c3b5 100644
static inline struct drm_crtc *
intel_get_crtc_for_pipe(struct drm_device *dev, int pipe)
{
-@@ -607,6 +620,7 @@ intel_pipe_to_cpu_transcoder(struct drm_i915_private *dev_priv,
+@@ -607,6 +620,7 @@ intel_pipe_to_cpu_transcoder(struct drm_
extern void intel_wait_for_vblank(struct drm_device *dev, int pipe);
extern void intel_wait_for_pipe_off(struct drm_device *dev, int pipe);
extern int ironlake_get_lanes_required(int target_clock, int link_bw, int bpp);
@@ -525,11 +520,9 @@ index 4b8bec2ca2ab..310899f4c3b5 100644
struct intel_load_detect_pipe {
struct drm_framebuffer *release_fb;
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index a9057930f2b2..075b7d83d9f5 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -697,6 +697,14 @@ static void intel_enable_hdmi(struct intel_encoder *encoder)
+@@ -697,6 +697,14 @@ static void intel_enable_hdmi(struct int
I915_WRITE(intel_hdmi->hdmi_reg, temp);
POSTING_READ(intel_hdmi->hdmi_reg);
}
@@ -646,7 +639,7 @@ index a9057930f2b2..075b7d83d9f5 100644
static void intel_hdmi_destroy(struct drm_connector *connector)
{
drm_sysfs_connector_remove(connector);
-@@ -1094,6 +1197,11 @@ void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port)
+@@ -1094,6 +1197,11 @@ void intel_hdmi_init(struct drm_device *
intel_encoder->enable = intel_enable_hdmi;
intel_encoder->disable = intel_disable_hdmi;
intel_encoder->get_hw_state = intel_hdmi_get_hw_state;
@@ -658,6 +651,3 @@ index a9057930f2b2..075b7d83d9f5 100644
intel_encoder->type = INTEL_OUTPUT_HDMI;
intel_encoder->crtc_mask = (1 << 0) | (1 << 1) | (1 << 2);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0027-drm-i915-report-Gen5-CPU-and-PCH-FIFO-underruns.patch b/patches.baytrail/0027-drm-i915-report-Gen5-CPU-and-PCH-FIFO-underruns.patch
index e3edcade2883f..f191d475a1ff0 100644
--- a/patches.baytrail/0027-drm-i915-report-Gen5-CPU-and-PCH-FIFO-underruns.patch
+++ b/patches.baytrail/0027-drm-i915-report-Gen5-CPU-and-PCH-FIFO-underruns.patch
@@ -31,17 +31,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 8664281b64c457705db72fc60143d03827e75ca9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 315 ++++++++++++++++++++++++++++++++++-
- drivers/gpu/drm/i915/i915_reg.h | 13 +-
- drivers/gpu/drm/i915/intel_display.c | 14 ++
- drivers/gpu/drm/i915/intel_drv.h | 11 ++
+ drivers/gpu/drm/i915/i915_irq.c | 315 ++++++++++++++++++++++++++++++++++-
+ drivers/gpu/drm/i915/i915_reg.h | 13 +
+ drivers/gpu/drm/i915/intel_display.c | 14 +
+ drivers/gpu/drm/i915/intel_drv.h | 11 +
4 files changed, 342 insertions(+), 11 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 11a8f81a7fd1..859727d34c2c 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -103,6 +103,213 @@ ironlake_disable_display_irq(drm_i915_private_t *dev_priv, u32 mask)
+@@ -103,6 +103,213 @@ ironlake_disable_display_irq(drm_i915_pr
}
}
@@ -255,7 +253,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
void
i915_enable_pipestat(drm_i915_private_t *dev_priv, int pipe, u32 mask)
{
-@@ -791,10 +998,58 @@ static void ibx_irq_handler(struct drm_device *dev, u32 pch_iir)
+@@ -791,10 +998,58 @@ static void ibx_irq_handler(struct drm_d
if (pch_iir & (SDE_TRANSB_CRC_ERR | SDE_TRANSA_CRC_ERR))
DRM_DEBUG_DRIVER("PCH transcoder CRC error interrupt\n");
@@ -317,7 +315,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
}
static void cpt_irq_handler(struct drm_device *dev, u32 pch_iir)
-@@ -832,6 +1087,9 @@ static void cpt_irq_handler(struct drm_device *dev, u32 pch_iir)
+@@ -832,6 +1087,9 @@ static void cpt_irq_handler(struct drm_d
DRM_DEBUG_DRIVER(" pipe %c FDI IIR: 0x%08x\n",
pipe_name(pipe),
I915_READ(FDI_RX_IIR(pipe)));
@@ -327,7 +325,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
}
static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
-@@ -844,6 +1102,14 @@ static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
+@@ -844,6 +1102,14 @@ static irqreturn_t ivybridge_irq_handler
atomic_inc(&dev_priv->irq_received);
@@ -342,7 +340,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
/* disable master interrupt before clearing iir */
de_ier = I915_READ(DEIER);
I915_WRITE(DEIER, de_ier & ~DE_MASTER_IRQ_CONTROL);
-@@ -859,6 +1125,12 @@ static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
+@@ -859,6 +1125,12 @@ static irqreturn_t ivybridge_irq_handler
POSTING_READ(SDEIER);
}
@@ -355,7 +353,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
gt_iir = I915_READ(GTIIR);
if (gt_iir) {
snb_gt_irq_handler(dev, dev_priv, gt_iir);
-@@ -868,6 +1140,9 @@ static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
+@@ -868,6 +1140,9 @@ static irqreturn_t ivybridge_irq_handler
de_iir = I915_READ(DEIIR);
if (de_iir) {
@@ -365,7 +363,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
if (de_iir & DE_AUX_CHANNEL_A_IVB)
dp_aux_irq_handler(dev);
-@@ -905,6 +1180,9 @@ static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
+@@ -905,6 +1180,9 @@ static irqreturn_t ivybridge_irq_handler
ret = IRQ_HANDLED;
}
@@ -375,7 +373,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
I915_WRITE(DEIER, de_ier);
POSTING_READ(DEIER);
if (!HAS_PCH_NOP(dev)) {
-@@ -974,6 +1252,14 @@ static irqreturn_t ironlake_irq_handler(int irq, void *arg)
+@@ -974,6 +1252,14 @@ static irqreturn_t ironlake_irq_handler(
if (de_iir & DE_PIPEB_VBLANK)
drm_handle_vblank(dev, 1);
@@ -390,7 +388,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
if (de_iir & DE_PLANEA_FLIP_DONE) {
intel_prepare_page_flip(dev, 0);
intel_finish_page_flip_plane(dev, 0);
-@@ -2245,10 +2531,14 @@ static void ibx_irq_postinstall(struct drm_device *dev)
+@@ -2245,10 +2531,14 @@ static void ibx_irq_postinstall(struct d
drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
u32 mask;
@@ -409,7 +407,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
if (HAS_PCH_NOP(dev))
return;
-@@ -2263,7 +2553,8 @@ static int ironlake_irq_postinstall(struct drm_device *dev)
+@@ -2263,7 +2553,8 @@ static int ironlake_irq_postinstall(stru
/* enable kind of interrupts always enabled */
u32 display_mask = DE_MASTER_IRQ_CONTROL | DE_GSE | DE_PCH_EVENT |
DE_PLANEA_FLIP_DONE | DE_PLANEB_FLIP_DONE |
@@ -419,7 +417,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
u32 render_irqs;
dev_priv->irq_mask = ~display_mask;
-@@ -2313,12 +2604,14 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2313,12 +2604,14 @@ static int ivybridge_irq_postinstall(str
DE_PLANEC_FLIP_DONE_IVB |
DE_PLANEB_FLIP_DONE_IVB |
DE_PLANEA_FLIP_DONE_IVB |
@@ -435,7 +433,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
I915_WRITE(DEIIR, I915_READ(DEIIR));
I915_WRITE(DEIMR, dev_priv->irq_mask);
I915_WRITE(DEIER,
-@@ -2446,6 +2739,8 @@ static void ironlake_irq_uninstall(struct drm_device *dev)
+@@ -2446,6 +2739,8 @@ static void ironlake_irq_uninstall(struc
I915_WRITE(DEIMR, 0xffffffff);
I915_WRITE(DEIER, 0x0);
I915_WRITE(DEIIR, I915_READ(DEIIR));
@@ -444,7 +442,7 @@ index 11a8f81a7fd1..859727d34c2c 100644
I915_WRITE(GTIMR, 0xffffffff);
I915_WRITE(GTIER, 0x0);
-@@ -2457,6 +2752,8 @@ static void ironlake_irq_uninstall(struct drm_device *dev)
+@@ -2457,6 +2752,8 @@ static void ironlake_irq_uninstall(struc
I915_WRITE(SDEIMR, 0xffffffff);
I915_WRITE(SDEIER, 0x0);
I915_WRITE(SDEIIR, I915_READ(SDEIIR));
@@ -453,8 +451,6 @@ index 11a8f81a7fd1..859727d34c2c 100644
}
static void i8xx_irq_preinstall(struct drm_device * dev)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index a5fe3ba7d00d..b76679e401d2 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -638,7 +638,10 @@
@@ -469,7 +465,7 @@ index a5fe3ba7d00d..b76679e401d2 100644
#define FPGA_DBG 0x42300
#define FPGA_DBG_RM_NOCLAIM (1<<31)
-@@ -3622,7 +3625,7 @@
+@@ -3626,7 +3629,7 @@
#define DE_PIPEA_FIFO_UNDERRUN (1 << 0)
/* More Ivybridge lolz */
@@ -478,7 +474,7 @@ index a5fe3ba7d00d..b76679e401d2 100644
#define DE_GSE_IVB (1<<29)
#define DE_PCH_EVENT_IVB (1<<28)
#define DE_DP_A_HOTPLUG_IVB (1<<27)
-@@ -3781,6 +3784,7 @@
+@@ -3785,6 +3788,7 @@
SDE_PORTC_HOTPLUG_CPT | \
SDE_PORTB_HOTPLUG_CPT)
#define SDE_GMBUS_CPT (1 << 17)
@@ -486,7 +482,7 @@ index a5fe3ba7d00d..b76679e401d2 100644
#define SDE_AUDIO_CP_REQ_C_CPT (1 << 10)
#define SDE_AUDIO_CP_CHG_C_CPT (1 << 9)
#define SDE_FDI_RXC_CPT (1 << 8)
-@@ -3805,6 +3809,11 @@
+@@ -3809,6 +3813,11 @@
#define SDEIIR 0xc4008
#define SDEIER 0xc400c
@@ -498,11 +494,9 @@ index a5fe3ba7d00d..b76679e401d2 100644
/* digital port hotplug */
#define PCH_PORT_HOTPLUG 0xc4030 /* SHOTPLUG_CTL */
#define PORTD_HOTPLUG_ENABLE (1 << 20)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 913860931245..212fb82e0f31 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -3346,6 +3346,10 @@ static void ironlake_crtc_enable(struct drm_crtc *crtc)
+@@ -3346,6 +3346,10 @@ static void ironlake_crtc_enable(struct
return;
intel_crtc->active = true;
@@ -513,7 +507,7 @@ index 913860931245..212fb82e0f31 100644
intel_update_watermarks(dev);
if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) {
-@@ -3437,6 +3441,11 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
+@@ -3437,6 +3441,11 @@ static void haswell_crtc_enable(struct d
return;
intel_crtc->active = true;
@@ -525,7 +519,7 @@ index 913860931245..212fb82e0f31 100644
intel_update_watermarks(dev);
if (intel_crtc->config.has_pch_encoder)
-@@ -3523,6 +3532,7 @@ static void ironlake_crtc_disable(struct drm_crtc *crtc)
+@@ -3523,6 +3532,7 @@ static void ironlake_crtc_disable(struct
if (dev_priv->cfb_plane == plane)
intel_disable_fbc(dev);
@@ -533,7 +527,7 @@ index 913860931245..212fb82e0f31 100644
intel_disable_pipe(dev_priv, pipe);
/* Disable PF */
-@@ -3536,6 +3546,7 @@ static void ironlake_crtc_disable(struct drm_crtc *crtc)
+@@ -3536,6 +3546,7 @@ static void ironlake_crtc_disable(struct
ironlake_fdi_disable(crtc);
ironlake_disable_pch_transcoder(dev_priv, pipe);
@@ -541,7 +535,7 @@ index 913860931245..212fb82e0f31 100644
if (HAS_PCH_CPT(dev)) {
/* disable TRANS_DP_CTL */
-@@ -3602,6 +3613,8 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
+@@ -3602,6 +3613,8 @@ static void haswell_crtc_disable(struct
if (dev_priv->cfb_plane == plane)
intel_disable_fbc(dev);
@@ -550,7 +544,7 @@ index 913860931245..212fb82e0f31 100644
intel_disable_pipe(dev_priv, pipe);
intel_ddi_disable_transcoder_func(dev_priv, cpu_transcoder);
-@@ -3622,6 +3635,7 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
+@@ -3622,6 +3635,7 @@ static void haswell_crtc_disable(struct
if (intel_crtc->config.has_pch_encoder) {
lpt_disable_pch_transcoder(dev_priv);
@@ -558,8 +552,6 @@ index 913860931245..212fb82e0f31 100644
intel_ddi_fdi_disable(crtc);
}
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 310899f4c3b5..3976eadbb4b6 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -265,6 +265,10 @@ struct intel_crtc {
@@ -573,7 +565,7 @@ index 310899f4c3b5..3976eadbb4b6 100644
};
struct intel_plane {
-@@ -487,6 +491,7 @@ int intel_ddc_get_modes(struct drm_connector *c, struct i2c_adapter *adapter);
+@@ -487,6 +491,7 @@ int intel_ddc_get_modes(struct drm_conne
extern void intel_attach_force_audio_property(struct drm_connector *connector);
extern void intel_attach_broadcast_rgb_property(struct drm_connector *connector);
@@ -581,7 +573,7 @@ index 310899f4c3b5..3976eadbb4b6 100644
extern void intel_crt_init(struct drm_device *dev);
extern void intel_hdmi_init(struct drm_device *dev,
int hdmi_reg, enum port port);
-@@ -744,5 +749,11 @@ intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector);
+@@ -744,5 +749,11 @@ intel_ddi_connector_get_hw_state(struct
extern void intel_ddi_fdi_disable(struct drm_crtc *crtc);
extern void intel_display_handle_reset(struct drm_device *dev);
@@ -593,6 +585,3 @@ index 310899f4c3b5..3976eadbb4b6 100644
+ bool enable);
#endif /* __INTEL_DRV_H__ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0028-drm-i915-print-Gen5-CPU-PCH-poison-interrupts.patch b/patches.baytrail/0028-drm-i915-print-Gen5-CPU-PCH-poison-interrupts.patch
index 219286d5ba6e7..3cb65f9f08a81 100644
--- a/patches.baytrail/0028-drm-i915-print-Gen5-CPU-PCH-poison-interrupts.patch
+++ b/patches.baytrail/0028-drm-i915-print-Gen5-CPU-PCH-poison-interrupts.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit de032bf40a52dbbada11e071d150d2c062b5527e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 13 +++++++++++--
- drivers/gpu/drm/i915/i915_reg.h | 2 ++
+ drivers/gpu/drm/i915/i915_irq.c | 13 +++++++++++--
+ drivers/gpu/drm/i915/i915_reg.h | 2 ++
2 files changed, 13 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 859727d34c2c..450a03c6f945 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -1014,6 +1014,9 @@ static void ivb_err_int_handler(struct drm_device *dev)
+@@ -1014,6 +1014,9 @@ static void ivb_err_int_handler(struct d
struct drm_i915_private *dev_priv = dev->dev_private;
u32 err_int = I915_READ(GEN7_ERR_INT);
@@ -31,7 +29,7 @@ index 859727d34c2c..450a03c6f945 100644
if (err_int & ERR_INT_FIFO_UNDERRUN_A)
if (intel_set_cpu_fifo_underrun_reporting(dev, PIPE_A, false))
DRM_DEBUG_DRIVER("Pipe A FIFO underrun\n");
-@@ -1034,6 +1037,9 @@ static void cpt_serr_int_handler(struct drm_device *dev)
+@@ -1034,6 +1037,9 @@ static void cpt_serr_int_handler(struct
struct drm_i915_private *dev_priv = dev->dev_private;
u32 serr_int = I915_READ(SERR_INT);
@@ -41,7 +39,7 @@ index 859727d34c2c..450a03c6f945 100644
if (serr_int & SERR_INT_TRANS_A_FIFO_UNDERRUN)
if (intel_set_pch_fifo_underrun_reporting(dev, TRANSCODER_A,
false))
-@@ -1252,6 +1258,9 @@ static irqreturn_t ironlake_irq_handler(int irq, void *arg)
+@@ -1252,6 +1258,9 @@ static irqreturn_t ironlake_irq_handler(
if (de_iir & DE_PIPEB_VBLANK)
drm_handle_vblank(dev, 1);
@@ -51,7 +49,7 @@ index 859727d34c2c..450a03c6f945 100644
if (de_iir & DE_PIPEA_FIFO_UNDERRUN)
if (intel_set_cpu_fifo_underrun_reporting(dev, PIPE_A, false))
DRM_DEBUG_DRIVER("Pipe A FIFO underrun\n");
-@@ -2533,7 +2542,7 @@ static void ibx_irq_postinstall(struct drm_device *dev)
+@@ -2533,7 +2542,7 @@ static void ibx_irq_postinstall(struct d
if (HAS_PCH_IBX(dev)) {
mask = SDE_GMBUS | SDE_AUX_MASK | SDE_TRANSB_FIFO_UNDER |
@@ -60,7 +58,7 @@ index 859727d34c2c..450a03c6f945 100644
} else {
mask = SDE_GMBUS_CPT | SDE_AUX_MASK_CPT | SDE_ERROR_CPT;
-@@ -2554,7 +2563,7 @@ static int ironlake_irq_postinstall(struct drm_device *dev)
+@@ -2554,7 +2563,7 @@ static int ironlake_irq_postinstall(stru
u32 display_mask = DE_MASTER_IRQ_CONTROL | DE_GSE | DE_PCH_EVENT |
DE_PLANEA_FLIP_DONE | DE_PLANEB_FLIP_DONE |
DE_AUX_CHANNEL_A | DE_PIPEB_FIFO_UNDERRUN |
@@ -69,8 +67,6 @@ index 859727d34c2c..450a03c6f945 100644
u32 render_irqs;
dev_priv->irq_mask = ~display_mask;
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index b76679e401d2..5a7a694121ec 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -638,6 +638,7 @@
@@ -81,7 +77,7 @@ index b76679e401d2..5a7a694121ec 100644
#define ERR_INT_MMIO_UNCLAIMED (1<<13)
#define ERR_INT_FIFO_UNDERRUN_C (1<<6)
#define ERR_INT_FIFO_UNDERRUN_B (1<<3)
-@@ -3810,6 +3811,7 @@
+@@ -3814,6 +3815,7 @@
#define SDEIER 0xc400c
#define SERR_INT 0xc4040
@@ -89,6 +85,3 @@ index b76679e401d2..5a7a694121ec 100644
#define SERR_INT_TRANS_C_FIFO_UNDERRUN (1<<6)
#define SERR_INT_TRANS_B_FIFO_UNDERRUN (1<<3)
#define SERR_INT_TRANS_A_FIFO_UNDERRUN (1<<0)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0031-drm-i915-Move-the-CSC_MODE-bits-next-to-the-register.patch b/patches.baytrail/0031-drm-i915-Move-the-CSC_MODE-bits-next-to-the-register.patch
index b2462ad5e1ad9..39fbf7f8a1d40 100644
--- a/patches.baytrail/0031-drm-i915-Move-the-CSC_MODE-bits-next-to-the-register.patch
+++ b/patches.baytrail/0031-drm-i915-Move-the-CSC_MODE-bits-next-to-the-register.patch
@@ -14,14 +14,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 29a397ba7a4bded235c79f050753637cad3409ff)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 7 +++----
+ drivers/gpu/drm/i915/i915_reg.h | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 5a7a694121ec..14cd707265b9 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4939,6 +4939,9 @@
+@@ -4943,6 +4943,9 @@
#define _PIPE_A_CSC_COEFF_RV_GV 0x49020
#define _PIPE_A_CSC_COEFF_BV 0x49024
#define _PIPE_A_CSC_MODE 0x49028
@@ -31,7 +29,7 @@ index 5a7a694121ec..14cd707265b9 100644
#define _PIPE_A_CSC_PREOFF_HI 0x49030
#define _PIPE_A_CSC_PREOFF_ME 0x49034
#define _PIPE_A_CSC_PREOFF_LO 0x49038
-@@ -4960,10 +4963,6 @@
+@@ -4964,10 +4967,6 @@
#define _PIPE_B_CSC_POSTOFF_ME 0x49144
#define _PIPE_B_CSC_POSTOFF_LO 0x49148
@@ -42,6 +40,3 @@ index 5a7a694121ec..14cd707265b9 100644
#define PIPE_CSC_COEFF_RY_GY(pipe) _PIPE(pipe, _PIPE_A_CSC_COEFF_RY_GY, _PIPE_B_CSC_COEFF_RY_GY)
#define PIPE_CSC_COEFF_BY(pipe) _PIPE(pipe, _PIPE_A_CSC_COEFF_BY, _PIPE_B_CSC_COEFF_BY)
#define PIPE_CSC_COEFF_RU_GU(pipe) _PIPE(pipe, _PIPE_A_CSC_COEFF_RU_GU, _PIPE_B_CSC_COEFF_RU_GU)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0058-drm-i915-hsw-backlight-registers-need-transcoder-ins.patch b/patches.baytrail/0058-drm-i915-hsw-backlight-registers-need-transcoder-ins.patch
index ee89afa63921a..70bf8f08ebd4a 100644
--- a/patches.baytrail/0058-drm-i915-hsw-backlight-registers-need-transcoder-ins.patch
+++ b/patches.baytrail/0058-drm-i915-hsw-backlight-registers-need-transcoder-ins.patch
@@ -11,15 +11,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 35ffda4883a8d3f75632d7389dc96a25640033f0)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 ++++
- drivers/gpu/drm/i915/intel_panel.c | 7 ++++++-
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++++
+ drivers/gpu/drm/i915/intel_panel.c | 7 ++++++-
2 files changed, 10 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 14cd707265b9..8fff456c1c87 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2091,6 +2091,10 @@
+@@ -2095,6 +2095,10 @@
#define BLM_PIPE_A (0 << 29)
#define BLM_PIPE_B (1 << 29)
#define BLM_PIPE_C (2 << 29) /* ivb + */
@@ -30,11 +28,9 @@ index 14cd707265b9..8fff456c1c87 100644
#define BLM_PIPE(pipe) ((pipe) << 29)
#define BLM_POLARITY_I965 (1 << 28) /* gen4 only */
#define BLM_PHASE_IN_INTERUPT_STATUS (1 << 26)
-diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
-index 4c49b3f77455..317d2bc15049 100644
--- a/drivers/gpu/drm/i915/intel_panel.c
+++ b/drivers/gpu/drm/i915/intel_panel.c
-@@ -344,6 +344,8 @@ void intel_panel_enable_backlight(struct drm_device *dev,
+@@ -344,6 +344,8 @@ void intel_panel_enable_backlight(struct
enum pipe pipe)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -43,7 +39,7 @@ index 4c49b3f77455..317d2bc15049 100644
unsigned long flags;
spin_lock_irqsave(&dev_priv->backlight.lock, flags);
-@@ -374,7 +376,10 @@ void intel_panel_enable_backlight(struct drm_device *dev,
+@@ -374,7 +376,10 @@ void intel_panel_enable_backlight(struct
else
tmp &= ~BLM_PIPE_SELECT;
@@ -55,6 +51,3 @@ index 4c49b3f77455..317d2bc15049 100644
tmp &= ~BLM_PWM_ENABLE;
I915_WRITE(reg, tmp);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0078-drm-i915-hw-state-readout-support-for-pipe_config-fd.patch b/patches.baytrail/0078-drm-i915-hw-state-readout-support-for-pipe_config-fd.patch
index c65d3b933820c..7874df637d91e 100644
--- a/patches.baytrail/0078-drm-i915-hw-state-readout-support-for-pipe_config-fd.patch
+++ b/patches.baytrail/0078-drm-i915-hw-state-readout-support-for-pipe_config-fd.patch
@@ -19,16 +19,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 627eb5a318a6caca2145d3c7195b084c59b291d9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 11 +++--------
- drivers/gpu/drm/i915/intel_ddi.c | 2 +-
- drivers/gpu/drm/i915/intel_display.c | 38 ++++++++++++++++++++++++++----------
+ drivers/gpu/drm/i915/i915_reg.h | 11 ++--------
+ drivers/gpu/drm/i915/intel_ddi.c | 2 -
+ drivers/gpu/drm/i915/intel_display.c | 38 +++++++++++++++++++++++++----------
3 files changed, 32 insertions(+), 19 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 8fff456c1c87..efdc01b17c5c 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4146,10 +4146,9 @@
+@@ -4150,10 +4150,9 @@
#define FDI_LINK_TRAIN_600MV_3_5DB_SNB_B (0x39<<22)
#define FDI_LINK_TRAIN_800MV_0DB_SNB_B (0x38<<22)
#define FDI_LINK_TRAIN_VOL_EMP_MASK (0x3f<<22)
@@ -42,7 +40,7 @@ index 8fff456c1c87..efdc01b17c5c 100644
#define FDI_TX_ENHANCE_FRAME_ENABLE (1<<18)
/* Ironlake: hardwired to 1 */
#define FDI_TX_PLL_ENABLE (1<<14)
-@@ -4174,7 +4173,6 @@
+@@ -4178,7 +4177,6 @@
/* train, dp width same as FDI_TX */
#define FDI_FS_ERRC_ENABLE (1<<27)
#define FDI_FE_ERRC_ENABLE (1<<26)
@@ -50,7 +48,7 @@ index 8fff456c1c87..efdc01b17c5c 100644
#define FDI_RX_POLARITY_REVERSED_LPT (1<<16)
#define FDI_8BPC (0<<16)
#define FDI_10BPC (1<<16)
-@@ -4196,9 +4194,6 @@
+@@ -4200,9 +4198,6 @@
#define FDI_LINK_TRAIN_PATTERN_IDLE_CPT (2<<8)
#define FDI_LINK_TRAIN_NORMAL_CPT (3<<8)
#define FDI_LINK_TRAIN_PATTERN_MASK_CPT (3<<8)
@@ -60,11 +58,9 @@ index 8fff456c1c87..efdc01b17c5c 100644
#define _FDI_RXA_MISC 0xf0010
#define _FDI_RXB_MISC 0xf1010
-diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
-index 79c2af486dbb..2a84a5edbf45 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
-@@ -182,7 +182,7 @@ void hsw_fdi_link_train(struct drm_crtc *crtc)
+@@ -182,7 +182,7 @@ void hsw_fdi_link_train(struct drm_crtc
/* Enable the PCH Receiver FDI PLL */
rx_ctl_val = dev_priv->fdi_rx_config | FDI_RX_ENHANCE_FRAME_ENABLE |
FDI_RX_PLL_ENABLE |
@@ -73,11 +69,9 @@ index 79c2af486dbb..2a84a5edbf45 100644
I915_WRITE(_FDI_RXA_CTL, rx_ctl_val);
POSTING_READ(_FDI_RXA_CTL);
udelay(220);
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 1a257d5bc8a9..d3c2d5c1e72a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -2419,8 +2419,8 @@ static void ironlake_fdi_link_train(struct drm_crtc *crtc)
+@@ -2419,8 +2419,8 @@ static void ironlake_fdi_link_train(stru
/* enable CPU FDI TX and PCH FDI RX */
reg = FDI_TX_CTL(pipe);
temp = I915_READ(reg);
@@ -88,7 +82,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
temp &= ~FDI_LINK_TRAIN_NONE;
temp |= FDI_LINK_TRAIN_PATTERN_1;
I915_WRITE(reg, temp | FDI_TX_ENABLE);
-@@ -2517,8 +2517,8 @@ static void gen6_fdi_link_train(struct drm_crtc *crtc)
+@@ -2517,8 +2517,8 @@ static void gen6_fdi_link_train(struct d
/* enable CPU FDI TX and PCH FDI RX */
reg = FDI_TX_CTL(pipe);
temp = I915_READ(reg);
@@ -99,7 +93,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
temp &= ~FDI_LINK_TRAIN_NONE;
temp |= FDI_LINK_TRAIN_PATTERN_1;
temp &= ~FDI_LINK_TRAIN_VOL_EMP_MASK;
-@@ -2652,8 +2652,8 @@ static void ivb_manual_fdi_link_train(struct drm_crtc *crtc)
+@@ -2652,8 +2652,8 @@ static void ivb_manual_fdi_link_train(st
/* enable CPU FDI TX and PCH FDI RX */
reg = FDI_TX_CTL(pipe);
temp = I915_READ(reg);
@@ -110,7 +104,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
temp &= ~(FDI_LINK_TRAIN_AUTO | FDI_LINK_TRAIN_NONE_IVB);
temp |= FDI_LINK_TRAIN_PATTERN_1_IVB;
temp &= ~FDI_LINK_TRAIN_VOL_EMP_MASK;
-@@ -2754,8 +2754,8 @@ static void ironlake_fdi_pll_enable(struct intel_crtc *intel_crtc)
+@@ -2754,8 +2754,8 @@ static void ironlake_fdi_pll_enable(stru
/* enable PCH FDI RX PLL, wait warmup plus DMI latency */
reg = FDI_RX_CTL(pipe);
temp = I915_READ(reg);
@@ -121,7 +115,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
temp |= (I915_READ(PIPECONF(pipe)) & PIPECONF_BPC_MASK) << 11;
I915_WRITE(reg, temp | FDI_RX_PLL_ENABLE);
-@@ -5796,9 +5796,14 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -5796,9 +5796,14 @@ static bool ironlake_get_pipe_config(str
if (!(tmp & PIPECONF_ENABLE))
return false;
@@ -137,7 +131,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
return true;
}
-@@ -5934,9 +5939,14 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
+@@ -5934,9 +5939,14 @@ static bool haswell_get_pipe_config(stru
*/
tmp = I915_READ(TRANS_DDI_FUNC_CTL(cpu_transcoder));
if ((tmp & TRANS_DDI_PORT_MASK) == TRANS_DDI_SELECT_PORT(PORT_E) &&
@@ -153,7 +147,7 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
return true;
}
-@@ -7902,6 +7912,14 @@ intel_pipe_config_compare(struct intel_crtc_config *current_config,
+@@ -7902,6 +7912,14 @@ intel_pipe_config_compare(struct intel_c
return false;
}
@@ -168,6 +162,3 @@ index 1a257d5bc8a9..d3c2d5c1e72a 100644
return true;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0088-drm-i915-hw-state-readout-support-for-fdi-m-n.patch b/patches.baytrail/0088-drm-i915-hw-state-readout-support-for-fdi-m-n.patch
index 911285d6acbc8..9f87b58b3a6a7 100644
--- a/patches.baytrail/0088-drm-i915-hw-state-readout-support-for-fdi-m-n.patch
+++ b/patches.baytrail/0088-drm-i915-hw-state-readout-support-for-fdi-m-n.patch
@@ -19,15 +19,13 @@ Conflicts:
drivers/gpu/drm/i915/i915_reg.h
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_display.c | 25 +++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
+ drivers/gpu/drm/i915/intel_display.c | 25 +++++++++++++++++++++++++
2 files changed, 26 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index efdc01b17c5c..1782b0c8a743 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2779,6 +2779,7 @@
+@@ -2783,6 +2783,7 @@
/* Transfer unit size for display port - 1, default is 0x3f (for TU size 64) */
#define TU_SIZE(x) (((x)-1) << 25) /* default size 64 */
@@ -35,11 +33,9 @@ index efdc01b17c5c..1782b0c8a743 100644
#define TU_SIZE_MASK (0x3f << 25)
#define DATA_LINK_M_N_MASK (0xffffff)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 759034dfe617..4882893a9fbd 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -5829,6 +5829,22 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc,
+@@ -5829,6 +5829,22 @@ static int ironlake_crtc_mode_set(struct
return ret;
}
@@ -62,7 +58,7 @@ index 759034dfe617..4882893a9fbd 100644
static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
struct intel_crtc_config *pipe_config)
{
-@@ -5846,6 +5862,8 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -5846,6 +5862,8 @@ static bool ironlake_get_pipe_config(str
tmp = I915_READ(FDI_RX_CTL(crtc->pipe));
pipe_config->fdi_lanes = ((FDI_DP_PORT_WIDTH_MASK & tmp) >>
FDI_DP_PORT_WIDTH_SHIFT) + 1;
@@ -71,7 +67,7 @@ index 759034dfe617..4882893a9fbd 100644
}
return true;
-@@ -5991,6 +6009,8 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
+@@ -5991,6 +6009,8 @@ static bool haswell_get_pipe_config(stru
tmp = I915_READ(FDI_RX_CTL(PIPE_A));
pipe_config->fdi_lanes = ((FDI_DP_PORT_WIDTH_MASK & tmp) >>
FDI_DP_PORT_WIDTH_SHIFT) + 1;
@@ -80,7 +76,7 @@ index 759034dfe617..4882893a9fbd 100644
}
return true;
-@@ -7976,6 +7996,11 @@ intel_pipe_config_compare(struct intel_crtc_config *current_config,
+@@ -7976,6 +7996,11 @@ intel_pipe_config_compare(struct intel_c
PIPE_CONF_CHECK_I(has_pch_encoder);
PIPE_CONF_CHECK_I(fdi_lanes);
@@ -92,6 +88,3 @@ index 759034dfe617..4882893a9fbd 100644
#undef PIPE_CONF_CHECK_I
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0089-drm-i915-hw-state-readout-support-for-pipe-timings.patch b/patches.baytrail/0089-drm-i915-hw-state-readout-support-for-pipe-timings.patch
index 60cff1eb2d3fb..257e0edc4d382 100644
--- a/patches.baytrail/0089-drm-i915-hw-state-readout-support-for-pipe-timings.patch
+++ b/patches.baytrail/0089-drm-i915-hw-state-readout-support-for-pipe-timings.patch
@@ -25,15 +25,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1bd1bd806037af04dd1d7bdd39b2b04090c10d2c)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_display.c | 75 ++++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_reg.h | 1
+ drivers/gpu/drm/i915/intel_display.c | 75 +++++++++++++++++++++++++++++++++++
2 files changed, 76 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 1782b0c8a743..ded019718295 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2844,6 +2844,7 @@
+@@ -2848,6 +2848,7 @@
#define PIPECONF_INTERLACED_ILK (3 << 21)
#define PIPECONF_INTERLACED_DBL_ILK (4 << 21) /* ilk/snb only */
#define PIPECONF_PFIT_PF_INTERLACED_DBL_ILK (5 << 21) /* ilk/snb only */
@@ -41,11 +39,9 @@ index 1782b0c8a743..ded019718295 100644
#define PIPECONF_CXSR_DOWNCLOCK (1<<16)
#define PIPECONF_COLOR_RANGE_SELECT (1 << 13)
#define PIPECONF_BPC_MASK (0x7 << 5)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 4882893a9fbd..f1b6ca3fe82a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -4728,6 +4728,45 @@ static void intel_set_pipe_timings(struct intel_crtc *intel_crtc,
+@@ -4728,6 +4728,45 @@ static void intel_set_pipe_timings(struc
((mode->hdisplay - 1) << 16) | (mode->vdisplay - 1));
}
@@ -91,7 +87,7 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
static void i9xx_set_pipeconf(struct intel_crtc *intel_crtc)
{
struct drm_device *dev = intel_crtc->base.dev;
-@@ -4949,6 +4988,8 @@ static bool i9xx_get_pipe_config(struct intel_crtc *crtc,
+@@ -4949,6 +4988,8 @@ static bool i9xx_get_pipe_config(struct
if (!(tmp & PIPECONF_ENABLE))
return false;
@@ -100,7 +96,7 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
return true;
}
-@@ -5866,6 +5907,8 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -5866,6 +5907,8 @@ static bool ironlake_get_pipe_config(str
ironlake_get_fdi_m_n_config(crtc, pipe_config);
}
@@ -109,7 +105,7 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
return true;
}
-@@ -6013,6 +6056,8 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
+@@ -6013,6 +6056,8 @@ static bool haswell_get_pipe_config(stru
ironlake_get_fdi_m_n_config(crtc, pipe_config);
}
@@ -118,7 +114,7 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
return true;
}
-@@ -7994,6 +8039,15 @@ intel_pipe_config_compare(struct intel_crtc_config *current_config,
+@@ -7994,6 +8039,15 @@ intel_pipe_config_compare(struct intel_c
return false; \
}
@@ -134,7 +130,7 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
PIPE_CONF_CHECK_I(has_pch_encoder);
PIPE_CONF_CHECK_I(fdi_lanes);
PIPE_CONF_CHECK_I(fdi_m_n.gmch_m);
-@@ -8002,7 +8056,28 @@ intel_pipe_config_compare(struct intel_crtc_config *current_config,
+@@ -8002,7 +8056,28 @@ intel_pipe_config_compare(struct intel_c
PIPE_CONF_CHECK_I(fdi_m_n.link_n);
PIPE_CONF_CHECK_I(fdi_m_n.tu);
@@ -163,6 +159,3 @@ index 4882893a9fbd..f1b6ca3fe82a 100644
return true;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0105-drm-i915-simplify-DP-DDI-port-width-macros.patch b/patches.baytrail/0105-drm-i915-simplify-DP-DDI-port-width-macros.patch
index 9258ba8994b3d..fc323d6c45bf1 100644
--- a/patches.baytrail/0105-drm-i915-simplify-DP-DDI-port-width-macros.patch
+++ b/patches.baytrail/0105-drm-i915-simplify-DP-DDI-port-width-macros.patch
@@ -19,16 +19,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 17aa6be9579eb204b426eeae146a43bf3dd05078)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 11 ++---------
- drivers/gpu/drm/i915/intel_ddi.c | 34 ++--------------------------------
- drivers/gpu/drm/i915/intel_dp.c | 12 +-----------
+ drivers/gpu/drm/i915/i915_reg.h | 11 ++---------
+ drivers/gpu/drm/i915/intel_ddi.c | 34 ++--------------------------------
+ drivers/gpu/drm/i915/intel_dp.c | 12 +-----------
3 files changed, 5 insertions(+), 52 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index ded019718295..fe029b6f70bf 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2668,9 +2668,7 @@
+@@ -2672,9 +2672,7 @@
#define DP_PRE_EMPHASIS_SHIFT 22
/* How many wires to use. I guess 3 was too hard */
@@ -39,7 +37,7 @@ index ded019718295..fe029b6f70bf 100644
#define DP_PORT_WIDTH_MASK (7 << 19)
/* Mystic DPCD version 1.1 special mode */
-@@ -4755,9 +4753,6 @@
+@@ -4759,9 +4757,6 @@
#define TRANS_DDI_EDP_INPUT_B_ONOFF (5<<12)
#define TRANS_DDI_EDP_INPUT_C_ONOFF (6<<12)
#define TRANS_DDI_BFI_ENABLE (1<<4)
@@ -49,7 +47,7 @@ index ded019718295..fe029b6f70bf 100644
/* DisplayPort Transport Control */
#define DP_TP_CTL_A 0x64040
-@@ -4801,9 +4796,7 @@
+@@ -4805,9 +4800,7 @@
#define DDI_BUF_PORT_REVERSAL (1<<16)
#define DDI_BUF_IS_IDLE (1<<7)
#define DDI_A_4_LANES (1<<4)
@@ -60,11 +58,9 @@ index ded019718295..fe029b6f70bf 100644
#define DDI_INIT_DISPLAY_DETECTED (1<<0)
/* DDI Buffer Translations */
-diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
-index 2a84a5edbf45..832401312630 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
-@@ -687,22 +687,7 @@ static void intel_ddi_mode_set(struct drm_encoder *encoder,
+@@ -687,22 +687,7 @@ static void intel_ddi_mode_set(struct dr
intel_dp->DP = intel_dig_port->saved_port_bits |
DDI_BUF_CTL_ENABLE | DDI_BUF_EMP_400MV_0DB_HSW;
@@ -88,7 +84,7 @@ index 2a84a5edbf45..832401312630 100644
if (intel_dp->has_audio) {
DRM_DEBUG_DRIVER("DP audio on pipe %c on DDI\n",
-@@ -1031,22 +1016,7 @@ void intel_ddi_enable_transcoder_func(struct drm_crtc *crtc)
+@@ -1031,22 +1016,7 @@ void intel_ddi_enable_transcoder_func(st
temp |= TRANS_DDI_MODE_SELECT_DP_SST;
@@ -112,11 +108,9 @@ index 2a84a5edbf45..832401312630 100644
} else {
WARN(1, "Invalid encoder type %d for pipe %c\n",
intel_encoder->type, pipe_name(pipe));
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 98c871d1084c..f0159cc5159a 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -901,18 +901,8 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -901,18 +901,8 @@ intel_dp_mode_set(struct drm_encoder *en
/* Handle DP bits in common between all three register formats */
intel_dp->DP |= DP_VOLTAGE_0_4 | DP_PRE_EMPHASIS_0;
@@ -136,6 +130,3 @@ index 98c871d1084c..f0159cc5159a 100644
if (intel_dp->has_audio) {
DRM_DEBUG_DRIVER("Enabling DP audio on pipe %c\n",
pipe_name(intel_crtc->pipe));
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0112-drm-i915-s-TRANSCONF-PCH_TRANSCONF.patch b/patches.baytrail/0112-drm-i915-s-TRANSCONF-PCH_TRANSCONF.patch
index 3a1734c6fc082..6e824555d4970 100644
--- a/patches.baytrail/0112-drm-i915-s-TRANSCONF-PCH_TRANSCONF.patch
+++ b/patches.baytrail/0112-drm-i915-s-TRANSCONF-PCH_TRANSCONF.patch
@@ -16,16 +16,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ab9412ba06484cdfd82bdb748689024efe2221fe)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 7 ++++---
- drivers/gpu/drm/i915/i915_ums.c | 8 ++++----
- drivers/gpu/drm/i915/intel_display.c | 30 +++++++++++++++---------------
+ drivers/gpu/drm/i915/i915_reg.h | 7 ++++---
+ drivers/gpu/drm/i915/i915_ums.c | 8 ++++----
+ drivers/gpu/drm/i915/intel_display.c | 30 +++++++++++++++---------------
3 files changed, 23 insertions(+), 22 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index fe029b6f70bf..1ddd724094f5 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4060,9 +4060,10 @@
+@@ -4064,9 +4064,10 @@
#define TRANSDPLINK_M2(pipe) _PIPE(pipe, _TRANSA_DP_LINK_M2, _TRANSB_DP_LINK_M2)
#define TRANSDPLINK_N2(pipe) _PIPE(pipe, _TRANSA_DP_LINK_N2, _TRANSB_DP_LINK_N2)
@@ -39,11 +37,9 @@ index fe029b6f70bf..1ddd724094f5 100644
#define TRANS_DISABLE (0<<31)
#define TRANS_ENABLE (1<<31)
#define TRANS_STATE_MASK (1<<30)
-diff --git a/drivers/gpu/drm/i915/i915_ums.c b/drivers/gpu/drm/i915/i915_ums.c
-index 985a09716237..75960dd81b5a 100644
--- a/drivers/gpu/drm/i915/i915_ums.c
+++ b/drivers/gpu/drm/i915/i915_ums.c
-@@ -148,7 +148,7 @@ void i915_save_display_reg(struct drm_device *dev)
+@@ -148,7 +148,7 @@ void i915_save_display_reg(struct drm_de
dev_priv->regfile.savePFA_WIN_SZ = I915_READ(_PFA_WIN_SZ);
dev_priv->regfile.savePFA_WIN_POS = I915_READ(_PFA_WIN_POS);
@@ -52,7 +48,7 @@ index 985a09716237..75960dd81b5a 100644
dev_priv->regfile.saveTRANS_HTOTAL_A = I915_READ(_TRANS_HTOTAL_A);
dev_priv->regfile.saveTRANS_HBLANK_A = I915_READ(_TRANS_HBLANK_A);
dev_priv->regfile.saveTRANS_HSYNC_A = I915_READ(_TRANS_HSYNC_A);
-@@ -205,7 +205,7 @@ void i915_save_display_reg(struct drm_device *dev)
+@@ -205,7 +205,7 @@ void i915_save_display_reg(struct drm_de
dev_priv->regfile.savePFB_WIN_SZ = I915_READ(_PFB_WIN_SZ);
dev_priv->regfile.savePFB_WIN_POS = I915_READ(_PFB_WIN_POS);
@@ -61,7 +57,7 @@ index 985a09716237..75960dd81b5a 100644
dev_priv->regfile.saveTRANS_HTOTAL_B = I915_READ(_TRANS_HTOTAL_B);
dev_priv->regfile.saveTRANS_HBLANK_B = I915_READ(_TRANS_HBLANK_B);
dev_priv->regfile.saveTRANS_HSYNC_B = I915_READ(_TRANS_HSYNC_B);
-@@ -379,7 +379,7 @@ void i915_restore_display_reg(struct drm_device *dev)
+@@ -379,7 +379,7 @@ void i915_restore_display_reg(struct drm
I915_WRITE(_PFA_WIN_SZ, dev_priv->regfile.savePFA_WIN_SZ);
I915_WRITE(_PFA_WIN_POS, dev_priv->regfile.savePFA_WIN_POS);
@@ -70,7 +66,7 @@ index 985a09716237..75960dd81b5a 100644
I915_WRITE(_TRANS_HTOTAL_A, dev_priv->regfile.saveTRANS_HTOTAL_A);
I915_WRITE(_TRANS_HBLANK_A, dev_priv->regfile.saveTRANS_HBLANK_A);
I915_WRITE(_TRANS_HSYNC_A, dev_priv->regfile.saveTRANS_HSYNC_A);
-@@ -448,7 +448,7 @@ void i915_restore_display_reg(struct drm_device *dev)
+@@ -448,7 +448,7 @@ void i915_restore_display_reg(struct drm
I915_WRITE(_PFB_WIN_SZ, dev_priv->regfile.savePFB_WIN_SZ);
I915_WRITE(_PFB_WIN_POS, dev_priv->regfile.savePFB_WIN_POS);
@@ -79,11 +75,9 @@ index 985a09716237..75960dd81b5a 100644
I915_WRITE(_TRANS_HTOTAL_B, dev_priv->regfile.saveTRANS_HTOTAL_B);
I915_WRITE(_TRANS_HBLANK_B, dev_priv->regfile.saveTRANS_HBLANK_B);
I915_WRITE(_TRANS_HSYNC_B, dev_priv->regfile.saveTRANS_HSYNC_B);
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index dbef6715aa86..a9386819ed19 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -1206,14 +1206,14 @@ static void assert_pch_refclk_enabled(struct drm_i915_private *dev_priv)
+@@ -1206,14 +1206,14 @@ static void assert_pch_refclk_enabled(st
WARN(!enabled, "PCH refclk assertion failure, should be active but is disabled\n");
}
@@ -101,7 +95,7 @@ index dbef6715aa86..a9386819ed19 100644
val = I915_READ(reg);
enabled = !!(val & TRANS_ENABLE);
WARN(enabled,
-@@ -1565,7 +1565,7 @@ static void intel_disable_pch_pll(struct intel_crtc *intel_crtc)
+@@ -1565,7 +1565,7 @@ static void intel_disable_pch_pll(struct
DRM_DEBUG_KMS("disabling PCH PLL %x\n", pll->pll_reg);
/* Make sure transcoder isn't still depending on us */
@@ -110,7 +104,7 @@ index dbef6715aa86..a9386819ed19 100644
reg = pll->pll_reg;
val = I915_READ(reg);
-@@ -1605,7 +1605,7 @@ static void ironlake_enable_pch_transcoder(struct drm_i915_private *dev_priv,
+@@ -1605,7 +1605,7 @@ static void ironlake_enable_pch_transcod
I915_WRITE(reg, val);
}
@@ -119,7 +113,7 @@ index dbef6715aa86..a9386819ed19 100644
val = I915_READ(reg);
pipeconf_val = I915_READ(PIPECONF(pipe));
-@@ -1659,8 +1659,8 @@ static void lpt_enable_pch_transcoder(struct drm_i915_private *dev_priv,
+@@ -1659,8 +1659,8 @@ static void lpt_enable_pch_transcoder(st
else
val |= TRANS_PROGRESSIVE;
@@ -130,7 +124,7 @@ index dbef6715aa86..a9386819ed19 100644
DRM_ERROR("Failed to enable PCH transcoder\n");
}
-@@ -1677,7 +1677,7 @@ static void ironlake_disable_pch_transcoder(struct drm_i915_private *dev_priv,
+@@ -1677,7 +1677,7 @@ static void ironlake_disable_pch_transco
/* Ports must be off as well */
assert_pch_ports_disabled(dev_priv, pipe);
@@ -139,7 +133,7 @@ index dbef6715aa86..a9386819ed19 100644
val = I915_READ(reg);
val &= ~TRANS_ENABLE;
I915_WRITE(reg, val);
-@@ -1698,11 +1698,11 @@ static void lpt_disable_pch_transcoder(struct drm_i915_private *dev_priv)
+@@ -1698,11 +1698,11 @@ static void lpt_disable_pch_transcoder(s
{
u32 val;
@@ -154,7 +148,7 @@ index dbef6715aa86..a9386819ed19 100644
DRM_ERROR("Failed to disable PCH transcoder\n");
/* Workaround: clear timing override bit. */
-@@ -3011,7 +3011,7 @@ static void ironlake_pch_enable(struct drm_crtc *crtc)
+@@ -3011,7 +3011,7 @@ static void ironlake_pch_enable(struct d
int pipe = intel_crtc->pipe;
u32 reg, temp;
@@ -163,7 +157,7 @@ index dbef6715aa86..a9386819ed19 100644
/* Write the TU size bits before fdi link training, so that error
* detection works. */
-@@ -3115,7 +3115,7 @@ static void lpt_pch_enable(struct drm_crtc *crtc)
+@@ -3115,7 +3115,7 @@ static void lpt_pch_enable(struct drm_cr
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
enum transcoder cpu_transcoder = intel_crtc->config.cpu_transcoder;
@@ -172,7 +166,7 @@ index dbef6715aa86..a9386819ed19 100644
lpt_program_iclkip(crtc);
-@@ -5906,7 +5906,7 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -5906,7 +5906,7 @@ static bool ironlake_get_pipe_config(str
if (!(tmp & PIPECONF_ENABLE))
return false;
@@ -181,7 +175,7 @@ index dbef6715aa86..a9386819ed19 100644
pipe_config->has_pch_encoder = true;
tmp = I915_READ(FDI_RX_CTL(crtc->pipe));
-@@ -6054,7 +6054,7 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
+@@ -6054,7 +6054,7 @@ static bool haswell_get_pipe_config(stru
*/
tmp = I915_READ(TRANS_DDI_FUNC_CTL(cpu_transcoder));
if ((tmp & TRANS_DDI_PORT_MASK) == TRANS_DDI_SELECT_PORT(PORT_E) &&
@@ -190,6 +184,3 @@ index dbef6715aa86..a9386819ed19 100644
pipe_config->has_pch_encoder = true;
tmp = I915_READ(FDI_RX_CTL(PIPE_A));
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0113-drm-i915-PCH_-prefix-for-transcoder-timings.patch b/patches.baytrail/0113-drm-i915-PCH_-prefix-for-transcoder-timings.patch
index 5bd3d5005b7dd..9a4649e23a900 100644
--- a/patches.baytrail/0113-drm-i915-PCH_-prefix-for-transcoder-timings.patch
+++ b/patches.baytrail/0113-drm-i915-PCH_-prefix-for-transcoder-timings.patch
@@ -22,16 +22,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 275f01b2694a52d13c32358d17d594ec9aba55e3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 70 ++++++++++++++++++------------------
- drivers/gpu/drm/i915/i915_ums.c | 48 ++++++++++++-------------
- drivers/gpu/drm/i915/intel_display.c | 42 +++++++++++++---------
+ drivers/gpu/drm/i915/i915_reg.h | 70 +++++++++++++++++------------------
+ drivers/gpu/drm/i915/i915_ums.c | 48 ++++++++++++------------
+ drivers/gpu/drm/i915/intel_display.c | 42 +++++++++++++--------
3 files changed, 85 insertions(+), 75 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 1ddd724094f5..b8ac1810b753 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3929,25 +3929,25 @@
+@@ -3933,25 +3933,25 @@
/* transcoder */
@@ -76,7 +74,7 @@ index 1ddd724094f5..b8ac1810b753 100644
#define _TRANSA_DATA_M1 0xe0030
#define _TRANSA_DATA_N1 0xe0034
-@@ -4025,22 +4025,22 @@
+@@ -4029,22 +4029,22 @@
#define HSW_TVIDEO_DIP_VSC_DATA(trans) \
_TRANSCODER(trans, HSW_VIDEO_DIP_VSC_DATA_A, HSW_VIDEO_DIP_VSC_DATA_B)
@@ -115,11 +113,9 @@ index 1ddd724094f5..b8ac1810b753 100644
#define _TRANSB_DATA_M1 0xe1030
#define _TRANSB_DATA_N1 0xe1034
-diff --git a/drivers/gpu/drm/i915/i915_ums.c b/drivers/gpu/drm/i915/i915_ums.c
-index 75960dd81b5a..4168d2b6b4f1 100644
--- a/drivers/gpu/drm/i915/i915_ums.c
+++ b/drivers/gpu/drm/i915/i915_ums.c
-@@ -149,12 +149,12 @@ void i915_save_display_reg(struct drm_device *dev)
+@@ -149,12 +149,12 @@ void i915_save_display_reg(struct drm_de
dev_priv->regfile.savePFA_WIN_POS = I915_READ(_PFA_WIN_POS);
dev_priv->regfile.saveTRANSACONF = I915_READ(_PCH_TRANSACONF);
@@ -138,7 +134,7 @@ index 75960dd81b5a..4168d2b6b4f1 100644
}
dev_priv->regfile.saveDSPACNTR = I915_READ(_DSPACNTR);
-@@ -206,12 +206,12 @@ void i915_save_display_reg(struct drm_device *dev)
+@@ -206,12 +206,12 @@ void i915_save_display_reg(struct drm_de
dev_priv->regfile.savePFB_WIN_POS = I915_READ(_PFB_WIN_POS);
dev_priv->regfile.saveTRANSBCONF = I915_READ(_PCH_TRANSBCONF);
@@ -157,7 +153,7 @@ index 75960dd81b5a..4168d2b6b4f1 100644
}
dev_priv->regfile.saveDSPBCNTR = I915_READ(_DSPBCNTR);
-@@ -380,12 +380,12 @@ void i915_restore_display_reg(struct drm_device *dev)
+@@ -380,12 +380,12 @@ void i915_restore_display_reg(struct drm
I915_WRITE(_PFA_WIN_POS, dev_priv->regfile.savePFA_WIN_POS);
I915_WRITE(_PCH_TRANSACONF, dev_priv->regfile.saveTRANSACONF);
@@ -176,7 +172,7 @@ index 75960dd81b5a..4168d2b6b4f1 100644
}
/* Restore plane info */
-@@ -449,12 +449,12 @@ void i915_restore_display_reg(struct drm_device *dev)
+@@ -449,12 +449,12 @@ void i915_restore_display_reg(struct drm
I915_WRITE(_PFB_WIN_POS, dev_priv->regfile.savePFB_WIN_POS);
I915_WRITE(_PCH_TRANSBCONF, dev_priv->regfile.saveTRANSBCONF);
@@ -195,11 +191,9 @@ index 75960dd81b5a..4168d2b6b4f1 100644
}
/* Restore plane info */
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index a9386819ed19..e051ca86248e 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -2995,6 +2995,30 @@ static void lpt_program_iclkip(struct drm_crtc *crtc)
+@@ -2995,6 +2995,30 @@ static void lpt_program_iclkip(struct dr
mutex_unlock(&dev_priv->dpio_lock);
}
@@ -230,7 +224,7 @@ index a9386819ed19..e051ca86248e 100644
/*
* Enable PCH resources required for PCH ports:
* - PCH PLLs
-@@ -3058,14 +3082,7 @@ static void ironlake_pch_enable(struct drm_crtc *crtc)
+@@ -3058,14 +3082,7 @@ static void ironlake_pch_enable(struct d
/* set transcoder timing, panel must allow it */
assert_panel_unlocked(dev_priv, pipe);
@@ -246,7 +240,7 @@ index a9386819ed19..e051ca86248e 100644
intel_fdi_normal_train(crtc);
-@@ -3120,14 +3137,7 @@ static void lpt_pch_enable(struct drm_crtc *crtc)
+@@ -3120,14 +3137,7 @@ static void lpt_pch_enable(struct drm_cr
lpt_program_iclkip(crtc);
/* Set transcoder timing. */
@@ -262,6 +256,3 @@ index a9386819ed19..e051ca86248e 100644
lpt_enable_pch_transcoder(dev_priv, cpu_transcoder);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0115-drm-i915-Apply-OCD-to-data-link-m-n-register-defines.patch b/patches.baytrail/0115-drm-i915-Apply-OCD-to-data-link-m-n-register-defines.patch
index 613c91c814dd7..74542e26f83fe 100644
--- a/patches.baytrail/0115-drm-i915-Apply-OCD-to-data-link-m-n-register-defines.patch
+++ b/patches.baytrail/0115-drm-i915-Apply-OCD-to-data-link-m-n-register-defines.patch
@@ -19,16 +19,14 @@ Conflicts:
drivers/gpu/drm/i915/i915_reg.h
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 77 +++++++++++++++++++-----------------
- drivers/gpu/drm/i915/i915_ums.c | 32 +++++++--------
- drivers/gpu/drm/i915/intel_display.c | 16 ++++----
- 3 files changed, 64 insertions(+), 61 deletions(-)
+ drivers/gpu/drm/i915/i915_reg.h | 81 ++++++++++++++++++-----------------
+ drivers/gpu/drm/i915/i915_ums.c | 32 ++++++-------
+ drivers/gpu/drm/i915/intel_display.c | 16 +++---
+ 3 files changed, 66 insertions(+), 63 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index b8ac1810b753..325534eb7fd2 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2772,8 +2772,8 @@
+@@ -2776,8 +2776,8 @@
* which is after the LUTs, so we want the bytes for our color format.
* For our current usage, this is always 3, one byte for R, G and B.
*/
@@ -39,7 +37,7 @@ index b8ac1810b753..325534eb7fd2 100644
/* Transfer unit size for display port - 1, default is 0x3f (for TU size 64) */
#define TU_SIZE(x) (((x)-1) << 25) /* default size 64 */
-@@ -2783,8 +2783,9 @@
+@@ -2787,8 +2787,9 @@
#define DATA_LINK_M_N_MASK (0xffffff)
#define DATA_LINK_N_MAX (0x800000)
@@ -51,26 +49,28 @@ index b8ac1810b753..325534eb7fd2 100644
/*
* Computing Link M and N values for the Display Port link
-@@ -2797,16 +2798,18 @@
+@@ -2801,16 +2802,18 @@
* Attributes and VB-ID.
*/
-#define _PIPEA_DP_LINK_M 0x70060
-#define _PIPEB_DP_LINK_M 0x71060
-+#define _PIPEA_LINK_M_G4X 0x70060
-+#define _PIPEB_LINK_M_G4X 0x71060
-+#define PIPEA_DP_LINK_M_MASK (0xffffff)
-
+-
-#define _PIPEA_DP_LINK_N 0x70064
-#define _PIPEB_DP_LINK_N 0x71064
-+#define _PIPEA_LINK_N_G4X 0x70064
-+#define _PIPEB_LINK_N_G4X 0x71064
-+#define PIPEA_DP_LINK_N_MASK (0xffffff)
-
+-
-#define PIPE_GMCH_DATA_M(pipe) _PIPE(pipe, _PIPEA_GMCH_DATA_M, _PIPEB_GMCH_DATA_M)
-#define PIPE_GMCH_DATA_N(pipe) _PIPE(pipe, _PIPEA_GMCH_DATA_N, _PIPEB_GMCH_DATA_N)
-#define PIPE_DP_LINK_M(pipe) _PIPE(pipe, _PIPEA_DP_LINK_M, _PIPEB_DP_LINK_M)
-#define PIPE_DP_LINK_N(pipe) _PIPE(pipe, _PIPEA_DP_LINK_N, _PIPEB_DP_LINK_N)
++#define _PIPEA_LINK_M_G4X 0x70060
++#define _PIPEB_LINK_M_G4X 0x71060
++#define PIPEA_DP_LINK_M_MASK (0xffffff)
++
++#define _PIPEA_LINK_N_G4X 0x70064
++#define _PIPEB_LINK_N_G4X 0x71064
++#define PIPEA_DP_LINK_N_MASK (0xffffff)
++
+#define PIPE_DATA_M_G4X(pipe) _PIPE(pipe, _PIPEA_DATA_M_G4X, _PIPEB_DATA_M_G4X)
+#define PIPE_DATA_N_G4X(pipe) _PIPE(pipe, _PIPEA_DATA_N_G4X, _PIPEB_DATA_N_G4X)
+#define PIPE_LINK_M_G4X(pipe) _PIPE(pipe, _PIPEA_LINK_M_G4X, _PIPEB_LINK_M_G4X)
@@ -78,7 +78,7 @@ index b8ac1810b753..325534eb7fd2 100644
/* Display & cursor control */
-@@ -3949,14 +3952,14 @@
+@@ -3953,14 +3956,14 @@
#define TRANS_VSYNC_START_SHIFT 0
#define _PCH_TRANS_VSYNCSHIFT_A 0xe0028
@@ -101,7 +101,7 @@ index b8ac1810b753..325534eb7fd2 100644
/* Per-transcoder DIP controls */
-@@ -4042,23 +4045,23 @@
+@@ -4046,23 +4049,23 @@
#define PCH_TRANS_VSYNCSHIFT(pipe) _PIPE(pipe, _PCH_TRANS_VSYNCSHIFT_A, \
_PCH_TRANS_VSYNCSHIFT_B)
@@ -142,11 +142,9 @@ index b8ac1810b753..325534eb7fd2 100644
#define _PCH_TRANSACONF 0xf0008
#define _PCH_TRANSBCONF 0xf1008
-diff --git a/drivers/gpu/drm/i915/i915_ums.c b/drivers/gpu/drm/i915/i915_ums.c
-index 4168d2b6b4f1..5ef30b2e6bc6 100644
--- a/drivers/gpu/drm/i915/i915_ums.c
+++ b/drivers/gpu/drm/i915/i915_ums.c
-@@ -259,14 +259,14 @@ void i915_save_display_reg(struct drm_device *dev)
+@@ -259,14 +259,14 @@ void i915_save_display_reg(struct drm_de
dev_priv->regfile.saveDP_B = I915_READ(DP_B);
dev_priv->regfile.saveDP_C = I915_READ(DP_C);
dev_priv->regfile.saveDP_D = I915_READ(DP_D);
@@ -169,7 +167,7 @@ index 4168d2b6b4f1..5ef30b2e6bc6 100644
}
/* FIXME: regfile.save TV & SDVO state */
-@@ -282,14 +282,14 @@ void i915_restore_display_reg(struct drm_device *dev)
+@@ -282,14 +282,14 @@ void i915_restore_display_reg(struct drm
/* Display port ratios (must be done before clock is set) */
if (SUPPORTS_INTEGRATED_DP(dev)) {
@@ -192,11 +190,9 @@ index 4168d2b6b4f1..5ef30b2e6bc6 100644
}
/* Fences */
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 27da171b6411..3915973ca2df 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -4395,10 +4395,10 @@ static void intel_pch_transcoder_set_m_n(struct intel_crtc *crtc,
+@@ -4395,10 +4395,10 @@ static void intel_pch_transcoder_set_m_n
struct drm_i915_private *dev_priv = dev->dev_private;
int pipe = crtc->pipe;
@@ -211,7 +207,7 @@ index 27da171b6411..3915973ca2df 100644
}
static void intel_cpu_transcoder_set_m_n(struct intel_crtc *crtc,
-@@ -4415,10 +4415,10 @@ static void intel_cpu_transcoder_set_m_n(struct intel_crtc *crtc,
+@@ -4415,10 +4415,10 @@ static void intel_cpu_transcoder_set_m_n
I915_WRITE(PIPE_LINK_M1(transcoder), m_n->link_m);
I915_WRITE(PIPE_LINK_N1(transcoder), m_n->link_n);
} else {
@@ -226,6 +222,3 @@ index 27da171b6411..3915973ca2df 100644
}
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0141-drm-i915-stop-using-is_pch_edp-in-intel_dp_init_conn.patch b/patches.baytrail/0141-drm-i915-stop-using-is_pch_edp-in-intel_dp_init_conn.patch
index 7466cc9abeeb9..0d1814d59b736 100644
--- a/patches.baytrail/0141-drm-i915-stop-using-is_pch_edp-in-intel_dp_init_conn.patch
+++ b/patches.baytrail/0141-drm-i915-stop-using-is_pch_edp-in-intel_dp_init_conn.patch
@@ -17,14 +17,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit f7d24902e197824eee717e4c3f406eb8623e67e0)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 33 ++++++++++++++++++++++-----------
+ drivers/gpu/drm/i915/intel_dp.c | 33 ++++++++++++++++++++++-----------
1 file changed, 22 insertions(+), 11 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index f0159cc5159a..76c4f114674b 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3030,24 +3030,35 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3046,24 +3046,35 @@ intel_dp_init_connector(struct intel_dig
if (intel_dpd_is_edp(dev))
intel_dp->is_pch_edp = true;
@@ -34,13 +32,13 @@ index f0159cc5159a..76c4f114674b 100644
* For X0, DP_C is fixed as eDP. Revisit this as part of VLV eDP cleanup
*/
- if (IS_VALLEYVIEW(dev) && port == PORT_C) {
-- type = DRM_MODE_CONNECTOR_eDP;
-- intel_encoder->type = INTEL_OUTPUT_EDP;
-- } else if (port == PORT_A || is_pch_edp(intel_dp)) {
+ switch (port) {
+ case PORT_A:
type = DRM_MODE_CONNECTOR_eDP;
- intel_encoder->type = INTEL_OUTPUT_EDP;
+- } else if (port == PORT_A || is_pch_edp(intel_dp)) {
+- type = DRM_MODE_CONNECTOR_eDP;
+- intel_encoder->type = INTEL_OUTPUT_EDP;
- } else {
- /* The intel_encoder->type value may be INTEL_OUTPUT_UNKNOWN for
- * DDI or INTEL_OUTPUT_DISPLAYPORT for the older gens, so don't
@@ -71,6 +69,3 @@ index f0159cc5159a..76c4f114674b 100644
drm_connector_init(dev, connector, &intel_dp_connector_funcs, type);
drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0143-drm-i915-remove-is_pch_edp-helpers-and-state-variabl.patch b/patches.baytrail/0143-drm-i915-remove-is_pch_edp-helpers-and-state-variabl.patch
index 630a917f9f6dd..7d60830917b25 100644
--- a/patches.baytrail/0143-drm-i915-remove-is_pch_edp-helpers-and-state-variabl.patch
+++ b/patches.baytrail/0143-drm-i915-remove-is_pch_edp-helpers-and-state-variabl.patch
@@ -10,15 +10,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 15e6bf74b660c2e7aecc200ac77eb19eb6628240)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 36 ------------------------------------
- drivers/gpu/drm/i915/intel_drv.h | 2 --
+ drivers/gpu/drm/i915/intel_dp.c | 36 ------------------------------------
+ drivers/gpu/drm/i915/intel_drv.h | 2 --
2 files changed, 38 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index e69c84b6838b..a9a2ca201fa8 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -52,19 +52,6 @@ static bool is_edp(struct intel_dp *intel_dp)
+@@ -52,19 +52,6 @@ static bool is_edp(struct intel_dp *inte
return intel_dig_port->base.type == INTEL_OUTPUT_EDP;
}
@@ -38,7 +36,7 @@ index e69c84b6838b..a9a2ca201fa8 100644
static struct drm_device *intel_dp_to_dev(struct intel_dp *intel_dp)
{
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
-@@ -93,25 +80,6 @@ static struct intel_dp *intel_attached_dp(struct drm_connector *connector)
+@@ -93,25 +80,6 @@ static struct intel_dp *intel_attached_d
return enc_to_intel_dp(&intel_attached_encoder(connector)->base);
}
@@ -64,7 +62,7 @@ index e69c84b6838b..a9a2ca201fa8 100644
static void intel_dp_link_down(struct intel_dp *intel_dp);
static int
-@@ -3031,10 +2999,6 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3047,10 +3015,6 @@ intel_dp_init_connector(struct intel_dig
intel_dp->DP = I915_READ(intel_dp->output_reg);
intel_dp->attached_connector = intel_connector;
@@ -75,8 +73,6 @@ index e69c84b6838b..a9a2ca201fa8 100644
type = DRM_MODE_CONNECTOR_DisplayPort;
/*
* FIXME : We need to initialize built-in panels before external panels.
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index ba12b5b47257..7744595b07e2 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -451,7 +451,6 @@ struct intel_dp {
@@ -87,7 +83,7 @@ index ba12b5b47257..7744595b07e2 100644
uint8_t train_set[4];
int panel_power_up_delay;
int panel_power_down_delay;
-@@ -566,7 +565,6 @@ extern void ironlake_edp_panel_on(struct intel_dp *intel_dp);
+@@ -566,7 +565,6 @@ extern void ironlake_edp_panel_on(struct
extern void ironlake_edp_panel_off(struct intel_dp *intel_dp);
extern void ironlake_edp_panel_vdd_on(struct intel_dp *intel_dp);
extern void ironlake_edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync);
@@ -95,6 +91,3 @@ index ba12b5b47257..7744595b07e2 100644
extern int intel_plane_init(struct drm_device *dev, enum pipe pipe, int plane);
extern void intel_flush_display_plane(struct drm_i915_private *dev_priv,
enum plane plane);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0144-drm-i915-print-DP-init-debug-messages-from-a-single-.patch b/patches.baytrail/0144-drm-i915-print-DP-init-debug-messages-from-a-single-.patch
index aa250264b38f8..c4bccb427723f 100644
--- a/patches.baytrail/0144-drm-i915-print-DP-init-debug-messages-from-a-single-.patch
+++ b/patches.baytrail/0144-drm-i915-print-DP-init-debug-messages-from-a-single-.patch
@@ -8,15 +8,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e7281eab0bb4a5265593866d6f7acea2812fe0ec)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 12 +++---------
- drivers/gpu/drm/i915/intel_dp.c | 4 ++++
+ drivers/gpu/drm/i915/intel_display.c | 12 +++---------
+ drivers/gpu/drm/i915/intel_dp.c | 4 ++++
2 files changed, 7 insertions(+), 9 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index b93b2407ab57..66e8ba541084 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -8860,10 +8860,8 @@ static void intel_setup_outputs(struct drm_device *dev)
+@@ -8860,10 +8860,8 @@ static void intel_setup_outputs(struct d
intel_hdmi_init(dev, GEN4_HDMIB, PORT_B);
}
@@ -28,7 +26,7 @@ index b93b2407ab57..66e8ba541084 100644
}
/* Before G4X SDVOC doesn't have its own detect register */
-@@ -8879,17 +8877,13 @@ static void intel_setup_outputs(struct drm_device *dev)
+@@ -8879,17 +8877,13 @@ static void intel_setup_outputs(struct d
DRM_DEBUG_KMS("probing HDMI on SDVOC\n");
intel_hdmi_init(dev, GEN4_HDMIC, PORT_C);
}
@@ -48,11 +46,9 @@ index b93b2407ab57..66e8ba541084 100644
} else if (IS_GEN2(dev))
intel_dvo_init(dev);
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index a9a2ca201fa8..58186ba367d1 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3028,6 +3028,10 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3044,6 +3044,10 @@ intel_dp_init_connector(struct intel_dig
if (type == DRM_MODE_CONNECTOR_eDP)
intel_encoder->type = INTEL_OUTPUT_EDP;
@@ -63,6 +59,3 @@ index a9a2ca201fa8..58186ba367d1 100644
drm_connector_init(dev, connector, &intel_dp_connector_funcs, type);
drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch b/patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch
index 1dedd067edbc9..26d011478412d 100644
--- a/patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch
+++ b/patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch
@@ -32,7 +32,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1752,10 +1752,10 @@ int i915_driver_unload(struct drm_device
+@@ -1753,10 +1753,10 @@ int i915_driver_unload(struct drm_device
* free the memory space allocated for the child device
* config parsed from VBT
*/
@@ -468,7 +468,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
}
for (; bpp >= 6*3; bpp -= 2*3) {
-@@ -2795,11 +2795,11 @@ bool intel_dpd_is_edp(struct drm_device
+@@ -2811,11 +2811,11 @@ bool intel_dpd_is_edp(struct drm_device
struct child_device_config *p_child;
int i;
@@ -483,7 +483,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
if (p_child->dvo_port == PORT_IDPD &&
p_child->device_type == DEVICE_TYPE_eDP)
-@@ -2877,7 +2877,7 @@ intel_dp_init_panel_power_sequencer(stru
+@@ -2893,7 +2893,7 @@ intel_dp_init_panel_power_sequencer(stru
DRM_DEBUG_KMS("cur t1_t3 %d t8 %d t9 %d t10 %d t11_t12 %d\n",
cur.t1_t3, cur.t8, cur.t9, cur.t10, cur.t11_t12);
@@ -492,7 +492,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
/* Upper limits from eDP 1.3 spec. Note that we use the clunky units of
* our hw here, which are all in 100usec. */
-@@ -3147,8 +3147,8 @@ intel_dp_init_connector(struct intel_dig
+@@ -3163,8 +3163,8 @@ intel_dp_init_connector(struct intel_dig
}
/* fallback to VBT if available for eDP */
diff --git a/patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch b/patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch
index 8ed8881275efa..41659dc458d5b 100644
--- a/patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch
+++ b/patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch
@@ -65,8 +65,8 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
/* The i915 workqueue is primarily used for batched retirement of
* requests (and thus managing bo) once the task has been completed
-@@ -1694,12 +1670,7 @@ out_gem_unload:
- intel_teardown_mchbar(dev);
+@@ -1695,12 +1671,7 @@ out_gem_unload:
+ pm_qos_remove_request(&dev_priv->pm_qos);
destroy_workqueue(dev_priv->wq);
out_mtrrfree:
- if (dev_priv->mm.gtt_mtrr >= 0) {
@@ -79,7 +79,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
io_mapping_free(dev_priv->gtt.mappable);
dev_priv->gtt.gtt_remove(dev);
out_rmmap:
-@@ -1734,12 +1705,7 @@ int i915_driver_unload(struct drm_device
+@@ -1735,12 +1706,7 @@ int i915_driver_unload(struct drm_device
cancel_delayed_work_sync(&dev_priv->mm.retire_work);
io_mapping_free(dev_priv->gtt.mappable);
diff --git a/patches.baytrail/0169-drm-i915-add-encoder-get_config-function-v5.patch b/patches.baytrail/0169-drm-i915-add-encoder-get_config-function-v5.patch
index d2d52ec2415c9..e7168a57f376c 100644
--- a/patches.baytrail/0169-drm-i915-add-encoder-get_config-function-v5.patch
+++ b/patches.baytrail/0169-drm-i915-add-encoder-get_config-function-v5.patch
@@ -204,7 +204,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
static void intel_disable_dp(struct intel_encoder *encoder)
{
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
-@@ -3204,6 +3226,7 @@ intel_dp_init(struct drm_device *dev, in
+@@ -3220,6 +3242,7 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->disable = intel_disable_dp;
intel_encoder->post_disable = intel_post_disable_dp;
intel_encoder->get_hw_state = intel_dp_get_hw_state;
diff --git a/patches.baytrail/0177-drm-i915-set-FORCE_ARB_IDLE_PLANES-workaround.patch b/patches.baytrail/0177-drm-i915-set-FORCE_ARB_IDLE_PLANES-workaround.patch
index 9ac18963d6dd6..996086a1cd477 100644
--- a/patches.baytrail/0177-drm-i915-set-FORCE_ARB_IDLE_PLANES-workaround.patch
+++ b/patches.baytrail/0177-drm-i915-set-FORCE_ARB_IDLE_PLANES-workaround.patch
@@ -28,15 +28,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 90a8864320b2a9f91e5b5d561924a4bb70b90dcc)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 3 +++
- drivers/gpu/drm/i915/intel_pm.c | 11 +++--------
+ drivers/gpu/drm/i915/i915_reg.h | 3 +++
+ drivers/gpu/drm/i915/intel_pm.c | 11 +++--------
2 files changed, 6 insertions(+), 8 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 83cc2e5dbd79..669da48ecca8 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3717,6 +3717,9 @@
+@@ -3721,6 +3721,9 @@
# define CHICKEN3_DGMG_REQ_OUT_FIX_DISABLE (1 << 5)
# define CHICKEN3_DGMG_DONE_FIX_DISABLE (1 << 2)
@@ -46,11 +44,9 @@ index 83cc2e5dbd79..669da48ecca8 100644
#define DISP_ARB_CTL 0x45000
#define DISP_TILE_SURFACE_SWIZZLING (1<<13)
#define DISP_FBC_WM_DIS (1<<15)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 42bc0a36caac..f016998ca83c 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -4172,14 +4172,9 @@ static void haswell_init_clock_gating(struct drm_device *dev)
+@@ -4172,14 +4172,9 @@ static void haswell_init_clock_gating(st
/* WaSwitchSolVfFArbitrationPriority:hsw */
I915_WRITE(GAM_ECOCHK, I915_READ(GAM_ECOCHK) | HSW_ECOCHK_ARB_PRIO_SOL);
@@ -68,6 +64,3 @@ index 42bc0a36caac..f016998ca83c 100644
lpt_init_clock_gating(dev);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0181-drm-i915-Cocci-spatch-memdup.spatch.patch b/patches.baytrail/0181-drm-i915-Cocci-spatch-memdup.spatch.patch
index 3d0a1d9dbaff2..9af4e738f39fe 100644
--- a/patches.baytrail/0181-drm-i915-Cocci-spatch-memdup.spatch.patch
+++ b/patches.baytrail/0181-drm-i915-Cocci-spatch-memdup.spatch.patch
@@ -8,14 +8,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit edbe1581c5f94f7fba39cd9a5b2facd624aab661)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 3 +--
+ drivers/gpu/drm/i915/intel_dp.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 73b97a1b2143..093138c2f080 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2531,11 +2531,10 @@ intel_dp_get_edid(struct drm_connector *connector, struct i2c_adapter *adapter)
+@@ -2547,11 +2547,10 @@ intel_dp_get_edid(struct drm_connector *
return NULL;
size = (intel_connector->edid->extensions + 1) * EDID_LENGTH;
@@ -28,6 +26,3 @@ index 73b97a1b2143..093138c2f080 100644
return edid;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0184-drm-i915-refactor-VLV-IOSF-sideband-accessors-to-use.patch b/patches.baytrail/0184-drm-i915-refactor-VLV-IOSF-sideband-accessors-to-use.patch
index 62f28978374e7..7b5cbe1ceec44 100644
--- a/patches.baytrail/0184-drm-i915-refactor-VLV-IOSF-sideband-accessors-to-use.patch
+++ b/patches.baytrail/0184-drm-i915-refactor-VLV-IOSF-sideband-accessors-to-use.patch
@@ -24,12 +24,10 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 5a09ae9fd509d7dded34e0d599e1afa5142c6987)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 93 ++++++++++++++-----------------
- drivers/gpu/drm/i915/intel_sideband.c | 102 +++++++++++++++++-----------------
+ drivers/gpu/drm/i915/i915_reg.h | 93 ++++++++++++++-----------------
+ drivers/gpu/drm/i915/intel_sideband.c | 102 ++++++++++++++++------------------
2 files changed, 93 insertions(+), 102 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 669da48ecca8..e29e9b17690c 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -342,27 +342,54 @@
@@ -103,7 +101,7 @@ index 669da48ecca8..e29e9b17690c 100644
#define DPIO_CTL (VLV_DISPLAY_BASE + 0x2110)
#define DPIO_MODSEL1 (1<<3) /* if ref clk b == 27 */
#define DPIO_MODSEL0 (1<<2) /* if ref clk a == 27 */
-@@ -4547,40 +4574,6 @@
+@@ -4551,40 +4578,6 @@
#define GEN6_PCODE_FREQ_IA_RATIO_SHIFT 8
#define GEN6_PCODE_FREQ_RING_RATIO_SHIFT 16
@@ -144,8 +142,6 @@ index 669da48ecca8..e29e9b17690c 100644
#define GEN6_GT_CORE_STATUS 0x138060
#define GEN6_CORE_CPD_STATE_MASK (7<<4)
#define GEN6_RCn_MASK 7
-diff --git a/drivers/gpu/drm/i915/intel_sideband.c b/drivers/gpu/drm/i915/intel_sideband.c
-index 81af8857857d..a7c4b61e9c30 100644
--- a/drivers/gpu/drm/i915/intel_sideband.c
+++ b/drivers/gpu/drm/i915/intel_sideband.c
@@ -26,42 +26,37 @@
@@ -205,7 +201,7 @@ index 81af8857857d..a7c4b61e9c30 100644
*val = I915_READ(VLV_IOSF_DATA);
I915_WRITE(VLV_IOSF_DATA, 0);
-@@ -70,57 +65,60 @@ static int vlv_punit_rw(struct drm_i915_private *dev_priv, u32 port, u8 opcode,
+@@ -70,57 +65,60 @@ static int vlv_punit_rw(struct drm_i915_
int valleyview_punit_read(struct drm_i915_private *dev_priv, u8 addr, u32 *val)
{
@@ -299,6 +295,3 @@ index 81af8857857d..a7c4b61e9c30 100644
}
/* SBI access */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0191-drm-i915-track-ring-progression-using-seqnos.patch b/patches.baytrail/0191-drm-i915-track-ring-progression-using-seqnos.patch
index 99eb266ee3458..3a6065191a66c 100644
--- a/patches.baytrail/0191-drm-i915-track-ring-progression-using-seqnos.patch
+++ b/patches.baytrail/0191-drm-i915-track-ring-progression-using-seqnos.patch
@@ -16,14 +16,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 92cab7345131db7af18f630a799ce6b2e8e624c5)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 2 --
- drivers/gpu/drm/i915/i915_irq.c | 30 +++++++++++++-----------------
- drivers/gpu/drm/i915/intel_ringbuffer.c | 1 +
- drivers/gpu/drm/i915/intel_ringbuffer.h | 6 ++++++
+ drivers/gpu/drm/i915/i915_drv.h | 2 --
+ drivers/gpu/drm/i915/i915_irq.c | 30 +++++++++++++-----------------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 1 +
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 6 ++++++
4 files changed, 20 insertions(+), 19 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index db0a41cf0d49..16a69b82e865 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -843,8 +843,6 @@ struct i915_gpu_error {
@@ -35,11 +33,9 @@ index db0a41cf0d49..16a69b82e865 100644
/* For reset and error_state handling. */
spinlock_t lock;
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 3920c26d56ca..ef31d00fbf1e 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -2421,22 +2421,19 @@ void i915_hangcheck_elapsed(unsigned long data)
+@@ -2421,22 +2421,19 @@ void i915_hangcheck_elapsed(unsigned lon
{
struct drm_device *dev = (struct drm_device *)data;
drm_i915_private_t *dev_priv = dev->dev_private;
@@ -66,7 +62,7 @@ index 3920c26d56ca..ef31d00fbf1e 100644
}
/* If all work is done then ACTHD clearly hasn't advanced. */
-@@ -2452,20 +2449,19 @@ void i915_hangcheck_elapsed(unsigned long data)
+@@ -2452,20 +2449,19 @@ void i915_hangcheck_elapsed(unsigned lon
return;
}
@@ -96,11 +92,9 @@ index 3920c26d56ca..ef31d00fbf1e 100644
}
repeat:
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index d99ff99b07b2..df0b7c7ac166 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1513,6 +1513,7 @@ void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno)
+@@ -1517,6 +1517,7 @@ void intel_ring_init_seqno(struct intel_
}
ring->set_seqno(ring, seqno);
@@ -108,8 +102,6 @@ index d99ff99b07b2..df0b7c7ac166 100644
}
void intel_ring_advance(struct intel_ring_buffer *ring)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index dac1614a1bca..ef374a892105 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -37,6 +37,10 @@ struct intel_hw_status_page {
@@ -132,6 +124,3 @@ index dac1614a1bca..ef374a892105 100644
void *private;
};
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch b/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch
index 4a6531de60519..a437000231996 100644
--- a/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch
+++ b/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch
@@ -24,7 +24,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
cleanup_irq:
drm_irq_uninstall(dev);
cleanup_gem_stolen:
-@@ -1754,6 +1755,7 @@ int i915_driver_unload(struct drm_device
+@@ -1755,6 +1756,7 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
diff --git a/patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch b/patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch
index fe1d00b46e33f..34817fc16e52d 100644
--- a/patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch
+++ b/patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch
@@ -14,7 +14,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1766,6 +1766,8 @@ int i915_driver_unload(struct drm_device
+@@ -1767,6 +1767,8 @@ int i915_driver_unload(struct drm_device
destroy_workqueue(dev_priv->wq);
pm_qos_remove_request(&dev_priv->pm_qos);
diff --git a/patches.baytrail/0202-drm-i915-replace-is_cpu_edp-with-a-check-for-port-A.patch b/patches.baytrail/0202-drm-i915-replace-is_cpu_edp-with-a-check-for-port-A.patch
index 7f83d54ebec6e..6ab2430aa9cc9 100644
--- a/patches.baytrail/0202-drm-i915-replace-is_cpu_edp-with-a-check-for-port-A.patch
+++ b/patches.baytrail/0202-drm-i915-replace-is_cpu_edp-with-a-check-for-port-A.patch
@@ -13,14 +13,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit bc7d38a43ab1af4cad1c235c3aa30426b6c7d6c5)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 49 +++++++++++++++++++++++------------------
+ drivers/gpu/drm/i915/intel_dp.c | 49 ++++++++++++++++++++++------------------
1 file changed, 27 insertions(+), 22 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index e1d39f2c70fe..63fa72d4a4c6 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -696,6 +696,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
+@@ -696,6 +696,7 @@ intel_dp_compute_config(struct intel_enc
struct drm_i915_private *dev_priv = dev->dev_private;
struct drm_display_mode *adjusted_mode = &pipe_config->adjusted_mode;
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
@@ -28,7 +26,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
struct intel_crtc *intel_crtc = encoder->new_crtc;
struct intel_connector *intel_connector = intel_dp->attached_connector;
int lane_count, clock;
-@@ -705,7 +706,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
+@@ -705,7 +706,7 @@ intel_dp_compute_config(struct intel_enc
static int bws[2] = { DP_LINK_BW_1_62, DP_LINK_BW_2_7 };
int target_clock, link_avail, link_clock;
@@ -37,7 +35,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
pipe_config->has_pch_encoder = true;
pipe_config->has_dp_encoder = true;
-@@ -848,6 +849,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -848,6 +849,7 @@ intel_dp_mode_set(struct drm_encoder *en
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
@@ -45,7 +43,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
struct drm_crtc *crtc = encoder->crtc;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
-@@ -888,7 +890,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -888,7 +890,7 @@ intel_dp_mode_set(struct drm_encoder *en
/* Split out the IBX/CPU vs CPT settings */
@@ -54,7 +52,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
if (adjusted_mode->flags & DRM_MODE_FLAG_PHSYNC)
intel_dp->DP |= DP_SYNC_HS_HIGH;
if (adjusted_mode->flags & DRM_MODE_FLAG_PVSYNC)
-@@ -905,7 +907,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -905,7 +907,7 @@ intel_dp_mode_set(struct drm_encoder *en
intel_dp->DP |= DP_PLL_FREQ_160MHZ;
else
intel_dp->DP |= DP_PLL_FREQ_270MHZ;
@@ -63,7 +61,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
if (!HAS_PCH_SPLIT(dev) && !IS_VALLEYVIEW(dev))
intel_dp->DP |= intel_dp->color_range;
-@@ -921,7 +923,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -921,7 +923,7 @@ intel_dp_mode_set(struct drm_encoder *en
if (intel_crtc->pipe == 1)
intel_dp->DP |= DP_PIPEB_SELECT;
@@ -72,7 +70,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
/* don't miss out required setting for eDP */
if (adjusted_mode->clock < 200000)
intel_dp->DP |= DP_PLL_FREQ_160MHZ;
-@@ -932,7 +934,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -932,7 +934,7 @@ intel_dp_mode_set(struct drm_encoder *en
intel_dp->DP |= DP_LINK_TRAIN_OFF_CPT;
}
@@ -81,7 +79,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
ironlake_set_pll_edp(crtc, adjusted_mode->clock);
}
-@@ -1322,6 +1324,7 @@ static bool intel_dp_get_hw_state(struct intel_encoder *encoder,
+@@ -1322,6 +1324,7 @@ static bool intel_dp_get_hw_state(struct
enum pipe *pipe)
{
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
@@ -89,7 +87,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
struct drm_device *dev = encoder->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
u32 tmp = I915_READ(intel_dp->output_reg);
-@@ -1329,9 +1332,9 @@ static bool intel_dp_get_hw_state(struct intel_encoder *encoder,
+@@ -1329,9 +1332,9 @@ static bool intel_dp_get_hw_state(struct
if (!(tmp & DP_PORT_EN))
return false;
@@ -101,7 +99,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
*pipe = PORT_TO_PIPE(tmp);
} else {
u32 trans_sel;
-@@ -1451,14 +1454,14 @@ static void intel_enable_dp(struct intel_encoder *encoder)
+@@ -1451,14 +1454,14 @@ static void intel_enable_dp(struct intel
static void intel_pre_enable_dp(struct intel_encoder *encoder)
{
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
@@ -142,7 +140,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
if (HAS_DDI(dev)) {
switch (voltage_swing & DP_TRAIN_VOLTAGE_SWING_MASK) {
-@@ -1606,7 +1611,7 @@ intel_dp_pre_emphasis_max(struct intel_dp *intel_dp, uint8_t voltage_swing)
+@@ -1606,7 +1611,7 @@ intel_dp_pre_emphasis_max(struct intel_d
default:
return DP_TRAIN_PRE_EMPHASIS_0;
}
@@ -159,7 +157,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
struct drm_device *dev = intel_dig_port->base.base.dev;
uint32_t signal_levels, mask;
uint8_t train_set = intel_dp->train_set[0];
-@@ -1903,10 +1909,10 @@ intel_dp_set_signal_levels(struct intel_dp *intel_dp, uint32_t *DP)
+@@ -1903,10 +1909,10 @@ intel_dp_set_signal_levels(struct intel_
} else if (IS_VALLEYVIEW(dev)) {
signal_levels = intel_vlv_signal_levels(intel_dp);
mask = 0;
@@ -172,7 +170,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
signal_levels = intel_gen6_edp_signal_levels(train_set);
mask = EDP_LINK_TRAIN_VOL_EMP_MASK_SNB;
} else {
-@@ -1956,8 +1962,7 @@ intel_dp_set_link_train(struct intel_dp *intel_dp,
+@@ -1956,8 +1962,7 @@ intel_dp_set_link_train(struct intel_dp
}
I915_WRITE(DP_TP_CTL(port), temp);
@@ -190,7 +188,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
struct drm_device *dev = intel_dig_port->base.base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_crtc *intel_crtc =
-@@ -2237,7 +2243,7 @@ intel_dp_link_down(struct intel_dp *intel_dp)
+@@ -2237,7 +2243,7 @@ intel_dp_link_down(struct intel_dp *inte
DRM_DEBUG_KMS("\n");
@@ -199,7 +197,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
DP &= ~DP_LINK_TRAIN_MASK_CPT;
I915_WRITE(intel_dp->output_reg, DP | DP_LINK_TRAIN_PAT_IDLE_CPT);
} else {
-@@ -2964,9 +2970,6 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -2980,9 +2986,6 @@ intel_dp_init_panel_power_sequencer_regi
pp_div_reg = PIPEA_PP_DIVISOR;
}
@@ -209,7 +207,7 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
/* And finally store the new values in the power sequencer. */
pp_on = (seq->t1_t3 << PANEL_POWER_UP_DELAY_SHIFT) |
(seq->t8 << PANEL_LIGHT_ON_DELAY_SHIFT);
-@@ -2980,8 +2983,10 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -2996,8 +2999,10 @@ intel_dp_init_panel_power_sequencer_regi
/* Haswell doesn't have any port selection bits for the panel
* power sequencer any more. */
@@ -222,6 +220,3 @@ index e1d39f2c70fe..63fa72d4a4c6 100644
port_sel = PANEL_POWER_PORT_DP_A;
else
port_sel = PANEL_POWER_PORT_DP_D;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0212-drm-i915-Comments-for-semaphore-clarification.patch b/patches.baytrail/0212-drm-i915-Comments-for-semaphore-clarification.patch
index cda2ca5645e38..878c930cf24fc 100644
--- a/patches.baytrail/0212-drm-i915-Comments-for-semaphore-clarification.patch
+++ b/patches.baytrail/0212-drm-i915-Comments-for-semaphore-clarification.patch
@@ -20,13 +20,11 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 5586181fce2b2e89a0e281d78ffbdfa103bb0dde)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 12 ++++++------
- drivers/gpu/drm/i915/intel_ringbuffer.c | 18 +++++++++---------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 4 ++--
+ drivers/gpu/drm/i915/i915_reg.h | 12 ++++++------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 18 +++++++++---------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 4 ++--
3 files changed, 17 insertions(+), 17 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index e29e9b17690c..f56c30ef40c8 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -265,12 +265,12 @@
@@ -48,11 +46,9 @@ index e29e9b17690c..f56c30ef40c8 100644
#define MI_SEMAPHORE_SYNC_INVALID (1<<0)
/*
* 3D instructions used by the kernel
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 4295400a39ac..ef64bb3e847c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1682,9 +1682,9 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1686,9 +1686,9 @@ int intel_init_render_ring_buffer(struct
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
ring->sync_to = gen6_ring_sync;
@@ -65,7 +61,7 @@ index 4295400a39ac..ef64bb3e847c 100644
ring->signal_mbox[0] = GEN6_VRSYNC;
ring->signal_mbox[1] = GEN6_BRSYNC;
} else if (IS_GEN5(dev)) {
-@@ -1841,9 +1841,9 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1845,9 +1845,9 @@ int intel_init_bsd_ring_buffer(struct dr
ring->irq_put = gen6_ring_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
ring->sync_to = gen6_ring_sync;
@@ -78,7 +74,7 @@ index 4295400a39ac..ef64bb3e847c 100644
ring->signal_mbox[0] = GEN6_RVSYNC;
ring->signal_mbox[1] = GEN6_BVSYNC;
} else {
-@@ -1887,9 +1887,9 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
+@@ -1891,9 +1891,9 @@ int intel_init_blt_ring_buffer(struct dr
ring->irq_put = gen6_ring_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
ring->sync_to = gen6_ring_sync;
@@ -91,8 +87,6 @@ index 4295400a39ac..ef64bb3e847c 100644
ring->signal_mbox[0] = GEN6_RBSYNC;
ring->signal_mbox[1] = GEN6_VBSYNC;
ring->init = init_ring_common;
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index ef374a892105..24268fbe6855 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -105,8 +105,8 @@ struct intel_ring_buffer {
@@ -106,6 +100,3 @@ index ef374a892105..24268fbe6855 100644
u32 signal_mbox[2]; /* mboxes this ring signals to */
/**
* List of objects currently involved in rendering from the
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0213-drm-i915-Semaphore-MBOX-update-generalization.patch b/patches.baytrail/0213-drm-i915-Semaphore-MBOX-update-generalization.patch
index 3f8028dfcceef..1ecd1896fb5f4 100644
--- a/patches.baytrail/0213-drm-i915-Semaphore-MBOX-update-generalization.patch
+++ b/patches.baytrail/0213-drm-i915-Semaphore-MBOX-update-generalization.patch
@@ -21,13 +21,11 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ad776f8b09d66e0145479fdbde2a710e5892441f)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_ringbuffer.c | 43 ++++++++++++++++++++++-----------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 5 +++-
+ drivers/gpu/drm/i915/i915_reg.h | 1
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 43 +++++++++++++++++++++-----------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 5 ++-
3 files changed, 34 insertions(+), 15 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index f56c30ef40c8..77e201b7bfda 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -593,6 +593,7 @@
@@ -38,8 +36,6 @@ index f56c30ef40c8..77e201b7bfda 100644
#define GEN6_BVSYNC (RING_SYNC_1(BLT_RING_BASE))
#define RING_MAX_IDLE(base) ((base)+0x54)
#define RING_HWS_PGA(base) ((base)+0x80)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index ef64bb3e847c..97555b7d4d0c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -581,9 +581,16 @@ static void
@@ -59,7 +55,7 @@ index ef64bb3e847c..97555b7d4d0c 100644
}
/**
-@@ -598,19 +605,24 @@ update_mboxes(struct intel_ring_buffer *ring,
+@@ -598,19 +605,24 @@ update_mboxes(struct intel_ring_buffer *
static int
gen6_add_request(struct intel_ring_buffer *ring)
{
@@ -92,7 +88,7 @@ index ef64bb3e847c..97555b7d4d0c 100644
intel_ring_emit(ring, MI_STORE_DWORD_INDEX);
intel_ring_emit(ring, I915_GEM_HWS_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
intel_ring_emit(ring, ring->outstanding_lazy_request);
-@@ -1685,8 +1697,9 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1689,8 +1701,9 @@ int intel_init_render_ring_buffer(struct
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_INVALID;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_RV;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_RB;
@@ -104,7 +100,7 @@ index ef64bb3e847c..97555b7d4d0c 100644
} else if (IS_GEN5(dev)) {
ring->add_request = pc_render_add_request;
ring->flush = gen4_render_ring_flush;
-@@ -1844,8 +1857,9 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1848,8 +1861,9 @@ int intel_init_bsd_ring_buffer(struct dr
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_VR;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_INVALID;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_VB;
@@ -116,7 +112,7 @@ index ef64bb3e847c..97555b7d4d0c 100644
} else {
ring->mmio_base = BSD_RING_BASE;
ring->flush = bsd_ring_flush;
-@@ -1890,8 +1904,9 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
+@@ -1894,8 +1908,9 @@ int intel_init_blt_ring_buffer(struct dr
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_BR;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_BV;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_INVALID;
@@ -128,8 +124,6 @@ index ef64bb3e847c..97555b7d4d0c 100644
ring->init = init_ring_common;
return intel_init_ring_buffer(dev, ring);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 24268fbe6855..f55d92eb6c2a 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -105,9 +105,12 @@ struct intel_ring_buffer {
@@ -146,6 +140,3 @@ index 24268fbe6855..f55d92eb6c2a 100644
/**
* List of objects currently involved in rendering from the
* ringbuffer.
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0215-drm-i915-Add-VECS-semaphore-bits.patch b/patches.baytrail/0215-drm-i915-Add-VECS-semaphore-bits.patch
index 8574c03bda777..dc596e4db5091 100644
--- a/patches.baytrail/0215-drm-i915-Add-VECS-semaphore-bits.patch
+++ b/patches.baytrail/0215-drm-i915-Add-VECS-semaphore-bits.patch
@@ -19,12 +19,10 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1950de14fd1b8ea27a411929156c7eccee2ad7c3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 40 ++++++++++++++++++++++-----------
- drivers/gpu/drm/i915/intel_ringbuffer.c | 6 +++++
+ drivers/gpu/drm/i915/i915_reg.h | 40 +++++++++++++++++++++-----------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 6 ++++
2 files changed, 33 insertions(+), 13 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 77e201b7bfda..cad62c893fa9 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -265,13 +265,19 @@
@@ -89,11 +87,9 @@ index 77e201b7bfda..cad62c893fa9 100644
#define RING_MAX_IDLE(base) ((base)+0x54)
#define RING_HWS_PGA(base) ((base)+0x80)
#define RING_HWS_PGA_GEN6(base) ((base)+0x2080)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 4f51e8da8dfe..7a716ec8695d 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1699,9 +1699,11 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1703,9 +1703,11 @@ int intel_init_render_ring_buffer(struct
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_INVALID;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_RV;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_RB;
@@ -105,7 +101,7 @@ index 4f51e8da8dfe..7a716ec8695d 100644
} else if (IS_GEN5(dev)) {
ring->add_request = pc_render_add_request;
ring->flush = gen4_render_ring_flush;
-@@ -1859,9 +1861,11 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1863,9 +1865,11 @@ int intel_init_bsd_ring_buffer(struct dr
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_VR;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_INVALID;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_VB;
@@ -117,7 +113,7 @@ index 4f51e8da8dfe..7a716ec8695d 100644
} else {
ring->mmio_base = BSD_RING_BASE;
ring->flush = bsd_ring_flush;
-@@ -1906,9 +1910,11 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
+@@ -1910,9 +1914,11 @@ int intel_init_blt_ring_buffer(struct dr
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_BR;
ring->semaphore_register[VCS] = MI_SEMAPHORE_SYNC_BV;
ring->semaphore_register[BCS] = MI_SEMAPHORE_SYNC_INVALID;
@@ -129,6 +125,3 @@ index 4f51e8da8dfe..7a716ec8695d 100644
ring->init = init_ring_common;
return intel_init_ring_buffer(dev, ring);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0216-drm-i915-Rename-ring-flush-functions.patch b/patches.baytrail/0216-drm-i915-Rename-ring-flush-functions.patch
index 31b58a5fe45f9..f542c7535c290 100644
--- a/patches.baytrail/0216-drm-i915-Rename-ring-flush-functions.patch
+++ b/patches.baytrail/0216-drm-i915-Rename-ring-flush-functions.patch
@@ -19,14 +19,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ea251324cac6c1e0402db073e5193f33aedd94f3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_ringbuffer.c | 12 ++++++------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 7a716ec8695d..40bf9e699599 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1576,8 +1576,8 @@ static void gen6_bsd_ring_write_tail(struct intel_ring_buffer *ring,
+@@ -1580,8 +1580,8 @@ static void gen6_bsd_ring_write_tail(str
_MASKED_BIT_DISABLE(GEN6_BSD_SLEEP_MSG_DISABLE));
}
@@ -37,7 +35,7 @@ index 7a716ec8695d..40bf9e699599 100644
{
uint32_t cmd;
int ret;
-@@ -1648,8 +1648,8 @@ gen6_ring_dispatch_execbuffer(struct intel_ring_buffer *ring,
+@@ -1652,8 +1652,8 @@ gen6_ring_dispatch_execbuffer(struct int
/* Blitter support (SandyBridge+) */
@@ -48,7 +46,7 @@ index 7a716ec8695d..40bf9e699599 100644
{
uint32_t cmd;
int ret;
-@@ -1849,7 +1849,7 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1853,7 +1853,7 @@ int intel_init_bsd_ring_buffer(struct dr
/* gen6 bsd needs a special wa for tail updates */
if (IS_GEN6(dev))
ring->write_tail = gen6_bsd_ring_write_tail;
@@ -57,7 +55,7 @@ index 7a716ec8695d..40bf9e699599 100644
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
-@@ -1898,7 +1898,7 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
+@@ -1902,7 +1902,7 @@ int intel_init_blt_ring_buffer(struct dr
ring->mmio_base = BLT_RING_BASE;
ring->write_tail = ring_write_tail;
@@ -66,6 +64,3 @@ index 7a716ec8695d..40bf9e699599 100644
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0218-drm-i915-Vebox-ringbuffer-init.patch b/patches.baytrail/0218-drm-i915-Vebox-ringbuffer-init.patch
index 3979fa93a613e..bddad734a0124 100644
--- a/patches.baytrail/0218-drm-i915-Vebox-ringbuffer-init.patch
+++ b/patches.baytrail/0218-drm-i915-Vebox-ringbuffer-init.patch
@@ -12,17 +12,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 9a8a2213a778509b724c8fda04be70528a1f7130)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem.c | 11 ++++++++++-
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_ringbuffer.c | 35 ++++++++++++++++++++++++++++++++-
- drivers/gpu/drm/i915/intel_ringbuffer.h | 1 +
+ drivers/gpu/drm/i915/i915_gem.c | 11 +++++++++-
+ drivers/gpu/drm/i915/i915_reg.h | 1
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 35 +++++++++++++++++++++++++++++++-
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 1
4 files changed, 46 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 03103eb57e32..25f327cc1127 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -4043,12 +4043,21 @@ static int i915_gem_init_rings(struct drm_device *dev)
+@@ -4043,12 +4043,21 @@ static int i915_gem_init_rings(struct dr
goto cleanup_bsd_ring;
}
@@ -45,8 +43,6 @@ index 03103eb57e32..25f327cc1127 100644
cleanup_blt_ring:
intel_cleanup_ring_buffer(&dev_priv->ring[BCS]);
cleanup_bsd_ring:
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index cad62c893fa9..4b25cbafc4f2 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -620,6 +620,7 @@
@@ -57,11 +53,9 @@ index cad62c893fa9..4b25cbafc4f2 100644
#define RING_ACTHD(base) ((base)+0x74)
#define RING_NOPID(base) ((base)+0x94)
#define RING_IMR(base) ((base)+0xa8)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 40bf9e699599..c626a943d9c2 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -915,7 +915,8 @@ void intel_ring_setup_status_page(struct intel_ring_buffer *ring)
+@@ -915,7 +915,8 @@ void intel_ring_setup_status_page(struct
mmio = BSD_HWS_PGA_GEN7;
break;
case VECS:
@@ -71,10 +65,12 @@ index 40bf9e699599..c626a943d9c2 100644
}
} else if (IS_GEN6(ring->dev)) {
mmio = RING_HWS_PGA_GEN6(ring->mmio_base);
-@@ -1920,6 +1921,38 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
- return intel_init_ring_buffer(dev, ring);
- }
+@@ -1922,6 +1923,38 @@ int intel_init_blt_ring_buffer(struct dr
+ ring->init = init_ring_common;
+ return intel_init_ring_buffer(dev, ring);
++}
++
+int intel_init_vebox_ring_buffer(struct drm_device *dev)
+{
+ drm_i915_private_t *dev_priv = dev->dev_private;
@@ -105,16 +101,12 @@ index 40bf9e699599..c626a943d9c2 100644
+ ring->init = init_ring_common;
+
+ return intel_init_ring_buffer(dev, ring);
-+}
-+
+ }
+
int
- intel_ring_flush_all_caches(struct intel_ring_buffer *ring)
- {
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 73619cb34631..1c79520c7e45 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
-@@ -234,6 +234,7 @@ int intel_ring_invalidate_all_caches(struct intel_ring_buffer *ring);
+@@ -234,6 +234,7 @@ int intel_ring_invalidate_all_caches(str
int intel_init_render_ring_buffer(struct drm_device *dev);
int intel_init_bsd_ring_buffer(struct drm_device *dev);
int intel_init_blt_ring_buffer(struct drm_device *dev);
@@ -122,6 +114,3 @@ index 73619cb34631..1c79520c7e45 100644
u32 intel_ring_get_active_head(struct intel_ring_buffer *ring);
void intel_ring_setup_status_page(struct intel_ring_buffer *ring);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0220-drm-i915-properly-set-HSW-WM_PIPE-registers.patch b/patches.baytrail/0220-drm-i915-properly-set-HSW-WM_PIPE-registers.patch
index dcef57249e38b..26867115d3722 100644
--- a/patches.baytrail/0220-drm-i915-properly-set-HSW-WM_PIPE-registers.patch
+++ b/patches.baytrail/0220-drm-i915-properly-set-HSW-WM_PIPE-registers.patch
@@ -32,15 +32,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 801bcfffbb0721d7131e930f9a46103e539c43a4)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 3 +
- drivers/gpu/drm/i915/intel_pm.c | 342 +++++++++++++++++++++++++++++++++++++---
+ drivers/gpu/drm/i915/i915_reg.h | 3
+ drivers/gpu/drm/i915/intel_pm.c | 342 +++++++++++++++++++++++++++++++++++++---
2 files changed, 327 insertions(+), 18 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 4b25cbafc4f2..a2a4bc6dfe57 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4953,6 +4953,9 @@
+@@ -4957,6 +4957,9 @@
#define SFUSE_STRAP_DDIC_DETECTED (1<<1)
#define SFUSE_STRAP_DDID_DETECTED (1<<0)
@@ -50,11 +48,9 @@ index 4b25cbafc4f2..a2a4bc6dfe57 100644
#define WM_DBG 0x45280
#define WM_DBG_DISALLOW_MULTIPLE_LP (1<<0)
#define WM_DBG_DISALLOW_MAXFIFO (1<<1)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 6d189cde8591..bbd2a06718b1 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -2072,19 +2072,170 @@ static void ivybridge_update_wm(struct drm_device *dev)
+@@ -2072,19 +2072,170 @@ static void ivybridge_update_wm(struct d
cursor_wm);
}
@@ -232,7 +228,7 @@ index 6d189cde8591..bbd2a06718b1 100644
/* The WM are computed with base on how long it takes to fill a single
* row at the given clock rate, multiplied by 8.
-@@ -2093,29 +2244,184 @@ haswell_update_linetime_wm(struct drm_device *dev, struct drm_crtc *crtc)
+@@ -2093,29 +2244,184 @@ haswell_update_linetime_wm(struct drm_de
ips_linetime = DIV_ROUND_CLOSEST(mode->htotal * 1000 * 8,
intel_ddi_get_cdclk_freq(dev_priv));
@@ -247,18 +243,13 @@ index 6d189cde8591..bbd2a06718b1 100644
+static void hsw_compute_wm_parameters(struct drm_device *dev,
+ struct hsw_pipe_wm_parameters *params,
+ uint32_t *wm)
- {
- struct drm_i915_private *dev_priv = dev->dev_private;
- struct drm_crtc *crtc;
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ struct drm_crtc *crtc;
+ struct drm_plane *plane;
+ uint64_t sskpd = I915_READ64(MCH_SSKPD);
- enum pipe pipe;
-
-- /* Disable the LP WMs before changine the linetime registers. This is
-- * just a temporary code that will be replaced soon. */
-- I915_WRITE(WM3_LP_ILK, 0);
-- I915_WRITE(WM2_LP_ILK, 0);
-- I915_WRITE(WM1_LP_ILK, 0);
++ enum pipe pipe;
++
+ if ((sskpd >> 56) & 0xFF)
+ wm[0] = (sskpd >> 56) & 0xFF;
+ else
@@ -305,11 +296,16 @@ index 6d189cde8591..bbd2a06718b1 100644
+ struct hsw_pipe_wm_parameters *params,
+ uint32_t *wm,
+ struct hsw_wm_values *results)
-+{
-+ struct drm_i915_private *dev_priv = dev->dev_private;
-+ struct drm_crtc *crtc;
-+ enum pipe pipe;
-+
+ {
+ struct drm_i915_private *dev_priv = dev->dev_private;
+ struct drm_crtc *crtc;
+ enum pipe pipe;
+
+- /* Disable the LP WMs before changine the linetime registers. This is
+- * just a temporary code that will be replaced soon. */
+- I915_WRITE(WM3_LP_ILK, 0);
+- I915_WRITE(WM2_LP_ILK, 0);
+- I915_WRITE(WM1_LP_ILK, 0);
+ /* No support for LP WMs yet. */
+ results->wm_lp[2] = 0;
+ results->wm_lp[1] = 0;
@@ -327,7 +323,7 @@ index 6d189cde8591..bbd2a06718b1 100644
crtc = dev_priv->pipe_to_crtc_mapping[pipe];
- haswell_update_linetime_wm(dev, crtc);
+ results->wm_linetime[pipe] = hsw_compute_linetime_wm(dev, crtc);
- }
++ }
+}
+
+/*
@@ -397,8 +393,9 @@ index 6d189cde8591..bbd2a06718b1 100644
+ else
+ val |= WM_MISC_DATA_PARTITION_5_6;
+ I915_WRITE(WM_MISC, val);
-+ }
-+
+ }
+
+- sandybridge_update_wm(dev);
+ if (previous.wm_lp_spr[0] != results->wm_lp_spr[0])
+ I915_WRITE(WM1S_LP_ILK, results->wm_lp_spr[0]);
+ if (previous.wm_lp_spr[1] != results->wm_lp_spr[1])
@@ -420,14 +417,10 @@ index 6d189cde8591..bbd2a06718b1 100644
+ struct hsw_pipe_wm_parameters params[3];
+ struct hsw_wm_values results;
+ uint32_t wm[5];
-
-- sandybridge_update_wm(dev);
++
+ hsw_compute_wm_parameters(dev, params, wm);
+ hsw_compute_wm_results(dev, params, wm, &results);
+ hsw_write_wm_values(dev_priv, &results, HSW_DATA_BUF_PART_1_2);
}
static void haswell_update_sprite_wm(struct drm_device *dev, int pipe,
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0221-drm-i915-properly-set-HSW-WM_LP-watermarks.patch b/patches.baytrail/0221-drm-i915-properly-set-HSW-WM_LP-watermarks.patch
index b72c5f47d4e2f..5294d86db3843 100644
--- a/patches.baytrail/0221-drm-i915-properly-set-HSW-WM_LP-watermarks.patch
+++ b/patches.baytrail/0221-drm-i915-properly-set-HSW-WM_LP-watermarks.patch
@@ -23,15 +23,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit cca32e9ad372172c808b93eebff536459ce37d85)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 +
- drivers/gpu/drm/i915/intel_pm.c | 179 ++++++++++++++++++++++++++++++++++++----
+ drivers/gpu/drm/i915/i915_reg.h | 4
+ drivers/gpu/drm/i915/intel_pm.c | 179 +++++++++++++++++++++++++++++++++++-----
2 files changed, 165 insertions(+), 18 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index a2a4bc6dfe57..8fdafd4619ae 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3106,6 +3106,10 @@
+@@ -3110,6 +3110,10 @@
#define WM3S_LP_IVB 0x45128
#define WM1S_LP_EN (1<<31)
@@ -42,11 +40,9 @@ index a2a4bc6dfe57..8fdafd4619ae 100644
/* Memory latency timer register */
#define MLTR_ILK 0x11222
#define MLTR_WM1_SHIFT 0
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index bbd2a06718b1..bc476bc15916 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -2129,6 +2129,12 @@ static uint32_t hsw_wm_method2(uint32_t pixel_rate, uint32_t pipe_htotal,
+@@ -2129,6 +2129,12 @@ static uint32_t hsw_wm_method2(uint32_t
return ret;
}
@@ -126,7 +122,7 @@ index bbd2a06718b1..bc476bc15916 100644
}
/* For both WM_PIPE and WM_LP. */
-@@ -2201,13 +2238,60 @@ static uint32_t hsw_compute_cur_wm(struct hsw_pipe_wm_parameters *params,
+@@ -2201,13 +2238,60 @@ static uint32_t hsw_compute_cur_wm(struc
mem_value);
}
@@ -188,7 +184,7 @@ index bbd2a06718b1..bc476bc15916 100644
spr_val = hsw_compute_spr_wm(params, mem_value);
cur_val = hsw_compute_cur_wm(params, mem_value);
-@@ -2250,13 +2334,15 @@ hsw_compute_linetime_wm(struct drm_device *dev, struct drm_crtc *crtc)
+@@ -2250,13 +2334,15 @@ hsw_compute_linetime_wm(struct drm_devic
static void hsw_compute_wm_parameters(struct drm_device *dev,
struct hsw_pipe_wm_parameters *params,
@@ -205,7 +201,7 @@ index bbd2a06718b1..bc476bc15916 100644
if ((sskpd >> 56) & 0xFF)
wm[0] = (sskpd >> 56) & 0xFF;
-@@ -2278,6 +2364,8 @@ static void hsw_compute_wm_parameters(struct drm_device *dev,
+@@ -2278,6 +2364,8 @@ static void hsw_compute_wm_parameters(st
if (!p->active)
continue;
@@ -214,14 +210,14 @@ index bbd2a06718b1..bc476bc15916 100644
p->pipe_htotal = intel_crtc->config.adjusted_mode.htotal;
p->pixel_rate = hsw_wm_get_pixel_rate(dev, crtc);
p->pri_bytes_per_pixel = crtc->fb->bits_per_pixel / 8;
-@@ -2297,25 +2385,66 @@ static void hsw_compute_wm_parameters(struct drm_device *dev,
+@@ -2297,25 +2385,66 @@ static void hsw_compute_wm_parameters(st
p->sprite_enabled = intel_plane->wm.enable;
p->spr_bytes_per_pixel = intel_plane->wm.bytes_per_pixel;
p->spr_horiz_pixels = intel_plane->wm.horiz_pixels;
+
+ if (p->sprite_enabled)
+ sprites_enabled++;
-+ }
+ }
+
+ if (pipes_active > 1) {
+ lp_max_1_2->pri = sprites_enabled ? 128 : 256;
@@ -231,7 +227,7 @@ index bbd2a06718b1..bc476bc15916 100644
+ lp_max_1_2->pri = sprites_enabled ? 384 : 768;
+ lp_max_1_2->spr = 384;
+ lp_max_1_2->cur = 255;
- }
++ }
+ lp_max_1_2->fbc = 15;
}
@@ -262,10 +258,6 @@ index bbd2a06718b1..bc476bc15916 100644
+ break;
+ }
+ }
-+
-+ memset(results, 0, sizeof(*results));
-+ for (wm_lp = 1; wm_lp <= 3; wm_lp++) {
-+ const struct hsw_lp_wm_result *r;
- /* No support for LP WMs yet. */
- results->wm_lp[2] = 0;
@@ -274,6 +266,10 @@ index bbd2a06718b1..bc476bc15916 100644
- results->wm_lp_spr[2] = 0;
- results->wm_lp_spr[1] = 0;
- results->wm_lp_spr[0] = 0;
++ memset(results, 0, sizeof(*results));
++ for (wm_lp = 1; wm_lp <= 3; wm_lp++) {
++ const struct hsw_lp_wm_result *r;
++
+ level = (max_level == 4 && wm_lp > 1) ? wm_lp + 1 : wm_lp;
+ if (level > max_level)
+ break;
@@ -288,7 +284,7 @@ index bbd2a06718b1..bc476bc15916 100644
for_each_pipe(pipe)
results->wm_pipe[pipe] = hsw_compute_wm_pipe(dev_priv, wm[0],
-@@ -2339,6 +2468,7 @@ static void hsw_write_wm_values(struct drm_i915_private *dev_priv,
+@@ -2339,6 +2468,7 @@ static void hsw_write_wm_values(struct d
struct hsw_wm_values previous;
uint32_t val;
enum hsw_data_buf_partitioning prev_partitioning;
@@ -296,7 +292,7 @@ index bbd2a06718b1..bc476bc15916 100644
previous.wm_pipe[0] = I915_READ(WM0_PIPEA_ILK);
previous.wm_pipe[1] = I915_READ(WM0_PIPEB_ILK);
-@@ -2356,6 +2486,8 @@ static void hsw_write_wm_values(struct drm_i915_private *dev_priv,
+@@ -2356,6 +2486,8 @@ static void hsw_write_wm_values(struct d
prev_partitioning = (I915_READ(WM_MISC) & WM_MISC_DATA_PARTITION_5_6) ?
HSW_DATA_BUF_PART_5_6 : HSW_DATA_BUF_PART_1_2;
@@ -305,7 +301,7 @@ index bbd2a06718b1..bc476bc15916 100644
if (memcmp(results->wm_pipe, previous.wm_pipe,
sizeof(results->wm_pipe)) == 0 &&
memcmp(results->wm_lp, previous.wm_lp,
-@@ -2364,7 +2496,8 @@ static void hsw_write_wm_values(struct drm_i915_private *dev_priv,
+@@ -2364,7 +2496,8 @@ static void hsw_write_wm_values(struct d
sizeof(results->wm_lp_spr)) == 0 &&
memcmp(results->wm_linetime, previous.wm_linetime,
sizeof(results->wm_linetime)) == 0 &&
@@ -315,7 +311,7 @@ index bbd2a06718b1..bc476bc15916 100644
return;
if (previous.wm_lp[2] != 0)
-@@ -2397,6 +2530,15 @@ static void hsw_write_wm_values(struct drm_i915_private *dev_priv,
+@@ -2397,6 +2530,15 @@ static void hsw_write_wm_values(struct d
I915_WRITE(WM_MISC, val);
}
@@ -331,7 +327,7 @@ index bbd2a06718b1..bc476bc15916 100644
if (previous.wm_lp_spr[0] != results->wm_lp_spr[0])
I915_WRITE(WM1S_LP_ILK, results->wm_lp_spr[0]);
if (previous.wm_lp_spr[1] != results->wm_lp_spr[1])
-@@ -2415,12 +2557,13 @@ static void hsw_write_wm_values(struct drm_i915_private *dev_priv,
+@@ -2415,12 +2557,13 @@ static void hsw_write_wm_values(struct d
static void haswell_update_wm(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -347,6 +343,3 @@ index bbd2a06718b1..bc476bc15916 100644
hsw_write_wm_values(dev_priv, &results, HSW_DATA_BUF_PART_1_2);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0226-drm-i915-make-PM-interrupt-writes-non-destructive.patch b/patches.baytrail/0226-drm-i915-make-PM-interrupt-writes-non-destructive.patch
index 07446d483d247..6ed25279fb87c 100644
--- a/patches.baytrail/0226-drm-i915-make-PM-interrupt-writes-non-destructive.patch
+++ b/patches.baytrail/0226-drm-i915-make-PM-interrupt-writes-non-destructive.patch
@@ -46,16 +46,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 4848405cced3b46f4ec7d404b8ed5873171ae10a)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 21 +++++++++++----------
- drivers/gpu/drm/i915/i915_reg.h | 2 +-
- drivers/gpu/drm/i915/intel_pm.c | 13 +++++++------
+ drivers/gpu/drm/i915/i915_irq.c | 21 +++++++++++----------
+ drivers/gpu/drm/i915/i915_reg.h | 2 +-
+ drivers/gpu/drm/i915/intel_pm.c | 13 +++++++------
3 files changed, 19 insertions(+), 17 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index c150f90b5770..19734c719ef8 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -691,10 +691,11 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -691,10 +691,11 @@ static void gen6_pm_rps_work(struct work
pm_iir = dev_priv->rps.pm_iir;
dev_priv->rps.pm_iir = 0;
pm_imr = I915_READ(GEN6_PMIMR);
@@ -69,7 +67,7 @@ index c150f90b5770..19734c719ef8 100644
return;
mutex_lock(&dev_priv->rps.hw_lock);
-@@ -924,17 +925,17 @@ static void hsw_pm_irq_handler(struct drm_i915_private *dev_priv,
+@@ -924,17 +925,17 @@ static void hsw_pm_irq_handler(struct dr
unsigned long flags;
spin_lock_irqsave(&dev_priv->rps.lock, flags);
@@ -90,7 +88,7 @@ index c150f90b5770..19734c719ef8 100644
DRM_ERROR("Unexpected PM interrupted\n");
}
-@@ -1009,7 +1010,7 @@ static irqreturn_t valleyview_irq_handler(int irq, void *arg)
+@@ -1009,7 +1010,7 @@ static irqreturn_t valleyview_irq_handle
if (pipe_stats[0] & PIPE_GMBUS_INTERRUPT_STATUS)
gmbus_irq_handler(dev);
@@ -99,7 +97,7 @@ index c150f90b5770..19734c719ef8 100644
gen6_queue_rps_work(dev_priv, pm_iir);
I915_WRITE(GTIIR, gt_iir);
-@@ -1250,7 +1251,7 @@ static irqreturn_t ivybridge_irq_handler(int irq, void *arg)
+@@ -1250,7 +1251,7 @@ static irqreturn_t ivybridge_irq_handler
if (pm_iir) {
if (IS_HASWELL(dev))
hsw_pm_irq_handler(dev_priv, pm_iir);
@@ -108,7 +106,7 @@ index c150f90b5770..19734c719ef8 100644
gen6_queue_rps_work(dev_priv, pm_iir);
I915_WRITE(GEN6_PMIIR, pm_iir);
ret = IRQ_HANDLED;
-@@ -1365,7 +1366,7 @@ static irqreturn_t ironlake_irq_handler(int irq, void *arg)
+@@ -1365,7 +1366,7 @@ static irqreturn_t ironlake_irq_handler(
if (IS_GEN5(dev) && de_iir & DE_PCU_EVENT)
ironlake_handle_rps_change(dev);
@@ -117,7 +115,7 @@ index c150f90b5770..19734c719ef8 100644
gen6_queue_rps_work(dev_priv, pm_iir);
I915_WRITE(GTIIR, gt_iir);
-@@ -2753,8 +2754,8 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2753,8 +2754,8 @@ static int ivybridge_irq_postinstall(str
POSTING_READ(GTIER);
/* Power management */
@@ -128,11 +126,9 @@ index c150f90b5770..19734c719ef8 100644
POSTING_READ(GEN6_PMIMR);
ibx_irq_postinstall(dev);
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 8fdafd4619ae..30f6cfe91d1b 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4572,7 +4572,7 @@
+@@ -4576,7 +4576,7 @@
#define GEN6_PM_RP_DOWN_THRESHOLD (1<<4)
#define GEN6_PM_RP_UP_EI_EXPIRED (1<<2)
#define GEN6_PM_RP_DOWN_EI_EXPIRED (1<<1)
@@ -141,11 +137,9 @@ index 8fdafd4619ae..30f6cfe91d1b 100644
GEN6_PM_RP_DOWN_THRESHOLD | \
GEN6_PM_RP_DOWN_TIMEOUT)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 5890c610db3c..8af5c12e944d 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3116,7 +3116,7 @@ static void gen6_disable_rps(struct drm_device *dev)
+@@ -3116,7 +3116,7 @@ static void gen6_disable_rps(struct drm_
I915_WRITE(GEN6_RC_CONTROL, 0);
I915_WRITE(GEN6_RPNSWREQ, 1 << 31);
I915_WRITE(GEN6_PMINTRMSK, 0xffffffff);
@@ -154,7 +148,7 @@ index 5890c610db3c..8af5c12e944d 100644
/* Complete PM interrupt masking here doesn't race with the rps work
* item again unmasking PM interrupts because that is using a different
* register (PMIMR) to mask PM interrupts. The only risk is in leaving
-@@ -3126,7 +3126,7 @@ static void gen6_disable_rps(struct drm_device *dev)
+@@ -3126,7 +3126,7 @@ static void gen6_disable_rps(struct drm_
dev_priv->rps.pm_iir = 0;
spin_unlock_irq(&dev_priv->rps.lock);
@@ -163,7 +157,7 @@ index 5890c610db3c..8af5c12e944d 100644
}
static void valleyview_disable_rps(struct drm_device *dev)
-@@ -3307,14 +3307,15 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3307,14 +3307,15 @@ static void gen6_enable_rps(struct drm_d
gen6_set_rps(dev_priv->dev, (gt_perf_status & 0xff00) >> 8);
/* requires MSI enabled */
@@ -182,7 +176,7 @@ index 5890c610db3c..8af5c12e944d 100644
I915_WRITE(GEN6_PMINTRMSK, 0);
rc6vids = 0;
-@@ -3577,7 +3578,7 @@ static void valleyview_enable_rps(struct drm_device *dev)
+@@ -3577,7 +3578,7 @@ static void valleyview_enable_rps(struct
valleyview_set_rps(dev_priv->dev, rpe);
/* requires MSI enabled */
@@ -191,6 +185,3 @@ index 5890c610db3c..8af5c12e944d 100644
spin_lock_irq(&dev_priv->rps.lock);
WARN_ON(dev_priv->rps.pm_iir != 0);
I915_WRITE(GEN6_PMIMR, 0);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0228-drm-i915-consolidate-interrupt-naming-scheme.patch b/patches.baytrail/0228-drm-i915-consolidate-interrupt-naming-scheme.patch
index 0be817f8ee79f..44419f5de0f45 100644
--- a/patches.baytrail/0228-drm-i915-consolidate-interrupt-naming-scheme.patch
+++ b/patches.baytrail/0228-drm-i915-consolidate-interrupt-naming-scheme.patch
@@ -26,16 +26,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit cc609d5da5c78c92a2e2565604b2603a0965b494)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 61 ++++++++++---------
- drivers/gpu/drm/i915/i915_reg.h | 101 ++++++++++++++------------------
- drivers/gpu/drm/i915/intel_ringbuffer.c | 21 ++++---
+ drivers/gpu/drm/i915/i915_irq.c | 61 +++++++++----------
+ drivers/gpu/drm/i915/i915_reg.h | 101 +++++++++++++-------------------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 21 +++---
3 files changed, 85 insertions(+), 98 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 19734c719ef8..7eabe79680c7 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -771,7 +771,7 @@ static void ivybridge_parity_work(struct work_struct *work)
+@@ -771,7 +771,7 @@ static void ivybridge_parity_work(struct
I915_WRITE(GEN7_MISCCPCTL, misccpctl);
spin_lock_irqsave(&dev_priv->irq_lock, flags);
@@ -44,7 +42,7 @@ index 19734c719ef8..7eabe79680c7 100644
I915_WRITE(GTIMR, dev_priv->gt_irq_mask);
spin_unlock_irqrestore(&dev_priv->irq_lock, flags);
-@@ -803,7 +803,7 @@ static void ivybridge_handle_parity_error(struct drm_device *dev)
+@@ -803,7 +803,7 @@ static void ivybridge_handle_parity_erro
return;
spin_lock_irqsave(&dev_priv->irq_lock, flags);
@@ -53,7 +51,7 @@ index 19734c719ef8..7eabe79680c7 100644
I915_WRITE(GTIMR, dev_priv->gt_irq_mask);
spin_unlock_irqrestore(&dev_priv->irq_lock, flags);
-@@ -815,22 +815,22 @@ static void snb_gt_irq_handler(struct drm_device *dev,
+@@ -815,22 +815,22 @@ static void snb_gt_irq_handler(struct dr
u32 gt_iir)
{
@@ -84,7 +82,7 @@ index 19734c719ef8..7eabe79680c7 100644
ivybridge_handle_parity_error(dev);
}
-@@ -1274,9 +1274,10 @@ static void ilk_gt_irq_handler(struct drm_device *dev,
+@@ -1274,9 +1274,10 @@ static void ilk_gt_irq_handler(struct dr
struct drm_i915_private *dev_priv,
u32 gt_iir)
{
@@ -97,7 +95,7 @@ index 19734c719ef8..7eabe79680c7 100644
notify_ring(dev, &dev_priv->ring[VCS]);
}
-@@ -2677,7 +2678,7 @@ static int ironlake_irq_postinstall(struct drm_device *dev)
+@@ -2677,7 +2678,7 @@ static int ironlake_irq_postinstall(stru
DE_PLANEA_FLIP_DONE | DE_PLANEB_FLIP_DONE |
DE_AUX_CHANNEL_A | DE_PIPEB_FIFO_UNDERRUN |
DE_PIPEA_FIFO_UNDERRUN | DE_POISON;
@@ -106,7 +104,7 @@ index 19734c719ef8..7eabe79680c7 100644
dev_priv->irq_mask = ~display_mask;
-@@ -2692,17 +2693,15 @@ static int ironlake_irq_postinstall(struct drm_device *dev)
+@@ -2692,17 +2693,15 @@ static int ironlake_irq_postinstall(stru
I915_WRITE(GTIIR, I915_READ(GTIIR));
I915_WRITE(GTIMR, dev_priv->gt_irq_mask);
@@ -131,7 +129,7 @@ index 19734c719ef8..7eabe79680c7 100644
POSTING_READ(GTIER);
ibx_irq_postinstall(dev);
-@@ -2728,7 +2727,7 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2728,7 +2727,7 @@ static int ivybridge_irq_postinstall(str
DE_PLANEA_FLIP_DONE_IVB |
DE_AUX_CHANNEL_A_IVB |
DE_ERR_INT_IVB;
@@ -140,7 +138,7 @@ index 19734c719ef8..7eabe79680c7 100644
dev_priv->irq_mask = ~display_mask;
-@@ -2743,14 +2742,14 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2743,14 +2742,14 @@ static int ivybridge_irq_postinstall(str
DE_PIPEA_VBLANK_IVB);
POSTING_READ(DEIER);
@@ -159,7 +157,7 @@ index 19734c719ef8..7eabe79680c7 100644
POSTING_READ(GTIER);
/* Power management */
-@@ -2766,9 +2765,9 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2766,9 +2765,9 @@ static int ivybridge_irq_postinstall(str
static int valleyview_irq_postinstall(struct drm_device *dev)
{
drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
@@ -170,7 +168,7 @@ index 19734c719ef8..7eabe79680c7 100644
enable_mask = I915_DISPLAY_PORT_INTERRUPT;
enable_mask |= I915_DISPLAY_PIPE_A_EVENT_INTERRUPT |
-@@ -2804,9 +2803,9 @@ static int valleyview_irq_postinstall(struct drm_device *dev)
+@@ -2804,9 +2803,9 @@ static int valleyview_irq_postinstall(st
I915_WRITE(GTIIR, I915_READ(GTIIR));
I915_WRITE(GTIMR, dev_priv->gt_irq_mask);
@@ -183,8 +181,6 @@ index 19734c719ef8..7eabe79680c7 100644
POSTING_READ(GTIER);
/* ack & enable invalid PTE error interrupts */
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 30f6cfe91d1b..ef1c471b1909 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -742,24 +742,6 @@
@@ -294,7 +290,7 @@ index 30f6cfe91d1b..ef1c471b1909 100644
#define GEN6_BSD_RNCID 0x12198
-@@ -3720,21 +3720,6 @@
+@@ -3724,21 +3724,6 @@
#define DEIIR 0x44008
#define DEIER 0x4400c
@@ -316,11 +312,9 @@ index 30f6cfe91d1b..ef1c471b1909 100644
#define GTISR 0x44010
#define GTIMR 0x44014
#define GTIIR 0x44018
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 8246213ffada..5ce12be4faeb 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -556,7 +556,7 @@ static int init_render_ring(struct intel_ring_buffer *ring)
+@@ -556,7 +556,7 @@ static int init_render_ring(struct intel
I915_WRITE(INSTPM, _MASKED_BIT_ENABLE(INSTPM_FORCE_ORDERING));
if (HAS_L3_GPU_CACHE(dev))
@@ -329,7 +323,7 @@ index 8246213ffada..5ce12be4faeb 100644
return ret;
}
-@@ -993,8 +993,9 @@ gen6_ring_get_irq(struct intel_ring_buffer *ring)
+@@ -993,8 +993,9 @@ gen6_ring_get_irq(struct intel_ring_buff
spin_lock_irqsave(&dev_priv->irq_lock, flags);
if (ring->irq_refcount.gt++ == 0) {
if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS)
@@ -341,7 +335,7 @@ index 8246213ffada..5ce12be4faeb 100644
else
I915_WRITE_IMR(ring, ~ring->irq_enable_mask);
dev_priv->gt_irq_mask &= ~ring->irq_enable_mask;
-@@ -1016,7 +1017,8 @@ gen6_ring_put_irq(struct intel_ring_buffer *ring)
+@@ -1016,7 +1017,8 @@ gen6_ring_put_irq(struct intel_ring_buff
spin_lock_irqsave(&dev_priv->irq_lock, flags);
if (--ring->irq_refcount.gt == 0) {
if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS)
@@ -351,7 +345,7 @@ index 8246213ffada..5ce12be4faeb 100644
else
I915_WRITE_IMR(ring, ~0);
dev_priv->gt_irq_mask |= ring->irq_enable_mask;
-@@ -1693,7 +1695,7 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1697,7 +1699,7 @@ int intel_init_render_ring_buffer(struct
ring->flush = gen6_render_ring_flush;
ring->irq_get = gen6_ring_get_irq;
ring->irq_put = gen6_ring_put_irq;
@@ -360,7 +354,7 @@ index 8246213ffada..5ce12be4faeb 100644
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
ring->sync_to = gen6_ring_sync;
-@@ -1712,7 +1714,8 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1716,7 +1718,8 @@ int intel_init_render_ring_buffer(struct
ring->set_seqno = pc_render_set_seqno;
ring->irq_get = gen5_ring_get_irq;
ring->irq_put = gen5_ring_put_irq;
@@ -370,7 +364,7 @@ index 8246213ffada..5ce12be4faeb 100644
} else {
ring->add_request = i9xx_add_request;
if (INTEL_INFO(dev)->gen < 4)
-@@ -1854,7 +1857,7 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1858,7 +1861,7 @@ int intel_init_bsd_ring_buffer(struct dr
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
@@ -379,7 +373,7 @@ index 8246213ffada..5ce12be4faeb 100644
ring->irq_get = gen6_ring_get_irq;
ring->irq_put = gen6_ring_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
-@@ -1874,7 +1877,7 @@ int intel_init_bsd_ring_buffer(struct drm_device *dev)
+@@ -1878,7 +1881,7 @@ int intel_init_bsd_ring_buffer(struct dr
ring->get_seqno = ring_get_seqno;
ring->set_seqno = ring_set_seqno;
if (IS_GEN5(dev)) {
@@ -388,7 +382,7 @@ index 8246213ffada..5ce12be4faeb 100644
ring->irq_get = gen5_ring_get_irq;
ring->irq_put = gen5_ring_put_irq;
} else {
-@@ -1903,7 +1906,7 @@ int intel_init_blt_ring_buffer(struct drm_device *dev)
+@@ -1907,7 +1910,7 @@ int intel_init_blt_ring_buffer(struct dr
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
@@ -397,6 +391,3 @@ index 8246213ffada..5ce12be4faeb 100644
ring->irq_get = gen6_ring_get_irq;
ring->irq_put = gen6_ring_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0229-drm-i915-vebox-interrupt-get-put.patch b/patches.baytrail/0229-drm-i915-vebox-interrupt-get-put.patch
index f57b076a1dd28..43aaedd8e169a 100644
--- a/patches.baytrail/0229-drm-i915-vebox-interrupt-get-put.patch
+++ b/patches.baytrail/0229-drm-i915-vebox-interrupt-get-put.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a19d2933cbc4c7b8e3d72e9fd2d48847c25bb41d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_ringbuffer.c | 46 +++++++++++++++++++++++++++++++--
- drivers/gpu/drm/i915/intel_ringbuffer.h | 5 ++--
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 46 ++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 5 ++-
2 files changed, 47 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 5ce12be4faeb..81a397bb2424 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1030,6 +1030,48 @@ gen6_ring_put_irq(struct intel_ring_buffer *ring)
+@@ -1030,6 +1030,48 @@ gen6_ring_put_irq(struct intel_ring_buff
gen6_gt_force_wake_put(dev_priv);
}
@@ -70,7 +68,7 @@ index 5ce12be4faeb..81a397bb2424 100644
static int
i965_dispatch_execbuffer(struct intel_ring_buffer *ring,
u32 offset, u32 length,
-@@ -1939,8 +1981,8 @@ int intel_init_vebox_ring_buffer(struct drm_device *dev)
+@@ -1943,8 +1985,8 @@ int intel_init_vebox_ring_buffer(struct
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
ring->irq_enable_mask = 0;
@@ -81,8 +79,6 @@ index 5ce12be4faeb..81a397bb2424 100644
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
ring->sync_to = gen6_ring_sync;
ring->semaphore_register[RCS] = MI_SEMAPHORE_SYNC_VER;
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 153b87f67aae..022d07e43d12 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -73,8 +73,9 @@ struct intel_ring_buffer {
@@ -97,6 +93,3 @@ index 153b87f67aae..022d07e43d12 100644
u32 irq_enable_mask; /* bitmask to enable ring interrupt */
u32 trace_irq_seqno;
u32 sync_seqno[I915_NUM_RINGS-1];
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0230-drm-i915-Enable-vebox-interrupts.patch b/patches.baytrail/0230-drm-i915-Enable-vebox-interrupts.patch
index 66cf2db00d292..a9fe609331d97 100644
--- a/patches.baytrail/0230-drm-i915-Enable-vebox-interrupts.patch
+++ b/patches.baytrail/0230-drm-i915-Enable-vebox-interrupts.patch
@@ -19,16 +19,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 12638c57f31952127c734c26315e1348fa1334c2)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 31 +++++++++++++++++++++++++------
- drivers/gpu/drm/i915/i915_reg.h | 3 +++
- drivers/gpu/drm/i915/intel_ringbuffer.c | 3 ++-
+ drivers/gpu/drm/i915/i915_irq.c | 31 +++++++++++++++++++++++++------
+ drivers/gpu/drm/i915/i915_reg.h | 3 +++
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 3 ++-
3 files changed, 30 insertions(+), 7 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 7eabe79680c7..ea396518baab 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -935,8 +935,15 @@ static void hsw_pm_irq_handler(struct drm_i915_private *dev_priv,
+@@ -935,8 +935,15 @@ static void hsw_pm_irq_handler(struct dr
}
spin_unlock_irqrestore(&dev_priv->rps.lock, flags);
@@ -46,7 +44,7 @@ index 7eabe79680c7..ea396518baab 100644
}
static irqreturn_t valleyview_irq_handler(int irq, void *arg)
-@@ -2727,6 +2734,7 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2727,6 +2734,7 @@ static int ivybridge_irq_postinstall(str
DE_PLANEA_FLIP_DONE_IVB |
DE_AUX_CHANNEL_A_IVB |
DE_ERR_INT_IVB;
@@ -54,7 +52,7 @@ index 7eabe79680c7..ea396518baab 100644
u32 gt_irqs;
dev_priv->irq_mask = ~display_mask;
-@@ -2752,10 +2760,21 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2752,10 +2760,21 @@ static int ivybridge_irq_postinstall(str
I915_WRITE(GTIER, gt_irqs);
POSTING_READ(GTIER);
@@ -80,8 +78,6 @@ index 7eabe79680c7..ea396518baab 100644
ibx_irq_postinstall(dev);
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index ef1c471b1909..aabc67104272 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -888,6 +888,9 @@
@@ -94,11 +90,9 @@ index ef1c471b1909..aabc67104272 100644
/* These are all the "old" interrupts */
#define ILK_BSD_USER_INTERRUPT (1<<5)
#define I915_PIPE_CONTROL_NOTIFY_INTERRUPT (1<<18)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 81a397bb2424..cd2daf2f5dd7 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1980,7 +1980,8 @@ int intel_init_vebox_ring_buffer(struct drm_device *dev)
+@@ -1984,7 +1984,8 @@ int intel_init_vebox_ring_buffer(struct
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
@@ -108,6 +102,3 @@ index 81a397bb2424..cd2daf2f5dd7 100644
ring->irq_get = hsw_vebox_get_irq;
ring->irq_put = hsw_vebox_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0235-drm-i915-implement-IPS-feature.patch b/patches.baytrail/0235-drm-i915-implement-IPS-feature.patch
index 54864070847d4..da190d9e46778 100644
--- a/patches.baytrail/0235-drm-i915-implement-IPS-feature.patch
+++ b/patches.baytrail/0235-drm-i915-implement-IPS-feature.patch
@@ -26,13 +26,11 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 42db64efcd95014570835c7b0a08277c60486f07)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 11 +++++
- drivers/gpu/drm/i915/intel_display.c | 78 ++++++++++++++++++++++++++++++++++--
- drivers/gpu/drm/i915/intel_drv.h | 2 +
+ drivers/gpu/drm/i915/i915_reg.h | 11 ++++
+ drivers/gpu/drm/i915/intel_display.c | 78 +++++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/i915/intel_drv.h | 2
3 files changed, 88 insertions(+), 3 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index aabc67104272..13d4d5e21ce0 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1025,6 +1025,8 @@
@@ -44,7 +42,7 @@ index aabc67104272..13d4d5e21ce0 100644
#define _HSW_PIPE_SLICE_CHICKEN_1_A 0x420B0
#define _HSW_PIPE_SLICE_CHICKEN_1_B 0x420B4
-@@ -3672,6 +3674,15 @@
+@@ -3676,6 +3678,15 @@
#define _LGC_PALETTE_B 0x4a800
#define LGC_PALETTE(pipe) _PIPE(pipe, _LGC_PALETTE_A, _LGC_PALETTE_B)
@@ -60,11 +58,9 @@ index aabc67104272..13d4d5e21ce0 100644
/* interrupts */
#define DE_MASTER_IRQ_CONTROL (1 << 31)
#define DE_SPRITEB_FLIP_DONE (1 << 29)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index b16c95720f7b..20fa85137060 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -3242,6 +3242,42 @@ static void ironlake_crtc_enable(struct drm_crtc *crtc)
+@@ -3242,6 +3242,42 @@ static void ironlake_crtc_enable(struct
intel_wait_for_vblank(dev, intel_crtc->pipe);
}
@@ -107,7 +103,7 @@ index b16c95720f7b..20fa85137060 100644
static void haswell_crtc_enable(struct drm_crtc *crtc)
{
struct drm_device *dev = crtc->dev;
-@@ -3289,6 +3325,8 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
+@@ -3289,6 +3325,8 @@ static void haswell_crtc_enable(struct d
intel_crtc->config.has_pch_encoder);
intel_enable_plane(dev_priv, plane, pipe);
@@ -116,7 +112,7 @@ index b16c95720f7b..20fa85137060 100644
if (intel_crtc->config.has_pch_encoder)
lpt_pch_enable(crtc);
-@@ -3431,6 +3469,8 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
+@@ -3431,6 +3469,8 @@ static void haswell_crtc_disable(struct
if (dev_priv->cfb_plane == plane)
intel_disable_fbc(dev);
@@ -145,7 +141,7 @@ index b16c95720f7b..20fa85137060 100644
if (HAS_PCH_SPLIT(dev)) {
/* FDI link clock is fixed at 2.7G */
-@@ -4021,8 +4069,11 @@ static int intel_crtc_compute_config(struct drm_crtc *crtc,
+@@ -4021,8 +4069,11 @@ static int intel_crtc_compute_config(str
pipe_config->pipe_bpp = 8*3;
}
@@ -158,7 +154,7 @@ index b16c95720f7b..20fa85137060 100644
return 0;
}
-@@ -5932,6 +5983,9 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
+@@ -5932,6 +5983,9 @@ static bool haswell_get_pipe_config(stru
if (intel_display_power_enabled(dev, pfit_domain))
ironlake_get_pfit_config(crtc, pipe_config);
@@ -168,7 +164,7 @@ index b16c95720f7b..20fa85137060 100644
return true;
}
-@@ -6236,8 +6290,10 @@ void intel_crtc_load_lut(struct drm_crtc *crtc)
+@@ -6236,8 +6290,10 @@ void intel_crtc_load_lut(struct drm_crtc
struct drm_device *dev = crtc->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
@@ -180,7 +176,7 @@ index b16c95720f7b..20fa85137060 100644
/* The clocks have to be on to load the palette. */
if (!crtc->enabled || !intel_crtc->active)
-@@ -6245,7 +6301,17 @@ void intel_crtc_load_lut(struct drm_crtc *crtc)
+@@ -6245,7 +6301,17 @@ void intel_crtc_load_lut(struct drm_crtc
/* use legacy palette for Ironlake */
if (HAS_PCH_SPLIT(dev))
@@ -199,7 +195,7 @@ index b16c95720f7b..20fa85137060 100644
for (i = 0; i < 256; i++) {
I915_WRITE(palreg + 4 * i,
-@@ -6253,6 +6319,9 @@ void intel_crtc_load_lut(struct drm_crtc *crtc)
+@@ -6253,6 +6319,9 @@ void intel_crtc_load_lut(struct drm_crtc
(intel_crtc->lut_g[i] << 8) |
intel_crtc->lut_b[i]);
}
@@ -209,7 +205,7 @@ index b16c95720f7b..20fa85137060 100644
}
static void i845_update_cursor(struct drm_crtc *crtc, u32 base)
-@@ -7684,6 +7753,7 @@ static void intel_dump_pipe_config(struct intel_crtc *crtc,
+@@ -7684,6 +7753,7 @@ static void intel_dump_pipe_config(struc
DRM_DEBUG_KMS("pch pfit: pos: 0x%08x, size: 0x%08x\n",
pipe_config->pch_pfit.pos,
pipe_config->pch_pfit.size);
@@ -217,7 +213,7 @@ index b16c95720f7b..20fa85137060 100644
}
static struct intel_crtc_config *
-@@ -8000,6 +8070,8 @@ intel_pipe_config_compare(struct drm_device *dev,
+@@ -8000,6 +8070,8 @@ intel_pipe_config_compare(struct drm_dev
PIPE_CONF_CHECK_I(pch_pfit.pos);
PIPE_CONF_CHECK_I(pch_pfit.size);
@@ -226,8 +222,6 @@ index b16c95720f7b..20fa85137060 100644
#undef PIPE_CONF_CHECK_I
#undef PIPE_CONF_CHECK_FLAGS
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index c02bc97e350d..b81cc4512c0a 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -268,6 +268,8 @@ struct intel_crtc_config {
@@ -239,6 +233,3 @@ index c02bc97e350d..b81cc4512c0a 100644
};
struct intel_crtc {
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch b/patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch
index 0365257596799..0c60d0692f3a9 100644
--- a/patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch
+++ b/patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch
@@ -36,7 +36,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
ret = i915_load_modeset_init(dev);
if (ret < 0) {
-@@ -1693,6 +1696,9 @@ int i915_driver_unload(struct drm_device
+@@ -1694,6 +1697,9 @@ int i915_driver_unload(struct drm_device
intel_gpu_ips_teardown();
diff --git a/patches.baytrail/0286-drm-i915-WA-FBC-Render-Nuke.patch b/patches.baytrail/0286-drm-i915-WA-FBC-Render-Nuke.patch
index cf36c5897702c..5b2f633262104 100644
--- a/patches.baytrail/0286-drm-i915-WA-FBC-Render-Nuke.patch
+++ b/patches.baytrail/0286-drm-i915-WA-FBC-Render-Nuke.patch
@@ -37,13 +37,11 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit fd3da6c95b6d865446fa9b29df6edff4343e385a)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 ++++
- drivers/gpu/drm/i915/intel_pm.c | 2 +-
- drivers/gpu/drm/i915/intel_ringbuffer.c | 29 +++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++++
+ drivers/gpu/drm/i915/intel_pm.c | 2 +-
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 29 +++++++++++++++++++++++++++++
3 files changed, 34 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 65547c1f1001..225a28d67060 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1022,6 +1022,10 @@
@@ -57,11 +55,9 @@ index 65547c1f1001..225a28d67060 100644
#define _HSW_PIPE_SLICE_CHICKEN_1_A 0x420B0
#define _HSW_PIPE_SLICE_CHICKEN_1_B 0x420B4
#define HSW_BYPASS_FBC_QUEUE (1<<22)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index b5959c49a6f4..681699671893 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -274,7 +274,7 @@ static void gen7_enable_fbc(struct drm_crtc *crtc, unsigned long interval)
+@@ -274,7 +274,7 @@ static void gen7_enable_fbc(struct drm_c
struct drm_i915_gem_object *obj = intel_fb->obj;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
@@ -70,11 +66,9 @@ index b5959c49a6f4..681699671893 100644
I915_WRITE(ILK_DPFC_CONTROL, DPFC_CTL_EN | DPFC_CTL_LIMIT_1X |
IVB_DPFC_CTL_FENCE_EN |
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index cd2daf2f5dd7..07a949c042f2 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -280,6 +280,27 @@ gen7_render_ring_cs_stall_wa(struct intel_ring_buffer *ring)
+@@ -280,6 +280,27 @@ gen7_render_ring_cs_stall_wa(struct inte
return 0;
}
@@ -102,7 +96,7 @@ index cd2daf2f5dd7..07a949c042f2 100644
static int
gen7_render_ring_flush(struct intel_ring_buffer *ring,
u32 invalidate_domains, u32 flush_domains)
-@@ -336,6 +357,9 @@ gen7_render_ring_flush(struct intel_ring_buffer *ring,
+@@ -336,6 +357,9 @@ gen7_render_ring_flush(struct intel_ring
intel_ring_emit(ring, 0);
intel_ring_advance(ring);
@@ -112,7 +106,7 @@ index cd2daf2f5dd7..07a949c042f2 100644
return 0;
}
-@@ -1696,6 +1720,7 @@ gen6_ring_dispatch_execbuffer(struct intel_ring_buffer *ring,
+@@ -1700,6 +1724,7 @@ gen6_ring_dispatch_execbuffer(struct int
static int gen6_ring_flush(struct intel_ring_buffer *ring,
u32 invalidate, u32 flush)
{
@@ -120,7 +114,7 @@ index cd2daf2f5dd7..07a949c042f2 100644
uint32_t cmd;
int ret;
-@@ -1718,6 +1743,10 @@ static int gen6_ring_flush(struct intel_ring_buffer *ring,
+@@ -1722,6 +1747,10 @@ static int gen6_ring_flush(struct intel_
intel_ring_emit(ring, 0);
intel_ring_emit(ring, MI_NOOP);
intel_ring_advance(ring);
@@ -131,6 +125,3 @@ index cd2daf2f5dd7..07a949c042f2 100644
return 0;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0296-drm-i915-refactor-PCH_DPLL_SEL-defines.patch b/patches.baytrail/0296-drm-i915-refactor-PCH_DPLL_SEL-defines.patch
index b6c986b7e1c45..bb8d94edcf42d 100644
--- a/patches.baytrail/0296-drm-i915-refactor-PCH_DPLL_SEL-defines.patch
+++ b/patches.baytrail/0296-drm-i915-refactor-PCH_DPLL_SEL-defines.patch
@@ -15,15 +15,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1188739757d0e78810de5fe83dbe0128f624b9e8)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 12 +++---------
- drivers/gpu/drm/i915/intel_display.c | 32 +++-----------------------------
+ drivers/gpu/drm/i915/i915_reg.h | 12 +++---------
+ drivers/gpu/drm/i915/intel_display.c | 32 +++-----------------------------
2 files changed, 6 insertions(+), 38 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 225a28d67060..776ef89cda14 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3984,15 +3984,9 @@
+@@ -3988,15 +3988,9 @@
#define PCH_SSC4_AUX_PARMS 0xc6214
#define PCH_DPLL_SEL 0xc7000
@@ -42,11 +40,9 @@ index 225a28d67060..776ef89cda14 100644
/* transcoder */
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 0fdb80517545..887b7e6f5025 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -2986,21 +2986,8 @@ static void ironlake_pch_enable(struct drm_crtc *crtc)
+@@ -2986,21 +2986,8 @@ static void ironlake_pch_enable(struct d
u32 sel;
temp = I915_READ(PCH_DPLL_SEL);
@@ -70,7 +66,7 @@ index 0fdb80517545..887b7e6f5025 100644
if (intel_crtc->config.shared_dpll == DPLL_ID_PCH_PLL_B)
temp |= sel;
else
-@@ -3480,20 +3467,7 @@ static void ironlake_crtc_disable(struct drm_crtc *crtc)
+@@ -3480,20 +3467,7 @@ static void ironlake_crtc_disable(struct
/* disable DPLL_SEL */
temp = I915_READ(PCH_DPLL_SEL);
@@ -92,6 +88,3 @@ index 0fdb80517545..887b7e6f5025 100644
I915_WRITE(PCH_DPLL_SEL, temp);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0300-drm-i915-scrap-register-address-storage.patch b/patches.baytrail/0300-drm-i915-scrap-register-address-storage.patch
index 7f1dbf6b965ec..99a2bf045760f 100644
--- a/patches.baytrail/0300-drm-i915-scrap-register-address-storage.patch
+++ b/patches.baytrail/0300-drm-i915-scrap-register-address-storage.patch
@@ -14,14 +14,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e9a632a578e0205c1fb015bb01af49c2ae71d6f2)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 3 ---
- drivers/gpu/drm/i915/i915_reg.h | 6 +++---
- drivers/gpu/drm/i915/i915_ums.c | 2 +-
- drivers/gpu/drm/i915/intel_display.c | 35 ++++++++++++++++-------------------
+ drivers/gpu/drm/i915/i915_drv.h | 3 ---
+ drivers/gpu/drm/i915/i915_reg.h | 6 +++---
+ drivers/gpu/drm/i915/i915_ums.c | 2 +-
+ drivers/gpu/drm/i915/intel_display.c | 35 ++++++++++++++++-------------------
4 files changed, 20 insertions(+), 26 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 7e3d3b349bf6..c0779fe39576 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -147,9 +147,6 @@ struct intel_shared_dpll {
@@ -34,11 +32,9 @@ index 7e3d3b349bf6..c0779fe39576 100644
};
/* Used by dp and fdi links */
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 776ef89cda14..f21d0f5dc9f2 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3936,15 +3936,15 @@
+@@ -3940,15 +3940,15 @@
#define _PCH_DPLL_A 0xc6014
#define _PCH_DPLL_B 0xc6018
@@ -57,11 +53,9 @@ index 776ef89cda14..f21d0f5dc9f2 100644
#define PCH_DPLL_TEST 0xc606c
-diff --git a/drivers/gpu/drm/i915/i915_ums.c b/drivers/gpu/drm/i915/i915_ums.c
-index 5ef30b2e6bc6..967da4772c44 100644
--- a/drivers/gpu/drm/i915/i915_ums.c
+++ b/drivers/gpu/drm/i915/i915_ums.c
-@@ -41,7 +41,7 @@ static bool i915_pipe_enabled(struct drm_device *dev, enum pipe pipe)
+@@ -41,7 +41,7 @@ static bool i915_pipe_enabled(struct drm
return false;
if (HAS_PCH_SPLIT(dev))
@@ -70,11 +64,9 @@ index 5ef30b2e6bc6..967da4772c44 100644
else
dpll_reg = (pipe == PIPE_A) ? _DPLL_A : _DPLL_B;
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 3e5eeb0b5dec..cbe2a077a822 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -938,7 +938,7 @@ static void assert_shared_dpll(struct drm_i915_private *dev_priv,
+@@ -938,7 +938,7 @@ static void assert_shared_dpll(struct dr
"asserting DPLL %s with no DPLL\n", state_string(state)))
return;
@@ -83,7 +75,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
cur_state = !!(val & DPLL_VCO_ENABLE);
WARN(cur_state != state,
"%s assertion failure (expected %s, current %s), val=%08x\n",
-@@ -949,14 +949,14 @@ static void assert_shared_dpll(struct drm_i915_private *dev_priv,
+@@ -949,14 +949,14 @@ static void assert_shared_dpll(struct dr
u32 pch_dpll;
pch_dpll = I915_READ(PCH_DPLL_SEL);
@@ -100,7 +92,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
state_string(state),
pipe_name(crtc->pipe),
val);
-@@ -1446,7 +1446,7 @@ static void ironlake_enable_shared_dpll(struct intel_crtc *crtc)
+@@ -1446,7 +1446,7 @@ static void ironlake_enable_shared_dpll(
DRM_DEBUG_KMS("enabling %s\n", pll->name);
@@ -109,7 +101,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
val = I915_READ(reg);
val |= DPLL_VCO_ENABLE;
I915_WRITE(reg, val);
-@@ -1490,7 +1490,7 @@ static void intel_disable_shared_dpll(struct intel_crtc *crtc)
+@@ -1490,7 +1490,7 @@ static void intel_disable_shared_dpll(st
/* Make sure transcoder isn't still depending on us */
assert_pch_transcoder_disabled(dev_priv, crtc->pipe);
@@ -118,7 +110,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
val = I915_READ(reg);
val &= ~DPLL_VCO_ENABLE;
I915_WRITE(reg, val);
-@@ -3107,8 +3107,8 @@ static struct intel_shared_dpll *intel_get_shared_dpll(struct intel_crtc *crtc,
+@@ -3107,8 +3107,8 @@ static struct intel_shared_dpll *intel_g
if (pll->refcount == 0)
continue;
@@ -146,7 +138,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
}
pll->refcount++;
-@@ -5785,10 +5785,10 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc,
+@@ -5785,10 +5785,10 @@ static int ironlake_crtc_mode_set(struct
if (intel_crtc->config.has_pch_encoder) {
pll = intel_crtc_to_shared_dpll(intel_crtc);
@@ -159,7 +151,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
udelay(150);
/* The pixel multiplier can only be updated once the
-@@ -5796,13 +5796,13 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc,
+@@ -5796,13 +5796,13 @@ static int ironlake_crtc_mode_set(struct
*
* So write it again.
*/
@@ -176,7 +168,7 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
}
}
-@@ -8771,9 +8771,6 @@ static void ibx_pch_dpll_init(struct drm_device *dev)
+@@ -8771,9 +8771,6 @@ static void ibx_pch_dpll_init(struct drm
for (i = 0; i < dev_priv->num_shared_dpll; i++) {
dev_priv->shared_dplls[i].id = i;
dev_priv->shared_dplls[i].name = ibx_pch_dpll_names[i];
@@ -186,6 +178,3 @@ index 3e5eeb0b5dec..cbe2a077a822 100644
}
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch b/patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch
index 98406176eb939..469939d6dc936 100644
--- a/patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch
+++ b/patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch
@@ -22,7 +22,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1790,7 +1790,7 @@ int i915_driver_open(struct drm_device *
+@@ -1791,7 +1791,7 @@ int i915_driver_open(struct drm_device *
struct drm_i915_file_private *file_priv;
DRM_DEBUG_DRIVER("\n");
diff --git a/patches.baytrail/0327-drm-i915-explicitly-set-up-PIPECONF-and-gamma-table-.patch b/patches.baytrail/0327-drm-i915-explicitly-set-up-PIPECONF-and-gamma-table-.patch
index caef9d4002aff..0de913e4224e6 100644
--- a/patches.baytrail/0327-drm-i915-explicitly-set-up-PIPECONF-and-gamma-table-.patch
+++ b/patches.baytrail/0327-drm-i915-explicitly-set-up-PIPECONF-and-gamma-table-.patch
@@ -22,15 +22,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 3eff4faa9f59c581538663e3f42b9e16210cafd0)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 6 +++---
- drivers/gpu/drm/i915/intel_display.c | 7 ++++---
+ drivers/gpu/drm/i915/i915_reg.h | 6 +++---
+ drivers/gpu/drm/i915/intel_display.c | 7 ++++---
2 files changed, 7 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index da456bc4c35a..a2fe7efe0701 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3678,9 +3678,9 @@
+@@ -3682,9 +3682,9 @@
#define _GAMMA_MODE_B 0x4ac80
#define GAMMA_MODE(pipe) _PIPE(pipe, _GAMMA_MODE_A, _GAMMA_MODE_B)
#define GAMMA_MODE_MODE_MASK (3 << 0)
@@ -43,11 +41,9 @@ index da456bc4c35a..a2fe7efe0701 100644
#define GAMMA_MODE_MODE_SPLIT (3 << 0)
/* interrupts */
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 0d23d7bfc884..24c8384228b6 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -5437,13 +5437,11 @@ static void haswell_set_pipeconf(struct drm_crtc *crtc)
+@@ -5437,13 +5437,11 @@ static void haswell_set_pipeconf(struct
enum transcoder cpu_transcoder = intel_crtc->config.cpu_transcoder;
uint32_t val;
@@ -62,7 +58,7 @@ index 0d23d7bfc884..24c8384228b6 100644
if (intel_crtc->config.adjusted_mode.flags & DRM_MODE_FLAG_INTERLACE)
val |= PIPECONF_INTERLACED_ILK;
else
-@@ -5451,6 +5449,9 @@ static void haswell_set_pipeconf(struct drm_crtc *crtc)
+@@ -5451,6 +5449,9 @@ static void haswell_set_pipeconf(struct
I915_WRITE(PIPECONF(cpu_transcoder), val);
POSTING_READ(PIPECONF(cpu_transcoder));
@@ -72,6 +68,3 @@ index 0d23d7bfc884..24c8384228b6 100644
}
static bool ironlake_compute_clocks(struct drm_crtc *crtc,
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0334-drm-i915-don-t-check-encoder-at-DP-connector-destroy.patch b/patches.baytrail/0334-drm-i915-don-t-check-encoder-at-DP-connector-destroy.patch
index 6944195b85edf..f3c87de3adbaf 100644
--- a/patches.baytrail/0334-drm-i915-don-t-check-encoder-at-DP-connector-destroy.patch
+++ b/patches.baytrail/0334-drm-i915-don-t-check-encoder-at-DP-connector-destroy.patch
@@ -18,14 +18,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit acd8db100ed5220fe8043f91cdc20155325542a9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 5 +++--
+ drivers/gpu/drm/i915/intel_dp.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 0066c2314e1f..532197981bd7 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2694,13 +2694,14 @@ done:
+@@ -2710,13 +2710,14 @@ done:
static void
intel_dp_destroy(struct drm_connector *connector)
{
@@ -42,6 +40,3 @@ index 0066c2314e1f..532197981bd7 100644
intel_panel_fini(&intel_connector->panel);
drm_sysfs_connector_remove(connector);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0335-drm-i915-extract-intel_edp_init_connector.patch b/patches.baytrail/0335-drm-i915-extract-intel_edp_init_connector.patch
index d5048a42b4138..18b7c810991a3 100644
--- a/patches.baytrail/0335-drm-i915-extract-intel_edp_init_connector.patch
+++ b/patches.baytrail/0335-drm-i915-extract-intel_edp_init_connector.patch
@@ -12,14 +12,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ed92f0b239ac971edc509169ae3d6955fbe0a188)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 151 ++++++++++++++++++++++------------------
+ drivers/gpu/drm/i915/intel_dp.c | 151 +++++++++++++++++++++-------------------
1 file changed, 82 insertions(+), 69 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 532197981bd7..b307befdbdb0 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2966,6 +2966,86 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -2982,6 +2982,86 @@ intel_dp_init_panel_power_sequencer_regi
I915_READ(pp_div_reg));
}
@@ -106,7 +104,7 @@ index 532197981bd7..b307befdbdb0 100644
void
intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
struct intel_connector *intel_connector)
-@@ -2975,8 +3055,6 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -2991,8 +3071,6 @@ intel_dp_init_connector(struct intel_dig
struct intel_encoder *intel_encoder = &intel_dig_port->base;
struct drm_device *dev = intel_encoder->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -115,7 +113,7 @@ index 532197981bd7..b307befdbdb0 100644
enum port port = intel_dig_port->port;
const char *name = NULL;
int type;
-@@ -3077,75 +3155,10 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3093,75 +3171,10 @@ intel_dp_init_connector(struct intel_dig
BUG();
}
@@ -193,6 +191,3 @@ index 532197981bd7..b307befdbdb0 100644
intel_dp_add_properties(intel_dp, connector);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0336-drm-i915-propagate-errors-from-intel_dp_init_connect.patch b/patches.baytrail/0336-drm-i915-propagate-errors-from-intel_dp_init_connect.patch
index 9a40f34287ca0..01723dc760c0c 100644
--- a/patches.baytrail/0336-drm-i915-propagate-errors-from-intel_dp_init_connect.patch
+++ b/patches.baytrail/0336-drm-i915-propagate-errors-from-intel_dp_init_connect.patch
@@ -42,7 +42,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
hdmi_connector = kzalloc(sizeof(struct intel_connector),
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3046,7 +3046,7 @@ static bool intel_edp_init_connector(str
+@@ -3062,7 +3062,7 @@ static bool intel_edp_init_connector(str
return true;
}
@@ -51,7 +51,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
struct intel_connector *intel_connector)
{
-@@ -3158,7 +3158,7 @@ intel_dp_init_connector(struct intel_dig
+@@ -3174,7 +3174,7 @@ intel_dp_init_connector(struct intel_dig
intel_dp_i2c_init(intel_dp, intel_connector, name);
if (!intel_edp_init_connector(intel_dp, intel_connector))
@@ -60,7 +60,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_dp_add_properties(intel_dp, connector);
-@@ -3170,6 +3170,8 @@ intel_dp_init_connector(struct intel_dig
+@@ -3186,6 +3186,8 @@ intel_dp_init_connector(struct intel_dig
u32 temp = I915_READ(PEG_BAND_GAP_DATA);
I915_WRITE(PEG_BAND_GAP_DATA, (temp & ~0xf) | 0xd);
}
diff --git a/patches.baytrail/0337-drm-i915-fix-the-ghost-eDP-connector-unwind-path.patch b/patches.baytrail/0337-drm-i915-fix-the-ghost-eDP-connector-unwind-path.patch
index 7d01f5b68d509..530798721622f 100644
--- a/patches.baytrail/0337-drm-i915-fix-the-ghost-eDP-connector-unwind-path.patch
+++ b/patches.baytrail/0337-drm-i915-fix-the-ghost-eDP-connector-unwind-path.patch
@@ -47,7 +47,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
hdmi_connector = kzalloc(sizeof(struct intel_connector),
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2998,7 +2998,6 @@ static bool intel_edp_init_connector(str
+@@ -3014,7 +3014,6 @@ static bool intel_edp_init_connector(str
/* if this fails, presume the device is a ghost */
DRM_INFO("failed to retrieve link info, disabling eDP\n");
intel_dp_encoder_destroy(&intel_dig_port->base.base);
@@ -55,7 +55,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
return false;
}
-@@ -3157,8 +3156,11 @@ intel_dp_init_connector(struct intel_dig
+@@ -3173,8 +3172,11 @@ intel_dp_init_connector(struct intel_dig
intel_dp_i2c_init(intel_dp, intel_connector, name);
@@ -68,7 +68,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_dp_add_properties(intel_dp, connector);
-@@ -3217,5 +3219,6 @@ intel_dp_init(struct drm_device *dev, in
+@@ -3233,5 +3235,6 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->cloneable = false;
intel_encoder->hot_plug = intel_dp_hot_plug;
diff --git a/patches.baytrail/0338-drm-i915-fix-the-ghost-eDP-encoder-unwind-path.patch b/patches.baytrail/0338-drm-i915-fix-the-ghost-eDP-encoder-unwind-path.patch
index 0bae0607b510a..c127a2e10e645 100644
--- a/patches.baytrail/0338-drm-i915-fix-the-ghost-eDP-encoder-unwind-path.patch
+++ b/patches.baytrail/0338-drm-i915-fix-the-ghost-eDP-encoder-unwind-path.patch
@@ -47,7 +47,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
}
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2997,7 +2997,6 @@ static bool intel_edp_init_connector(str
+@@ -3013,7 +3013,6 @@ static bool intel_edp_init_connector(str
} else {
/* if this fails, presume the device is a ghost */
DRM_INFO("failed to retrieve link info, disabling eDP\n");
@@ -55,7 +55,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
return false;
}
-@@ -3157,6 +3156,13 @@ intel_dp_init_connector(struct intel_dig
+@@ -3173,6 +3172,13 @@ intel_dp_init_connector(struct intel_dig
intel_dp_i2c_init(intel_dp, intel_connector, name);
if (!intel_edp_init_connector(intel_dp, intel_connector)) {
@@ -69,7 +69,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
drm_sysfs_connector_remove(connector);
drm_connector_cleanup(connector);
return false;
-@@ -3219,6 +3225,9 @@ intel_dp_init(struct drm_device *dev, in
+@@ -3235,6 +3241,9 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->cloneable = false;
intel_encoder->hot_plug = intel_dp_hot_plug;
diff --git a/patches.baytrail/0339-drm-i915-check-the-return-value-of-intel_dp_i2c_init.patch b/patches.baytrail/0339-drm-i915-check-the-return-value-of-intel_dp_i2c_init.patch
index c079d1b392132..2b601d7f17a02 100644
--- a/patches.baytrail/0339-drm-i915-check-the-return-value-of-intel_dp_i2c_init.patch
+++ b/patches.baytrail/0339-drm-i915-check-the-return-value-of-intel_dp_i2c_init.patch
@@ -12,14 +12,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b2a1475561d59e8d182ba8cc4b7e78b662a3f533)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 6 ++++--
+ drivers/gpu/drm/i915/intel_dp.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 0cd390ef6f0e..ddc06bef70e5 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3055,7 +3055,7 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3071,7 +3071,7 @@ intel_dp_init_connector(struct intel_dig
struct drm_i915_private *dev_priv = dev->dev_private;
enum port port = intel_dig_port->port;
const char *name = NULL;
@@ -28,7 +26,7 @@ index 0cd390ef6f0e..ddc06bef70e5 100644
/* Preserve the current hw state. */
intel_dp->DP = I915_READ(intel_dp->output_reg);
-@@ -3153,7 +3153,9 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3169,7 +3169,9 @@ intel_dp_init_connector(struct intel_dig
BUG();
}
@@ -39,6 +37,3 @@ index 0cd390ef6f0e..ddc06bef70e5 100644
if (!intel_edp_init_connector(intel_dp, intel_connector)) {
i2c_del_adapter(&intel_dp->adapter);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0340-drm-i915-rename-intel_dp_destroy-to-intel_dp_connect.patch b/patches.baytrail/0340-drm-i915-rename-intel_dp_destroy-to-intel_dp_connect.patch
index 0c6157f7dd1b6..e7658e2066d1f 100644
--- a/patches.baytrail/0340-drm-i915-rename-intel_dp_destroy-to-intel_dp_connect.patch
+++ b/patches.baytrail/0340-drm-i915-rename-intel_dp_destroy-to-intel_dp_connect.patch
@@ -14,14 +14,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 73845adf3357c3c71da25e18f44e5a9924d666d5)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 4 ++--
+ drivers/gpu/drm/i915/intel_dp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index ddc06bef70e5..0f7e9094098d 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2692,7 +2692,7 @@ done:
+@@ -2708,7 +2708,7 @@ done:
}
static void
@@ -30,7 +28,7 @@ index ddc06bef70e5..0f7e9094098d 100644
{
struct intel_connector *intel_connector = to_intel_connector(connector);
-@@ -2735,7 +2735,7 @@ static const struct drm_connector_funcs intel_dp_connector_funcs = {
+@@ -2751,7 +2751,7 @@ static const struct drm_connector_funcs
.detect = intel_dp_detect,
.fill_modes = drm_helper_probe_single_connector_modes,
.set_property = intel_dp_set_property,
@@ -39,6 +37,3 @@ index ddc06bef70e5..0f7e9094098d 100644
};
static const struct drm_connector_helper_funcs intel_dp_connector_helper_funcs = {
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0357-drm-i915-Fix-VLV-sprite-register-offsets.patch b/patches.baytrail/0357-drm-i915-Fix-VLV-sprite-register-offsets.patch
index 7954c8ee110ff..984272a5f679a 100644
--- a/patches.baytrail/0357-drm-i915-Fix-VLV-sprite-register-offsets.patch
+++ b/patches.baytrail/0357-drm-i915-Fix-VLV-sprite-register-offsets.patch
@@ -15,14 +15,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 921c3b677bf6340cd92800fb99350532674dea29)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 50 ++++++++++++++++++++---------------------
- 1 file changed, 25 insertions(+), 25 deletions(-)
+ drivers/gpu/drm/i915/i915_reg.h | 48 ++++++++++++++++++++--------------------
+ 1 file changed, 24 insertions(+), 24 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 13dd0731dbd7..342f1f336168 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3494,7 +3494,7 @@
+@@ -3498,7 +3498,7 @@
#define SPRGAMC(pipe) _PIPE(pipe, _SPRA_GAMC, _SPRB_GAMC)
#define SPRSURFLIVE(pipe) _PIPE(pipe, _SPRA_SURFLIVE, _SPRB_SURFLIVE)
@@ -31,7 +29,7 @@ index 13dd0731dbd7..342f1f336168 100644
#define SP_ENABLE (1<<31)
#define SP_GEAMMA_ENABLE (1<<30)
#define SP_PIXFORMAT_MASK (0xf<<26)
-@@ -3513,30 +3513,30 @@
+@@ -3517,30 +3517,30 @@
#define SP_YUV_ORDER_YVYU (2<<16)
#define SP_YUV_ORDER_VYUY (3<<16)
#define SP_TILED (1<<10)
@@ -46,7 +44,18 @@ index 13dd0731dbd7..342f1f336168 100644
-#define _SPATILEOFF 0x721a4
-#define _SPACONSTALPHA 0x721a8
-#define _SPAGAMC 0x721f4
--
++#define _SPALINOFF (VLV_DISPLAY_BASE + 0x72184)
++#define _SPASTRIDE (VLV_DISPLAY_BASE + 0x72188)
++#define _SPAPOS (VLV_DISPLAY_BASE + 0x7218c)
++#define _SPASIZE (VLV_DISPLAY_BASE + 0x72190)
++#define _SPAKEYMINVAL (VLV_DISPLAY_BASE + 0x72194)
++#define _SPAKEYMSK (VLV_DISPLAY_BASE + 0x72198)
++#define _SPASURF (VLV_DISPLAY_BASE + 0x7219c)
++#define _SPAKEYMAXVAL (VLV_DISPLAY_BASE + 0x721a0)
++#define _SPATILEOFF (VLV_DISPLAY_BASE + 0x721a4)
++#define _SPACONSTALPHA (VLV_DISPLAY_BASE + 0x721a8)
++#define _SPAGAMC (VLV_DISPLAY_BASE + 0x721f4)
+
-#define _SPBCNTR 0x72280
-#define _SPBLINOFF 0x72284
-#define _SPBSTRIDE 0x72288
@@ -59,18 +68,6 @@ index 13dd0731dbd7..342f1f336168 100644
-#define _SPBTILEOFF 0x722a4
-#define _SPBCONSTALPHA 0x722a8
-#define _SPBGAMC 0x722f4
-+#define _SPALINOFF (VLV_DISPLAY_BASE + 0x72184)
-+#define _SPASTRIDE (VLV_DISPLAY_BASE + 0x72188)
-+#define _SPAPOS (VLV_DISPLAY_BASE + 0x7218c)
-+#define _SPASIZE (VLV_DISPLAY_BASE + 0x72190)
-+#define _SPAKEYMINVAL (VLV_DISPLAY_BASE + 0x72194)
-+#define _SPAKEYMSK (VLV_DISPLAY_BASE + 0x72198)
-+#define _SPASURF (VLV_DISPLAY_BASE + 0x7219c)
-+#define _SPAKEYMAXVAL (VLV_DISPLAY_BASE + 0x721a0)
-+#define _SPATILEOFF (VLV_DISPLAY_BASE + 0x721a4)
-+#define _SPACONSTALPHA (VLV_DISPLAY_BASE + 0x721a8)
-+#define _SPAGAMC (VLV_DISPLAY_BASE + 0x721f4)
-+
+#define _SPBCNTR (VLV_DISPLAY_BASE + 0x72280)
+#define _SPBLINOFF (VLV_DISPLAY_BASE + 0x72284)
+#define _SPBSTRIDE (VLV_DISPLAY_BASE + 0x72288)
@@ -86,6 +83,3 @@ index 13dd0731dbd7..342f1f336168 100644
#define SPCNTR(pipe, plane) _PIPE(pipe * 2 + plane, _SPACNTR, _SPBCNTR)
#define SPLINOFF(pipe, plane) _PIPE(pipe * 2 + plane, _SPALINOFF, _SPBLINOFF)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0369-drm-i915-reinit-status-page-registers-after-gpu-rese.patch b/patches.baytrail/0369-drm-i915-reinit-status-page-registers-after-gpu-rese.patch
index 4f3a57528ce7f..88855cba560bf 100644
--- a/patches.baytrail/0369-drm-i915-reinit-status-page-registers-after-gpu-rese.patch
+++ b/patches.baytrail/0369-drm-i915-reinit-status-page-registers-after-gpu-rese.patch
@@ -29,14 +29,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 035dc1e0f9008b48630e02bf0eaa7cc547416d1d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_ringbuffer.c | 29 +++++++++++++++++++----------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 29 +++++++++++++++++++----------
1 file changed, 19 insertions(+), 10 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index a81647023139..079ef0129e74 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -379,6 +379,17 @@ u32 intel_ring_get_active_head(struct intel_ring_buffer *ring)
+@@ -379,6 +379,17 @@ u32 intel_ring_get_active_head(struct in
return I915_READ(acthd_reg);
}
@@ -54,7 +52,7 @@ index a81647023139..079ef0129e74 100644
static int init_ring_common(struct intel_ring_buffer *ring)
{
struct drm_device *dev = ring->dev;
-@@ -390,6 +401,11 @@ static int init_ring_common(struct intel_ring_buffer *ring)
+@@ -390,6 +401,11 @@ static int init_ring_common(struct intel
if (HAS_FORCE_WAKE(dev))
gen6_gt_force_wake_get(dev_priv);
@@ -66,7 +64,7 @@ index a81647023139..079ef0129e74 100644
/* Stop the ring if it's running. */
I915_WRITE_CTL(ring, 0);
I915_WRITE_HEAD(ring, 0);
-@@ -1234,7 +1250,6 @@ static int init_status_page(struct intel_ring_buffer *ring)
+@@ -1234,7 +1250,6 @@ static int init_status_page(struct intel
ring->status_page.obj = obj;
memset(ring->status_page.page_addr, 0, PAGE_SIZE);
@@ -86,7 +84,7 @@ index a81647023139..079ef0129e74 100644
if (!dev_priv->status_page_dmah) {
dev_priv->status_page_dmah =
-@@ -1260,11 +1274,6 @@ static int init_phys_hws_pga(struct intel_ring_buffer *ring)
+@@ -1260,11 +1274,6 @@ static int init_phys_hws_pga(struct inte
return -ENOMEM;
}
@@ -98,7 +96,7 @@ index a81647023139..079ef0129e74 100644
ring->status_page.page_addr = dev_priv->status_page_dmah->vaddr;
memset(ring->status_page.page_addr, 0, PAGE_SIZE);
-@@ -1292,7 +1301,7 @@ static int intel_init_ring_buffer(struct drm_device *dev,
+@@ -1292,7 +1301,7 @@ static int intel_init_ring_buffer(struct
return ret;
} else {
BUG_ON(ring->id != RCS);
@@ -107,7 +105,7 @@ index a81647023139..079ef0129e74 100644
if (ret)
return ret;
}
-@@ -1904,7 +1913,7 @@ int intel_render_ring_init_dri(struct drm_device *dev, u64 start, u32 size)
+@@ -1908,7 +1917,7 @@ int intel_render_ring_init_dri(struct dr
}
if (!I915_NEED_GFX_HWS(dev)) {
@@ -116,6 +114,3 @@ index a81647023139..079ef0129e74 100644
if (ret)
return ret;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch b/patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch
index 4c5edbcb50dfd..cbf11a078629a 100644
--- a/patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch
+++ b/patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch
@@ -30,8 +30,8 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
/* The i915 workqueue is primarily used for batched retirement of
* requests (and thus managing bo) once the task has been completed
-@@ -1677,7 +1677,7 @@ out_gem_unload:
- intel_teardown_mchbar(dev);
+@@ -1678,7 +1678,7 @@ out_gem_unload:
+ pm_qos_remove_request(&dev_priv->pm_qos);
destroy_workqueue(dev_priv->wq);
out_mtrrfree:
- arch_phys_wc_del(dev_priv->mm.gtt_mtrr);
@@ -39,7 +39,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
io_mapping_free(dev_priv->gtt.mappable);
dev_priv->gtt.gtt_remove(dev);
out_rmmap:
-@@ -1715,7 +1715,7 @@ int i915_driver_unload(struct drm_device
+@@ -1716,7 +1716,7 @@ int i915_driver_unload(struct drm_device
cancel_delayed_work_sync(&dev_priv->mm.retire_work);
io_mapping_free(dev_priv->gtt.mappable);
diff --git a/patches.baytrail/0444-drm-i915-improve-SERR_INT-clearing-for-fifo-underrun.patch b/patches.baytrail/0444-drm-i915-improve-SERR_INT-clearing-for-fifo-underrun.patch
index eb1aa1f390018..9d7797a7312cd 100644
--- a/patches.baytrail/0444-drm-i915-improve-SERR_INT-clearing-for-fifo-underrun.patch
+++ b/patches.baytrail/0444-drm-i915-improve-SERR_INT-clearing-for-fifo-underrun.patch
@@ -48,15 +48,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1dd246fb165819d31119e988c2887934c255fadc)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 17 +++++++++++++----
- drivers/gpu/drm/i915/i915_reg.h | 1 +
+ drivers/gpu/drm/i915/i915_irq.c | 17 +++++++++++++----
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
2 files changed, 14 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 079408a56c4e..d41b7a87c129 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -217,16 +217,25 @@ static void cpt_set_fifo_underrun_reporting(struct drm_device *dev,
+@@ -217,16 +217,25 @@ static void cpt_set_fifo_underrun_report
struct drm_i915_private *dev_priv = dev->dev_private;
if (enable) {
@@ -86,11 +84,9 @@ index 079408a56c4e..d41b7a87c129 100644
}
}
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 0f604881a3b4..beb5d119b7e6 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3890,6 +3890,7 @@
+@@ -3894,6 +3894,7 @@
#define SERR_INT_TRANS_C_FIFO_UNDERRUN (1<<6)
#define SERR_INT_TRANS_B_FIFO_UNDERRUN (1<<3)
#define SERR_INT_TRANS_A_FIFO_UNDERRUN (1<<0)
@@ -98,6 +94,3 @@ index 0f604881a3b4..beb5d119b7e6 100644
/* digital port hotplug */
#define PCH_PORT_HOTPLUG 0xc4030 /* SHOTPLUG_CTL */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0452-drm-i915-don-t-enable-PM_VEBOX_CS_ERROR_INTERRUPT.patch b/patches.baytrail/0452-drm-i915-don-t-enable-PM_VEBOX_CS_ERROR_INTERRUPT.patch
index dffb21cacb39b..c81899eab2160 100644
--- a/patches.baytrail/0452-drm-i915-don-t-enable-PM_VEBOX_CS_ERROR_INTERRUPT.patch
+++ b/patches.baytrail/0452-drm-i915-don-t-enable-PM_VEBOX_CS_ERROR_INTERRUPT.patch
@@ -25,15 +25,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c0d6a3dd61d46a640ead0a9d38b78ca22d37a304)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 3 +--
- drivers/gpu/drm/i915/intel_ringbuffer.c | 3 +--
+ drivers/gpu/drm/i915/i915_irq.c | 3 +--
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 3 +--
2 files changed, 2 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 2da9e68db4f3..f77e87365480 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -2860,8 +2860,7 @@ static int ivybridge_irq_postinstall(struct drm_device *dev)
+@@ -2860,8 +2860,7 @@ static int ivybridge_irq_postinstall(str
I915_WRITE(GEN6_PMIIR, I915_READ(GEN6_PMIIR));
if (HAS_VEBOX(dev))
@@ -43,11 +41,9 @@ index 2da9e68db4f3..f77e87365480 100644
/* Our enable/disable rps functions may touch these registers so
* make sure to set a known state for only the non-RPS bits.
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index e97a7a0455c2..bc78c794ae81 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -2020,8 +2020,7 @@ int intel_init_vebox_ring_buffer(struct drm_device *dev)
+@@ -2024,8 +2024,7 @@ int intel_init_vebox_ring_buffer(struct
ring->add_request = gen6_add_request;
ring->get_seqno = gen6_ring_get_seqno;
ring->set_seqno = ring_set_seqno;
@@ -57,6 +53,3 @@ index e97a7a0455c2..bc78c794ae81 100644
ring->irq_get = hsw_vebox_get_irq;
ring->irq_put = hsw_vebox_put_irq;
ring->dispatch_execbuffer = gen6_ring_dispatch_execbuffer;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0460-drm-i915-Define-some-of-the-eLLC-magic.patch b/patches.baytrail/0460-drm-i915-Define-some-of-the-eLLC-magic.patch
index 215603f8a54d6..98a00e201ab43 100644
--- a/patches.baytrail/0460-drm-i915-Define-some-of-the-eLLC-magic.patch
+++ b/patches.baytrail/0460-drm-i915-Define-some-of-the-eLLC-magic.patch
@@ -12,12 +12,10 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 05e21cc43da5a1a58b34a2cfad13d22bcfeb1f2b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem.c | 4 ++--
- drivers/gpu/drm/i915/i915_reg.h | 4 ++++
+ drivers/gpu/drm/i915/i915_gem.c | 4 ++--
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++++
2 files changed, 6 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 5846134574f1..a7039e69395b 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4131,8 +4131,8 @@ i915_gem_init_hw(struct drm_device *dev)
@@ -31,11 +29,9 @@ index 5846134574f1..a7039e69395b 100644
if (HAS_PCH_NOP(dev)) {
u32 temp = I915_READ(GEN7_MSG_CTL);
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index b131773190f3..9fb32dfbfeb9 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4480,6 +4480,10 @@
+@@ -4484,6 +4484,10 @@
#define GT_FIFO_FREE_ENTRIES 0x120008
#define GT_FIFO_NUM_RESERVED_ENTRIES 20
@@ -46,6 +42,3 @@ index b131773190f3..9fb32dfbfeb9 100644
#define GEN6_UCGCTL1 0x9400
# define GEN6_BLBUNIT_CLOCK_GATE_DISABLE (1 << 5)
# define GEN6_CSUNIT_CLOCK_GATE_DISABLE (1 << 7)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch b/patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch
index 239a4f438c636..3673d62a21f7f 100644
--- a/patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch
+++ b/patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch
@@ -52,7 +52,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
list_for_each_entry_reverse(file, &dev->filelist, lhead) {
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1683,7 +1683,7 @@ out_gem_unload:
+@@ -1684,7 +1684,7 @@ out_gem_unload:
out_mtrrfree:
arch_phys_wc_del(dev_priv->gtt.mtrr);
io_mapping_free(dev_priv->gtt.mappable);
@@ -61,7 +61,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
out_rmmap:
pci_iounmap(dev->pdev, dev_priv->regs);
put_bridge:
-@@ -1778,7 +1778,7 @@ int i915_driver_unload(struct drm_device
+@@ -1779,7 +1779,7 @@ int i915_driver_unload(struct drm_device
destroy_workqueue(dev_priv->wq);
pm_qos_remove_request(&dev_priv->pm_qos);
diff --git a/patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch b/patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch
index 03de74b708998..6da9ed5732370 100644
--- a/patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch
+++ b/patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch
@@ -38,7 +38,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
cleanup_irq:
drm_irq_uninstall(dev);
cleanup_gem_stolen:
-@@ -1768,7 +1768,7 @@ int i915_driver_unload(struct drm_device
+@@ -1769,7 +1769,7 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
diff --git a/patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch b/patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch
index b56569b0856aa..c0801df0c9ef3 100644
--- a/patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch
+++ b/patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch
@@ -35,7 +35,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
if (i915_get_bridge_dev(dev)) {
ret = -EIO;
goto free_priv;
-@@ -1768,6 +1772,8 @@ int i915_driver_unload(struct drm_device
+@@ -1769,6 +1773,8 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
diff --git a/patches.baytrail/0485-drm-i915-Enable-Disable-PSR.patch b/patches.baytrail/0485-drm-i915-Enable-Disable-PSR.patch
index fd2b56012c68b..a96d1e2c40dc9 100644
--- a/patches.baytrail/0485-drm-i915-Enable-Disable-PSR.patch
+++ b/patches.baytrail/0485-drm-i915-Enable-Disable-PSR.patch
@@ -41,13 +41,11 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 2b28bb1b6440fadececc4cf8f29c55d510c6db09)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 42 +++++++++++
- drivers/gpu/drm/i915/intel_dp.c | 149 +++++++++++++++++++++++++++++++++++++++
- drivers/gpu/drm/i915/intel_drv.h | 4 ++
+ drivers/gpu/drm/i915/i915_reg.h | 42 ++++++++++
+ drivers/gpu/drm/i915/intel_dp.c | 149 +++++++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/intel_drv.h | 4 +
3 files changed, 195 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 9fb32dfbfeb9..780a5dc9c131 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1781,6 +1781,47 @@
@@ -98,7 +96,7 @@ index 9fb32dfbfeb9..780a5dc9c131 100644
/* VGA port control */
#define ADPA 0x61100
#define PCH_ADPA 0xe1100
-@@ -2056,6 +2097,7 @@
+@@ -2060,6 +2101,7 @@
* (Haswell and newer) to see which VIDEO_DIP_DATA byte corresponds to each byte
* of the infoframe structure specified by CEA-861. */
#define VIDEO_DIP_DATA_SIZE 32
@@ -106,11 +104,9 @@ index 9fb32dfbfeb9..780a5dc9c131 100644
#define VIDEO_DIP_CTL 0x61170
/* Pre HSW: */
#define VIDEO_DIP_ENABLE (1 << 31)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index be6b47140e09..6f2e558b475c 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1394,6 +1394,153 @@ static bool is_edp_psr(struct intel_dp *intel_dp)
+@@ -1394,6 +1394,153 @@ static bool is_edp_psr(struct intel_dp *
intel_dp->psr_dpcd[0] & DP_PSR_IS_SUPPORTED;
}
@@ -264,7 +260,7 @@ index be6b47140e09..6f2e558b475c 100644
static void intel_disable_dp(struct intel_encoder *encoder)
{
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
-@@ -3205,6 +3352,8 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -3221,6 +3368,8 @@ intel_dp_init_connector(struct intel_dig
WARN(error, "intel_dp_i2c_init failed with error %d for port %c\n",
error, port_name(port));
@@ -273,8 +269,6 @@ index be6b47140e09..6f2e558b475c 100644
if (!intel_edp_init_connector(intel_dp, intel_connector)) {
i2c_del_adapter(&intel_dp->adapter);
if (is_edp(intel_dp)) {
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index fdb71b445bf9..9b0ac47a565e 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -499,6 +499,7 @@ struct intel_dp {
@@ -285,7 +279,7 @@ index fdb71b445bf9..9b0ac47a565e 100644
struct intel_connector *attached_connector;
};
-@@ -834,4 +835,7 @@ extern bool intel_set_pch_fifo_underrun_reporting(struct drm_device *dev,
+@@ -834,4 +835,7 @@ extern bool intel_set_pch_fifo_underrun_
enum transcoder pch_transcoder,
bool enable);
@@ -293,6 +287,3 @@ index fdb71b445bf9..9b0ac47a565e 100644
+extern void intel_edp_psr_disable(struct intel_dp *intel_dp);
+
#endif /* __INTEL_DRV_H__ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0487-drm-i915-Match-all-PSR-mode-entry-conditions-before-.patch b/patches.baytrail/0487-drm-i915-Match-all-PSR-mode-entry-conditions-before-.patch
index ad1644525fb39..1679a8476a3ac 100644
--- a/patches.baytrail/0487-drm-i915-Match-all-PSR-mode-entry-conditions-before-.patch
+++ b/patches.baytrail/0487-drm-i915-Match-all-PSR-mode-entry-conditions-before-.patch
@@ -24,17 +24,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 3f51e4713fc57ab0fc225c3f0e67578a53c24a11)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 42 ++++++++++++++++++++---
- drivers/gpu/drm/i915/i915_drv.h | 13 +++++++
- drivers/gpu/drm/i915/i915_reg.h | 7 ++++
- drivers/gpu/drm/i915/intel_dp.c | 67 ++++++++++++++++++++++++++++++++++++-
+ drivers/gpu/drm/i915/i915_debugfs.c | 42 +++++++++++++++++++---
+ drivers/gpu/drm/i915/i915_drv.h | 13 ++++++
+ drivers/gpu/drm/i915/i915_reg.h | 7 +++
+ drivers/gpu/drm/i915/intel_dp.c | 67 +++++++++++++++++++++++++++++++++++-
4 files changed, 123 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 65619e6fde86..973f2727d703 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -1550,17 +1550,49 @@ static int i915_edp_psr_status(struct seq_file *m, void *data)
+@@ -1550,17 +1550,49 @@ static int i915_edp_psr_status(struct se
struct drm_info_node *node = m->private;
struct drm_device *dev = node->minor->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -89,8 +87,6 @@ index 65619e6fde86..973f2727d703 100644
psrstat = I915_READ(EDP_PSR_STATUS_CTL);
seq_puts(m, "PSR Current State: ");
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index d972025bff14..6d8dc7475536 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -593,6 +593,17 @@ struct i915_fbc {
@@ -120,11 +116,9 @@ index d972025bff14..6d8dc7475536 100644
struct i915_gpu_error gpu_error;
struct drm_i915_gem_object *vlv_pctx;
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 918597035b62..6f2df01d8562 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4158,6 +4158,13 @@
+@@ -4162,6 +4162,13 @@
#define HSW_TVIDEO_DIP_VSC_DATA(trans) \
_TRANSCODER(trans, HSW_VIDEO_DIP_VSC_DATA_A, HSW_VIDEO_DIP_VSC_DATA_B)
@@ -138,11 +132,9 @@ index 918597035b62..6f2df01d8562 100644
#define _PCH_TRANS_HTOTAL_B 0xe1000
#define _PCH_TRANS_HBLANK_B 0xe1004
#define _PCH_TRANS_HSYNC_B 0xe1008
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 6f2e558b475c..070dc55c10d4 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1508,11 +1508,76 @@ static void intel_edp_psr_enable_source(struct intel_dp *intel_dp)
+@@ -1508,11 +1508,76 @@ static void intel_edp_psr_enable_source(
EDP_PSR_ENABLE);
}
@@ -220,6 +212,3 @@ index 6f2e558b475c..070dc55c10d4 100644
return;
/* Setup PSR once */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0505-drm-i915-kill-Ivybridge-vblank-irq-vfuncs.patch b/patches.baytrail/0505-drm-i915-kill-Ivybridge-vblank-irq-vfuncs.patch
index 38223b274d22c..16ab2cda08eb6 100644
--- a/patches.baytrail/0505-drm-i915-kill-Ivybridge-vblank-irq-vfuncs.patch
+++ b/patches.baytrail/0505-drm-i915-kill-Ivybridge-vblank-irq-vfuncs.patch
@@ -14,15 +14,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b518421f5f91365a08ebe55497b32fe6d90ef4df)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_irq.c | 41 ++++++++---------------------------------
- drivers/gpu/drm/i915/i915_reg.h | 3 +++
+ drivers/gpu/drm/i915/i915_irq.c | 41 +++++++---------------------------------
+ drivers/gpu/drm/i915/i915_reg.h | 3 ++
2 files changed, 11 insertions(+), 33 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index a2bcfa2908ab..31a13fdec7a7 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -1704,29 +1704,14 @@ static int ironlake_enable_vblank(struct drm_device *dev, int pipe)
+@@ -1704,29 +1704,14 @@ static int ironlake_enable_vblank(struct
{
drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
unsigned long irqflags;
@@ -55,7 +53,7 @@ index a2bcfa2908ab..31a13fdec7a7 100644
spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
return 0;
-@@ -1777,21 +1762,11 @@ static void ironlake_disable_vblank(struct drm_device *dev, int pipe)
+@@ -1777,21 +1762,11 @@ static void ironlake_disable_vblank(stru
{
drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
unsigned long irqflags;
@@ -80,7 +78,7 @@ index a2bcfa2908ab..31a13fdec7a7 100644
spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
}
-@@ -3117,8 +3092,8 @@ void intel_irq_init(struct drm_device *dev)
+@@ -3117,8 +3092,8 @@ void intel_irq_init(struct drm_device *d
dev->driver->irq_preinstall = ironlake_irq_preinstall;
dev->driver->irq_postinstall = ivybridge_irq_postinstall;
dev->driver->irq_uninstall = ironlake_irq_uninstall;
@@ -91,11 +89,9 @@ index a2bcfa2908ab..31a13fdec7a7 100644
dev_priv->display.hpd_irq_setup = ibx_hpd_irq_setup;
} else if (HAS_PCH_SPLIT(dev)) {
dev->driver->irq_handler = ironlake_irq_handler;
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 6f2df01d8562..1fa35798a94d 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3795,6 +3795,9 @@
+@@ -3799,6 +3799,9 @@
#define DE_PLANEA_FLIP_DONE_IVB (1<<3)
#define DE_PIPEA_VBLANK_IVB (1<<0)
@@ -105,6 +101,3 @@ index 6f2df01d8562..1fa35798a94d 100644
#define VLV_MASTER_IER 0x4400c /* Gunit master IER */
#define MASTER_INTERRUPT_ENABLE (1<<31)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0510-drm-i915-Add-some-debug-breadcrumbs-to-connector-det.patch b/patches.baytrail/0510-drm-i915-Add-some-debug-breadcrumbs-to-connector-det.patch
index d753e4bae61c2..6b31df46bee1c 100644
--- a/patches.baytrail/0510-drm-i915-Add-some-debug-breadcrumbs-to-connector-det.patch
+++ b/patches.baytrail/0510-drm-i915-Add-some-debug-breadcrumbs-to-connector-det.patch
@@ -14,20 +14,18 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 164c8598450657d01fa75d6c997e95eb35672eef)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_crt.c | 4 ++++
- drivers/gpu/drm/i915/intel_dp.c | 3 +++
- drivers/gpu/drm/i915/intel_dvo.c | 2 ++
- drivers/gpu/drm/i915/intel_hdmi.c | 3 +++
- drivers/gpu/drm/i915/intel_lvds.c | 3 +++
- drivers/gpu/drm/i915/intel_sdvo.c | 3 +++
- drivers/gpu/drm/i915/intel_tv.c | 4 ++++
+ drivers/gpu/drm/i915/intel_crt.c | 4 ++++
+ drivers/gpu/drm/i915/intel_dp.c | 3 +++
+ drivers/gpu/drm/i915/intel_dvo.c | 2 ++
+ drivers/gpu/drm/i915/intel_hdmi.c | 3 +++
+ drivers/gpu/drm/i915/intel_lvds.c | 3 +++
+ drivers/gpu/drm/i915/intel_sdvo.c | 3 +++
+ drivers/gpu/drm/i915/intel_tv.c | 4 ++++
7 files changed, 22 insertions(+)
-diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index 3acec8c48166..0c0d4e8d768e 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
-@@ -613,6 +613,10 @@ intel_crt_detect(struct drm_connector *connector, bool force)
+@@ -613,6 +613,10 @@ intel_crt_detect(struct drm_connector *c
enum drm_connector_status status;
struct intel_load_detect_pipe tmp;
@@ -38,11 +36,9 @@ index 3acec8c48166..0c0d4e8d768e 100644
if (I915_HAS_HOTPLUG(dev)) {
/* We can not rely on the HPD pin always being correctly wired
* up, for example many KVM do not pass it through, and so
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index db9cb317f5ce..ccf3b6f0c9a9 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2831,6 +2831,9 @@ intel_dp_detect(struct drm_connector *connector, bool force)
+@@ -2847,6 +2847,9 @@ intel_dp_detect(struct drm_connector *co
enum drm_connector_status status;
struct edid *edid = NULL;
@@ -52,8 +48,6 @@ index db9cb317f5ce..ccf3b6f0c9a9 100644
intel_dp->has_audio = false;
if (HAS_PCH_SPLIT(dev))
-diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
-index cbbc49dc03be..8b4ad27791f3 100644
--- a/drivers/gpu/drm/i915/intel_dvo.c
+++ b/drivers/gpu/drm/i915/intel_dvo.c
@@ -332,6 +332,8 @@ static enum drm_connector_status
@@ -65,11 +59,9 @@ index cbbc49dc03be..8b4ad27791f3 100644
return intel_dvo->dev.dev_ops->detect(&intel_dvo->dev);
}
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index 2fd3fd5b943e..044d11d05944 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -879,6 +879,9 @@ intel_hdmi_detect(struct drm_connector *connector, bool force)
+@@ -879,6 +879,9 @@ intel_hdmi_detect(struct drm_connector *
struct edid *edid;
enum drm_connector_status status = connector_status_disconnected;
@@ -79,11 +71,9 @@ index 2fd3fd5b943e..044d11d05944 100644
intel_hdmi->has_hdmi_sink = false;
intel_hdmi->has_audio = false;
intel_hdmi->rgb_quant_range_selectable = false;
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index 57ecc57a6fa4..176891679ae9 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -343,6 +343,9 @@ intel_lvds_detect(struct drm_connector *connector, bool force)
+@@ -343,6 +343,9 @@ intel_lvds_detect(struct drm_connector *
struct drm_device *dev = connector->dev;
enum drm_connector_status status;
@@ -93,11 +83,9 @@ index 57ecc57a6fa4..176891679ae9 100644
status = intel_panel_detect(dev);
if (status != connector_status_unknown)
return status;
-diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index 798df114cfd3..c3b59b8593b9 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
-@@ -1696,6 +1696,9 @@ intel_sdvo_detect(struct drm_connector *connector, bool force)
+@@ -1696,6 +1696,9 @@ intel_sdvo_detect(struct drm_connector *
struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
enum drm_connector_status ret;
@@ -107,11 +95,9 @@ index 798df114cfd3..c3b59b8593b9 100644
if (!intel_sdvo_get_value(intel_sdvo,
SDVO_CMD_GET_ATTACHED_DISPLAYS,
&response, 2))
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index d7fe4f89f7fc..685017000087 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
-@@ -1313,6 +1313,10 @@ intel_tv_detect(struct drm_connector *connector, bool force)
+@@ -1313,6 +1313,10 @@ intel_tv_detect(struct drm_connector *co
struct intel_tv *intel_tv = intel_attached_tv(connector);
int type;
@@ -122,6 +108,3 @@ index d7fe4f89f7fc..685017000087 100644
mode = reported_modes[0];
if (force) {
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0512-drm-i915-extend-lpt_enable_clkout_dp.patch b/patches.baytrail/0512-drm-i915-extend-lpt_enable_clkout_dp.patch
index a62b7160ce735..3a6167c3e0193 100644
--- a/patches.baytrail/0512-drm-i915-extend-lpt_enable_clkout_dp.patch
+++ b/patches.baytrail/0512-drm-i915-extend-lpt_enable_clkout_dp.patch
@@ -18,15 +18,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 2fa86a1fea14c3019b2de16ea47e1a5363c60905)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 3 ++-
- drivers/gpu/drm/i915/intel_display.c | 43 +++++++++++++++++++++++++-----------
- 2 files changed, 32 insertions(+), 14 deletions(-)
+ drivers/gpu/drm/i915/i915_reg.h | 3 +-
+ drivers/gpu/drm/i915/intel_display.c | 45 ++++++++++++++++++++++++-----------
+ 2 files changed, 33 insertions(+), 15 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 1fa35798a94d..cf42bd61b420 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4950,7 +4950,8 @@
+@@ -4954,7 +4954,8 @@
#define SBI_SSCAUXDIV6 0x0610
#define SBI_SSCAUXDIV_FINALDIV2SEL(x) ((x)<<4)
#define SBI_DBUFF0 0x2a00
@@ -36,11 +34,9 @@ index 1fa35798a94d..cf42bd61b420 100644
/* LPT PIXCLK_GATE */
#define PIXCLK_GATE 0xC6020
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index bf450d725fc3..216de8639c70 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -5260,11 +5260,23 @@ static void lpt_program_fdi_mphy(struct drm_i915_private *dev_priv)
+@@ -5260,11 +5260,23 @@ static void lpt_program_fdi_mphy(struct
intel_sbi_write(dev_priv, 0x21EC, tmp, SBI_MPHY);
}
@@ -67,20 +63,21 @@ index bf450d725fc3..216de8639c70 100644
mutex_lock(&dev_priv->dpio_lock);
-@@ -5275,17 +5287,22 @@ static void lpt_enable_clkout_dp(struct drm_device *dev)
+@@ -5275,17 +5287,22 @@ static void lpt_enable_clkout_dp(struct
udelay(24);
- tmp = intel_sbi_read(dev_priv, SBI_SSCCTL, SBI_ICLK);
- tmp &= ~SBI_SSCCTL_PATHALT;
- intel_sbi_write(dev_priv, SBI_SSCCTL, tmp, SBI_ICLK);
+-
+- lpt_reset_fdi_mphy(dev_priv);
+- lpt_program_fdi_mphy(dev_priv);
+ if (with_spread) {
+ tmp = intel_sbi_read(dev_priv, SBI_SSCCTL, SBI_ICLK);
+ tmp &= ~SBI_SSCCTL_PATHALT;
+ intel_sbi_write(dev_priv, SBI_SSCCTL, tmp, SBI_ICLK);
-
-- lpt_reset_fdi_mphy(dev_priv);
-- lpt_program_fdi_mphy(dev_priv);
++
+ if (with_fdi) {
+ lpt_reset_fdi_mphy(dev_priv);
+ lpt_program_fdi_mphy(dev_priv);
@@ -99,7 +96,7 @@ index bf450d725fc3..216de8639c70 100644
mutex_unlock(&dev_priv->dpio_lock);
}
-@@ -5307,7 +5324,7 @@ static void lpt_init_pch_refclk(struct drm_device *dev)
+@@ -5307,7 +5324,7 @@ static void lpt_init_pch_refclk(struct d
if (!has_vga)
return;
@@ -108,6 +105,3 @@ index bf450d725fc3..216de8639c70 100644
}
/*
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0514-drm-i915-add-functions-to-disable-and-restore-LCPLL.patch b/patches.baytrail/0514-drm-i915-add-functions-to-disable-and-restore-LCPLL.patch
index 8d52a756e2d19..e4229e52f047d 100644
--- a/patches.baytrail/0514-drm-i915-add-functions-to-disable-and-restore-LCPLL.patch
+++ b/patches.baytrail/0514-drm-i915-add-functions-to-disable-and-restore-LCPLL.patch
@@ -35,16 +35,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit be256dc70284c028d0dd828b18b8f804e310507b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 15 ++++
- drivers/gpu/drm/i915/intel_display.c | 136 +++++++++++++++++++++++++++++++++++
- drivers/gpu/drm/i915/intel_drv.h | 3 +
+ drivers/gpu/drm/i915/i915_reg.h | 15 +++
+ drivers/gpu/drm/i915/intel_display.c | 136 +++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/intel_drv.h | 3
3 files changed, 154 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index cf42bd61b420..fbe585da44d9 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2269,6 +2269,8 @@
+@@ -2273,6 +2273,8 @@
#define BLC_PWM_CPU_CTL2 0x48250
#define BLC_PWM_CPU_CTL 0x48254
@@ -53,7 +51,7 @@ index cf42bd61b420..fbe585da44d9 100644
/* PCH CTL1 is totally different, all but the below bits are reserved. CTL2 is
* like the normal CTL from gen4 and earlier. Hooray for confusing naming. */
#define BLC_PWM_PCH_CTL1 0xc8250
-@@ -2277,6 +2279,12 @@
+@@ -2281,6 +2283,12 @@
#define BLM_PCH_POLARITY (1 << 29)
#define BLC_PWM_PCH_CTL2 0xc8254
@@ -66,7 +64,7 @@ index cf42bd61b420..fbe585da44d9 100644
/* TV port control */
#define TV_CTL 0x68000
/** Enables the TV encoder */
-@@ -5017,7 +5025,14 @@
+@@ -5021,7 +5029,14 @@
#define LCPLL_CLK_FREQ_450 (0<<26)
#define LCPLL_CD_CLOCK_DISABLE (1<<25)
#define LCPLL_CD2X_CLOCK_DISABLE (1<<23)
@@ -81,11 +79,9 @@ index cf42bd61b420..fbe585da44d9 100644
/* Pipe WM_LINETIME - watermark line time */
#define PIPE_WM_LINETIME_A 0x45270
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 4da60eebdf96..73965dfbf149 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -5922,6 +5922,142 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -5922,6 +5922,142 @@ static bool ironlake_get_pipe_config(str
return true;
}
@@ -228,11 +224,9 @@ index 4da60eebdf96..73965dfbf149 100644
static void haswell_modeset_global_resources(struct drm_device *dev)
{
bool enable = false;
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 31087ff6d871..3fbe80bc36bb 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -838,5 +838,8 @@ extern bool intel_set_pch_fifo_underrun_reporting(struct drm_device *dev,
+@@ -838,5 +838,8 @@ extern bool intel_set_pch_fifo_underrun_
extern void intel_edp_psr_enable(struct intel_dp *intel_dp);
extern void intel_edp_psr_disable(struct intel_dp *intel_dp);
extern void intel_edp_psr_update(struct drm_device *dev);
@@ -241,6 +235,3 @@ index 31087ff6d871..3fbe80bc36bb 100644
+extern void hsw_restore_lcpll(struct drm_i915_private *dev_priv);
#endif /* __INTEL_DRV_H__ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0545-drm-i915-dp-use-native-encoder-mode_set-callback.patch b/patches.baytrail/0545-drm-i915-dp-use-native-encoder-mode_set-callback.patch
index cea739c564a97..7cf45b2791535 100644
--- a/patches.baytrail/0545-drm-i915-dp-use-native-encoder-mode_set-callback.patch
+++ b/patches.baytrail/0545-drm-i915-dp-use-native-encoder-mode_set-callback.patch
@@ -12,14 +12,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b934223d7abae2f52d22b4734a02b9a0867eafe3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 19 +++++++------------
+ drivers/gpu/drm/i915/intel_dp.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 42ddfd457ca6..44972a679517 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -844,15 +844,14 @@ static void ironlake_set_pll_cpu_edp(struct intel_dp *intel_dp)
+@@ -844,15 +844,14 @@ static void ironlake_set_pll_cpu_edp(str
udelay(500);
}
@@ -40,7 +38,7 @@ index 42ddfd457ca6..44972a679517 100644
/*
* There are four kinds of DP registers:
-@@ -884,7 +883,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
+@@ -884,7 +883,7 @@ intel_dp_mode_set(struct drm_encoder *en
DRM_DEBUG_DRIVER("Enabling DP audio on pipe %c\n",
pipe_name(crtc->pipe));
intel_dp->DP |= DP_AUDIO_OUTPUT_ENABLE;
@@ -49,7 +47,7 @@ index 42ddfd457ca6..44972a679517 100644
}
intel_dp_init_link_config(intel_dp);
-@@ -3046,10 +3045,6 @@ void intel_dp_encoder_destroy(struct drm_encoder *encoder)
+@@ -3062,10 +3061,6 @@ void intel_dp_encoder_destroy(struct drm
kfree(intel_dig_port);
}
@@ -60,7 +58,7 @@ index 42ddfd457ca6..44972a679517 100644
static const struct drm_connector_funcs intel_dp_connector_funcs = {
.dpms = intel_connector_dpms,
.detect = intel_dp_detect,
-@@ -3529,9 +3524,9 @@ intel_dp_init(struct drm_device *dev, int output_reg, enum port port)
+@@ -3545,9 +3540,9 @@ intel_dp_init(struct drm_device *dev, in
drm_encoder_init(dev, &intel_encoder->base, &intel_dp_enc_funcs,
DRM_MODE_ENCODER_TMDS);
@@ -71,6 +69,3 @@ index 42ddfd457ca6..44972a679517 100644
intel_encoder->enable = intel_enable_dp;
intel_encoder->pre_enable = intel_pre_enable_dp;
intel_encoder->disable = intel_disable_dp;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0566-drm-i915-rearrange-vlv-dp-enable-and-pre_enable-call.patch b/patches.baytrail/0566-drm-i915-rearrange-vlv-dp-enable-and-pre_enable-call.patch
index 58c00fe5dc330..cccd123c9e093 100644
--- a/patches.baytrail/0566-drm-i915-rearrange-vlv-dp-enable-and-pre_enable-call.patch
+++ b/patches.baytrail/0566-drm-i915-rearrange-vlv-dp-enable-and-pre_enable-call.patch
@@ -29,14 +29,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ab1f90f9662482021fddd0e7868005401f62866f)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 73 ++++++++++++++++++++++-------------------
- 1 file changed, 39 insertions(+), 34 deletions(-)
+ drivers/gpu/drm/i915/intel_dp.c | 75 +++++++++++++++++++++-------------------
+ 1 file changed, 40 insertions(+), 35 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 57d9b979a846..9e22bfd850df 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1711,49 +1711,50 @@ static void intel_enable_dp(struct intel_encoder *encoder)
+@@ -1711,49 +1711,50 @@ static void intel_enable_dp(struct intel
intel_dp_complete_link_train(intel_dp);
intel_dp_stop_link_train(intel_dp);
ironlake_edp_backlight_on(intel_dp);
@@ -93,6 +91,13 @@ index 57d9b979a846..9e22bfd850df 100644
- val &= ~(1<<21);
- val |= 0x001000c4;
- vlv_dpio_write(dev_priv, DPIO_DATA_CHANNEL(port), val);
+-
+- vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF0(port),
+- 0x00760018);
+- vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF8(port),
+- 0x00400888);
+- mutex_unlock(&dev_priv->dpio_lock);
+- }
+ val = vlv_dpio_read(dev_priv, DPIO_DATA_LANE_A(port));
+ val = 0;
+ if (pipe)
@@ -103,13 +108,7 @@ index 57d9b979a846..9e22bfd850df 100644
+ vlv_dpio_write(dev_priv, DPIO_DATA_CHANNEL(port), val);
+ vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF0(port), 0x00760018);
+ vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF8(port), 0x00400888);
-
-- vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF0(port),
-- 0x00760018);
-- vlv_dpio_write(dev_priv, DPIO_PCS_CLOCKBUF8(port),
-- 0x00400888);
-- mutex_unlock(&dev_priv->dpio_lock);
-- }
++
+ mutex_unlock(&dev_priv->dpio_lock);
+
+ intel_enable_dp(encoder);
@@ -118,7 +117,7 @@ index 57d9b979a846..9e22bfd850df 100644
}
static void intel_dp_pre_pll_enable(struct intel_encoder *encoder)
-@@ -3533,14 +3534,18 @@ intel_dp_init(struct drm_device *dev, int output_reg, enum port port)
+@@ -3549,14 +3550,18 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->compute_config = intel_dp_compute_config;
intel_encoder->mode_set = intel_dp_mode_set;
@@ -140,6 +139,3 @@ index 57d9b979a846..9e22bfd850df 100644
intel_dig_port->port = port;
intel_dig_port->dp.output_reg = output_reg;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch b/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch
index 9f5ccf1de15fb..50265e43f8962 100644
--- a/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch
+++ b/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch
@@ -183,7 +183,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
if (ret)
goto err_unref;
-@@ -1840,7 +1840,7 @@ int intel_init_render_ring_buffer(struct
+@@ -1844,7 +1844,7 @@ int intel_init_render_ring_buffer(struct
return -ENOMEM;
}
diff --git a/patches.baytrail/0588-drm-i915-Use-the-watermark-latency-values-from-dev_p.patch b/patches.baytrail/0588-drm-i915-Use-the-watermark-latency-values-from-dev_p.patch
index e4804cd460490..760887cb46b69 100644
--- a/patches.baytrail/0588-drm-i915-Use-the-watermark-latency-values-from-dev_p.patch
+++ b/patches.baytrail/0588-drm-i915-Use-the-watermark-latency-values-from-dev_p.patch
@@ -17,15 +17,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b0aea5dca064176a626dc2a83727c60ace31ee6d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 9 -------
- drivers/gpu/drm/i915/intel_pm.c | 57 +++++++++++++++++++----------------------
+ drivers/gpu/drm/i915/i915_reg.h | 9 ------
+ drivers/gpu/drm/i915/intel_pm.c | 57 ++++++++++++++++++----------------------
2 files changed, 27 insertions(+), 39 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 615d66717016..11800316799f 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3204,9 +3204,6 @@
+@@ -3208,9 +3208,6 @@
#define MLTR_WM2_SHIFT 8
/* the unit of memory self-refresh latency time is 0.5us */
#define ILK_SRLT_MASK 0x3f
@@ -35,7 +33,7 @@ index 615d66717016..11800316799f 100644
/* define the fifo size on Ironlake */
#define ILK_DISPLAY_FIFO 128
-@@ -3253,12 +3250,6 @@
+@@ -3257,12 +3254,6 @@
#define SSKPD_WM2_SHIFT 16
#define SSKPD_WM3_SHIFT 24
@@ -48,11 +46,9 @@ index 615d66717016..11800316799f 100644
/*
* The two pipe frame counter registers are not synchronized, so
* reading a stable value is somewhat tricky. The following code
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 42f541671236..0254e620ba05 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -1680,9 +1680,6 @@ static void i830_update_wm(struct drm_device *dev)
+@@ -1680,9 +1680,6 @@ static void i830_update_wm(struct drm_de
I915_WRITE(FW_BLC, fwater_lo);
}
@@ -62,7 +58,7 @@ index 42f541671236..0254e620ba05 100644
/*
* Check the wm result.
*
-@@ -1797,9 +1794,9 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1797,9 +1794,9 @@ static void ironlake_update_wm(struct dr
enabled = 0;
if (g4x_compute_wm0(dev, PIPE_A,
&ironlake_display_wm_info,
@@ -74,7 +70,7 @@ index 42f541671236..0254e620ba05 100644
&plane_wm, &cursor_wm)) {
I915_WRITE(WM0_PIPEA_ILK,
(plane_wm << WM0_PIPE_PLANE_SHIFT) | cursor_wm);
-@@ -1811,9 +1808,9 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1811,9 +1808,9 @@ static void ironlake_update_wm(struct dr
if (g4x_compute_wm0(dev, PIPE_B,
&ironlake_display_wm_info,
@@ -86,7 +82,7 @@ index 42f541671236..0254e620ba05 100644
&plane_wm, &cursor_wm)) {
I915_WRITE(WM0_PIPEB_ILK,
(plane_wm << WM0_PIPE_PLANE_SHIFT) | cursor_wm);
-@@ -1837,7 +1834,7 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1837,7 +1834,7 @@ static void ironlake_update_wm(struct dr
/* WM1 */
if (!ironlake_compute_srwm(dev, 1, enabled,
@@ -95,7 +91,7 @@ index 42f541671236..0254e620ba05 100644
&ironlake_display_srwm_info,
&ironlake_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -1845,14 +1842,14 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1845,14 +1842,14 @@ static void ironlake_update_wm(struct dr
I915_WRITE(WM1_LP_ILK,
WM1_LP_SR_EN |
@@ -112,7 +108,7 @@ index 42f541671236..0254e620ba05 100644
&ironlake_display_srwm_info,
&ironlake_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -1860,7 +1857,7 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1860,7 +1857,7 @@ static void ironlake_update_wm(struct dr
I915_WRITE(WM2_LP_ILK,
WM2_LP_EN |
@@ -121,7 +117,7 @@ index 42f541671236..0254e620ba05 100644
(fbc_wm << WM1_LP_FBC_SHIFT) |
(plane_wm << WM1_LP_SR_SHIFT) |
cursor_wm);
-@@ -1874,7 +1871,7 @@ static void ironlake_update_wm(struct drm_device *dev)
+@@ -1874,7 +1871,7 @@ static void ironlake_update_wm(struct dr
static void sandybridge_update_wm(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -130,7 +126,7 @@ index 42f541671236..0254e620ba05 100644
u32 val;
int fbc_wm, plane_wm, cursor_wm;
unsigned int enabled;
-@@ -1929,7 +1926,7 @@ static void sandybridge_update_wm(struct drm_device *dev)
+@@ -1929,7 +1926,7 @@ static void sandybridge_update_wm(struct
/* WM1 */
if (!ironlake_compute_srwm(dev, 1, enabled,
@@ -139,7 +135,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -1937,14 +1934,14 @@ static void sandybridge_update_wm(struct drm_device *dev)
+@@ -1937,14 +1934,14 @@ static void sandybridge_update_wm(struct
I915_WRITE(WM1_LP_ILK,
WM1_LP_SR_EN |
@@ -156,7 +152,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -1952,14 +1949,14 @@ static void sandybridge_update_wm(struct drm_device *dev)
+@@ -1952,14 +1949,14 @@ static void sandybridge_update_wm(struct
I915_WRITE(WM2_LP_ILK,
WM2_LP_EN |
@@ -173,7 +169,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -1967,7 +1964,7 @@ static void sandybridge_update_wm(struct drm_device *dev)
+@@ -1967,7 +1964,7 @@ static void sandybridge_update_wm(struct
I915_WRITE(WM3_LP_ILK,
WM3_LP_EN |
@@ -182,7 +178,7 @@ index 42f541671236..0254e620ba05 100644
(fbc_wm << WM1_LP_FBC_SHIFT) |
(plane_wm << WM1_LP_SR_SHIFT) |
cursor_wm);
-@@ -1976,7 +1973,7 @@ static void sandybridge_update_wm(struct drm_device *dev)
+@@ -1976,7 +1973,7 @@ static void sandybridge_update_wm(struct
static void ivybridge_update_wm(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -191,7 +187,7 @@ index 42f541671236..0254e620ba05 100644
u32 val;
int fbc_wm, plane_wm, cursor_wm;
int ignore_fbc_wm, ignore_plane_wm, ignore_cursor_wm;
-@@ -2046,7 +2043,7 @@ static void ivybridge_update_wm(struct drm_device *dev)
+@@ -2046,7 +2043,7 @@ static void ivybridge_update_wm(struct d
/* WM1 */
if (!ironlake_compute_srwm(dev, 1, enabled,
@@ -200,7 +196,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -2054,14 +2051,14 @@ static void ivybridge_update_wm(struct drm_device *dev)
+@@ -2054,14 +2051,14 @@ static void ivybridge_update_wm(struct d
I915_WRITE(WM1_LP_ILK,
WM1_LP_SR_EN |
@@ -217,7 +213,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&fbc_wm, &plane_wm, &cursor_wm))
-@@ -2069,19 +2066,19 @@ static void ivybridge_update_wm(struct drm_device *dev)
+@@ -2069,19 +2066,19 @@ static void ivybridge_update_wm(struct d
I915_WRITE(WM2_LP_ILK,
WM2_LP_EN |
@@ -240,7 +236,7 @@ index 42f541671236..0254e620ba05 100644
&sandybridge_display_srwm_info,
&sandybridge_cursor_srwm_info,
&ignore_fbc_wm, &ignore_plane_wm, &cursor_wm))
-@@ -2089,7 +2086,7 @@ static void ivybridge_update_wm(struct drm_device *dev)
+@@ -2089,7 +2086,7 @@ static void ivybridge_update_wm(struct d
I915_WRITE(WM3_LP_ILK,
WM3_LP_EN |
@@ -249,7 +245,7 @@ index 42f541671236..0254e620ba05 100644
(fbc_wm << WM1_LP_FBC_SHIFT) |
(plane_wm << WM1_LP_SR_SHIFT) |
cursor_wm);
-@@ -2833,7 +2830,7 @@ static void sandybridge_update_sprite_wm(struct drm_device *dev, int pipe,
+@@ -2833,7 +2830,7 @@ static void sandybridge_update_sprite_wm
bool enable, bool scaled)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -258,7 +254,7 @@ index 42f541671236..0254e620ba05 100644
u32 val;
int sprite_wm, reg;
int ret;
-@@ -2873,7 +2870,7 @@ static void sandybridge_update_sprite_wm(struct drm_device *dev, int pipe,
+@@ -2873,7 +2870,7 @@ static void sandybridge_update_sprite_wm
ret = sandybridge_compute_sprite_srwm(dev, pipe, sprite_width,
pixel_size,
&sandybridge_display_srwm_info,
@@ -267,7 +263,7 @@ index 42f541671236..0254e620ba05 100644
&sprite_wm);
if (!ret) {
DRM_DEBUG_KMS("failed to compute sprite lp1 wm on pipe %c\n",
-@@ -2889,7 +2886,7 @@ static void sandybridge_update_sprite_wm(struct drm_device *dev, int pipe,
+@@ -2889,7 +2886,7 @@ static void sandybridge_update_sprite_wm
ret = sandybridge_compute_sprite_srwm(dev, pipe, sprite_width,
pixel_size,
&sandybridge_display_srwm_info,
@@ -276,7 +272,7 @@ index 42f541671236..0254e620ba05 100644
&sprite_wm);
if (!ret) {
DRM_DEBUG_KMS("failed to compute sprite lp2 wm on pipe %c\n",
-@@ -2901,7 +2898,7 @@ static void sandybridge_update_sprite_wm(struct drm_device *dev, int pipe,
+@@ -2901,7 +2898,7 @@ static void sandybridge_update_sprite_wm
ret = sandybridge_compute_sprite_srwm(dev, pipe, sprite_width,
pixel_size,
&sandybridge_display_srwm_info,
@@ -285,6 +281,3 @@ index 42f541671236..0254e620ba05 100644
&sprite_wm);
if (!ret) {
DRM_DEBUG_KMS("failed to compute sprite lp3 wm on pipe %c\n",
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch b/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch
index c632cec609bea..552984aade0f5 100644
--- a/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch
+++ b/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch
@@ -109,7 +109,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
#define I810_BASE(reg) ((unsigned long) \
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1843,7 +1843,7 @@ void i915_driver_postclose(struct drm_de
+@@ -1844,7 +1844,7 @@ void i915_driver_postclose(struct drm_de
kfree(file_priv);
}
diff --git a/patches.baytrail/0684-drm-i915-Initialize-seqno-for-VECS-too.patch b/patches.baytrail/0684-drm-i915-Initialize-seqno-for-VECS-too.patch
index 660815380d121..bf587ecdadb93 100644
--- a/patches.baytrail/0684-drm-i915-Initialize-seqno-for-VECS-too.patch
+++ b/patches.baytrail/0684-drm-i915-Initialize-seqno-for-VECS-too.patch
@@ -31,14 +31,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 5020150b3b8d2912466e28572f25b3cc56722aec)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_ringbuffer.c | 2 ++
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 89a9c908c99d..a1aa3bc48dcc 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1606,6 +1606,8 @@ void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno)
+@@ -1610,6 +1610,8 @@ void intel_ring_init_seqno(struct intel_
if (INTEL_INFO(ring->dev)->gen >= 6) {
I915_WRITE(RING_SYNC_0(ring->mmio_base), 0);
I915_WRITE(RING_SYNC_1(ring->mmio_base), 0);
@@ -47,6 +45,3 @@ index 89a9c908c99d..a1aa3bc48dcc 100644
}
ring->set_seqno(ring, seqno);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0692-drm-i915-clarify-Haswell-power-well-bit-names.patch b/patches.baytrail/0692-drm-i915-clarify-Haswell-power-well-bit-names.patch
index 850e53f457ce9..23b6318469ec5 100644
--- a/patches.baytrail/0692-drm-i915-clarify-Haswell-power-well-bit-names.patch
+++ b/patches.baytrail/0692-drm-i915-clarify-Haswell-power-well-bit-names.patch
@@ -13,16 +13,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 6aedd1f539f51b7b0c3d6be0088c3541f9d2c294)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 ++--
- drivers/gpu/drm/i915/intel_display.c | 2 +-
- drivers/gpu/drm/i915/intel_pm.c | 13 +++++++------
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++--
+ drivers/gpu/drm/i915/intel_display.c | 2 +-
+ drivers/gpu/drm/i915/intel_pm.c | 13 +++++++------
3 files changed, 10 insertions(+), 9 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 11800316799f..019fd1f9d286 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4833,8 +4833,8 @@
+@@ -4837,8 +4837,8 @@
#define HSW_PWR_WELL_DRIVER 0x45404 /* CTL2 */
#define HSW_PWR_WELL_KVMR 0x45408 /* CTL3 */
#define HSW_PWR_WELL_DEBUG 0x4540C /* CTL4 */
@@ -33,11 +31,9 @@ index 11800316799f..019fd1f9d286 100644
#define HSW_PWR_WELL_CTL5 0x45410
#define HSW_PWR_WELL_ENABLE_SINGLE_STEP (1<<31)
#define HSW_PWR_WELL_PWR_GATE_OVERRIDE (1<<20)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 8f4dceef5480..cec940eb0147 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10118,7 +10118,7 @@ void i915_redisable_vga(struct drm_device *dev)
+@@ -10118,7 +10118,7 @@ void i915_redisable_vga(struct drm_devic
* follow the "don't touch the power well if we don't need it" policy
* the rest of the driver uses. */
if (HAS_POWER_WELL(dev) &&
@@ -46,11 +42,9 @@ index 8f4dceef5480..cec940eb0147 100644
return;
if (I915_READ(vga_reg) != VGA_DISP_DISABLE) {
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index d593c2dd7031..d82d70588d11 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -5285,7 +5285,7 @@ bool intel_display_power_enabled(struct drm_device *dev,
+@@ -5285,7 +5285,7 @@ bool intel_display_power_enabled(struct
case POWER_DOMAIN_TRANSCODER_B:
case POWER_DOMAIN_TRANSCODER_C:
return I915_READ(HSW_PWR_WELL_DRIVER) ==
@@ -59,7 +53,7 @@ index d593c2dd7031..d82d70588d11 100644
default:
BUG();
}
-@@ -5298,17 +5298,18 @@ static void __intel_set_power_well(struct drm_device *dev, bool enable)
+@@ -5298,17 +5298,18 @@ static void __intel_set_power_well(struc
uint32_t tmp;
tmp = I915_READ(HSW_PWR_WELL_DRIVER);
@@ -82,7 +76,7 @@ index d593c2dd7031..d82d70588d11 100644
DRM_ERROR("Timeout enabling power well\n");
}
} else {
-@@ -5428,7 +5429,7 @@ void intel_init_power_well(struct drm_device *dev)
+@@ -5428,7 +5429,7 @@ void intel_init_power_well(struct drm_de
/* We're taking over the BIOS, so clear any requests made by it since
* the driver is in charge now. */
@@ -91,6 +85,3 @@ index d593c2dd7031..d82d70588d11 100644
I915_WRITE(HSW_PWR_WELL_BIOS, 0);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch b/patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch
index 96ee9ddb36267..5323666140c17 100644
--- a/patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch
+++ b/patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch
@@ -34,7 +34,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1696,8 +1696,13 @@ int i915_driver_unload(struct drm_device
+@@ -1697,8 +1697,13 @@ int i915_driver_unload(struct drm_device
intel_gpu_ips_teardown();
diff --git a/patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch b/patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch
index db9afa6d1fd41..bc3d4f02a7265 100644
--- a/patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch
+++ b/patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch
@@ -73,7 +73,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
i915_dump_device_info(dev_priv);
/* Not all pre-production machines fall into this category, only the
-@@ -1748,6 +1756,8 @@ int i915_driver_unload(struct drm_device
+@@ -1749,6 +1757,8 @@ int i915_driver_unload(struct drm_device
cancel_work_sync(&dev_priv->gpu_error.work);
i915_destroy_error_state(dev);
diff --git a/patches.baytrail/0737-drm-i915-hdmi-Write-HDMI-vendor-specific-infoframes.patch b/patches.baytrail/0737-drm-i915-hdmi-Write-HDMI-vendor-specific-infoframes.patch
index fc20f4a8588e3..3c676a838a2f1 100644
--- a/patches.baytrail/0737-drm-i915-hdmi-Write-HDMI-vendor-specific-infoframes.patch
+++ b/patches.baytrail/0737-drm-i915-hdmi-Write-HDMI-vendor-specific-infoframes.patch
@@ -16,15 +16,13 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit c8bb75afff8eaed89476a00f733c666e1b44115b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 2 ++
- drivers/gpu/drm/i915/intel_hdmi.c | 28 ++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_reg.h | 2 ++
+ drivers/gpu/drm/i915/intel_hdmi.c | 28 ++++++++++++++++++++++++++++
2 files changed, 30 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 8e51ecf2a6f9..b6a58f720f9a 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4168,6 +4168,8 @@
+@@ -4172,6 +4172,8 @@
_TRANSCODER(trans, HSW_VIDEO_DIP_CTL_A, HSW_VIDEO_DIP_CTL_B)
#define HSW_TVIDEO_DIP_AVI_DATA(trans) \
_TRANSCODER(trans, HSW_VIDEO_DIP_AVI_DATA_A, HSW_VIDEO_DIP_AVI_DATA_B)
@@ -33,11 +31,9 @@ index 8e51ecf2a6f9..b6a58f720f9a 100644
#define HSW_TVIDEO_DIP_SPD_DATA(trans) \
_TRANSCODER(trans, HSW_VIDEO_DIP_SPD_DATA_A, HSW_VIDEO_DIP_SPD_DATA_B)
#define HSW_TVIDEO_DIP_GCP(trans) \
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index a619d9435107..4148cc85bf7f 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -74,6 +74,8 @@ static u32 g4x_infoframe_index(enum hdmi_infoframe_type type)
+@@ -74,6 +74,8 @@ static u32 g4x_infoframe_index(enum hdmi
return VIDEO_DIP_SELECT_AVI;
case HDMI_INFOFRAME_TYPE_SPD:
return VIDEO_DIP_SELECT_SPD;
@@ -46,7 +42,7 @@ index a619d9435107..4148cc85bf7f 100644
default:
DRM_DEBUG_DRIVER("unknown info frame type %d\n", type);
return 0;
-@@ -87,6 +89,8 @@ static u32 g4x_infoframe_enable(enum hdmi_infoframe_type type)
+@@ -87,6 +89,8 @@ static u32 g4x_infoframe_enable(enum hdm
return VIDEO_DIP_ENABLE_AVI;
case HDMI_INFOFRAME_TYPE_SPD:
return VIDEO_DIP_ENABLE_SPD;
@@ -55,7 +51,7 @@ index a619d9435107..4148cc85bf7f 100644
default:
DRM_DEBUG_DRIVER("unknown info frame type %d\n", type);
return 0;
-@@ -100,6 +104,8 @@ static u32 hsw_infoframe_enable(enum hdmi_infoframe_type type)
+@@ -100,6 +104,8 @@ static u32 hsw_infoframe_enable(enum hdm
return VIDEO_DIP_ENABLE_AVI_HSW;
case HDMI_INFOFRAME_TYPE_SPD:
return VIDEO_DIP_ENABLE_SPD_HSW;
@@ -64,7 +60,7 @@ index a619d9435107..4148cc85bf7f 100644
default:
DRM_DEBUG_DRIVER("unknown info frame type %d\n", type);
return 0;
-@@ -114,6 +120,8 @@ static u32 hsw_infoframe_data_reg(enum hdmi_infoframe_type type,
+@@ -114,6 +120,8 @@ static u32 hsw_infoframe_data_reg(enum h
return HSW_TVIDEO_DIP_AVI_DATA(cpu_transcoder);
case HDMI_INFOFRAME_TYPE_SPD:
return HSW_TVIDEO_DIP_SPD_DATA(cpu_transcoder);
@@ -73,7 +69,7 @@ index a619d9435107..4148cc85bf7f 100644
default:
DRM_DEBUG_DRIVER("unknown info frame type %d\n", type);
return 0;
-@@ -392,6 +400,21 @@ static void intel_hdmi_set_spd_infoframe(struct drm_encoder *encoder)
+@@ -392,6 +400,21 @@ static void intel_hdmi_set_spd_infoframe
intel_write_infoframe(encoder, &frame);
}
@@ -95,7 +91,7 @@ index a619d9435107..4148cc85bf7f 100644
static void g4x_set_infoframes(struct drm_encoder *encoder,
struct drm_display_mode *adjusted_mode)
{
-@@ -454,6 +477,7 @@ static void g4x_set_infoframes(struct drm_encoder *encoder,
+@@ -454,6 +477,7 @@ static void g4x_set_infoframes(struct dr
intel_hdmi_set_avi_infoframe(encoder, adjusted_mode);
intel_hdmi_set_spd_infoframe(encoder);
@@ -103,7 +99,7 @@ index a619d9435107..4148cc85bf7f 100644
}
static void ibx_set_infoframes(struct drm_encoder *encoder,
-@@ -515,6 +539,7 @@ static void ibx_set_infoframes(struct drm_encoder *encoder,
+@@ -515,6 +539,7 @@ static void ibx_set_infoframes(struct dr
intel_hdmi_set_avi_infoframe(encoder, adjusted_mode);
intel_hdmi_set_spd_infoframe(encoder);
@@ -111,7 +107,7 @@ index a619d9435107..4148cc85bf7f 100644
}
static void cpt_set_infoframes(struct drm_encoder *encoder,
-@@ -550,6 +575,7 @@ static void cpt_set_infoframes(struct drm_encoder *encoder,
+@@ -550,6 +575,7 @@ static void cpt_set_infoframes(struct dr
intel_hdmi_set_avi_infoframe(encoder, adjusted_mode);
intel_hdmi_set_spd_infoframe(encoder);
@@ -119,7 +115,7 @@ index a619d9435107..4148cc85bf7f 100644
}
static void vlv_set_infoframes(struct drm_encoder *encoder,
-@@ -584,6 +610,7 @@ static void vlv_set_infoframes(struct drm_encoder *encoder,
+@@ -584,6 +610,7 @@ static void vlv_set_infoframes(struct dr
intel_hdmi_set_avi_infoframe(encoder, adjusted_mode);
intel_hdmi_set_spd_infoframe(encoder);
@@ -127,7 +123,7 @@ index a619d9435107..4148cc85bf7f 100644
}
static void hsw_set_infoframes(struct drm_encoder *encoder,
-@@ -611,6 +638,7 @@ static void hsw_set_infoframes(struct drm_encoder *encoder,
+@@ -611,6 +638,7 @@ static void hsw_set_infoframes(struct dr
intel_hdmi_set_avi_infoframe(encoder, adjusted_mode);
intel_hdmi_set_spd_infoframe(encoder);
@@ -135,6 +131,3 @@ index a619d9435107..4148cc85bf7f 100644
}
static void intel_hdmi_mode_set(struct intel_encoder *encoder)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0740-drm-i915-Support-render-nodes.patch b/patches.baytrail/0740-drm-i915-Support-render-nodes.patch
index bc88ec89337c2..c0e1647d5e9ab 100644
--- a/patches.baytrail/0740-drm-i915-Support-render-nodes.patch
+++ b/patches.baytrail/0740-drm-i915-Support-render-nodes.patch
@@ -24,7 +24,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1876,7 +1876,7 @@ const struct drm_ioctl_desc i915_ioctls[
+@@ -1877,7 +1877,7 @@ const struct drm_ioctl_desc i915_ioctls[
DRM_IOCTL_DEF_DRV(I915_BATCHBUFFER, i915_batchbuffer, DRM_AUTH),
DRM_IOCTL_DEF_DRV(I915_IRQ_EMIT, i915_irq_emit, DRM_AUTH),
DRM_IOCTL_DEF_DRV(I915_IRQ_WAIT, i915_irq_wait, DRM_AUTH),
@@ -33,7 +33,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
DRM_IOCTL_DEF_DRV(I915_SETPARAM, i915_setparam, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(I915_ALLOC, drm_noop, DRM_AUTH),
DRM_IOCTL_DEF_DRV(I915_FREE, drm_noop, DRM_AUTH),
-@@ -1889,35 +1889,35 @@ const struct drm_ioctl_desc i915_ioctls[
+@@ -1890,35 +1890,35 @@ const struct drm_ioctl_desc i915_ioctls[
DRM_IOCTL_DEF_DRV(I915_HWS_ADDR, i915_set_status_page, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(I915_GEM_INIT, i915_gem_init_ioctl, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY|DRM_UNLOCKED),
DRM_IOCTL_DEF_DRV(I915_GEM_EXECBUFFER, i915_gem_execbuffer, DRM_AUTH|DRM_UNLOCKED),
diff --git a/patches.baytrail/0748-drm-i915-Embed-the-ring-private-within-the-struct-in.patch b/patches.baytrail/0748-drm-i915-Embed-the-ring-private-within-the-struct-in.patch
index fce3fd8f0e1d6..2794875692324 100644
--- a/patches.baytrail/0748-drm-i915-Embed-the-ring-private-within-the-struct-in.patch
+++ b/patches.baytrail/0748-drm-i915-Embed-the-ring-private-within-the-struct-in.patch
@@ -14,16 +14,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 0d1aacac36530fce058d7a0db3da7befd5765417)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gpu_error.c | 2 +-
- drivers/gpu/drm/i915/intel_ringbuffer.c | 99 ++++++++++-----------------------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 6 +-
+ drivers/gpu/drm/i915/i915_gpu_error.c | 2
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 99 +++++++++-----------------------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 6 +
3 files changed, 35 insertions(+), 72 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
-index 558e568d5b45..aba9d7498996 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
-@@ -641,7 +641,7 @@ i915_error_first_batchbuffer(struct drm_i915_private *dev_priv,
+@@ -641,7 +641,7 @@ i915_error_first_batchbuffer(struct drm_
if (WARN_ON(ring->id != RCS))
return NULL;
@@ -32,8 +30,6 @@ index 558e568d5b45..aba9d7498996 100644
if (acthd >= i915_gem_obj_ggtt_offset(obj) &&
acthd < i915_gem_obj_ggtt_offset(obj) + obj->base.size)
return i915_error_object_create(dev_priv, obj);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index f05cceac5a52..460ee1026fca 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -33,16 +33,6 @@
@@ -53,7 +49,7 @@ index f05cceac5a52..460ee1026fca 100644
static inline int ring_space(struct intel_ring_buffer *ring)
{
int space = (ring->head & HEAD_ADDR) - (ring->tail + I915_RING_FREE_SPACE);
-@@ -175,8 +165,7 @@ gen4_render_ring_flush(struct intel_ring_buffer *ring,
+@@ -175,8 +165,7 @@ gen4_render_ring_flush(struct intel_ring
static int
intel_emit_post_sync_nonzero_flush(struct intel_ring_buffer *ring)
{
@@ -63,7 +59,7 @@ index f05cceac5a52..460ee1026fca 100644
int ret;
-@@ -213,8 +202,7 @@ gen6_render_ring_flush(struct intel_ring_buffer *ring,
+@@ -213,8 +202,7 @@ gen6_render_ring_flush(struct intel_ring
u32 invalidate_domains, u32 flush_domains)
{
u32 flags = 0;
@@ -73,7 +69,7 @@ index f05cceac5a52..460ee1026fca 100644
int ret;
/* Force SNB workarounds for PIPE_CONTROL flushes */
-@@ -306,8 +294,7 @@ gen7_render_ring_flush(struct intel_ring_buffer *ring,
+@@ -306,8 +294,7 @@ gen7_render_ring_flush(struct intel_ring
u32 invalidate_domains, u32 flush_domains)
{
u32 flags = 0;
@@ -163,7 +159,7 @@ index f05cceac5a52..460ee1026fca 100644
static int init_render_ring(struct intel_ring_buffer *ring)
{
struct drm_device *dev = ring->dev;
-@@ -607,16 +569,16 @@ static void render_ring_cleanup(struct intel_ring_buffer *ring)
+@@ -607,16 +569,16 @@ static void render_ring_cleanup(struct i
{
struct drm_device *dev = ring->dev;
@@ -197,7 +193,7 @@ index f05cceac5a52..460ee1026fca 100644
int ret;
/* For Ironlake, MI_USER_INTERRUPT was deprecated and apparently
-@@ -761,7 +722,7 @@ pc_render_add_request(struct intel_ring_buffer *ring)
+@@ -761,7 +722,7 @@ pc_render_add_request(struct intel_ring_
intel_ring_emit(ring, GFX_OP_PIPE_CONTROL(4) | PIPE_CONTROL_QW_WRITE |
PIPE_CONTROL_WRITE_FLUSH |
PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE);
@@ -206,7 +202,7 @@ index f05cceac5a52..460ee1026fca 100644
intel_ring_emit(ring, ring->outstanding_lazy_request);
intel_ring_emit(ring, 0);
PIPE_CONTROL_FLUSH(ring, scratch_addr);
-@@ -780,7 +741,7 @@ pc_render_add_request(struct intel_ring_buffer *ring)
+@@ -780,7 +741,7 @@ pc_render_add_request(struct intel_ring_
PIPE_CONTROL_WRITE_FLUSH |
PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE |
PIPE_CONTROL_NOTIFY);
@@ -215,7 +211,7 @@ index f05cceac5a52..460ee1026fca 100644
intel_ring_emit(ring, ring->outstanding_lazy_request);
intel_ring_emit(ring, 0);
intel_ring_advance(ring);
-@@ -814,15 +775,13 @@ ring_set_seqno(struct intel_ring_buffer *ring, u32 seqno)
+@@ -814,15 +775,13 @@ ring_set_seqno(struct intel_ring_buffer
static u32
pc_render_get_seqno(struct intel_ring_buffer *ring, bool lazy_coherency)
{
@@ -233,7 +229,7 @@ index f05cceac5a52..460ee1026fca 100644
}
static bool
-@@ -1141,8 +1100,7 @@ i830_dispatch_execbuffer(struct intel_ring_buffer *ring,
+@@ -1141,8 +1100,7 @@ i830_dispatch_execbuffer(struct intel_ri
intel_ring_emit(ring, MI_NOOP);
intel_ring_advance(ring);
} else {
@@ -243,7 +239,7 @@ index f05cceac5a52..460ee1026fca 100644
if (len > I830_BATCH_LIMIT)
return -ENOSPC;
-@@ -1835,7 +1793,8 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1839,7 +1797,8 @@ int intel_init_render_ring_buffer(struct
return ret;
}
@@ -253,8 +249,6 @@ index f05cceac5a52..460ee1026fca 100644
}
return intel_init_ring_buffer(dev, ring);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 432ad5311ba6..68b1ca974d59 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -155,7 +155,11 @@ struct intel_ring_buffer {
@@ -270,6 +264,3 @@ index 432ad5311ba6..68b1ca974d59 100644
};
static inline bool
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0753-drm-i915-enable-trickle-feed-on-Haswell.patch b/patches.baytrail/0753-drm-i915-enable-trickle-feed-on-Haswell.patch
index 2131ba9559f2c..266cf4eb880f7 100644
--- a/patches.baytrail/0753-drm-i915-enable-trickle-feed-on-Haswell.patch
+++ b/patches.baytrail/0753-drm-i915-enable-trickle-feed-on-Haswell.patch
@@ -19,17 +19,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1f5d76dbb636c73912c9ff1c90ff46dd2273f098)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_display.c | 10 +++++++---
- drivers/gpu/drm/i915/intel_pm.c | 2 --
- drivers/gpu/drm/i915/intel_sprite.c | 7 +++++--
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
+ drivers/gpu/drm/i915/intel_display.c | 10 +++++++---
+ drivers/gpu/drm/i915/intel_pm.c | 2 --
+ drivers/gpu/drm/i915/intel_sprite.c | 7 +++++--
4 files changed, 13 insertions(+), 7 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index dcc58ea157fe..c159e1a6810f 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3313,6 +3313,7 @@
+@@ -3317,6 +3317,7 @@
#define MCURSOR_PIPE_A 0x00
#define MCURSOR_PIPE_B (1 << 28)
#define MCURSOR_GAMMA_ENABLE (1 << 26)
@@ -37,11 +35,9 @@ index dcc58ea157fe..c159e1a6810f 100644
#define _CURABASE (dev_priv->info->display_mmio_offset + 0x70084)
#define _CURAPOS (dev_priv->info->display_mmio_offset + 0x70088)
#define CURSOR_POS_MASK 0x007FF
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index b27738d0b49d..2fd611ac91ba 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -2077,8 +2077,10 @@ static int ironlake_update_plane(struct drm_crtc *crtc,
+@@ -2077,8 +2077,10 @@ static int ironlake_update_plane(struct
else
dspcntr &= ~DISPPLANE_TILED;
@@ -54,7 +50,7 @@ index b27738d0b49d..2fd611ac91ba 100644
I915_WRITE(reg, dspcntr);
-@@ -6764,8 +6766,10 @@ static void ivb_update_cursor(struct drm_crtc *crtc, u32 base)
+@@ -6764,8 +6766,10 @@ static void ivb_update_cursor(struct drm
cntl &= ~(CURSOR_MODE | MCURSOR_GAMMA_ENABLE);
cntl |= CURSOR_MODE_DISABLE;
}
@@ -66,11 +62,9 @@ index b27738d0b49d..2fd611ac91ba 100644
I915_WRITE(CURCNTR_IVB(pipe), cntl);
intel_crtc->cursor_visible = visible;
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 6b1d00389952..0c115cc4899f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -4960,8 +4960,6 @@ static void haswell_init_clock_gating(struct drm_device *dev)
+@@ -4960,8 +4960,6 @@ static void haswell_init_clock_gating(st
I915_READ(GEN7_SQ_CHICKEN_MBCUNIT_CONFIG) |
GEN7_SQ_CHICKEN_MBCUNIT_SQINTMOB);
@@ -79,11 +73,9 @@ index 6b1d00389952..0c115cc4899f 100644
/* WaVSRefCountFullforceMissDisable:hsw */
gen7_setup_fixed_func_scheduler(dev_priv);
-diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
-index 78b621cdd108..ad6ec4b39005 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
-@@ -260,8 +260,11 @@ ivb_update_plane(struct drm_plane *plane, struct drm_crtc *crtc,
+@@ -260,8 +260,11 @@ ivb_update_plane(struct drm_plane *plane
if (obj->tiling_mode != I915_TILING_NONE)
sprctl |= SPRITE_TILED;
@@ -97,6 +89,3 @@ index 78b621cdd108..ad6ec4b39005 100644
sprctl |= SPRITE_ENABLE;
if (IS_HASWELL(dev))
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0768-drm-i915-add-VLV-pipeconf-bit-definition-for-DSI-PLL.patch b/patches.baytrail/0768-drm-i915-add-VLV-pipeconf-bit-definition-for-DSI-PLL.patch
index 2ff25d1e10029..9bafe87a72b7d 100644
--- a/patches.baytrail/0768-drm-i915-add-VLV-pipeconf-bit-definition-for-DSI-PLL.patch
+++ b/patches.baytrail/0768-drm-i915-add-VLV-pipeconf-bit-definition-for-DSI-PLL.patch
@@ -14,14 +14,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b6ec10b36566c3eb330f4c03c1b00a02c974fd21)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 1 +
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
1 file changed, 1 insertion(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 8f4c8b69ebc1..7a7b9c2f84cb 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2986,6 +2986,7 @@
+@@ -2990,6 +2990,7 @@
#define PIPECONF_DISABLE 0
#define PIPECONF_DOUBLE_WIDE (1<<30)
#define I965_PIPECONF_ACTIVE (1<<30)
@@ -29,6 +27,3 @@ index 8f4c8b69ebc1..7a7b9c2f84cb 100644
#define PIPECONF_FRAME_START_DELAY_MASK (3<<27)
#define PIPECONF_SINGLE_WIDE 0
#define PIPECONF_PIPE_UNLOCKED 0
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0772-drm-i915-add-MIPI-DSI-register-definitions.patch b/patches.baytrail/0772-drm-i915-add-MIPI-DSI-register-definitions.patch
index 6b0e8090a5ad1..466ca90b22468 100644
--- a/patches.baytrail/0772-drm-i915-add-MIPI-DSI-register-definitions.patch
+++ b/patches.baytrail/0772-drm-i915-add-MIPI-DSI-register-definitions.patch
@@ -16,14 +16,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 3230bf14c14e04d49525d172db53a55e153447a7)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 410 ++++++++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_reg.h | 410 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 410 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 7a7b9c2f84cb..b26cf9b5b1e4 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -5121,4 +5121,414 @@
+@@ -5125,4 +5125,414 @@
#define PIPE_CSC_POSTOFF_ME(pipe) _PIPE(pipe, _PIPE_A_CSC_POSTOFF_ME, _PIPE_B_CSC_POSTOFF_ME)
#define PIPE_CSC_POSTOFF_LO(pipe) _PIPE(pipe, _PIPE_A_CSC_POSTOFF_LO, _PIPE_B_CSC_POSTOFF_LO)
@@ -438,6 +436,3 @@ index 7a7b9c2f84cb..b26cf9b5b1e4 100644
+#define READ_DATA_VALID(n) (1 << (n))
+
#endif /* _I915_REG_H_ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0798-drm-i915-Rename-ring-outstanding_lazy_request.patch b/patches.baytrail/0798-drm-i915-Rename-ring-outstanding_lazy_request.patch
index dc4c75491bcb5..9db5923344608 100644
--- a/patches.baytrail/0798-drm-i915-Rename-ring-outstanding_lazy_request.patch
+++ b/patches.baytrail/0798-drm-i915-Rename-ring-outstanding_lazy_request.patch
@@ -12,16 +12,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1823521d2b2fa614e7ad95fdc8a0f59e571f37ce)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem.c | 4 ++--
- drivers/gpu/drm/i915/intel_ringbuffer.c | 18 +++++++++---------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 6 +++---
+ drivers/gpu/drm/i915/i915_gem.c | 4 ++--
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 18 +++++++++---------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 6 +++---
3 files changed, 14 insertions(+), 14 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index fdeecae058e1..858e78886637 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -964,7 +964,7 @@ i915_gem_check_olr(struct intel_ring_buffer *ring, u32 seqno)
+@@ -964,7 +964,7 @@ i915_gem_check_olr(struct intel_ring_buf
BUG_ON(!mutex_is_locked(&ring->dev->struct_mutex));
ret = 0;
@@ -30,7 +28,7 @@ index fdeecae058e1..858e78886637 100644
ret = i915_add_request(ring, NULL);
return ret;
-@@ -2094,7 +2094,7 @@ int __i915_add_request(struct intel_ring_buffer *ring,
+@@ -2094,7 +2094,7 @@ int __i915_add_request(struct intel_ring
}
trace_i915_gem_request_add(ring, request->seqno);
@@ -39,11 +37,9 @@ index fdeecae058e1..858e78886637 100644
if (!dev_priv->ums.mm_suspended) {
i915_queue_hangcheck(ring->dev);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 460ee1026fca..a83ff1863a5e 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -593,7 +593,7 @@ update_mboxes(struct intel_ring_buffer *ring,
+@@ -593,7 +593,7 @@ update_mboxes(struct intel_ring_buffer *
#define MBOX_UPDATE_DWORDS 4
intel_ring_emit(ring, MI_LOAD_REGISTER_IMM(1));
intel_ring_emit(ring, mmio_offset);
@@ -52,7 +48,7 @@ index 460ee1026fca..a83ff1863a5e 100644
intel_ring_emit(ring, MI_NOOP);
}
-@@ -629,7 +629,7 @@ gen6_add_request(struct intel_ring_buffer *ring)
+@@ -629,7 +629,7 @@ gen6_add_request(struct intel_ring_buffe
intel_ring_emit(ring, MI_STORE_DWORD_INDEX);
intel_ring_emit(ring, I915_GEM_HWS_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
@@ -61,7 +57,7 @@ index 460ee1026fca..a83ff1863a5e 100644
intel_ring_emit(ring, MI_USER_INTERRUPT);
intel_ring_advance(ring);
-@@ -723,7 +723,7 @@ pc_render_add_request(struct intel_ring_buffer *ring)
+@@ -723,7 +723,7 @@ pc_render_add_request(struct intel_ring_
PIPE_CONTROL_WRITE_FLUSH |
PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE);
intel_ring_emit(ring, ring->scratch.gtt_offset | PIPE_CONTROL_GLOBAL_GTT);
@@ -70,7 +66,7 @@ index 460ee1026fca..a83ff1863a5e 100644
intel_ring_emit(ring, 0);
PIPE_CONTROL_FLUSH(ring, scratch_addr);
scratch_addr += 128; /* write to separate cachelines */
-@@ -742,7 +742,7 @@ pc_render_add_request(struct intel_ring_buffer *ring)
+@@ -742,7 +742,7 @@ pc_render_add_request(struct intel_ring_
PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE |
PIPE_CONTROL_NOTIFY);
intel_ring_emit(ring, ring->scratch.gtt_offset | PIPE_CONTROL_GLOBAL_GTT);
@@ -79,7 +75,7 @@ index 460ee1026fca..a83ff1863a5e 100644
intel_ring_emit(ring, 0);
intel_ring_advance(ring);
-@@ -963,7 +963,7 @@ i9xx_add_request(struct intel_ring_buffer *ring)
+@@ -963,7 +963,7 @@ i9xx_add_request(struct intel_ring_buffe
intel_ring_emit(ring, MI_STORE_DWORD_INDEX);
intel_ring_emit(ring, I915_GEM_HWS_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
@@ -88,7 +84,7 @@ index 460ee1026fca..a83ff1863a5e 100644
intel_ring_emit(ring, MI_USER_INTERRUPT);
intel_ring_advance(ring);
-@@ -1475,7 +1475,7 @@ int intel_ring_idle(struct intel_ring_buffer *ring)
+@@ -1475,7 +1475,7 @@ int intel_ring_idle(struct intel_ring_bu
int ret;
/* We need to add any requests required to flush the objects and ring */
@@ -97,7 +93,7 @@ index 460ee1026fca..a83ff1863a5e 100644
ret = i915_add_request(ring, NULL);
if (ret)
return ret;
-@@ -1495,10 +1495,10 @@ int intel_ring_idle(struct intel_ring_buffer *ring)
+@@ -1495,10 +1495,10 @@ int intel_ring_idle(struct intel_ring_bu
static int
intel_ring_alloc_seqno(struct intel_ring_buffer *ring)
{
@@ -109,8 +105,8 @@ index 460ee1026fca..a83ff1863a5e 100644
+ return i915_gem_get_seqno(ring->dev, &ring->outstanding_lazy_seqno);
}
- static int __intel_ring_begin(struct intel_ring_buffer *ring,
-@@ -1545,7 +1545,7 @@ void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno)
+ static int __intel_ring_prepare(struct intel_ring_buffer *ring,
+@@ -1549,7 +1549,7 @@ void intel_ring_init_seqno(struct intel_
{
struct drm_i915_private *dev_priv = ring->dev->dev_private;
@@ -119,8 +115,6 @@ index 460ee1026fca..a83ff1863a5e 100644
if (INTEL_INFO(ring->dev)->gen >= 6) {
I915_WRITE(RING_SYNC_0(ring->mmio_base), 0);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 68b1ca974d59..c6aa2b3c8c26 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -140,7 +140,7 @@ struct intel_ring_buffer {
@@ -132,7 +126,7 @@ index 68b1ca974d59..c6aa2b3c8c26 100644
bool gpu_caches_dirty;
bool fbc_dirty;
-@@ -258,8 +258,8 @@ static inline u32 intel_ring_get_tail(struct intel_ring_buffer *ring)
+@@ -258,8 +258,8 @@ static inline u32 intel_ring_get_tail(st
static inline u32 intel_ring_get_seqno(struct intel_ring_buffer *ring)
{
@@ -143,6 +137,3 @@ index 68b1ca974d59..c6aa2b3c8c26 100644
}
static inline void i915_trace_irq_get(struct intel_ring_buffer *ring, u32 seqno)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0806-drm-i915-name-intel-dp-hooks-per-platform.patch b/patches.baytrail/0806-drm-i915-name-intel-dp-hooks-per-platform.patch
index 1b283562f49ed..c033511945bb7 100644
--- a/patches.baytrail/0806-drm-i915-name-intel-dp-hooks-per-platform.patch
+++ b/patches.baytrail/0806-drm-i915-name-intel-dp-hooks-per-platform.patch
@@ -16,14 +16,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ecff4f3bafaf4ce814b491f580bdc1221b07a85b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 18 ++++++++++--------
+ drivers/gpu/drm/i915/intel_dp.c | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index a210160f7eb1..8d0389745aff 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1731,11 +1731,16 @@ static void intel_enable_dp(struct intel_encoder *encoder)
+@@ -1731,11 +1731,16 @@ static void intel_enable_dp(struct intel
ironlake_edp_backlight_on(intel_dp);
}
@@ -41,7 +39,7 @@ index a210160f7eb1..8d0389745aff 100644
{
struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
struct intel_digital_port *dport = dp_to_dig_port(intel_dp);
-@@ -1775,7 +1780,7 @@ static void vlv_pre_enable_dp(struct intel_encoder *encoder)
+@@ -1775,7 +1780,7 @@ static void vlv_pre_enable_dp(struct int
vlv_wait_port_ready(dev_priv, port);
}
@@ -50,7 +48,7 @@ index a210160f7eb1..8d0389745aff 100644
{
struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
struct drm_device *dev = encoder->base.dev;
-@@ -1785,9 +1790,6 @@ static void intel_dp_pre_pll_enable(struct intel_encoder *encoder)
+@@ -1785,9 +1790,6 @@ static void intel_dp_pre_pll_enable(stru
int port = vlv_dport_to_channel(dport);
int pipe = intel_crtc->pipe;
@@ -60,7 +58,7 @@ index a210160f7eb1..8d0389745aff 100644
/* Program Tx lane resets to default */
mutex_lock(&dev_priv->dpio_lock);
vlv_dpio_write(dev_priv, pipe, DPIO_PCS_TX(port),
-@@ -3560,12 +3562,12 @@ intel_dp_init(struct drm_device *dev, int output_reg, enum port port)
+@@ -3576,12 +3578,12 @@ intel_dp_init(struct drm_device *dev, in
intel_encoder->get_hw_state = intel_dp_get_hw_state;
intel_encoder->get_config = intel_dp_get_config;
if (IS_VALLEYVIEW(dev)) {
@@ -76,6 +74,3 @@ index a210160f7eb1..8d0389745aff 100644
}
intel_dig_port->port = port;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0808-drm-i915-clean-up-power-sequencing-register-port-sel.patch b/patches.baytrail/0808-drm-i915-clean-up-power-sequencing-register-port-sel.patch
index d92407a11e579..cbeaf7a0fb7ef 100644
--- a/patches.baytrail/0808-drm-i915-clean-up-power-sequencing-register-port-sel.patch
+++ b/patches.baytrail/0808-drm-i915-clean-up-power-sequencing-register-port-sel.patch
@@ -16,15 +16,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a24c144cc92c0cb573677ebb67c2fb946562242e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 8 ++------
- drivers/gpu/drm/i915/intel_dp.c | 4 ++--
+ drivers/gpu/drm/i915/i915_reg.h | 8 ++------
+ drivers/gpu/drm/i915/intel_dp.c | 4 ++--
2 files changed, 4 insertions(+), 8 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index c7f2da36f4a8..bcee89b7c43e 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4449,6 +4449,8 @@
+@@ -4453,6 +4453,8 @@
#define PIPEA_PP_STATUS (VLV_DISPLAY_BASE + 0x61200)
#define PIPEA_PP_CONTROL (VLV_DISPLAY_BASE + 0x61204)
#define PIPEA_PP_ON_DELAYS (VLV_DISPLAY_BASE + 0x61208)
@@ -33,7 +31,7 @@ index c7f2da36f4a8..bcee89b7c43e 100644
#define PIPEA_PP_OFF_DELAYS (VLV_DISPLAY_BASE + 0x6120c)
#define PIPEA_PP_DIVISOR (VLV_DISPLAY_BASE + 0x61210)
-@@ -4480,7 +4482,6 @@
+@@ -4484,7 +4486,6 @@
#define PANEL_PORT_SELECT_MASK (3 << 30)
#define PANEL_PORT_SELECT_LVDS (0 << 30)
#define PANEL_PORT_SELECT_DPA (1 << 30)
@@ -41,7 +39,7 @@ index c7f2da36f4a8..bcee89b7c43e 100644
#define PANEL_PORT_SELECT_DPC (2 << 30)
#define PANEL_PORT_SELECT_DPD (3 << 30)
#define PANEL_POWER_UP_DELAY_MASK (0x1fff0000)
-@@ -4489,11 +4490,6 @@
+@@ -4493,11 +4494,6 @@
#define PANEL_LIGHT_ON_DELAY_SHIFT 0
#define PCH_PP_OFF_DELAYS 0xc720c
@@ -53,11 +51,9 @@ index c7f2da36f4a8..bcee89b7c43e 100644
#define PANEL_POWER_DOWN_DELAY_MASK (0x1fff0000)
#define PANEL_POWER_DOWN_DELAY_SHIFT 16
#define PANEL_LIGHT_OFF_DELAY_MASK (0x1fff)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index e8ee1df1463a..7a66f4125fac 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3299,9 +3299,9 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -3315,9 +3315,9 @@ intel_dp_init_panel_power_sequencer_regi
port_sel = I915_READ(pp_on_reg) & 0xc0000000;
} else if (HAS_PCH_IBX(dev) || HAS_PCH_CPT(dev)) {
if (dp_to_dig_port(intel_dp)->port == PORT_A)
@@ -69,6 +65,3 @@ index e8ee1df1463a..7a66f4125fac 100644
}
pp_on |= port_sel;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0809-drm-i915-add-support-for-per-pipe-power-sequencing-o.patch b/patches.baytrail/0809-drm-i915-add-support-for-per-pipe-power-sequencing-o.patch
index ba22402d48038..9e43b0e727948 100644
--- a/patches.baytrail/0809-drm-i915-add-support-for-per-pipe-power-sequencing-o.patch
+++ b/patches.baytrail/0809-drm-i915-add-support-for-per-pipe-power-sequencing-o.patch
@@ -24,11 +24,9 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit bf13e81b904a37d94d83dd6c3b53a147719a3ead)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 142 ++++++++++++++++++++++++++++------------
+ drivers/gpu/drm/i915/intel_dp.c | 142 ++++++++++++++++++++++++++++------------
1 file changed, 100 insertions(+), 42 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 7a66f4125fac..61e5c76c2376 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -237,24 +237,77 @@ intel_hrawclk(struct drm_device *dev)
@@ -115,7 +113,7 @@ index 7a66f4125fac..61e5c76c2376 100644
}
static void
-@@ -262,19 +315,15 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
+@@ -262,19 +315,15 @@ intel_dp_check_edp(struct intel_dp *inte
{
struct drm_device *dev = intel_dp_to_dev(intel_dp);
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -137,7 +135,7 @@ index 7a66f4125fac..61e5c76c2376 100644
}
}
-@@ -959,8 +1008,8 @@ static void ironlake_wait_panel_status(struct intel_dp *intel_dp,
+@@ -959,8 +1008,8 @@ static void ironlake_wait_panel_status(s
struct drm_i915_private *dev_priv = dev->dev_private;
u32 pp_stat_reg, pp_ctrl_reg;
@@ -148,7 +146,7 @@ index 7a66f4125fac..61e5c76c2376 100644
DRM_DEBUG_KMS("mask %08x value %08x status %08x control %08x\n",
mask, value,
-@@ -1002,11 +1051,8 @@ static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
+@@ -1002,11 +1051,8 @@ static u32 ironlake_get_pp_control(stru
struct drm_device *dev = intel_dp_to_dev(intel_dp);
struct drm_i915_private *dev_priv = dev->dev_private;
u32 control;
@@ -161,7 +159,7 @@ index 7a66f4125fac..61e5c76c2376 100644
control &= ~PANEL_UNLOCK_MASK;
control |= PANEL_UNLOCK_REGS;
return control;
-@@ -1039,8 +1085,8 @@ void ironlake_edp_panel_vdd_on(struct intel_dp *intel_dp)
+@@ -1039,8 +1085,8 @@ void ironlake_edp_panel_vdd_on(struct in
pp = ironlake_get_pp_control(intel_dp);
pp |= EDP_FORCE_VDD;
@@ -172,7 +170,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1068,8 +1114,8 @@ static void ironlake_panel_vdd_off_sync(struct intel_dp *intel_dp)
+@@ -1068,8 +1114,8 @@ static void ironlake_panel_vdd_off_sync(
pp = ironlake_get_pp_control(intel_dp);
pp &= ~EDP_FORCE_VDD;
@@ -183,7 +181,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1134,20 +1180,19 @@ void ironlake_edp_panel_on(struct intel_dp *intel_dp)
+@@ -1134,20 +1180,19 @@ void ironlake_edp_panel_on(struct intel_
ironlake_wait_panel_power_cycle(intel_dp);
@@ -207,7 +205,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1155,8 +1200,8 @@ void ironlake_edp_panel_on(struct intel_dp *intel_dp)
+@@ -1155,8 +1200,8 @@ void ironlake_edp_panel_on(struct intel_
if (IS_GEN5(dev)) {
pp |= PANEL_POWER_RESET; /* restore panel reset bit */
@@ -218,7 +216,7 @@ index 7a66f4125fac..61e5c76c2376 100644
}
}
-@@ -1179,7 +1224,7 @@ void ironlake_edp_panel_off(struct intel_dp *intel_dp)
+@@ -1179,7 +1224,7 @@ void ironlake_edp_panel_off(struct intel
* panels get very unhappy and cease to work. */
pp &= ~(POWER_TARGET_ON | EDP_FORCE_VDD | PANEL_POWER_RESET | EDP_BLC_ENABLE);
@@ -227,7 +225,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1212,7 +1257,7 @@ void ironlake_edp_backlight_on(struct intel_dp *intel_dp)
+@@ -1212,7 +1257,7 @@ void ironlake_edp_backlight_on(struct in
pp = ironlake_get_pp_control(intel_dp);
pp |= EDP_BLC_ENABLE;
@@ -236,7 +234,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1236,7 +1281,7 @@ void ironlake_edp_backlight_off(struct intel_dp *intel_dp)
+@@ -1236,7 +1281,7 @@ void ironlake_edp_backlight_off(struct i
pp = ironlake_get_pp_control(intel_dp);
pp &= ~EDP_BLC_ENABLE;
@@ -245,7 +243,7 @@ index 7a66f4125fac..61e5c76c2376 100644
I915_WRITE(pp_ctrl_reg, pp);
POSTING_READ(pp_ctrl_reg);
-@@ -1763,6 +1808,7 @@ static void vlv_pre_enable_dp(struct intel_encoder *encoder)
+@@ -1763,6 +1808,7 @@ static void vlv_pre_enable_dp(struct int
struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc);
int port = vlv_dport_to_channel(dport);
int pipe = intel_crtc->pipe;
@@ -253,7 +251,7 @@ index 7a66f4125fac..61e5c76c2376 100644
u32 val;
mutex_lock(&dev_priv->dpio_lock);
-@@ -1780,6 +1826,11 @@ static void vlv_pre_enable_dp(struct intel_encoder *encoder)
+@@ -1780,6 +1826,11 @@ static void vlv_pre_enable_dp(struct int
mutex_unlock(&dev_priv->dpio_lock);
@@ -265,7 +263,7 @@ index 7a66f4125fac..61e5c76c2376 100644
intel_enable_dp(encoder);
vlv_wait_port_ready(dev_priv, port);
-@@ -3172,24 +3223,26 @@ intel_dp_init_panel_power_sequencer(struct drm_device *dev,
+@@ -3188,24 +3239,26 @@ intel_dp_init_panel_power_sequencer(stru
struct drm_i915_private *dev_priv = dev->dev_private;
struct edp_power_seq cur, vbt, spec, final;
u32 pp_on, pp_off, pp_div, pp;
@@ -299,7 +297,7 @@ index 7a66f4125fac..61e5c76c2376 100644
pp_on = I915_READ(pp_on_reg);
pp_off = I915_READ(pp_off_reg);
-@@ -3277,9 +3330,11 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -3293,9 +3346,11 @@ intel_dp_init_panel_power_sequencer_regi
pp_off_reg = PCH_PP_OFF_DELAYS;
pp_div_reg = PCH_PP_DIVISOR;
} else {
@@ -314,7 +312,7 @@ index 7a66f4125fac..61e5c76c2376 100644
}
/* And finally store the new values in the power sequencer. */
-@@ -3296,7 +3351,10 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
+@@ -3312,7 +3367,10 @@ intel_dp_init_panel_power_sequencer_regi
/* Haswell doesn't have any port selection bits for the panel
* power sequencer any more. */
if (IS_VALLEYVIEW(dev)) {
@@ -326,6 +324,3 @@ index 7a66f4125fac..61e5c76c2376 100644
} else if (HAS_PCH_IBX(dev) || HAS_PCH_CPT(dev)) {
if (dp_to_dig_port(intel_dp)->port == PORT_A)
port_sel = PANEL_PORT_SELECT_DPA;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0821-drm-i915-Write-RING_TAIL-once-per-request.patch b/patches.baytrail/0821-drm-i915-Write-RING_TAIL-once-per-request.patch
index 2f4db0b06d856..3fcc713320aab 100644
--- a/patches.baytrail/0821-drm-i915-Write-RING_TAIL-once-per-request.patch
+++ b/patches.baytrail/0821-drm-i915-Write-RING_TAIL-once-per-request.patch
@@ -30,14 +30,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 092467327c45edbfce6c2bb71ee842bec16b9a60)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/intel_display.c | 10 +++++-----
- drivers/gpu/drm/i915/intel_ringbuffer.c | 30 ++++++++++++++++--------------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 7 ++++++-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/intel_display.c | 10 +++++-----
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 30 ++++++++++++++++--------------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 7 ++++++-
4 files changed, 28 insertions(+), 21 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 9b265a4c6a3d..be5120f702cc 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -52,7 +52,7 @@
@@ -49,11 +47,9 @@ index 9b265a4c6a3d..be5120f702cc 100644
/**
* Lock test for when it's just for synchronization of ring access.
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index c3fa87bf0175..6fb975ea2bee 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -7703,7 +7703,7 @@ static int intel_gen2_queue_flip(struct drm_device *dev,
+@@ -7703,7 +7703,7 @@ static int intel_gen2_queue_flip(struct
intel_ring_emit(ring, 0); /* aux display base address, unused */
intel_mark_page_flip_active(intel_crtc);
@@ -62,7 +58,7 @@ index c3fa87bf0175..6fb975ea2bee 100644
return 0;
err_unpin:
-@@ -7745,7 +7745,7 @@ static int intel_gen3_queue_flip(struct drm_device *dev,
+@@ -7745,7 +7745,7 @@ static int intel_gen3_queue_flip(struct
intel_ring_emit(ring, MI_NOOP);
intel_mark_page_flip_active(intel_crtc);
@@ -71,7 +67,7 @@ index c3fa87bf0175..6fb975ea2bee 100644
return 0;
err_unpin:
-@@ -7794,7 +7794,7 @@ static int intel_gen4_queue_flip(struct drm_device *dev,
+@@ -7794,7 +7794,7 @@ static int intel_gen4_queue_flip(struct
intel_ring_emit(ring, pf | pipesrc);
intel_mark_page_flip_active(intel_crtc);
@@ -80,7 +76,7 @@ index c3fa87bf0175..6fb975ea2bee 100644
return 0;
err_unpin:
-@@ -7839,7 +7839,7 @@ static int intel_gen6_queue_flip(struct drm_device *dev,
+@@ -7839,7 +7839,7 @@ static int intel_gen6_queue_flip(struct
intel_ring_emit(ring, pf | pipesrc);
intel_mark_page_flip_active(intel_crtc);
@@ -89,7 +85,7 @@ index c3fa87bf0175..6fb975ea2bee 100644
return 0;
err_unpin:
-@@ -7918,7 +7918,7 @@ static int intel_gen7_queue_flip(struct drm_device *dev,
+@@ -7918,7 +7918,7 @@ static int intel_gen7_queue_flip(struct
intel_ring_emit(ring, (MI_NOOP));
intel_mark_page_flip_active(intel_crtc);
@@ -98,11 +94,9 @@ index c3fa87bf0175..6fb975ea2bee 100644
return 0;
err_unpin:
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 284afaf5d6ff..686e5b23481d 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -41,6 +41,16 @@ static inline int ring_space(struct intel_ring_buffer *ring)
+@@ -41,6 +41,16 @@ static inline int ring_space(struct inte
return space;
}
@@ -119,7 +113,7 @@ index 284afaf5d6ff..686e5b23481d 100644
static int
gen2_render_ring_flush(struct intel_ring_buffer *ring,
u32 invalidate_domains,
-@@ -631,7 +641,7 @@ gen6_add_request(struct intel_ring_buffer *ring)
+@@ -631,7 +641,7 @@ gen6_add_request(struct intel_ring_buffe
intel_ring_emit(ring, I915_GEM_HWS_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
intel_ring_emit(ring, ring->outstanding_lazy_seqno);
intel_ring_emit(ring, MI_USER_INTERRUPT);
@@ -128,7 +122,7 @@ index 284afaf5d6ff..686e5b23481d 100644
return 0;
}
-@@ -744,7 +754,7 @@ pc_render_add_request(struct intel_ring_buffer *ring)
+@@ -744,7 +754,7 @@ pc_render_add_request(struct intel_ring_
intel_ring_emit(ring, ring->scratch.gtt_offset | PIPE_CONTROL_GLOBAL_GTT);
intel_ring_emit(ring, ring->outstanding_lazy_seqno);
intel_ring_emit(ring, 0);
@@ -137,7 +131,7 @@ index 284afaf5d6ff..686e5b23481d 100644
return 0;
}
-@@ -965,7 +975,7 @@ i9xx_add_request(struct intel_ring_buffer *ring)
+@@ -965,7 +975,7 @@ i9xx_add_request(struct intel_ring_buffe
intel_ring_emit(ring, I915_GEM_HWS_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
intel_ring_emit(ring, ring->outstanding_lazy_seqno);
intel_ring_emit(ring, MI_USER_INTERRUPT);
@@ -146,7 +140,7 @@ index 284afaf5d6ff..686e5b23481d 100644
return 0;
}
-@@ -1414,6 +1424,9 @@ static int ring_wait_for_space(struct intel_ring_buffer *ring, int n)
+@@ -1414,6 +1424,9 @@ static int ring_wait_for_space(struct in
if (ret != -ENOSPC)
return ret;
@@ -156,7 +150,7 @@ index 284afaf5d6ff..686e5b23481d 100644
trace_i915_ring_wait_begin(ring);
/* With GEM the hangcheck timer should kick us out of the loop,
* leaving it early runs the risk of corrupting GEM state (due
-@@ -1568,17 +1581,6 @@ void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno)
+@@ -1572,17 +1585,6 @@ void intel_ring_init_seqno(struct intel_
ring->hangcheck.seqno = seqno;
}
@@ -174,11 +168,9 @@ index 284afaf5d6ff..686e5b23481d 100644
static void gen6_bsd_ring_write_tail(struct intel_ring_buffer *ring,
u32 value)
{
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index b5aac5702085..71a73f4fe252 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
-@@ -239,7 +239,12 @@ static inline void intel_ring_emit(struct intel_ring_buffer *ring,
+@@ -239,7 +239,12 @@ static inline void intel_ring_emit(struc
iowrite32(data, ring->virtual_start + ring->tail);
ring->tail += 4;
}
@@ -192,6 +184,3 @@ index b5aac5702085..71a73f4fe252 100644
int __must_check intel_ring_idle(struct intel_ring_buffer *ring);
void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno);
int intel_ring_flush_all_caches(struct intel_ring_buffer *ring);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0846-drm-i915-Fix-port_clock-and-adjusted_mode.clock-read.patch b/patches.baytrail/0846-drm-i915-Fix-port_clock-and-adjusted_mode.clock-read.patch
index a6a7a5e3df54a..69413e65306c1 100644
--- a/patches.baytrail/0846-drm-i915-Fix-port_clock-and-adjusted_mode.clock-read.patch
+++ b/patches.baytrail/0846-drm-i915-Fix-port_clock-and-adjusted_mode.clock-read.patch
@@ -43,20 +43,18 @@ Conflicts:
(context changes)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 1 -
- drivers/gpu/drm/i915/i915_reg.h | 1 +
- drivers/gpu/drm/i915/intel_crt.c | 8 ++++
- drivers/gpu/drm/i915/intel_display.c | 74 ++++++++++++++++++------------------
- drivers/gpu/drm/i915/intel_dp.c | 11 +++++-
- drivers/gpu/drm/i915/intel_drv.h | 2 +
- drivers/gpu/drm/i915/intel_dvo.c | 2 +
- drivers/gpu/drm/i915/intel_hdmi.c | 11 ++++++
- drivers/gpu/drm/i915/intel_lvds.c | 8 ++++
- drivers/gpu/drm/i915/intel_sdvo.c | 8 ++++
- 10 files changed, 86 insertions(+), 40 deletions(-)
+ drivers/gpu/drm/i915/i915_drv.h | 1
+ drivers/gpu/drm/i915/i915_reg.h | 1
+ drivers/gpu/drm/i915/intel_crt.c | 8 +++
+ drivers/gpu/drm/i915/intel_display.c | 76 +++++++++++++++++------------------
+ drivers/gpu/drm/i915/intel_dp.c | 11 ++++-
+ drivers/gpu/drm/i915/intel_drv.h | 2
+ drivers/gpu/drm/i915/intel_dvo.c | 2
+ drivers/gpu/drm/i915/intel_hdmi.c | 11 +++++
+ drivers/gpu/drm/i915/intel_lvds.c | 8 +++
+ drivers/gpu/drm/i915/intel_sdvo.c | 8 +++
+ 10 files changed, 87 insertions(+), 41 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 7caf71d52abe..8b16d47280f9 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -371,7 +371,6 @@ struct drm_i915_display_funcs {
@@ -67,11 +65,9 @@ index 7caf71d52abe..8b16d47280f9 100644
int (*crtc_mode_set)(struct drm_crtc *crtc,
int x, int y,
struct drm_framebuffer *old_fb);
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index bcee89b7c43e..384adfba3983 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -2071,6 +2071,7 @@
+@@ -2075,6 +2075,7 @@
/* Gen 4 SDVO/HDMI bits: */
#define SDVO_COLOR_FORMAT_8bpc (0 << 26)
@@ -79,11 +75,9 @@ index bcee89b7c43e..384adfba3983 100644
#define SDVO_ENCODING_SDVO (0 << 10)
#define SDVO_ENCODING_HDMI (2 << 10)
#define HDMI_MODE_SELECT_HDMI (1 << 9) /* HDMI only */
-diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index f5f89c31d71e..6f101d5620e4 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
-@@ -89,6 +89,7 @@ static void intel_crt_get_config(struct intel_encoder *encoder,
+@@ -89,6 +89,7 @@ static void intel_crt_get_config(struct
struct drm_i915_private *dev_priv = encoder->base.dev->dev_private;
struct intel_crt *crt = intel_encoder_to_crt(encoder);
u32 tmp, flags = 0;
@@ -91,7 +85,7 @@ index f5f89c31d71e..6f101d5620e4 100644
tmp = I915_READ(crt->adpa_reg);
-@@ -103,6 +104,13 @@ static void intel_crt_get_config(struct intel_encoder *encoder,
+@@ -103,6 +104,13 @@ static void intel_crt_get_config(struct
flags |= DRM_MODE_FLAG_NVSYNC;
pipe_config->adjusted_mode.flags |= flags;
@@ -105,11 +99,9 @@ index f5f89c31d71e..6f101d5620e4 100644
}
/* Note: The caller is required to filter out dpms modes not supported by the
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index dfc021de2eed..0a3cc984ba35 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -47,8 +47,8 @@ static void intel_crtc_update_cursor(struct drm_crtc *crtc, bool on);
+@@ -47,8 +47,8 @@ static void intel_crtc_update_cursor(str
static void i9xx_crtc_clock_get(struct intel_crtc *crtc,
struct intel_crtc_config *pipe_config);
@@ -120,7 +112,7 @@ index dfc021de2eed..0a3cc984ba35 100644
static int intel_set_mode(struct drm_crtc *crtc, struct drm_display_mode *mode,
int x, int y, struct drm_framebuffer *old_fb);
-@@ -5068,6 +5068,8 @@ static bool i9xx_get_pipe_config(struct intel_crtc *crtc,
+@@ -5068,6 +5068,8 @@ static bool i9xx_get_pipe_config(struct
DPLL_PORTB_READY_MASK);
}
@@ -129,7 +121,7 @@ index dfc021de2eed..0a3cc984ba35 100644
return true;
}
-@@ -6027,6 +6029,8 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc,
+@@ -6027,6 +6029,8 @@ static bool ironlake_get_pipe_config(str
pipe_config->pixel_multiplier =
((tmp & PLL_REF_SDVO_HDMI_MULTIPLIER_MASK)
>> PLL_REF_SDVO_HDMI_MULTIPLIER_SHIFT) + 1;
@@ -138,7 +130,7 @@ index dfc021de2eed..0a3cc984ba35 100644
} else {
pipe_config->pixel_multiplier = 1;
}
-@@ -7438,7 +7442,12 @@ static void i9xx_crtc_clock_get(struct intel_crtc *crtc,
+@@ -7438,7 +7442,12 @@ static void i9xx_crtc_clock_get(struct i
i9xx_clock(refclk, &clock);
}
@@ -152,7 +144,7 @@ index dfc021de2eed..0a3cc984ba35 100644
}
int intel_dotclock_calculate(int link_freq,
-@@ -7460,31 +7469,23 @@ int intel_dotclock_calculate(int link_freq,
+@@ -7460,31 +7469,23 @@ int intel_dotclock_calculate(int link_fr
return div_u64((u64)m_n->link_m * link_freq, m_n->link_n);
}
@@ -163,25 +155,20 @@ index dfc021de2eed..0a3cc984ba35 100644
{
struct drm_device *dev = crtc->base.dev;
- int link_freq;
-+
-+ /* read out port_clock from the DPLL */
-+ i9xx_crtc_clock_get(crtc, pipe_config);
- /*
+- /*
- * We need to get the FDI or DP link clock here to derive
- * the M/N dividers.
- *
- * For FDI, we read it from the BIOS or use a fixed 2.7GHz.
- * For DP, it's either 1.62GHz or 2.7GHz.
- * We do our calculations in 10*MHz since we don't need much precison.
-+ * This value does not include pixel_multiplier.
-+ * We will check that port_clock and adjusted_mode.clock
-+ * agree once we know their relationship in the encoder's
-+ * get_config() function.
- */
+- */
- if (pipe_config->has_pch_encoder) {
- link_freq = intel_fdi_link_freq(dev) * 10000;
--
++ /* read out port_clock from the DPLL */
++ i9xx_crtc_clock_get(crtc, pipe_config);
+
- pipe_config->adjusted_mode.clock =
- intel_dotclock_calculate(link_freq, &pipe_config->fdi_m_n);
- } else {
@@ -190,6 +177,12 @@ index dfc021de2eed..0a3cc984ba35 100644
- pipe_config->adjusted_mode.clock =
- intel_dotclock_calculate(link_freq, &pipe_config->dp_m_n);
- }
++ /*
++ * This value does not include pixel_multiplier.
++ * We will check that port_clock and adjusted_mode.clock
++ * agree once we know their relationship in the encoder's
++ * get_config() function.
++ */
+ pipe_config->adjusted_mode.clock =
+ intel_dotclock_calculate(intel_fdi_link_freq(dev) * 10000,
+ &pipe_config->fdi_m_n);
@@ -206,7 +199,7 @@ index dfc021de2eed..0a3cc984ba35 100644
WARN(crtc->active != active,
"crtc active state doesn't match with hw state "
"(expected %i, found %i)\n", crtc->active, active);
-@@ -8981,6 +8979,18 @@ intel_modeset_check_state(struct drm_device *dev)
+@@ -8981,6 +8979,18 @@ intel_modeset_check_state(struct drm_dev
check_shared_dpll_state(dev);
}
@@ -225,7 +218,7 @@ index dfc021de2eed..0a3cc984ba35 100644
static int __intel_set_mode(struct drm_crtc *crtc,
struct drm_display_mode *mode,
int x, int y, struct drm_framebuffer *fb)
-@@ -9932,7 +9942,6 @@ static void intel_init_display(struct drm_device *dev)
+@@ -9932,7 +9942,6 @@ static void intel_init_display(struct dr
dev_priv->display.update_plane = ironlake_update_plane;
} else if (HAS_PCH_SPLIT(dev)) {
dev_priv->display.get_pipe_config = ironlake_get_pipe_config;
@@ -233,7 +226,7 @@ index dfc021de2eed..0a3cc984ba35 100644
dev_priv->display.crtc_mode_set = ironlake_crtc_mode_set;
dev_priv->display.crtc_enable = ironlake_crtc_enable;
dev_priv->display.crtc_disable = ironlake_crtc_disable;
-@@ -9940,7 +9949,6 @@ static void intel_init_display(struct drm_device *dev)
+@@ -9940,7 +9949,6 @@ static void intel_init_display(struct dr
dev_priv->display.update_plane = ironlake_update_plane;
} else if (IS_VALLEYVIEW(dev)) {
dev_priv->display.get_pipe_config = i9xx_get_pipe_config;
@@ -241,7 +234,7 @@ index dfc021de2eed..0a3cc984ba35 100644
dev_priv->display.crtc_mode_set = i9xx_crtc_mode_set;
dev_priv->display.crtc_enable = valleyview_crtc_enable;
dev_priv->display.crtc_disable = i9xx_crtc_disable;
-@@ -9948,7 +9956,6 @@ static void intel_init_display(struct drm_device *dev)
+@@ -9948,7 +9956,6 @@ static void intel_init_display(struct dr
dev_priv->display.update_plane = i9xx_update_plane;
} else {
dev_priv->display.get_pipe_config = i9xx_get_pipe_config;
@@ -249,7 +242,7 @@ index dfc021de2eed..0a3cc984ba35 100644
dev_priv->display.crtc_mode_set = i9xx_crtc_mode_set;
dev_priv->display.crtc_enable = i9xx_crtc_enable;
dev_priv->display.crtc_disable = i9xx_crtc_disable;
-@@ -10567,15 +10574,6 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
+@@ -10567,15 +10574,6 @@ static void intel_modeset_readout_hw_sta
pipe);
}
@@ -265,11 +258,9 @@ index dfc021de2eed..0a3cc984ba35 100644
list_for_each_entry(connector, &dev->mode_config.connector_list,
base.head) {
if (connector->get_hw_state(connector)) {
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index afd055e21b90..16337f752ecb 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -1428,6 +1428,7 @@ static void intel_dp_get_config(struct intel_encoder *encoder,
+@@ -1428,6 +1428,7 @@ static void intel_dp_get_config(struct i
struct drm_i915_private *dev_priv = dev->dev_private;
enum port port = dp_to_dig_port(intel_dp)->port;
struct intel_crtc *crtc = to_intel_crtc(encoder->base.crtc);
@@ -277,7 +268,7 @@ index afd055e21b90..16337f752ecb 100644
if ((port == PORT_A) || !HAS_PCH_CPT(dev)) {
tmp = I915_READ(intel_dp->output_reg);
-@@ -1459,12 +1460,20 @@ static void intel_dp_get_config(struct intel_encoder *encoder,
+@@ -1459,12 +1460,20 @@ static void intel_dp_get_config(struct i
intel_dp_get_m_n(crtc, pipe_config);
@@ -299,11 +290,9 @@ index afd055e21b90..16337f752ecb 100644
}
static bool is_edp_psr(struct intel_dp *intel_dp)
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 494c2fa007fd..2597027001db 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -806,6 +806,8 @@ extern void intel_dp_get_m_n(struct intel_crtc *crtc,
+@@ -806,6 +806,8 @@ extern void intel_dp_get_m_n(struct inte
struct intel_crtc_config *pipe_config);
extern int intel_dotclock_calculate(int link_freq,
const struct intel_link_m_n *m_n);
@@ -312,11 +301,9 @@ index 494c2fa007fd..2597027001db 100644
extern void i915_disable_vga_mem(struct drm_device *dev);
#endif /* __INTEL_DRV_H__ */
-diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
-index 55cec3871b04..ff86c366218c 100644
--- a/drivers/gpu/drm/i915/intel_dvo.c
+++ b/drivers/gpu/drm/i915/intel_dvo.c
-@@ -153,6 +153,8 @@ static void intel_dvo_get_config(struct intel_encoder *encoder,
+@@ -153,6 +153,8 @@ static void intel_dvo_get_config(struct
flags |= DRM_MODE_FLAG_NVSYNC;
pipe_config->adjusted_mode.flags |= flags;
@@ -325,11 +312,9 @@ index 55cec3871b04..ff86c366218c 100644
}
static void intel_disable_dvo(struct intel_encoder *encoder)
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index 70c716ed8350..17b2d7e948b6 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -713,6 +713,7 @@ static void intel_hdmi_get_config(struct intel_encoder *encoder,
+@@ -713,6 +713,7 @@ static void intel_hdmi_get_config(struct
struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
struct drm_i915_private *dev_priv = encoder->base.dev->dev_private;
u32 tmp, flags = 0;
@@ -337,7 +322,7 @@ index 70c716ed8350..17b2d7e948b6 100644
tmp = I915_READ(intel_hdmi->hdmi_reg);
-@@ -727,6 +728,16 @@ static void intel_hdmi_get_config(struct intel_encoder *encoder,
+@@ -727,6 +728,16 @@ static void intel_hdmi_get_config(struct
flags |= DRM_MODE_FLAG_NVSYNC;
pipe_config->adjusted_mode.flags |= flags;
@@ -354,11 +339,9 @@ index 70c716ed8350..17b2d7e948b6 100644
}
static void intel_enable_hdmi(struct intel_encoder *encoder)
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index b8af94a5be39..1ba9998add08 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -92,6 +92,7 @@ static void intel_lvds_get_config(struct intel_encoder *encoder,
+@@ -92,6 +92,7 @@ static void intel_lvds_get_config(struct
struct drm_device *dev = encoder->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
u32 lvds_reg, tmp, flags = 0;
@@ -366,7 +349,7 @@ index b8af94a5be39..1ba9998add08 100644
if (HAS_PCH_SPLIT(dev))
lvds_reg = PCH_LVDS;
-@@ -116,6 +117,13 @@ static void intel_lvds_get_config(struct intel_encoder *encoder,
+@@ -116,6 +117,13 @@ static void intel_lvds_get_config(struct
pipe_config->gmch_pfit.control |= tmp & PANEL_8TO6_DITHER_ENABLE;
}
@@ -380,11 +363,9 @@ index b8af94a5be39..1ba9998add08 100644
}
/* The LVDS pin pair needs to be on before the DPLLs are enabled.
-diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index ebfd5138178f..91aea9e1ab6f 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
-@@ -1325,6 +1325,7 @@ static void intel_sdvo_get_config(struct intel_encoder *encoder,
+@@ -1325,6 +1325,7 @@ static void intel_sdvo_get_config(struct
struct intel_sdvo *intel_sdvo = to_sdvo(encoder);
struct intel_sdvo_dtd dtd;
int encoder_pixel_multiplier = 0;
@@ -392,7 +373,7 @@ index ebfd5138178f..91aea9e1ab6f 100644
u32 flags = 0, sdvox;
u8 val;
bool ret;
-@@ -1363,6 +1364,13 @@ static void intel_sdvo_get_config(struct intel_encoder *encoder,
+@@ -1363,6 +1364,13 @@ static void intel_sdvo_get_config(struct
>> SDVO_PORT_MULTIPLY_SHIFT) + 1;
}
@@ -406,6 +387,3 @@ index ebfd5138178f..91aea9e1ab6f 100644
/* Cross check the port pixel multiplier with the sdvo encoder state. */
if (intel_sdvo_get_value(intel_sdvo, SDVO_CMD_GET_CLOCK_RATE_MULT,
&val, 1)) {
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0876-drm-i915-write-D_COMP-using-the-mailbox.patch b/patches.baytrail/0876-drm-i915-write-D_COMP-using-the-mailbox.patch
index c4ca3a620b3d2..6b7576a183178 100644
--- a/patches.baytrail/0876-drm-i915-write-D_COMP-using-the-mailbox.patch
+++ b/patches.baytrail/0876-drm-i915-write-D_COMP-using-the-mailbox.patch
@@ -18,12 +18,10 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 515b239269fb67fd167676d335a56ef0c13e53d5)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 ++++
- drivers/gpu/drm/i915/intel_display.c | 10 ++++++++--
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++++
+ drivers/gpu/drm/i915/intel_display.c | 10 ++++++++--
2 files changed, 12 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 384adfba3983..af6f93ca7296 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1441,6 +1441,8 @@
@@ -35,7 +33,7 @@ index 384adfba3983..af6f93ca7296 100644
*/
#define MCHBAR_MIRROR_BASE 0x10000
-@@ -4724,6 +4726,8 @@
+@@ -4728,6 +4730,8 @@
#define GEN6_PCODE_READ_MIN_FREQ_TABLE 0x9
#define GEN6_PCODE_WRITE_RC6VIDS 0x4
#define GEN6_PCODE_READ_RC6VIDS 0x5
@@ -44,11 +42,9 @@ index 384adfba3983..af6f93ca7296 100644
#define GEN6_ENCODE_RC6_VID(mv) (((mv) - 245) / 5)
#define GEN6_DECODE_RC6_VID(vids) (((vids) * 5) + 245)
#define GEN6_PCODE_DATA 0x138128
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 1e3c14b5a891..07f26a9e6957 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -6135,7 +6135,10 @@ void hsw_disable_lcpll(struct drm_i915_private *dev_priv,
+@@ -6135,7 +6135,10 @@ void hsw_disable_lcpll(struct drm_i915_p
val = I915_READ(D_COMP);
val |= D_COMP_COMP_DISABLE;
@@ -60,7 +56,7 @@ index 1e3c14b5a891..07f26a9e6957 100644
POSTING_READ(D_COMP);
ndelay(100);
-@@ -6177,7 +6180,10 @@ void hsw_restore_lcpll(struct drm_i915_private *dev_priv)
+@@ -6177,7 +6180,10 @@ void hsw_restore_lcpll(struct drm_i915_p
val = I915_READ(D_COMP);
val |= D_COMP_COMP_FORCE;
val &= ~D_COMP_COMP_DISABLE;
@@ -72,6 +68,3 @@ index 1e3c14b5a891..07f26a9e6957 100644
POSTING_READ(D_COMP);
val = I915_READ(LCPLL_CTL);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0880-drm-i915-Add-second-slice-l3-remapping.patch b/patches.baytrail/0880-drm-i915-Add-second-slice-l3-remapping.patch
index 55dd4437781f6..729bbf261a52b 100644
--- a/patches.baytrail/0880-drm-i915-Add-second-slice-l3-remapping.patch
+++ b/patches.baytrail/0880-drm-i915-Add-second-slice-l3-remapping.patch
@@ -31,17 +31,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 35a85ac60618521d41cfdb14f3fbfc8ad7329e9e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 7 ++-
- drivers/gpu/drm/i915/i915_gem.c | 26 +++++-----
- drivers/gpu/drm/i915/i915_irq.c | 89 +++++++++++++++++++++------------
- drivers/gpu/drm/i915/i915_reg.h | 7 +++
- drivers/gpu/drm/i915/i915_sysfs.c | 34 ++++++++++---
- drivers/gpu/drm/i915/intel_ringbuffer.c | 7 ++-
- include/uapi/drm/i915_drm.h | 8 +--
- 7 files changed, 117 insertions(+), 61 deletions(-)
+ drivers/gpu/drm/i915/i915_drv.h | 7 +-
+ drivers/gpu/drm/i915/i915_gem.c | 26 ++++-----
+ drivers/gpu/drm/i915/i915_irq.c | 91 ++++++++++++++++++++------------
+ drivers/gpu/drm/i915/i915_reg.h | 7 ++
+ drivers/gpu/drm/i915/i915_sysfs.c | 34 +++++++++--
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 7 +-
+ include/uapi/drm/i915_drm.h | 8 +-
+ 7 files changed, 118 insertions(+), 62 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 8b16d47280f9..c6e8df737566 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -917,9 +917,11 @@ struct i915_ums_state {
@@ -65,7 +63,7 @@ index 8b16d47280f9..c6e8df737566 100644
#define GT_FREQUENCY_MULTIPLIER 50
-@@ -1946,7 +1949,7 @@ bool i915_gem_clflush_object(struct drm_i915_gem_object *obj, bool force);
+@@ -1946,7 +1949,7 @@ bool i915_gem_clflush_object(struct drm_
int __must_check i915_gem_object_finish_gpu(struct drm_i915_gem_object *obj);
int __must_check i915_gem_init(struct drm_device *dev);
int __must_check i915_gem_init_hw(struct drm_device *dev);
@@ -74,8 +72,6 @@ index 8b16d47280f9..c6e8df737566 100644
void i915_gem_init_swizzling(struct drm_device *dev);
void i915_gem_cleanup_ringbuffer(struct drm_device *dev);
int __must_check i915_gpu_idle(struct drm_device *dev);
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 3d3de6eba1e8..66bf75dce783 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4252,16 +4252,15 @@ i915_gem_idle(struct drm_device *dev)
@@ -99,7 +95,7 @@ index 3d3de6eba1e8..66bf75dce783 100644
return;
misccpctl = I915_READ(GEN7_MISCCPCTL);
-@@ -4269,17 +4268,17 @@ void i915_gem_l3_remap(struct drm_device *dev)
+@@ -4269,17 +4268,17 @@ void i915_gem_l3_remap(struct drm_device
POSTING_READ(GEN7_MISCCPCTL);
for (i = 0; i < GEN7_L3LOG_SIZE; i += 4) {
@@ -142,11 +138,9 @@ index 3d3de6eba1e8..66bf75dce783 100644
i915_gem_init_swizzling(dev);
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index a42f30b9cdba..1c7f6abe0bc5 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -888,9 +888,10 @@ static void ivybridge_parity_work(struct work_struct *work)
+@@ -888,9 +888,10 @@ static void ivybridge_parity_work(struct
drm_i915_private_t *dev_priv = container_of(work, drm_i915_private_t,
l3_parity.error_work);
u32 error_status, row, bank, subbank;
@@ -158,7 +152,7 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
/* We must turn off DOP level clock gating to access the L3 registers.
* In order to prevent a get/put style interface, acquire struct mutex
-@@ -898,45 +899,64 @@ static void ivybridge_parity_work(struct work_struct *work)
+@@ -898,45 +899,64 @@ static void ivybridge_parity_work(struct
*/
mutex_lock(&dev_priv->dev->struct_mutex);
@@ -174,25 +168,31 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
- row = GEN7_PARITY_ERROR_ROW(error_status);
- bank = GEN7_PARITY_ERROR_BANK(error_status);
- subbank = GEN7_PARITY_ERROR_SUBBANK(error_status);
-+ while ((slice = ffs(dev_priv->l3_parity.which_slice)) != 0) {
-+ u32 reg;
-
+-
- I915_WRITE(GEN7_L3CDERRST1, GEN7_PARITY_ERROR_VALID |
- GEN7_L3CDERRST1_ENABLE);
- POSTING_READ(GEN7_L3CDERRST1);
++ while ((slice = ffs(dev_priv->l3_parity.which_slice)) != 0) {
++ u32 reg;
+
+- I915_WRITE(GEN7_MISCCPCTL, misccpctl);
+ slice--;
+ if (WARN_ON_ONCE(slice >= NUM_L3_SLICES(dev_priv->dev)))
+ break;
-- I915_WRITE(GEN7_MISCCPCTL, misccpctl);
-+ dev_priv->l3_parity.which_slice &= ~(1<<slice);
-
- spin_lock_irqsave(&dev_priv->irq_lock, flags);
- ilk_enable_gt_irq(dev_priv, GT_RENDER_L3_PARITY_ERROR_INTERRUPT);
- spin_unlock_irqrestore(&dev_priv->irq_lock, flags);
-+ reg = GEN7_L3CDERRST1 + (slice * 0x200);
++ dev_priv->l3_parity.which_slice &= ~(1<<slice);
- mutex_unlock(&dev_priv->dev->struct_mutex);
++ reg = GEN7_L3CDERRST1 + (slice * 0x200);
+
+- parity_event[0] = I915_L3_PARITY_UEVENT "=1";
+- parity_event[1] = kasprintf(GFP_KERNEL, "ROW=%d", row);
+- parity_event[2] = kasprintf(GFP_KERNEL, "BANK=%d", bank);
+- parity_event[3] = kasprintf(GFP_KERNEL, "SUBBANK=%d", subbank);
+- parity_event[4] = NULL;
+ error_status = I915_READ(reg);
+ row = GEN7_PARITY_ERROR_ROW(error_status);
+ bank = GEN7_PARITY_ERROR_BANK(error_status);
@@ -210,36 +210,31 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
+
+ kobject_uevent_env(&dev_priv->dev->primary->kdev.kobj,
+ KOBJ_CHANGE, parity_event);
-
-- parity_event[0] = I915_L3_PARITY_UEVENT "=1";
-- parity_event[1] = kasprintf(GFP_KERNEL, "ROW=%d", row);
-- parity_event[2] = kasprintf(GFP_KERNEL, "BANK=%d", bank);
-- parity_event[3] = kasprintf(GFP_KERNEL, "SUBBANK=%d", subbank);
-- parity_event[4] = NULL;
++
+ DRM_DEBUG("Parity error: Slice = %d, Row = %d, Bank = %d, Sub bank = %d.\n",
+ slice, row, bank, subbank);
-
-- kobject_uevent_env(&dev_priv->dev->primary->kdev.kobj,
-- KOBJ_CHANGE, parity_event);
++
+ kfree(parity_event[4]);
+ kfree(parity_event[3]);
+ kfree(parity_event[2]);
+ kfree(parity_event[1]);
+ }
-- DRM_DEBUG("Parity error: Row = %d, Bank = %d, Sub bank = %d.\n",
-- row, bank, subbank);
+- kobject_uevent_env(&dev_priv->dev->primary->kdev.kobj,
+- KOBJ_CHANGE, parity_event);
+ I915_WRITE(GEN7_MISCCPCTL, misccpctl);
-- kfree(parity_event[3]);
-- kfree(parity_event[2]);
-- kfree(parity_event[1]);
+- DRM_DEBUG("Parity error: Row = %d, Bank = %d, Sub bank = %d.\n",
+- row, bank, subbank);
+out:
+ WARN_ON(dev_priv->l3_parity.which_slice);
+ spin_lock_irqsave(&dev_priv->irq_lock, flags);
+ ilk_enable_gt_irq(dev_priv, GT_PARITY_ERROR(dev_priv->dev));
+ spin_unlock_irqrestore(&dev_priv->irq_lock, flags);
-+
+
+- kfree(parity_event[3]);
+- kfree(parity_event[2]);
+- kfree(parity_event[1]);
+ mutex_unlock(&dev_priv->dev->struct_mutex);
}
@@ -248,7 +243,7 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
{
drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
-@@ -944,9 +964,16 @@ static void ivybridge_parity_error_irq_handler(struct drm_device *dev)
+@@ -944,9 +964,16 @@ static void ivybridge_parity_error_irq_h
return;
spin_lock(&dev_priv->irq_lock);
@@ -266,7 +261,7 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
queue_work(dev_priv->wq, &dev_priv->l3_parity.error_work);
}
-@@ -981,8 +1008,8 @@ static void snb_gt_irq_handler(struct drm_device *dev,
+@@ -981,8 +1008,8 @@ static void snb_gt_irq_handler(struct dr
i915_handle_error(dev, false);
}
@@ -277,7 +272,7 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
}
#define HPD_STORM_DETECT_PERIOD 1000
-@@ -2267,8 +2294,8 @@ static void gen5_gt_irq_postinstall(struct drm_device *dev)
+@@ -2267,8 +2294,8 @@ static void gen5_gt_irq_postinstall(stru
dev_priv->gt_irq_mask = ~0;
if (HAS_L3_GPU_CACHE(dev)) {
/* L3 parity interrupt is always unmasked. */
@@ -288,8 +283,6 @@ index a42f30b9cdba..1c7f6abe0bc5 100644
}
gt_irqs |= GT_RENDER_USER_INTERRUPT;
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index af6f93ca7296..c4f9bef6d073 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -927,6 +927,7 @@
@@ -311,7 +304,7 @@ index af6f93ca7296..c4f9bef6d073 100644
/* These are all the "old" interrupts */
#define ILK_BSD_USER_INTERRUPT (1<<5)
#define I915_PIPE_CONTROL_NOTIFY_INTERRUPT (1<<18)
-@@ -4747,6 +4752,7 @@
+@@ -4751,6 +4756,7 @@
/* IVYBRIDGE DPF */
#define GEN7_L3CDERRST1 0xB008 /* L3CD Error Status 1 */
@@ -319,7 +312,7 @@ index af6f93ca7296..c4f9bef6d073 100644
#define GEN7_L3CDERRST1_ROW_MASK (0x7ff<<14)
#define GEN7_PARITY_ERROR_VALID (1<<13)
#define GEN7_L3CDERRST1_BANK_MASK (3<<11)
-@@ -4760,6 +4766,7 @@
+@@ -4764,6 +4770,7 @@
#define GEN7_L3CDERRST1_ENABLE (1<<7)
#define GEN7_L3LOG_BASE 0xB070
@@ -327,11 +320,9 @@ index af6f93ca7296..c4f9bef6d073 100644
#define GEN7_L3LOG_SIZE 0x80
#define GEN7_HALF_SLICE_CHICKEN1 0xe100 /* IVB GT1 + VLV */
-diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c
-index 71f6de24444e..3a8bf0c9b5ce 100644
--- a/drivers/gpu/drm/i915/i915_sysfs.c
+++ b/drivers/gpu/drm/i915/i915_sysfs.c
-@@ -119,6 +119,7 @@ i915_l3_read(struct file *filp, struct kobject *kobj,
+@@ -119,6 +119,7 @@ i915_l3_read(struct file *filp, struct k
struct drm_device *drm_dev = dminor->dev;
struct drm_i915_private *dev_priv = drm_dev->dev_private;
uint32_t misccpctl;
@@ -339,7 +330,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
int i, ret;
count = round_down(count, 4);
-@@ -134,9 +135,9 @@ i915_l3_read(struct file *filp, struct kobject *kobj,
+@@ -134,9 +135,9 @@ i915_l3_read(struct file *filp, struct k
return ret;
if (IS_HASWELL(drm_dev)) {
@@ -351,7 +342,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
count);
else
memset(buf, 0, count);
-@@ -168,6 +169,7 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -168,6 +169,7 @@ i915_l3_write(struct file *filp, struct
struct drm_device *drm_dev = dminor->dev;
struct drm_i915_private *dev_priv = drm_dev->dev_private;
u32 *temp = NULL; /* Just here to make handling failures easy */
@@ -359,7 +350,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
int ret;
ret = l3_access_valid(drm_dev, offset);
-@@ -178,7 +180,7 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -178,7 +180,7 @@ i915_l3_write(struct file *filp, struct
if (ret)
return ret;
@@ -368,7 +359,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
temp = kzalloc(GEN7_L3LOG_SIZE, GFP_KERNEL);
if (!temp) {
mutex_unlock(&drm_dev->struct_mutex);
-@@ -198,11 +200,11 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -198,11 +200,11 @@ i915_l3_write(struct file *filp, struct
* at this point it is left as a TODO.
*/
if (temp)
@@ -383,7 +374,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
mutex_unlock(&drm_dev->struct_mutex);
-@@ -214,7 +216,17 @@ static struct bin_attribute dpf_attrs = {
+@@ -214,7 +216,17 @@ static struct bin_attribute dpf_attrs =
.size = GEN7_L3LOG_SIZE,
.read = i915_l3_read,
.write = i915_l3_write,
@@ -402,7 +393,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
};
static ssize_t gt_cur_freq_mhz_show(struct device *kdev,
-@@ -525,6 +537,13 @@ void i915_setup_sysfs(struct drm_device *dev)
+@@ -525,6 +537,13 @@ void i915_setup_sysfs(struct drm_device
ret = device_create_bin_file(&dev->primary->kdev, &dpf_attrs);
if (ret)
DRM_ERROR("l3 parity sysfs setup failed\n");
@@ -416,7 +407,7 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
}
ret = 0;
-@@ -548,6 +567,7 @@ void i915_teardown_sysfs(struct drm_device *dev)
+@@ -548,6 +567,7 @@ void i915_teardown_sysfs(struct drm_devi
sysfs_remove_files(&dev->primary->kdev.kobj, vlv_attrs);
else
sysfs_remove_files(&dev->primary->kdev.kobj, gen6_attrs);
@@ -424,11 +415,9 @@ index 71f6de24444e..3a8bf0c9b5ce 100644
device_remove_bin_file(&dev->primary->kdev, &dpf_attrs);
#ifdef CONFIG_PM
sysfs_unmerge_group(&dev->primary->kdev.kobj, &rc6_attr_group);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 686e5b23481d..958b7d8fea8b 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -570,7 +570,7 @@ static int init_render_ring(struct intel_ring_buffer *ring)
+@@ -570,7 +570,7 @@ static int init_render_ring(struct intel
I915_WRITE(INSTPM, _MASKED_BIT_ENABLE(INSTPM_FORCE_ORDERING));
if (HAS_L3_GPU_CACHE(dev))
@@ -437,7 +426,7 @@ index 686e5b23481d..958b7d8fea8b 100644
return ret;
}
-@@ -1000,7 +1000,7 @@ gen6_ring_get_irq(struct intel_ring_buffer *ring)
+@@ -1000,7 +1000,7 @@ gen6_ring_get_irq(struct intel_ring_buff
if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS)
I915_WRITE_IMR(ring,
~(ring->irq_enable_mask |
@@ -446,7 +435,7 @@ index 686e5b23481d..958b7d8fea8b 100644
else
I915_WRITE_IMR(ring, ~ring->irq_enable_mask);
ilk_enable_gt_irq(dev_priv, ring->irq_enable_mask);
-@@ -1020,8 +1020,7 @@ gen6_ring_put_irq(struct intel_ring_buffer *ring)
+@@ -1020,8 +1020,7 @@ gen6_ring_put_irq(struct intel_ring_buff
spin_lock_irqsave(&dev_priv->irq_lock, flags);
if (--ring->irq_refcount == 0) {
if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS)
@@ -456,8 +445,6 @@ index 686e5b23481d..958b7d8fea8b 100644
else
I915_WRITE_IMR(ring, ~0);
ilk_disable_gt_irq(dev_priv, ring->irq_enable_mask);
-diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
-index 55bb5729bd78..3a4e97bd8607 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -38,10 +38,10 @@
@@ -475,6 +462,3 @@ index 55bb5729bd78..3a4e97bd8607 100644
*
* I915_ERROR_UEVENT - Generated upon error detection, currently only via
* hangcheck. The error detection event is a good indicator of when things
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch b/patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch
index 3b29bcb90b20e..8db3eb5a2b34c 100644
--- a/patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch
+++ b/patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch
@@ -132,7 +132,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3633,11 +3633,11 @@ intel_dp_init(struct drm_device *dev, in
+@@ -3649,11 +3649,11 @@ intel_dp_init(struct drm_device *dev, in
struct drm_encoder *encoder;
struct intel_connector *intel_connector;
diff --git a/patches.baytrail/0905-drm-i915-VBT-s-child_device_config-changes-over-time.patch b/patches.baytrail/0905-drm-i915-VBT-s-child_device_config-changes-over-time.patch
index bd460f1cb535d..f145ba5f293bf 100644
--- a/patches.baytrail/0905-drm-i915-VBT-s-child_device_config-changes-over-time.patch
+++ b/patches.baytrail/0905-drm-i915-VBT-s-child_device_config-changes-over-time.patch
@@ -21,16 +21,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 768f69c9fe601af39dfeb377f45909896f201444)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 2 +-
- drivers/gpu/drm/i915/intel_bios.c | 36 ++++++++++++++++++------------------
- drivers/gpu/drm/i915/intel_bios.h | 33 +++++++++++++++++++++++++++++++--
- drivers/gpu/drm/i915/intel_dp.c | 6 +++---
- drivers/gpu/drm/i915/intel_lvds.c | 3 ++-
- drivers/gpu/drm/i915/intel_tv.c | 8 ++++----
+ drivers/gpu/drm/i915/i915_drv.h | 2 +-
+ drivers/gpu/drm/i915/intel_bios.c | 36 ++++++++++++++++++------------------
+ drivers/gpu/drm/i915/intel_bios.h | 33 +++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/i915/intel_dp.c | 6 +++---
+ drivers/gpu/drm/i915/intel_lvds.c | 3 ++-
+ drivers/gpu/drm/i915/intel_tv.c | 8 ++++----
6 files changed, 59 insertions(+), 29 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 8c52cbdb76f3..9868a66ef59c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1090,7 +1090,7 @@ struct intel_vbt_data {
@@ -42,11 +40,9 @@ index 8c52cbdb76f3..9868a66ef59c 100644
};
enum intel_ddb_partitioning {
-diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
-index 6668873fb3a8..33003b97f1f0 100644
--- a/drivers/gpu/drm/i915/intel_bios.c
+++ b/drivers/gpu/drm/i915/intel_bios.c
-@@ -389,7 +389,7 @@ parse_sdvo_device_mapping(struct drm_i915_private *dev_priv,
+@@ -389,7 +389,7 @@ parse_sdvo_device_mapping(struct drm_i91
{
struct sdvo_device_mapping *p_mapping;
struct bdb_general_definitions *p_defs;
@@ -55,7 +51,7 @@ index 6668873fb3a8..33003b97f1f0 100644
int i, child_device_num, count;
u16 block_size;
-@@ -416,36 +416,36 @@ parse_sdvo_device_mapping(struct drm_i915_private *dev_priv,
+@@ -416,36 +416,36 @@ parse_sdvo_device_mapping(struct drm_i91
count = 0;
for (i = 0; i < child_device_num; i++) {
p_child = &(p_defs->devices[i]);
@@ -105,7 +101,7 @@ index 6668873fb3a8..33003b97f1f0 100644
p_mapping->initialized = 1;
DRM_DEBUG_KMS("SDVO device: dvo=%x, addr=%x, wiring=%d, ddc_pin=%d, i2c_pin=%d\n",
p_mapping->dvo_port,
-@@ -457,7 +457,7 @@ parse_sdvo_device_mapping(struct drm_i915_private *dev_priv,
+@@ -457,7 +457,7 @@ parse_sdvo_device_mapping(struct drm_i91
DRM_DEBUG_KMS("Maybe one SDVO port is shared by "
"two SDVO device.\n");
}
@@ -114,7 +110,7 @@ index 6668873fb3a8..33003b97f1f0 100644
/* Maybe this is a SDVO device with multiple inputs */
/* And the mapping info is not added */
DRM_DEBUG_KMS("there exists the slave2_addr. Maybe this"
-@@ -588,7 +588,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
+@@ -588,7 +588,7 @@ parse_device_mapping(struct drm_i915_pri
struct bdb_header *bdb)
{
struct bdb_general_definitions *p_defs;
@@ -123,7 +119,7 @@ index 6668873fb3a8..33003b97f1f0 100644
int i, child_device_num, count;
u16 block_size;
-@@ -616,7 +616,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
+@@ -616,7 +616,7 @@ parse_device_mapping(struct drm_i915_pri
/* get the number of child device that is present */
for (i = 0; i < child_device_num; i++) {
p_child = &(p_defs->devices[i]);
@@ -132,7 +128,7 @@ index 6668873fb3a8..33003b97f1f0 100644
/* skip the device block if device type is invalid */
continue;
}
-@@ -636,7 +636,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
+@@ -636,7 +636,7 @@ parse_device_mapping(struct drm_i915_pri
count = 0;
for (i = 0; i < child_device_num; i++) {
p_child = &(p_defs->devices[i]);
@@ -141,8 +137,6 @@ index 6668873fb3a8..33003b97f1f0 100644
/* skip the device block if device type is invalid */
continue;
}
-diff --git a/drivers/gpu/drm/i915/intel_bios.h b/drivers/gpu/drm/i915/intel_bios.h
-index 6e9250eb9c2c..1da2bf208299 100644
--- a/drivers/gpu/drm/i915/intel_bios.h
+++ b/drivers/gpu/drm/i915/intel_bios.h
@@ -202,7 +202,10 @@ struct bdb_general_features {
@@ -199,11 +193,9 @@ index 6e9250eb9c2c..1da2bf208299 100644
} __attribute__((packed));
struct bdb_lvds_options {
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 2f3d67f12a88..1b26c610d21a 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3211,7 +3211,7 @@ intel_trans_dp_port_sel(struct drm_crtc *crtc)
+@@ -3227,7 +3227,7 @@ intel_trans_dp_port_sel(struct drm_crtc
bool intel_dpd_is_edp(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -212,7 +204,7 @@ index 2f3d67f12a88..1b26c610d21a 100644
int i;
if (!dev_priv->vbt.child_dev_num)
-@@ -3220,8 +3220,8 @@ bool intel_dpd_is_edp(struct drm_device *dev)
+@@ -3236,8 +3236,8 @@ bool intel_dpd_is_edp(struct drm_device
for (i = 0; i < dev_priv->vbt.child_dev_num; i++) {
p_child = dev_priv->vbt.child_dev + i;
@@ -223,11 +215,9 @@ index 2f3d67f12a88..1b26c610d21a 100644
return true;
}
return false;
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index 87d5a769b3ae..33994f2677ff 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -810,7 +810,8 @@ static bool lvds_is_present_in_vbt(struct drm_device *dev,
+@@ -810,7 +810,8 @@ static bool lvds_is_present_in_vbt(struc
return true;
for (i = 0; i < dev_priv->vbt.child_dev_num; i++) {
@@ -237,11 +227,9 @@ index 87d5a769b3ae..33994f2677ff 100644
/* If the device type is not LFP, continue.
* We have to check both the new identifiers as well as the
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index e6e93ce34f7b..11c15fbf9e55 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
-@@ -1518,7 +1518,7 @@ static const struct drm_encoder_funcs intel_tv_enc_funcs = {
+@@ -1518,7 +1518,7 @@ static const struct drm_encoder_funcs in
static int tv_is_present_in_vbt(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -250,7 +238,7 @@ index e6e93ce34f7b..11c15fbf9e55 100644
int i, ret;
if (!dev_priv->vbt.child_dev_num)
-@@ -1530,13 +1530,13 @@ static int tv_is_present_in_vbt(struct drm_device *dev)
+@@ -1530,13 +1530,13 @@ static int tv_is_present_in_vbt(struct d
/*
* If the device type is not TV, continue.
*/
@@ -267,6 +255,3 @@ index e6e93ce34f7b..11c15fbf9e55 100644
ret = 1;
break;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch b/patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch
index e32d47575ca02..16a620c8cfbd2 100644
--- a/patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch
+++ b/patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch
@@ -40,7 +40,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1800,8 +1800,6 @@ int i915_driver_unload(struct drm_device
+@@ -1801,8 +1801,6 @@ int i915_driver_unload(struct drm_device
list_del(&dev_priv->gtt.base.global_link);
WARN_ON(!list_empty(&dev_priv->vm_list));
drm_mm_takedown(&dev_priv->gtt.base.mm);
@@ -49,7 +49,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_teardown_gmbus(dev);
intel_teardown_mchbar(dev);
-@@ -1811,6 +1809,10 @@ int i915_driver_unload(struct drm_device
+@@ -1812,6 +1810,10 @@ int i915_driver_unload(struct drm_device
dev_priv->gtt.base.cleanup(&dev_priv->gtt.base);
diff --git a/patches.baytrail/0955-drm-i915-vlv-use-lower-precision-RC6-counter.patch b/patches.baytrail/0955-drm-i915-vlv-use-lower-precision-RC6-counter.patch
index a8192b3ac09e8..827ac661f1cf8 100644
--- a/patches.baytrail/0955-drm-i915-vlv-use-lower-precision-RC6-counter.patch
+++ b/patches.baytrail/0955-drm-i915-vlv-use-lower-precision-RC6-counter.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 49798eb2fe7240900d0a22a4e8d2b8e2f2ea6684)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 4 ++++
- drivers/gpu/drm/i915/intel_pm.c | 5 ++++-
+ drivers/gpu/drm/i915/i915_reg.h | 4 ++++
+ drivers/gpu/drm/i915/intel_pm.c | 5 ++++-
2 files changed, 8 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 33bb4750516a..c15cc749ca2c 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4729,6 +4729,10 @@
+@@ -4733,6 +4733,10 @@
GEN6_PM_RP_DOWN_TIMEOUT)
#define GEN6_GT_GFX_RC6_LOCKED 0x138104
@@ -32,11 +30,9 @@ index 33bb4750516a..c15cc749ca2c 100644
#define GEN6_GT_GFX_RC6 0x138108
#define GEN6_GT_GFX_RC6p 0x13810C
#define GEN6_GT_GFX_RC6pp 0x138110
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 2ac1c2fd58bb..102fc498a12f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3837,7 +3837,10 @@ static void valleyview_enable_rps(struct drm_device *dev)
+@@ -3837,7 +3837,10 @@ static void valleyview_enable_rps(struct
I915_WRITE(GEN6_RC6_THRESHOLD, 0xc350);
/* allows RC6 residency counter to work */
@@ -48,6 +44,3 @@ index 2ac1c2fd58bb..102fc498a12f 100644
if (intel_enable_rc6(dev) & INTEL_RC6_ENABLE)
rc6_mode = GEN7_RC_CTL_TO_MODE;
I915_WRITE(GEN6_RC_CONTROL, rc6_mode);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch b/patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch
index e3567398538fd..42d11464b7248 100644
--- a/patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch
+++ b/patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch
@@ -80,7 +80,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_cleanup_overlay(dev);
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -3197,7 +3197,6 @@ intel_dp_connector_destroy(struct drm_co
+@@ -3213,7 +3213,6 @@ intel_dp_connector_destroy(struct drm_co
if (connector->connector_type == DRM_MODE_CONNECTOR_eDP)
intel_panel_fini(&intel_connector->panel);
diff --git a/patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch b/patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch
index f121012b57e3e..225b96cdacf35 100644
--- a/patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch
+++ b/patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch
@@ -56,7 +56,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
out_gem_unload:
if (dev_priv->mm.inactive_shrinker.shrink)
unregister_shrinker(&dev_priv->mm.inactive_shrinker);
-@@ -1705,12 +1709,17 @@ out_gem_unload:
+@@ -1706,12 +1710,17 @@ out_gem_unload:
out_mtrrfree:
arch_phys_wc_del(dev_priv->gtt.mtrr);
io_mapping_free(dev_priv->gtt.mappable);
@@ -75,7 +75,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
kfree(dev_priv);
return ret;
}
-@@ -1801,6 +1810,8 @@ int i915_driver_unload(struct drm_device
+@@ -1802,6 +1811,8 @@ int i915_driver_unload(struct drm_device
WARN_ON(!list_empty(&dev_priv->vm_list));
drm_mm_takedown(&dev_priv->gtt.base.mm);
diff --git a/patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch b/patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch
index 9af81bf16d9e3..b1be78ea5cc6d 100644
--- a/patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch
+++ b/patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch
@@ -83,7 +83,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1835,19 +1835,11 @@ int i915_driver_unload(struct drm_device
+@@ -1836,19 +1836,11 @@ int i915_driver_unload(struct drm_device
int i915_driver_open(struct drm_device *dev, struct drm_file *file)
{
diff --git a/patches.baytrail/0971-drm-i915-Tweak-RPS-thresholds-to-more-aggressively-d.patch b/patches.baytrail/0971-drm-i915-Tweak-RPS-thresholds-to-more-aggressively-d.patch
index b02e46147fc62..2431f2f3f6647 100644
--- a/patches.baytrail/0971-drm-i915-Tweak-RPS-thresholds-to-more-aggressively-d.patch
+++ b/patches.baytrail/0971-drm-i915-Tweak-RPS-thresholds-to-more-aggressively-d.patch
@@ -47,14 +47,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit dd75fdc8c69587c91bd68a6ed7c726b5e70f9399)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 5 ++
- drivers/gpu/drm/i915/i915_irq.c | 46 ++++++++++----
- drivers/gpu/drm/i915/i915_reg.h | 2 +-
- drivers/gpu/drm/i915/intel_pm.c | 137 ++++++++++++++++++++++++++++++----------
+ drivers/gpu/drm/i915/i915_drv.h | 5 +
+ drivers/gpu/drm/i915/i915_irq.c | 46 +++++++++----
+ drivers/gpu/drm/i915/i915_reg.h | 2
+ drivers/gpu/drm/i915/intel_pm.c | 137 ++++++++++++++++++++++++++++++----------
4 files changed, 143 insertions(+), 47 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index d1c6b92edae0..5118ac300c42 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -850,8 +850,13 @@ struct intel_gen6_power_mgmt {
@@ -71,11 +69,9 @@ index d1c6b92edae0..5118ac300c42 100644
struct delayed_work delayed_resume_work;
/*
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 6ee557280e11..418ad642c742 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -818,7 +818,7 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -818,7 +818,7 @@ static void gen6_pm_rps_work(struct work
drm_i915_private_t *dev_priv = container_of(work, drm_i915_private_t,
rps.work);
u32 pm_iir;
@@ -84,7 +80,7 @@ index 6ee557280e11..418ad642c742 100644
spin_lock_irq(&dev_priv->irq_lock);
pm_iir = dev_priv->rps.pm_iir;
-@@ -835,29 +835,49 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -835,29 +835,49 @@ static void gen6_pm_rps_work(struct work
mutex_lock(&dev_priv->rps.hw_lock);
@@ -146,11 +142,9 @@ index 6ee557280e11..418ad642c742 100644
mutex_unlock(&dev_priv->rps.hw_lock);
}
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 96fd2ce6aa02..daaabe788f21 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -4687,7 +4687,7 @@
+@@ -4691,7 +4691,7 @@
#define GEN6_RP_UP_IDLE_MIN (0x1<<3)
#define GEN6_RP_UP_BUSY_AVG (0x2<<3)
#define GEN6_RP_UP_BUSY_CONT (0x4<<3)
@@ -159,11 +153,9 @@ index 96fd2ce6aa02..daaabe788f21 100644
#define GEN6_RP_DOWN_IDLE_CONT (0x1<<0)
#define GEN6_RP_UP_THRESHOLD 0xA02C
#define GEN6_RP_DOWN_THRESHOLD 0xA030
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index ca063c25ad32..b08a96cd9c94 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3312,6 +3312,98 @@ static u32 gen6_rps_limits(struct drm_i915_private *dev_priv, u8 *val)
+@@ -3312,6 +3312,98 @@ static u32 gen6_rps_limits(struct drm_i9
return limits;
}
@@ -262,7 +254,7 @@ index ca063c25ad32..b08a96cd9c94 100644
void gen6_set_rps(struct drm_device *dev, u8 val)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -3324,6 +3416,8 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
+@@ -3324,6 +3416,8 @@ void gen6_set_rps(struct drm_device *dev
if (val == dev_priv->rps.cur_delay)
return;
@@ -271,7 +263,7 @@ index ca063c25ad32..b08a96cd9c94 100644
if (IS_HASWELL(dev))
I915_WRITE(GEN6_RPNSWREQ,
HSW_FREQUENCY(val));
-@@ -3352,6 +3446,7 @@ void gen6_rps_idle(struct drm_i915_private *dev_priv)
+@@ -3352,6 +3446,7 @@ void gen6_rps_idle(struct drm_i915_priva
valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_delay);
else
gen6_set_rps(dev_priv->dev, dev_priv->rps.min_delay);
@@ -279,7 +271,7 @@ index ca063c25ad32..b08a96cd9c94 100644
mutex_unlock(&dev_priv->rps.hw_lock);
}
-@@ -3362,6 +3457,7 @@ void gen6_rps_boost(struct drm_i915_private *dev_priv)
+@@ -3362,6 +3457,7 @@ void gen6_rps_boost(struct drm_i915_priv
valleyview_set_rps(dev_priv->dev, dev_priv->rps.max_delay);
else
gen6_set_rps(dev_priv->dev, dev_priv->rps.max_delay);
@@ -287,7 +279,7 @@ index ca063c25ad32..b08a96cd9c94 100644
mutex_unlock(&dev_priv->rps.hw_lock);
}
-@@ -3546,7 +3642,10 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3546,7 +3642,10 @@ static void gen6_enable_rps(struct drm_d
/* In units of 50MHz */
dev_priv->rps.hw_max = dev_priv->rps.max_delay = rp_state_cap & 0xff;
@@ -299,7 +291,7 @@ index ca063c25ad32..b08a96cd9c94 100644
dev_priv->rps.cur_delay = 0;
/* disable the counters and set deterministic thresholds */
-@@ -3594,38 +3693,9 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3594,38 +3693,9 @@ static void gen6_enable_rps(struct drm_d
GEN6_RC_CTL_EI_MODE(1) |
GEN6_RC_CTL_HW_ENABLE);
@@ -340,7 +332,7 @@ index ca063c25ad32..b08a96cd9c94 100644
ret = sandybridge_pcode_write(dev_priv, GEN6_PCODE_WRITE_MIN_FREQ_TABLE, 0);
if (!ret) {
-@@ -3641,7 +3711,8 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3641,7 +3711,8 @@ static void gen6_enable_rps(struct drm_d
DRM_DEBUG_DRIVER("Failed to set the min frequency\n");
}
@@ -350,6 +342,3 @@ index ca063c25ad32..b08a96cd9c94 100644
gen6_enable_rps_interrupts(dev);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0993-drm-i915-dp-use-drm_edid_duplicate.patch b/patches.baytrail/0993-drm-i915-dp-use-drm_edid_duplicate.patch
index b8a6fc422fd3c..28200724eda73 100644
--- a/patches.baytrail/0993-drm-i915-dp-use-drm_edid_duplicate.patch
+++ b/patches.baytrail/0993-drm-i915-dp-use-drm_edid_duplicate.patch
@@ -10,14 +10,12 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 55e9edeb57ed9dd9be6773c5230187d701b14a46)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_dp.c | 10 +---------
+ drivers/gpu/drm/i915/intel_dp.c | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 5f8a4f2c3c74..0c9f4764ed92 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2972,19 +2972,11 @@ intel_dp_get_edid(struct drm_connector *connector, struct i2c_adapter *adapter)
+@@ -2988,19 +2988,11 @@ intel_dp_get_edid(struct drm_connector *
/* use cached edid if we have one */
if (intel_connector->edid) {
@@ -38,6 +36,3 @@ index 5f8a4f2c3c74..0c9f4764ed92 100644
}
return drm_get_edid(connector, adapter);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch b/patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch
index 06c6a9f9d45f4..e8b382266ef6f 100644
--- a/patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch
+++ b/patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch
@@ -47,7 +47,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
intel_uncore_sanitize(dev);
/* Try to make sure MCHBAR is enabled before poking at it */
-@@ -1697,6 +1698,7 @@ out_gtt:
+@@ -1698,6 +1699,7 @@ out_gtt:
drm_mm_takedown(&dev_priv->gtt.base.mm);
dev_priv->gtt.base.cleanup(&dev_priv->gtt.base);
out_regs:
diff --git a/patches.baytrail/1068-drm-i915-Fix-VLV-frame-counter-registers.patch b/patches.baytrail/1068-drm-i915-Fix-VLV-frame-counter-registers.patch
index 90811c91b4463..f697dc75a276c 100644
--- a/patches.baytrail/1068-drm-i915-Fix-VLV-frame-counter-registers.patch
+++ b/patches.baytrail/1068-drm-i915-Fix-VLV-frame-counter-registers.patch
@@ -18,14 +18,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 25a2e2d0f35e3297c7c8c6daf12d35fca7a51e44)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 16 ++++++++--------
+ drivers/gpu/drm/i915/i915_reg.h | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 95385023e0ba..35c9d868b893 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3348,17 +3348,17 @@
+@@ -3352,17 +3352,17 @@
* } while (high1 != high2);
* frame = (high1 << 8) | low1;
*/
@@ -47,7 +45,7 @@ index 95385023e0ba..35c9d868b893 100644
#define PIPE_FRMCOUNT_GM45(pipe) _PIPE(pipe, _PIPEA_FRMCOUNT_GM45, _PIPEB_FRMCOUNT_GM45)
/* Cursor A & B regs */
-@@ -3489,10 +3489,10 @@
+@@ -3493,10 +3493,10 @@
#define _PIPEBDSL (dev_priv->info->display_mmio_offset + 0x71000)
#define _PIPEBCONF (dev_priv->info->display_mmio_offset + 0x71008)
#define _PIPEBSTAT (dev_priv->info->display_mmio_offset + 0x71024)
@@ -62,6 +60,3 @@ index 95385023e0ba..35c9d868b893 100644
/* Display B control */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch b/patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch
index 257e021b105a1..6d22cf978f453 100644
--- a/patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch
+++ b/patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch
@@ -36,7 +36,7 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1861,7 +1861,7 @@ void i915_driver_lastclose(struct drm_de
+@@ -1862,7 +1862,7 @@ void i915_driver_lastclose(struct drm_de
return;
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
diff --git a/patches.baytrail/1096-drm-i915-Adjust-watermark-register-masks.patch b/patches.baytrail/1096-drm-i915-Adjust-watermark-register-masks.patch
index 209fcdcb5a205..c7e904e629457 100644
--- a/patches.baytrail/1096-drm-i915-Adjust-watermark-register-masks.patch
+++ b/patches.baytrail/1096-drm-i915-Adjust-watermark-register-masks.patch
@@ -19,14 +19,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1996d624403483aa8b4192f39584b0d9421ed6a9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_reg.h | 10 +++++-----
+ drivers/gpu/drm/i915/i915_reg.h | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index 35c9d868b893..88f76714dba3 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -3251,11 +3251,11 @@
+@@ -3255,11 +3255,11 @@
/* define the Watermark register on Ironlake */
#define WM0_PIPEA_ILK 0x45100
@@ -41,7 +39,7 @@ index 35c9d868b893..88f76714dba3 100644
#define WM0_PIPEB_ILK 0x45104
#define WM0_PIPEC_IVB 0x45200
-@@ -3265,9 +3265,9 @@
+@@ -3269,9 +3269,9 @@
#define WM1_LP_LATENCY_MASK (0x7f<<24)
#define WM1_LP_FBC_MASK (0xf<<20)
#define WM1_LP_FBC_SHIFT 20
@@ -53,6 +51,3 @@ index 35c9d868b893..88f76714dba3 100644
#define WM2_LP_ILK 0x4510c
#define WM2_LP_EN (1<<31)
#define WM3_LP_ILK 0x45110
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1125-i2c-vt8500-Add-support-for-I2C-bus-on-Wondermedia-So.patch b/patches.baytrail/1125-i2c-vt8500-Add-support-for-I2C-bus-on-Wondermedia-So.patch
index 251cdbc90ff2e..78146c545343f 100644
--- a/patches.baytrail/1125-i2c-vt8500-Add-support-for-I2C-bus-on-Wondermedia-So.patch
+++ b/patches.baytrail/1125-i2c-vt8500-Add-support-for-I2C-bus-on-Wondermedia-So.patch
@@ -12,18 +12,15 @@ Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
(cherry picked from commit 560746eb79d3124a278452c8dd968682b521cc82)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- .../devicetree/bindings/i2c/i2c-vt8500.txt | 24 ++
- MAINTAINERS | 1 +
- drivers/i2c/busses/Kconfig | 10 +
- drivers/i2c/busses/Makefile | 1 +
- drivers/i2c/busses/i2c-wmt.c | 479 +++++++++++++++++++++
+ Documentation/devicetree/bindings/i2c/i2c-vt8500.txt | 24
+ MAINTAINERS | 1
+ drivers/i2c/busses/Kconfig | 10
+ drivers/i2c/busses/Makefile | 1
+ drivers/i2c/busses/i2c-wmt.c | 479 +++++++++++++++++++
5 files changed, 515 insertions(+)
create mode 100644 Documentation/devicetree/bindings/i2c/i2c-vt8500.txt
create mode 100644 drivers/i2c/busses/i2c-wmt.c
-diff --git a/Documentation/devicetree/bindings/i2c/i2c-vt8500.txt b/Documentation/devicetree/bindings/i2c/i2c-vt8500.txt
-new file mode 100644
-index 000000000000..94a425eaa6c7
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c-vt8500.txt
@@ -0,0 +1,24 @@
@@ -51,8 +48,6 @@ index 000000000000..94a425eaa6c7
+ clocks = <&clki2c0>;
+ clock-frequency = <400000>;
+ };
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 48c748080c96..30287b8a223a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1285,6 +1285,7 @@ S: Maintained
@@ -63,11 +58,9 @@ index 48c748080c96..30287b8a223a 100644
F: drivers/mmc/host/wmt-sdmmc.c
F: drivers/pwm/pwm-vt8500.c
F: drivers/rtc/rtc-vt8500.c
-diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
-index 4faf02b3657d..0ca51f805a06 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -725,6 +725,16 @@ config I2C_VERSATILE
+@@ -726,6 +726,16 @@ config I2C_VERSATILE
This driver can also be built as a module. If so, the module
will be called i2c-versatile.
@@ -84,8 +77,6 @@ index 4faf02b3657d..0ca51f805a06 100644
config I2C_OCTEON
tristate "Cavium OCTEON I2C bus support"
depends on CPU_CAVIUM_OCTEON
-diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile
-index 8f4fc23b85b1..3ba94a99e18d 100644
--- a/drivers/i2c/busses/Makefile
+++ b/drivers/i2c/busses/Makefile
@@ -71,6 +71,7 @@ obj-$(CONFIG_I2C_SIRF) += i2c-sirf.o
@@ -96,9 +87,6 @@ index 8f4fc23b85b1..3ba94a99e18d 100644
obj-$(CONFIG_I2C_OCTEON) += i2c-octeon.o
obj-$(CONFIG_I2C_XILINX) += i2c-xiic.o
obj-$(CONFIG_I2C_XLR) += i2c-xlr.o
-diff --git a/drivers/i2c/busses/i2c-wmt.c b/drivers/i2c/busses/i2c-wmt.c
-new file mode 100644
-index 000000000000..baaa7d15b73e
--- /dev/null
+++ b/drivers/i2c/busses/i2c-wmt.c
@@ -0,0 +1,479 @@
@@ -581,6 +569,3 @@ index 000000000000..baaa7d15b73e
+MODULE_AUTHOR("Tony Prisk <linux@prisktech.co.nz>");
+MODULE_LICENSE("GPL");
+MODULE_DEVICE_TABLE(of, wmt_i2c_dt_ids);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1128-i2c-mv64xxx-Add-Allwinner-sun4i-compatible.patch b/patches.baytrail/1128-i2c-mv64xxx-Add-Allwinner-sun4i-compatible.patch
index 89788d1b5b13f..4f534715cfc83 100644
--- a/patches.baytrail/1128-i2c-mv64xxx-Add-Allwinner-sun4i-compatible.patch
+++ b/patches.baytrail/1128-i2c-mv64xxx-Add-Allwinner-sun4i-compatible.patch
@@ -13,15 +13,13 @@ Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
(cherry picked from commit 3d66ac7d81ac70dfaab8a573f7ad2be94f7d6da3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/i2c/busses/Kconfig | 3 ++-
- drivers/i2c/busses/i2c-mv64xxx.c | 11 +++++++++++
+ drivers/i2c/busses/Kconfig | 3 ++-
+ drivers/i2c/busses/i2c-mv64xxx.c | 11 +++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
-diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
-index 0ca51f805a06..5748a04c971f 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -508,10 +508,11 @@ config I2C_MPC
+@@ -509,10 +509,11 @@ config I2C_MPC
config I2C_MV64XXX
tristate "Marvell mv64xxx I2C Controller"
@@ -34,11 +32,9 @@ index 0ca51f805a06..5748a04c971f 100644
This driver can also be built as a module. If so, the module
will be called i2c-mv64xxx.
-diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c
-index 7ba9bac18478..7a0e39b7f928 100644
--- a/drivers/i2c/busses/i2c-mv64xxx.c
+++ b/drivers/i2c/busses/i2c-mv64xxx.c
-@@ -129,6 +129,16 @@ static struct mv64xxx_i2c_regs mv64xxx_i2c_regs_mv64xxx = {
+@@ -129,6 +129,16 @@ static struct mv64xxx_i2c_regs mv64xxx_i
.soft_reset = 0x1c,
};
@@ -55,7 +51,7 @@ index 7ba9bac18478..7a0e39b7f928 100644
static void
mv64xxx_i2c_prepare_for_io(struct mv64xxx_i2c_data *drv_data,
struct i2c_msg *msg)
-@@ -509,6 +519,7 @@ static const struct i2c_algorithm mv64xxx_i2c_algo = {
+@@ -509,6 +519,7 @@ static const struct i2c_algorithm mv64xx
*****************************************************************************
*/
static const struct of_device_id mv64xxx_i2c_of_match_table[] = {
@@ -63,6 +59,3 @@ index 7ba9bac18478..7a0e39b7f928 100644
{ .compatible = "marvell,mv64xxx-i2c", .data = &mv64xxx_i2c_regs_mv64xxx},
{}
};
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1173-i2c-move-OF-helpers-into-the-core.patch b/patches.baytrail/1173-i2c-move-OF-helpers-into-the-core.patch
index adf2cdaef7217..b52ab9c1b0d33 100644
--- a/patches.baytrail/1173-i2c-move-OF-helpers-into-the-core.patch
+++ b/patches.baytrail/1173-i2c-move-OF-helpers-into-the-core.patch
@@ -13,59 +13,57 @@ Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
(cherry picked from commit 687b81d083c082bc1e853032e3a2a54f8c251d27)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- Documentation/acpi/enumeration.txt | 1 -
- arch/powerpc/platforms/44x/warp.c | 1 -
- drivers/gpu/drm/tilcdc/tilcdc_slave.c | 1 -
- drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | 1 -
- drivers/gpu/host1x/drm/output.c | 2 +-
- drivers/i2c/busses/i2c-at91.c | 3 -
- drivers/i2c/busses/i2c-cpm.c | 6 --
- drivers/i2c/busses/i2c-davinci.c | 2 -
- drivers/i2c/busses/i2c-designware-platdrv.c | 2 -
- drivers/i2c/busses/i2c-gpio.c | 3 -
- drivers/i2c/busses/i2c-i801.c | 2 -
- drivers/i2c/busses/i2c-ibm_iic.c | 4 -
- drivers/i2c/busses/i2c-imx.c | 3 -
- drivers/i2c/busses/i2c-mpc.c | 2 -
- drivers/i2c/busses/i2c-mv64xxx.c | 3 -
- drivers/i2c/busses/i2c-mxs.c | 3 -
- drivers/i2c/busses/i2c-nomadik.c | 3 -
- drivers/i2c/busses/i2c-ocores.c | 3 -
- drivers/i2c/busses/i2c-octeon.c | 3 -
- drivers/i2c/busses/i2c-omap.c | 3 -
- drivers/i2c/busses/i2c-pnx.c | 3 -
- drivers/i2c/busses/i2c-powermac.c | 9 +-
- drivers/i2c/busses/i2c-pxa.c | 2 -
- drivers/i2c/busses/i2c-s3c2410.c | 2 -
- drivers/i2c/busses/i2c-sh_mobile.c | 2 -
- drivers/i2c/busses/i2c-sirf.c | 3 -
- drivers/i2c/busses/i2c-stu300.c | 2 -
- drivers/i2c/busses/i2c-tegra.c | 3 -
- drivers/i2c/busses/i2c-versatile.c | 2 -
- drivers/i2c/busses/i2c-wmt.c | 3 -
- drivers/i2c/busses/i2c-xiic.c | 3 -
- drivers/i2c/i2c-core.c | 109 +++++++++++++++++++++-
- drivers/i2c/i2c-mux.c | 3 -
- drivers/i2c/muxes/i2c-arb-gpio-challenge.c | 1 -
- drivers/i2c/muxes/i2c-mux-gpio.c | 1 -
- drivers/i2c/muxes/i2c-mux-pinctrl.c | 1 -
- drivers/media/platform/exynos4-is/fimc-is-i2c.c | 4 +-
- drivers/media/platform/exynos4-is/fimc-is.c | 2 +-
- drivers/media/platform/exynos4-is/media-dev.c | 1 -
- drivers/of/Kconfig | 6 --
- drivers/of/Makefile | 1 -
- drivers/of/of_i2c.c | 114 ------------------------
- drivers/staging/imx-drm/imx-tve.c | 2 +-
- include/linux/i2c.h | 20 +++++
- include/linux/of_i2c.h | 46 ----------
- sound/soc/fsl/imx-sgtl5000.c | 2 +-
- sound/soc/fsl/imx-wm8962.c | 2 +-
+ Documentation/acpi/enumeration.txt | 1
+ arch/powerpc/platforms/44x/warp.c | 1
+ drivers/gpu/drm/tilcdc/tilcdc_slave.c | 1
+ drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | 1
+ drivers/gpu/host1x/drm/output.c | 2
+ drivers/i2c/busses/i2c-at91.c | 3
+ drivers/i2c/busses/i2c-cpm.c | 6 -
+ drivers/i2c/busses/i2c-davinci.c | 2
+ drivers/i2c/busses/i2c-designware-platdrv.c | 2
+ drivers/i2c/busses/i2c-gpio.c | 3
+ drivers/i2c/busses/i2c-i801.c | 2
+ drivers/i2c/busses/i2c-ibm_iic.c | 4
+ drivers/i2c/busses/i2c-imx.c | 3
+ drivers/i2c/busses/i2c-mpc.c | 2
+ drivers/i2c/busses/i2c-mv64xxx.c | 3
+ drivers/i2c/busses/i2c-mxs.c | 3
+ drivers/i2c/busses/i2c-nomadik.c | 3
+ drivers/i2c/busses/i2c-ocores.c | 3
+ drivers/i2c/busses/i2c-octeon.c | 3
+ drivers/i2c/busses/i2c-omap.c | 3
+ drivers/i2c/busses/i2c-pnx.c | 3
+ drivers/i2c/busses/i2c-powermac.c | 9 +
+ drivers/i2c/busses/i2c-pxa.c | 2
+ drivers/i2c/busses/i2c-s3c2410.c | 2
+ drivers/i2c/busses/i2c-sh_mobile.c | 2
+ drivers/i2c/busses/i2c-sirf.c | 3
+ drivers/i2c/busses/i2c-stu300.c | 2
+ drivers/i2c/busses/i2c-tegra.c | 3
+ drivers/i2c/busses/i2c-versatile.c | 2
+ drivers/i2c/busses/i2c-wmt.c | 3
+ drivers/i2c/busses/i2c-xiic.c | 3
+ drivers/i2c/i2c-core.c | 109 ++++++++++++++++++++++
+ drivers/i2c/i2c-mux.c | 3
+ drivers/i2c/muxes/i2c-arb-gpio-challenge.c | 1
+ drivers/i2c/muxes/i2c-mux-gpio.c | 1
+ drivers/i2c/muxes/i2c-mux-pinctrl.c | 1
+ drivers/media/platform/exynos4-is/fimc-is-i2c.c | 4
+ drivers/media/platform/exynos4-is/fimc-is.c | 2
+ drivers/media/platform/exynos4-is/media-dev.c | 1
+ drivers/of/Kconfig | 6 -
+ drivers/of/Makefile | 1
+ drivers/of/of_i2c.c | 114 ------------------------
+ drivers/staging/imx-drm/imx-tve.c | 2
+ include/linux/i2c.h | 20 ++++
+ include/linux/of_i2c.h | 46 ---------
+ sound/soc/fsl/imx-sgtl5000.c | 2
+ sound/soc/fsl/imx-wm8962.c | 2
47 files changed, 138 insertions(+), 262 deletions(-)
delete mode 100644 drivers/of/of_i2c.c
delete mode 100644 include/linux/of_i2c.h
-diff --git a/Documentation/acpi/enumeration.txt b/Documentation/acpi/enumeration.txt
-index d9be7a97dff3..958266efcc20 100644
--- a/Documentation/acpi/enumeration.txt
+++ b/Documentation/acpi/enumeration.txt
@@ -238,7 +238,6 @@ An I2C bus (controller) driver does:
@@ -76,8 +74,6 @@ index d9be7a97dff3..958266efcc20 100644
/* Enumerate the slave devices behind this bus via ACPI */
acpi_i2c_register_devices(adapter);
-diff --git a/arch/powerpc/platforms/44x/warp.c b/arch/powerpc/platforms/44x/warp.c
-index 4cfa49901c02..534574a97ec9 100644
--- a/arch/powerpc/platforms/44x/warp.c
+++ b/arch/powerpc/platforms/44x/warp.c
@@ -16,7 +16,6 @@
@@ -88,8 +84,6 @@ index 4cfa49901c02..534574a97ec9 100644
#include <linux/slab.h>
#include <linux/export.h>
-diff --git a/drivers/gpu/drm/tilcdc/tilcdc_slave.c b/drivers/gpu/drm/tilcdc/tilcdc_slave.c
-index db1d2fc9dfb5..acc47668fcae 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_slave.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_slave.c
@@ -16,7 +16,6 @@
@@ -100,8 +94,6 @@ index db1d2fc9dfb5..acc47668fcae 100644
#include <linux/pinctrl/pinmux.h>
#include <linux/pinctrl/consumer.h>
#include <drm/drm_encoder_slave.h>
-diff --git a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
-index a36788fbcd98..6237a1896765 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
@@ -16,7 +16,6 @@
@@ -112,8 +104,6 @@ index a36788fbcd98..6237a1896765 100644
#include <linux/gpio.h>
#include <linux/of_gpio.h>
#include <linux/pinctrl/pinmux.h>
-diff --git a/drivers/gpu/host1x/drm/output.c b/drivers/gpu/host1x/drm/output.c
-index 8140fc6c34d8..137ae81ab80e 100644
--- a/drivers/gpu/host1x/drm/output.c
+++ b/drivers/gpu/host1x/drm/output.c
@@ -9,7 +9,7 @@
@@ -125,8 +115,6 @@ index 8140fc6c34d8..137ae81ab80e 100644
#include "drm.h"
-diff --git a/drivers/i2c/busses/i2c-at91.c b/drivers/i2c/busses/i2c-at91.c
-index 6bb839b688be..fd059308affa 100644
--- a/drivers/i2c/busses/i2c-at91.c
+++ b/drivers/i2c/busses/i2c-at91.c
@@ -28,7 +28,6 @@
@@ -137,7 +125,7 @@ index 6bb839b688be..fd059308affa 100644
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/platform_data/dma-atmel.h>
-@@ -775,8 +774,6 @@ static int at91_twi_probe(struct platform_device *pdev)
+@@ -775,8 +774,6 @@ static int at91_twi_probe(struct platfor
return rc;
}
@@ -146,8 +134,6 @@ index 6bb839b688be..fd059308affa 100644
dev_info(dev->dev, "AT91 i2c bus driver.\n");
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-cpm.c b/drivers/i2c/busses/i2c-cpm.c
-index 3823623baa48..9528c4658893 100644
--- a/drivers/i2c/busses/i2c-cpm.c
+++ b/drivers/i2c/busses/i2c-cpm.c
@@ -42,7 +42,6 @@
@@ -158,7 +144,7 @@ index 3823623baa48..9528c4658893 100644
#include <sysdev/fsl_soc.h>
#include <asm/cpm.h>
-@@ -673,11 +672,6 @@ static int cpm_i2c_probe(struct platform_device *ofdev)
+@@ -673,11 +672,6 @@ static int cpm_i2c_probe(struct platform
dev_dbg(&ofdev->dev, "hw routines for %s registered.\n",
cpm->adap.name);
@@ -170,8 +156,6 @@ index 3823623baa48..9528c4658893 100644
return 0;
out_shut:
cpm_i2c_shutdown(cpm);
-diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c
-index 14c53cccdcf0..a71da45bf280 100644
--- a/drivers/i2c/busses/i2c-davinci.c
+++ b/drivers/i2c/busses/i2c-davinci.c
@@ -38,7 +38,6 @@
@@ -182,7 +166,7 @@ index 14c53cccdcf0..a71da45bf280 100644
#include <linux/of_device.h>
#include <mach/hardware.h>
-@@ -728,7 +727,6 @@ static int davinci_i2c_probe(struct platform_device *pdev)
+@@ -728,7 +727,6 @@ static int davinci_i2c_probe(struct plat
dev_err(&pdev->dev, "failure adding adapter\n");
goto err_unuse_clocks;
}
@@ -190,8 +174,6 @@ index 14c53cccdcf0..a71da45bf280 100644
return 0;
-diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c
-index 64ffb908641c..ded77c3bd59c 100644
--- a/drivers/i2c/busses/i2c-designware-platdrv.c
+++ b/drivers/i2c/busses/i2c-designware-platdrv.c
@@ -35,7 +35,6 @@
@@ -202,7 +184,7 @@ index 64ffb908641c..ded77c3bd59c 100644
#include <linux/platform_device.h>
#include <linux/pm.h>
#include <linux/pm_runtime.h>
-@@ -172,7 +171,6 @@ static int dw_i2c_probe(struct platform_device *pdev)
+@@ -172,7 +171,6 @@ static int dw_i2c_probe(struct platform_
dev_err(&pdev->dev, "failure adding adapter\n");
return r;
}
@@ -210,8 +192,6 @@ index 64ffb908641c..ded77c3bd59c 100644
acpi_i2c_register_devices(adap);
pm_runtime_set_autosuspend_delay(&pdev->dev, 1000);
-diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c
-index 8cdb4f743e19..bfa02c6c2dda 100644
--- a/drivers/i2c/busses/i2c-gpio.c
+++ b/drivers/i2c/busses/i2c-gpio.c
@@ -16,7 +16,6 @@
@@ -222,7 +202,7 @@ index 8cdb4f743e19..bfa02c6c2dda 100644
struct i2c_gpio_private_data {
struct i2c_adapter adap;
-@@ -224,8 +223,6 @@ static int i2c_gpio_probe(struct platform_device *pdev)
+@@ -224,8 +223,6 @@ static int i2c_gpio_probe(struct platfor
if (ret)
goto err_add_bus;
@@ -231,11 +211,9 @@ index 8cdb4f743e19..bfa02c6c2dda 100644
platform_set_drvdata(pdev, priv);
dev_info(&pdev->dev, "using pins %u (SDA) and %u (SCL%s)\n",
-diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
-index 3a6903f63913..8763b224bede 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
-@@ -86,7 +86,6 @@
+@@ -87,7 +87,6 @@
#include <linux/slab.h>
#include <linux/wait.h>
#include <linux/err.h>
@@ -243,7 +221,7 @@ index 3a6903f63913..8763b224bede 100644
#if (defined CONFIG_I2C_MUX_GPIO || defined CONFIG_I2C_MUX_GPIO_MODULE) && \
defined CONFIG_DMI
-@@ -1227,7 +1226,6 @@ static int i801_probe(struct pci_dev *dev, const struct pci_device_id *id)
+@@ -1230,7 +1229,6 @@ static int i801_probe(struct pci_dev *de
goto exit_free_irq;
}
@@ -251,8 +229,6 @@ index 3a6903f63913..8763b224bede 100644
i801_probe_optional_slaves(priv);
/* We ignore errors - multiplexing is optional */
i801_add_mux(priv);
-diff --git a/drivers/i2c/busses/i2c-ibm_iic.c b/drivers/i2c/busses/i2c-ibm_iic.c
-index 405a2e240454..eddd4656a9f4 100644
--- a/drivers/i2c/busses/i2c-ibm_iic.c
+++ b/drivers/i2c/busses/i2c-ibm_iic.c
@@ -42,7 +42,6 @@
@@ -263,7 +239,7 @@ index 405a2e240454..eddd4656a9f4 100644
#include "i2c-ibm_iic.h"
-@@ -759,9 +758,6 @@ static int iic_probe(struct platform_device *ofdev)
+@@ -759,9 +758,6 @@ static int iic_probe(struct platform_dev
dev_info(&ofdev->dev, "using %s mode\n",
dev->fast_mode ? "fast (400 kHz)" : "standard (100 kHz)");
@@ -273,8 +249,6 @@ index 405a2e240454..eddd4656a9f4 100644
return 0;
error_cleanup:
-diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
-index a231d2fd91ce..ccf46656bdad 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -52,7 +52,6 @@
@@ -285,7 +259,7 @@ index a231d2fd91ce..ccf46656bdad 100644
#include <linux/platform_data/i2c-imx.h>
/** Defines ********************************************************************
-@@ -682,8 +681,6 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
+@@ -682,8 +681,6 @@ static int __init i2c_imx_probe(struct p
return ret;
}
@@ -294,8 +268,6 @@ index a231d2fd91ce..ccf46656bdad 100644
/* Set up platform driver data */
platform_set_drvdata(pdev, i2c_imx);
clk_disable_unprepare(i2c_imx->clk);
-diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c
-index 5e705ee02f4a..efe62c63f646 100644
--- a/drivers/i2c/busses/i2c-mpc.c
+++ b/drivers/i2c/busses/i2c-mpc.c
@@ -18,7 +18,6 @@
@@ -306,7 +278,7 @@ index 5e705ee02f4a..efe62c63f646 100644
#include <linux/slab.h>
#include <linux/io.h>
-@@ -691,7 +690,6 @@ static int fsl_i2c_probe(struct platform_device *op)
+@@ -691,7 +690,6 @@ static int fsl_i2c_probe(struct platform
dev_err(i2c->dev, "failed to add adapter\n");
goto fail_add;
}
@@ -314,8 +286,6 @@ index 5e705ee02f4a..efe62c63f646 100644
return result;
-diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c
-index bc60f9ac7c04..7f3a47443494 100644
--- a/drivers/i2c/busses/i2c-mv64xxx.c
+++ b/drivers/i2c/busses/i2c-mv64xxx.c
@@ -21,7 +21,6 @@
@@ -326,7 +296,7 @@ index bc60f9ac7c04..7f3a47443494 100644
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/delay.h>
-@@ -871,8 +870,6 @@ mv64xxx_i2c_probe(struct platform_device *pd)
+@@ -871,8 +870,6 @@ mv64xxx_i2c_probe(struct platform_device
goto exit_free_irq;
}
@@ -335,8 +305,6 @@ index bc60f9ac7c04..7f3a47443494 100644
return 0;
exit_free_irq:
-diff --git a/drivers/i2c/busses/i2c-mxs.c b/drivers/i2c/busses/i2c-mxs.c
-index 6d8094d44987..a37160671d32 100644
--- a/drivers/i2c/busses/i2c-mxs.c
+++ b/drivers/i2c/busses/i2c-mxs.c
@@ -28,7 +28,6 @@
@@ -347,7 +315,7 @@ index 6d8094d44987..a37160671d32 100644
#include <linux/dma-mapping.h>
#include <linux/dmaengine.h>
-@@ -707,8 +706,6 @@ static int mxs_i2c_probe(struct platform_device *pdev)
+@@ -707,8 +706,6 @@ static int mxs_i2c_probe(struct platform
return err;
}
@@ -356,8 +324,6 @@ index 6d8094d44987..a37160671d32 100644
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-nomadik.c b/drivers/i2c/busses/i2c-nomadik.c
-index 9eb5852512d4..09da0ec4d560 100644
--- a/drivers/i2c/busses/i2c-nomadik.c
+++ b/drivers/i2c/busses/i2c-nomadik.c
@@ -25,7 +25,6 @@
@@ -368,7 +334,7 @@ index 9eb5852512d4..09da0ec4d560 100644
#include <linux/pinctrl/consumer.h>
#define DRIVER_NAME "nmk-i2c"
-@@ -1092,8 +1091,6 @@ static int nmk_i2c_probe(struct amba_device *adev, const struct amba_id *id)
+@@ -1092,8 +1091,6 @@ static int nmk_i2c_probe(struct amba_dev
goto err_add_adap;
}
@@ -377,8 +343,6 @@ index 9eb5852512d4..09da0ec4d560 100644
pm_runtime_put(&adev->dev);
return 0;
-diff --git a/drivers/i2c/busses/i2c-ocores.c b/drivers/i2c/busses/i2c-ocores.c
-index 289960812efc..27d640a3f93f 100644
--- a/drivers/i2c/busses/i2c-ocores.c
+++ b/drivers/i2c/busses/i2c-ocores.c
@@ -24,7 +24,6 @@
@@ -389,7 +353,7 @@ index 289960812efc..27d640a3f93f 100644
#include <linux/log2.h>
struct ocores_i2c {
-@@ -435,8 +434,6 @@ static int ocores_i2c_probe(struct platform_device *pdev)
+@@ -435,8 +434,6 @@ static int ocores_i2c_probe(struct platf
if (pdata) {
for (i = 0; i < pdata->num_devices; i++)
i2c_new_device(&i2c->adap, pdata->devices + i);
@@ -398,8 +362,6 @@ index 289960812efc..27d640a3f93f 100644
}
return 0;
-diff --git a/drivers/i2c/busses/i2c-octeon.c b/drivers/i2c/busses/i2c-octeon.c
-index 956fe320f313..b929ba271b47 100644
--- a/drivers/i2c/busses/i2c-octeon.c
+++ b/drivers/i2c/busses/i2c-octeon.c
@@ -15,7 +15,6 @@
@@ -410,7 +372,7 @@ index 956fe320f313..b929ba271b47 100644
#include <linux/delay.h>
#include <linux/sched.h>
#include <linux/slab.h>
-@@ -599,8 +598,6 @@ static int octeon_i2c_probe(struct platform_device *pdev)
+@@ -599,8 +598,6 @@ static int octeon_i2c_probe(struct platf
}
dev_info(i2c->dev, "version %s\n", DRV_VERSION);
@@ -419,8 +381,6 @@ index 956fe320f313..b929ba271b47 100644
return 0;
out:
-diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c
-index 9a844003696b..82741a33d785 100644
--- a/drivers/i2c/busses/i2c-omap.c
+++ b/drivers/i2c/busses/i2c-omap.c
@@ -38,7 +38,6 @@
@@ -431,7 +391,7 @@ index 9a844003696b..82741a33d785 100644
#include <linux/of_device.h>
#include <linux/slab.h>
#include <linux/i2c-omap.h>
-@@ -1245,8 +1244,6 @@ omap_i2c_probe(struct platform_device *pdev)
+@@ -1245,8 +1244,6 @@ omap_i2c_probe(struct platform_device *p
dev_info(dev->dev, "bus %d rev%d.%d at %d kHz\n", adap->nr,
major, minor, dev->speed);
@@ -440,8 +400,6 @@ index 9a844003696b..82741a33d785 100644
pm_runtime_mark_last_busy(dev->dev);
pm_runtime_put_autosuspend(dev->dev);
-diff --git a/drivers/i2c/busses/i2c-pnx.c b/drivers/i2c/busses/i2c-pnx.c
-index 5f39c6d8117a..7b57d679ce00 100644
--- a/drivers/i2c/busses/i2c-pnx.c
+++ b/drivers/i2c/busses/i2c-pnx.c
@@ -23,7 +23,6 @@
@@ -452,7 +410,7 @@ index 5f39c6d8117a..7b57d679ce00 100644
#define I2C_PNX_TIMEOUT_DEFAULT 10 /* msec */
#define I2C_PNX_SPEED_KHZ_DEFAULT 100
-@@ -741,8 +740,6 @@ static int i2c_pnx_probe(struct platform_device *pdev)
+@@ -741,8 +740,6 @@ static int i2c_pnx_probe(struct platform
goto out_irq;
}
@@ -461,11 +419,9 @@ index 5f39c6d8117a..7b57d679ce00 100644
dev_dbg(&pdev->dev, "%s: Master at %#8x, irq %d.\n",
alg_data->adapter.name, res->start, alg_data->irq);
-diff --git a/drivers/i2c/busses/i2c-powermac.c b/drivers/i2c/busses/i2c-powermac.c
-index 5a88364a542b..0b97e170e266 100644
--- a/drivers/i2c/busses/i2c-powermac.c
+++ b/drivers/i2c/busses/i2c-powermac.c
-@@ -440,7 +440,9 @@ static int i2c_powermac_probe(struct platform_device *dev)
+@@ -440,7 +440,9 @@ static int i2c_powermac_probe(struct pla
adapter->algo = &i2c_powermac_algorithm;
i2c_set_adapdata(adapter, bus);
adapter->dev.parent = &dev->dev;
@@ -476,7 +432,7 @@ index 5a88364a542b..0b97e170e266 100644
rc = i2c_add_adapter(adapter);
if (rc) {
printk(KERN_ERR "i2c-powermac: Adapter %s registration "
-@@ -450,9 +452,8 @@ static int i2c_powermac_probe(struct platform_device *dev)
+@@ -450,9 +452,8 @@ static int i2c_powermac_probe(struct pla
printk(KERN_INFO "PowerMac i2c bus %s registered\n", adapter->name);
@@ -488,8 +444,6 @@ index 5a88364a542b..0b97e170e266 100644
i2c_powermac_register_devices(adapter, bus);
return rc;
-diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c
-index 5e8e04273b78..fdae3248c204 100644
--- a/drivers/i2c/busses/i2c-pxa.c
+++ b/drivers/i2c/busses/i2c-pxa.c
@@ -31,7 +31,6 @@
@@ -500,7 +454,7 @@ index 5e8e04273b78..fdae3248c204 100644
#include <linux/platform_device.h>
#include <linux/err.h>
#include <linux/clk.h>
-@@ -1185,7 +1184,6 @@ static int i2c_pxa_probe(struct platform_device *dev)
+@@ -1185,7 +1184,6 @@ static int i2c_pxa_probe(struct platform
printk(KERN_INFO "I2C: Failed to add bus\n");
goto eadapt;
}
@@ -508,8 +462,6 @@ index 5e8e04273b78..fdae3248c204 100644
platform_set_drvdata(dev, i2c);
-diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
-index 0a077b1ef94f..3535f3c0f7b4 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -36,7 +36,6 @@
@@ -520,7 +472,7 @@ index 0a077b1ef94f..3535f3c0f7b4 100644
#include <linux/of_gpio.h>
#include <linux/pinctrl/consumer.h>
-@@ -1154,7 +1153,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
+@@ -1154,7 +1153,6 @@ static int s3c24xx_i2c_probe(struct plat
return ret;
}
@@ -528,8 +480,6 @@ index 0a077b1ef94f..3535f3c0f7b4 100644
platform_set_drvdata(pdev, i2c);
pm_runtime_enable(&pdev->dev);
-diff --git a/drivers/i2c/busses/i2c-sh_mobile.c b/drivers/i2c/busses/i2c-sh_mobile.c
-index 4e86a3190d46..55110ddbed1f 100644
--- a/drivers/i2c/busses/i2c-sh_mobile.c
+++ b/drivers/i2c/busses/i2c-sh_mobile.c
@@ -27,7 +27,6 @@
@@ -540,7 +490,7 @@ index 4e86a3190d46..55110ddbed1f 100644
#include <linux/err.h>
#include <linux/pm_runtime.h>
#include <linux/clk.h>
-@@ -758,7 +757,6 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
+@@ -758,7 +757,6 @@ static int sh_mobile_i2c_probe(struct pl
"I2C adapter %d with bus speed %lu Hz (L/H=%x/%x)\n",
adap->nr, pd->bus_speed, pd->iccl, pd->icch);
@@ -548,8 +498,6 @@ index 4e86a3190d46..55110ddbed1f 100644
return 0;
err_all:
-diff --git a/drivers/i2c/busses/i2c-sirf.c b/drivers/i2c/busses/i2c-sirf.c
-index a63c7d506836..0ff22e29e7df 100644
--- a/drivers/i2c/busses/i2c-sirf.c
+++ b/drivers/i2c/busses/i2c-sirf.c
@@ -12,7 +12,6 @@
@@ -560,7 +508,7 @@ index a63c7d506836..0ff22e29e7df 100644
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/io.h>
-@@ -366,8 +365,6 @@ static int i2c_sirfsoc_probe(struct platform_device *pdev)
+@@ -366,8 +365,6 @@ static int i2c_sirfsoc_probe(struct plat
clk_disable(clk);
@@ -569,8 +517,6 @@ index a63c7d506836..0ff22e29e7df 100644
dev_info(&pdev->dev, " I2C adapter ready to operate\n");
return 0;
-diff --git a/drivers/i2c/busses/i2c-stu300.c b/drivers/i2c/busses/i2c-stu300.c
-index 3d4d8b6ced4a..30fb69553545 100644
--- a/drivers/i2c/busses/i2c-stu300.c
+++ b/drivers/i2c/busses/i2c-stu300.c
@@ -17,7 +17,6 @@
@@ -581,7 +527,7 @@ index 3d4d8b6ced4a..30fb69553545 100644
/* the name of this kernel module */
#define NAME "stu300"
-@@ -936,7 +935,6 @@ stu300_probe(struct platform_device *pdev)
+@@ -936,7 +935,6 @@ stu300_probe(struct platform_device *pde
platform_set_drvdata(pdev, dev);
dev_info(&pdev->dev, "ST DDC I2C @ %p, irq %d\n",
dev->virtbase, dev->irq);
@@ -589,8 +535,6 @@ index 3d4d8b6ced4a..30fb69553545 100644
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
-index 9aa1b60f7fdd..c457cb447c66 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -25,7 +25,6 @@
@@ -601,7 +545,7 @@ index 9aa1b60f7fdd..c457cb447c66 100644
#include <linux/of_device.h>
#include <linux/module.h>
#include <linux/clk/tegra.h>
-@@ -802,8 +801,6 @@ static int tegra_i2c_probe(struct platform_device *pdev)
+@@ -802,8 +801,6 @@ static int tegra_i2c_probe(struct platfo
return ret;
}
@@ -610,8 +554,6 @@ index 9aa1b60f7fdd..c457cb447c66 100644
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-versatile.c b/drivers/i2c/busses/i2c-versatile.c
-index f3a8790a07e8..6bb3a89a440f 100644
--- a/drivers/i2c/busses/i2c-versatile.c
+++ b/drivers/i2c/busses/i2c-versatile.c
@@ -16,7 +16,6 @@
@@ -622,7 +564,7 @@ index f3a8790a07e8..6bb3a89a440f 100644
#define I2C_CONTROL 0x00
#define I2C_CONTROLS 0x00
-@@ -108,7 +107,6 @@ static int i2c_versatile_probe(struct platform_device *dev)
+@@ -108,7 +107,6 @@ static int i2c_versatile_probe(struct pl
ret = i2c_bit_add_numbered_bus(&i2c->adap);
if (ret >= 0) {
platform_set_drvdata(dev, i2c);
@@ -630,8 +572,6 @@ index f3a8790a07e8..6bb3a89a440f 100644
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-wmt.c b/drivers/i2c/busses/i2c-wmt.c
-index baaa7d15b73e..c65da3d913a0 100644
--- a/drivers/i2c/busses/i2c-wmt.c
+++ b/drivers/i2c/busses/i2c-wmt.c
@@ -21,7 +21,6 @@
@@ -642,7 +582,7 @@ index baaa7d15b73e..c65da3d913a0 100644
#include <linux/of_irq.h>
#include <linux/platform_device.h>
-@@ -439,8 +438,6 @@ static int wmt_i2c_probe(struct platform_device *pdev)
+@@ -439,8 +438,6 @@ static int wmt_i2c_probe(struct platform
platform_set_drvdata(pdev, i2c_dev);
@@ -651,8 +591,6 @@ index baaa7d15b73e..c65da3d913a0 100644
return 0;
}
-diff --git a/drivers/i2c/busses/i2c-xiic.c b/drivers/i2c/busses/i2c-xiic.c
-index 433f377b3869..4c8b368d463b 100644
--- a/drivers/i2c/busses/i2c-xiic.c
+++ b/drivers/i2c/busses/i2c-xiic.c
@@ -40,7 +40,6 @@
@@ -663,7 +601,7 @@ index 433f377b3869..4c8b368d463b 100644
#define DRIVER_NAME "xiic-i2c"
-@@ -752,8 +751,6 @@ static int xiic_i2c_probe(struct platform_device *pdev)
+@@ -752,8 +751,6 @@ static int xiic_i2c_probe(struct platfor
i2c_new_device(&i2c->adap, pdata->devices + i);
}
@@ -672,8 +610,6 @@ index 433f377b3869..4c8b368d463b 100644
return 0;
add_adapter_failed:
-diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
-index 48e31ed69dbf..18bdc74fc9ea 100644
--- a/drivers/i2c/i2c-core.c
+++ b/drivers/i2c/i2c-core.c
@@ -23,7 +23,11 @@
@@ -699,7 +635,7 @@ index 48e31ed69dbf..18bdc74fc9ea 100644
#include <linux/completion.h>
#include <linux/hardirq.h>
#include <linux/irqflags.h>
-@@ -954,6 +960,104 @@ static void i2c_scan_static_board_info(struct i2c_adapter *adapter)
+@@ -954,6 +960,104 @@ static void i2c_scan_static_board_info(s
up_read(&__i2c_board_lock);
}
@@ -804,7 +740,7 @@ index 48e31ed69dbf..18bdc74fc9ea 100644
static int i2c_do_add_adapter(struct i2c_driver *driver,
struct i2c_adapter *adap)
{
-@@ -1058,6 +1162,8 @@ static int i2c_register_adapter(struct i2c_adapter *adap)
+@@ -1058,6 +1162,8 @@ static int i2c_register_adapter(struct i
exit_recovery:
/* create pre-declared device nodes */
@@ -813,7 +749,7 @@ index 48e31ed69dbf..18bdc74fc9ea 100644
if (adap->nr < __i2c_first_dynamic_bus_num)
i2c_scan_static_board_info(adap);
-@@ -1282,7 +1388,6 @@ void i2c_del_adapter(struct i2c_adapter *adap)
+@@ -1282,7 +1388,6 @@ void i2c_del_adapter(struct i2c_adapter
}
EXPORT_SYMBOL(i2c_del_adapter);
@@ -821,8 +757,6 @@ index 48e31ed69dbf..18bdc74fc9ea 100644
/* ------------------------------------------------------------------------- */
int i2c_for_each_dev(void *data, int (*fn)(struct device *, void *))
-diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c
-index 7409ebb33c47..797e3117bef7 100644
--- a/drivers/i2c/i2c-mux.c
+++ b/drivers/i2c/i2c-mux.c
@@ -25,7 +25,6 @@
@@ -833,7 +767,7 @@ index 7409ebb33c47..797e3117bef7 100644
/* multiplexer per channel data */
struct i2c_mux_priv {
-@@ -185,8 +184,6 @@ struct i2c_adapter *i2c_add_mux_adapter(struct i2c_adapter *parent,
+@@ -185,8 +184,6 @@ struct i2c_adapter *i2c_add_mux_adapter(
dev_info(&parent->dev, "Added multiplexed i2c bus %d\n",
i2c_adapter_id(&priv->adap));
@@ -842,8 +776,6 @@ index 7409ebb33c47..797e3117bef7 100644
return &priv->adap;
}
EXPORT_SYMBOL_GPL(i2c_add_mux_adapter);
-diff --git a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
-index f7bf24375f81..74b41ae690f3 100644
--- a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
+++ b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
@@ -21,7 +21,6 @@
@@ -854,8 +786,6 @@ index f7bf24375f81..74b41ae690f3 100644
#include <linux/of_gpio.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
-diff --git a/drivers/i2c/muxes/i2c-mux-gpio.c b/drivers/i2c/muxes/i2c-mux-gpio.c
-index 774b9cc4601c..a63d7d21eff7 100644
--- a/drivers/i2c/muxes/i2c-mux-gpio.c
+++ b/drivers/i2c/muxes/i2c-mux-gpio.c
@@ -16,7 +16,6 @@
@@ -866,8 +796,6 @@ index 774b9cc4601c..a63d7d21eff7 100644
#include <linux/of_gpio.h>
struct gpiomux {
-diff --git a/drivers/i2c/muxes/i2c-mux-pinctrl.c b/drivers/i2c/muxes/i2c-mux-pinctrl.c
-index 0d082027c29a..69a91732ae65 100644
--- a/drivers/i2c/muxes/i2c-mux-pinctrl.c
+++ b/drivers/i2c/muxes/i2c-mux-pinctrl.c
@@ -20,7 +20,6 @@
@@ -878,8 +806,6 @@ index 0d082027c29a..69a91732ae65 100644
#include <linux/pinctrl/consumer.h>
#include <linux/i2c-mux-pinctrl.h>
#include <linux/platform_device.h>
-diff --git a/drivers/media/platform/exynos4-is/fimc-is-i2c.c b/drivers/media/platform/exynos4-is/fimc-is-i2c.c
-index c397777d7cbb..b13ff866b52e 100644
--- a/drivers/media/platform/exynos4-is/fimc-is-i2c.c
+++ b/drivers/media/platform/exynos4-is/fimc-is-i2c.c
@@ -12,7 +12,7 @@
@@ -891,7 +817,7 @@ index c397777d7cbb..b13ff866b52e 100644
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/slab.h>
-@@ -67,8 +67,6 @@ static int fimc_is_i2c_probe(struct platform_device *pdev)
+@@ -67,8 +67,6 @@ static int fimc_is_i2c_probe(struct plat
pm_runtime_enable(&pdev->dev);
pm_runtime_enable(&i2c_adap->dev);
@@ -900,8 +826,6 @@ index c397777d7cbb..b13ff866b52e 100644
return 0;
}
-diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c
-index 0741945b79ed..bcd2b78c7b5d 100644
--- a/drivers/media/platform/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/exynos4-is/fimc-is.c
@@ -21,7 +21,7 @@
@@ -913,8 +837,6 @@ index 0741945b79ed..bcd2b78c7b5d 100644
#include <linux/of_irq.h>
#include <linux/of_address.h>
#include <linux/of_platform.h>
-diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c
-index b5b480befcc3..b52f8e269e52 100644
--- a/drivers/media/platform/exynos4-is/media-dev.c
+++ b/drivers/media/platform/exynos4-is/media-dev.c
@@ -20,7 +20,6 @@
@@ -925,8 +847,6 @@ index b5b480befcc3..b52f8e269e52 100644
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/types.h>
-diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig
-index 80e5c13b930d..78cc76053328 100644
--- a/drivers/of/Kconfig
+++ b/drivers/of/Kconfig
@@ -48,12 +48,6 @@ config OF_IRQ
@@ -942,8 +862,6 @@ index 80e5c13b930d..78cc76053328 100644
config OF_NET
depends on NETDEVICES
def_bool y
-diff --git a/drivers/of/Makefile b/drivers/of/Makefile
-index 1f9c0c492ef9..efd05102c405 100644
--- a/drivers/of/Makefile
+++ b/drivers/of/Makefile
@@ -3,7 +3,6 @@ obj-$(CONFIG_OF_FLATTREE) += fdt.o
@@ -954,9 +872,6 @@ index 1f9c0c492ef9..efd05102c405 100644
obj-$(CONFIG_OF_NET) += of_net.o
obj-$(CONFIG_OF_SELFTEST) += selftest.o
obj-$(CONFIG_OF_MDIO) += of_mdio.o
-diff --git a/drivers/of/of_i2c.c b/drivers/of/of_i2c.c
-deleted file mode 100644
-index b667264222cc..000000000000
--- a/drivers/of/of_i2c.c
+++ /dev/null
@@ -1,114 +0,0 @@
@@ -1074,8 +989,6 @@ index b667264222cc..000000000000
-EXPORT_SYMBOL(of_find_i2c_adapter_by_node);
-
-MODULE_LICENSE("GPL");
-diff --git a/drivers/staging/imx-drm/imx-tve.c b/drivers/staging/imx-drm/imx-tve.c
-index 42f141eb183d..d83470b50d00 100644
--- a/drivers/staging/imx-drm/imx-tve.c
+++ b/drivers/staging/imx-drm/imx-tve.c
@@ -21,7 +21,7 @@
@@ -1087,11 +1000,9 @@ index 42f141eb183d..d83470b50d00 100644
#include <linux/regmap.h>
#include <linux/regulator/consumer.h>
#include <linux/spinlock.h>
-diff --git a/include/linux/i2c.h b/include/linux/i2c.h
-index e988fa935b3c..21891898ced0 100644
--- a/include/linux/i2c.h
+++ b/include/linux/i2c.h
-@@ -542,6 +542,26 @@ static inline int i2c_adapter_id(struct i2c_adapter *adap)
+@@ -542,6 +542,26 @@ static inline int i2c_adapter_id(struct
#endif /* I2C */
@@ -1118,9 +1029,6 @@ index e988fa935b3c..21891898ced0 100644
#if IS_ENABLED(CONFIG_ACPI_I2C)
extern void acpi_i2c_register_devices(struct i2c_adapter *adap);
#else
-diff --git a/include/linux/of_i2c.h b/include/linux/of_i2c.h
-deleted file mode 100644
-index cfb545cd86b5..000000000000
--- a/include/linux/of_i2c.h
+++ /dev/null
@@ -1,46 +0,0 @@
@@ -1170,8 +1078,6 @@ index cfb545cd86b5..000000000000
-#endif /* CONFIG_OF_I2C */
-
-#endif /* __LINUX_OF_I2C_H */
-diff --git a/sound/soc/fsl/imx-sgtl5000.c b/sound/soc/fsl/imx-sgtl5000.c
-index 9584e78858df..ad8c4e18f171 100644
--- a/sound/soc/fsl/imx-sgtl5000.c
+++ b/sound/soc/fsl/imx-sgtl5000.c
@@ -13,7 +13,7 @@
@@ -1183,8 +1089,6 @@ index 9584e78858df..ad8c4e18f171 100644
#include <linux/clk.h>
#include <sound/soc.h>
-diff --git a/sound/soc/fsl/imx-wm8962.c b/sound/soc/fsl/imx-wm8962.c
-index 1d70e278e915..722afe69169e 100644
--- a/sound/soc/fsl/imx-wm8962.c
+++ b/sound/soc/fsl/imx-wm8962.c
@@ -15,7 +15,7 @@
@@ -1196,6 +1100,3 @@ index 1d70e278e915..722afe69169e 100644
#include <linux/slab.h>
#include <linux/clk.h>
#include <sound/soc.h>
---
-1.8.5.rc3
-
diff --git a/patches.ltsi/ltsi-makefile-addition.patch b/patches.ltsi/ltsi-makefile-addition.patch
index 673bad8dc048f..f957b82dc7244 100644
--- a/patches.ltsi/ltsi-makefile-addition.patch
+++ b/patches.ltsi/ltsi-makefile-addition.patch
@@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@@ -1,7 +1,7 @@
VERSION = 3
PATCHLEVEL = 10
- SUBLEVEL = 28
+ SUBLEVEL = 30
-EXTRAVERSION =
+EXTRAVERSION = -ltsi
NAME = TOSSUG Baby Fish
diff --git a/patches.renesas/0581-mmc-remove-unnecessary-platform_set_drvdata.patch b/patches.renesas/0581-mmc-remove-unnecessary-platform_set_drvdata.patch
index bebab9d586809..a8715fb091821 100644
--- a/patches.renesas/0581-mmc-remove-unnecessary-platform_set_drvdata.patch
+++ b/patches.renesas/0581-mmc-remove-unnecessary-platform_set_drvdata.patch
@@ -59,7 +59,7 @@ Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
mmc_remove_host(host->mmc);
--- a/drivers/mmc/host/atmel-mci.c
+++ b/drivers/mmc/host/atmel-mci.c
-@@ -2484,8 +2484,6 @@ static int __exit atmci_remove(struct pl
+@@ -2495,8 +2495,6 @@ static int __exit atmci_remove(struct pl
struct atmel_mci *host = platform_get_drvdata(pdev);
unsigned int i;
diff --git a/patches.zynq/0001-i2c-xilinx-merge-i2c-driver-from-Xilinx-repository-i.patch b/patches.zynq/0001-i2c-xilinx-merge-i2c-driver-from-Xilinx-repository-i.patch
index 4ac7dbe898fdc..bc5213ae582e8 100644
--- a/patches.zynq/0001-i2c-xilinx-merge-i2c-driver-from-Xilinx-repository-i.patch
+++ b/patches.zynq/0001-i2c-xilinx-merge-i2c-driver-from-Xilinx-repository-i.patch
@@ -18,7 +18,7 @@ Signed-off-by: Yoshitake Kobayashi <yoshitake.kobayashi@toshiba.co.jp>
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -736,6 +736,15 @@ config I2C_WMT
+@@ -737,6 +737,15 @@ config I2C_WMT
This driver can also be built as a module. If so, the module will be
called i2c-wmt.
diff --git a/patches.zynq/0009-usb-zynq-merge-usb-support-for-xilinx-zynq-soc.patch b/patches.zynq/0009-usb-zynq-merge-usb-support-for-xilinx-zynq-soc.patch
index bef62e715c2b0..4686f90509c8f 100644
--- a/patches.zynq/0009-usb-zynq-merge-usb-support-for-xilinx-zynq-soc.patch
+++ b/patches.zynq/0009-usb-zynq-merge-usb-support-for-xilinx-zynq-soc.patch
@@ -47,7 +47,7 @@ Signed-off-by: Yoshitake Kobayashi <yoshitake.kobayashi@toshiba.co.jp>
default y if MACH_LOONGSON1
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -1685,7 +1685,11 @@ static int hub_probe(struct usb_interfac
+@@ -1689,7 +1689,11 @@ static int hub_probe(struct usb_interfac
pm_runtime_set_autosuspend_delay(&hdev->dev, 0);
/* Hubs have proper suspend/resume support. */