aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-01-09 17:25:31 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-01-09 17:25:31 -0800
commitd23a9b6caf604d279aa43103018ca0176c373a66 (patch)
tree0cf686ee969289043c797255d558719e80e28cdb
parent0940ed184a0a982ed02b2122c3ae11e8b21a3d4d (diff)
downloadltsi-kernel-d23a9b6caf604d279aa43103018ca0176c373a66.tar.gz
Update to 3.10.26
Removed one patch already upstream, and lots of fuzz cleanups
-rw-r--r--KERNEL_VERSION2
-rw-r--r--patches.baytrail/0025-drm-i915-drop-init_dpio-shouldn-t-be-needed.patch11
-rw-r--r--patches.baytrail/0041-drm-i915-Turn-DEV_INFO_FLAGS-into-a-foreach-style-ma.patch19
-rw-r--r--patches.baytrail/0042-drm-i915-Replace-the-line-of-s-by-a-DEV_INFO_FOR_EAC.patch9
-rw-r--r--patches.baytrail/0045-drm-i915-Introduce-HAS_FPGA_DBG_UNCLAIMED.patch21
-rw-r--r--patches.baytrail/0050-drm-i915-disable-interrupts-earlier-in-the-driver-un.patch17
-rw-r--r--patches.baytrail/0054-drm-i915-protect-backlight-registers-and-data-with-a.patch49
-rw-r--r--patches.baytrail/0104-drm-i915-reference-count-for-i915_hw_contexts.patch29
-rw-r--r--patches.baytrail/0109-drm-i915-put-context-upon-switching.patch25
-rw-r--r--patches.baytrail/0117-drm-i915-Assert-mutex_is_locked-on-context-lookup.patch9
-rw-r--r--patches.baytrail/0126-drm-i915-add-power-well-and-cpu-transcoder-info-to-t.patch15
-rw-r--r--patches.baytrail/0127-drm-i915-clear-FPGA_DBG_RM_NOCLAIM-when-capturing-er.patch9
-rw-r--r--patches.baytrail/0131-drm-i915-Add-references-to-some-workaround-we-implem.patch37
-rw-r--r--patches.baytrail/0150-drm-i915-Organize-VBT-stuff-inside-drm_i915_private.patch111
-rw-r--r--patches.baytrail/0166-i915-Use-arch_phys_wc_-add-del.patch15
-rw-r--r--patches.baytrail/0182-drm-i915-avoid-big-kmallocs-on-reading-error-state.patch52
-rw-r--r--patches.baytrail/0195-drm-i915-use-mappable-size-for-fb-kickout.patch9
-rw-r--r--patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch11
-rw-r--r--patches.baytrail/0198-drm-i915-Call-context-fini-at-cleanup.patch9
-rw-r--r--patches.baytrail/0199-drm-i915-release-scratch-page-at-module-unload.patch9
-rw-r--r--patches.baytrail/0233-drm-i915-add-I915_PARAM_HAS_VEBOX-to-i915_getparam.patch13
-rw-r--r--patches.baytrail/0239-drm-i915-Demote-unknown-param-to-DRM_DEBUG.patch9
-rw-r--r--patches.baytrail/0278-i915-drm-Add-private-api-for-power-well-usage.patch34
-rw-r--r--patches.baytrail/0319-drm-i915-add-struct-i915_ctx_hang_stats.patch13
-rw-r--r--patches.baytrail/0321-drm-i915-change-i915_add_request-to-macro.patch45
-rw-r--r--patches.baytrail/0385-drm-i915-Don-t-deref-pipe-cpu_transcoder-in-the-hang.patch23
-rw-r--r--patches.baytrail/0411-drm-i915-Move-gtt_mtrr-to-i915_gtt.patch17
-rw-r--r--patches.baytrail/0431-drm-i915-Getter-setter-for-object-attributes.patch221
-rw-r--r--patches.baytrail/0441-drm-i915-don-t-frob-mm.suspended-when-not-using-ums.patch47
-rw-r--r--patches.baytrail/0450-drm-i915-kill-dev_priv-rps.lock.patch47
-rw-r--r--patches.baytrail/0455-drm-i915-move-error-state-to-own-compilation-unit.patch68
-rw-r--r--patches.baytrail/0461-drm-i915-store-eLLC-size.patch17
-rw-r--r--patches.baytrail/0476-drm-i915-Move-gtt-and-ppgtt-under-address-space-umbr.patch87
-rw-r--r--patches.baytrail/0477-drm-i915-Put-the-mm-in-the-parent-address-space.patch49
-rw-r--r--patches.baytrail/0478-drm-i915-Create-a-global-list-of-vms.patch15
-rw-r--r--patches.baytrail/0524-Re-create-dirty-merge-cb54b53.patch15
-rw-r--r--patches.baytrail/0525-drm-i915-Colocate-all-GT-access-routines-in-the-same.patch74
-rw-r--r--patches.baytrail/0530-drm-i915-fix-the-racy-object-accounting.patch19
-rw-r--r--patches.baytrail/0572-drm-i915-Create-an-init-vm.patch15
-rw-r--r--patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch63
-rw-r--r--patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch147
-rw-r--r--patches.baytrail/0610-drm-edid-Move-HDMI_IDENTIFIER-to-hdmi.h.patch13
-rw-r--r--patches.baytrail/0613-drm-edid-Fix-add_cea_modes-style-issues.patch13
-rw-r--r--patches.baytrail/0614-drm-edid-Parse-the-HDMI-CEA-block-and-look-for-4k-mo.patch17
-rw-r--r--patches.baytrail/0615-video-hdmi-Rename-HDMI_IDENTIFIER-to-HDMI_IEEE_OUI.patch21
-rw-r--r--patches.baytrail/0620-drm-Handle-the-DBLCLK-flag-in-the-common-infoframe-h.patch15
-rw-r--r--patches.baytrail/0628-drm-i915-mm_list-is-per-VMA.patch110
-rw-r--r--patches.baytrail/0678-drm-i915-Use-Write-Through-cacheing-for-the-display-.patch31
-rw-r--r--patches.baytrail/0680-drm-i915-remove-set-but-unused-variables.patch39
-rw-r--r--patches.baytrail/0682-drm-i915-print-a-message-when-we-detect-an-early-Has.patch13
-rw-r--r--patches.baytrail/0695-drm-i915-enable-the-power-well-before-module-unload.patch9
-rw-r--r--patches.baytrail/0720-drm-i915-allow-package-C8-states-on-Haswell-disabled.patch87
-rw-r--r--patches.baytrail/0727-gpu-vga_switcheroo-add-driver-control-power-feature..patch51
-rw-r--r--patches.baytrail/0728-drm-edid-Add-both-60Hz-and-59.94Hz-CEA-modes-to-conn.patch15
-rw-r--r--patches.baytrail/0729-drm-Add-support-for-alternate-clocks-of-4k-modes.patch11
-rw-r--r--patches.baytrail/0730-drm-Make-drm_match_cea_mode-return-the-underlying-2D.patch25
-rw-r--r--patches.baytrail/0731-drm-Add-a-helper-to-forge-HDMI-vendor-infoframes.patch15
-rw-r--r--patches.baytrail/0733-drm-edid-Expose-mandatory-stereo-modes-for-HDMI-sink.patch15
-rw-r--r--patches.baytrail/0734-drm-Extract-add_hdmi_mode-out-of-do_hdmi_vsdb_modes.patch13
-rw-r--r--patches.baytrail/0735-drm-Code-stereo-layouts-as-an-enum-rather-than-a-bit.patch19
-rw-r--r--patches.baytrail/0736-drm-Set-the-relevant-infoframe-field-when-scanning-o.patch11
-rw-r--r--patches.baytrail/0740-drm-i915-Support-render-nodes.patch15
-rw-r--r--patches.baytrail/0755-i915-Update-VGA-arbiter-support-for-newer-devices.patch23
-rw-r--r--patches.baytrail/0787-drm-i915-Do-not-add-an-interrupt-for-a-context-switc.patch15
-rw-r--r--patches.baytrail/0812-drm-i915-Delay-disabling-of-VGA-memory-until-vgacon-.patch29
-rw-r--r--patches.baytrail/0883-drm-i915-Do-remaps-for-all-contexts.patch51
-rw-r--r--patches.baytrail/0893-drm-i915-Pull-intel_init_power_well-out-of-intel_mod.patch21
-rw-r--r--patches.baytrail/0900-drm-i915-use-pointer-k-cmz.-alloc-sizeof-pointer-.-p.patch113
-rw-r--r--patches.baytrail/0911-drm-i915-Fix-unclaimed-register-access-due-to-delaye.patch11
-rw-r--r--patches.baytrail/0913-drm-i915-Move-power-well-init-earlier-during-driver-.patch11
-rw-r--r--patches.baytrail/0921-drm-i915-Delay-the-release-of-the-forcewake-by-a-jif.patch29
-rw-r--r--patches.baytrail/0934-drm-i915-Convert-active-API-to-VMA.patch29
-rw-r--r--patches.baytrail/0960-drm-i915-destroy-connector-sysfs-files-earlier.patch65
-rw-r--r--patches.baytrail/0968-drm-i915-Add-some-missing-steps-to-i915_driver_load-.patch19
-rw-r--r--patches.baytrail/0970-drm-i915-Boost-RPS-frequency-for-CPU-stalls.patch85
-rw-r--r--patches.baytrail/0992-drm-edid-add-drm_edid_duplicate.patch15
-rw-r--r--patches.baytrail/0994-drm-Make-vblank_disable_allowed-bool.patch45
-rw-r--r--patches.baytrail/1001-drm-Remove-pci_vendor-and-pci_device-from-struct-drm.patch99
-rw-r--r--patches.baytrail/1008-drm-Kill-drm-perf-counter-leftovers.patch57
-rw-r--r--patches.baytrail/1045-drm-i915-Prevent-using-uninitialized-MMIO-funcs.patch9
-rw-r--r--patches.baytrail/1046-drm-i915-Move-edram-detection-early_sanitize.patch15
-rw-r--r--patches.baytrail/1054-drm-i915-Do-PCH-and-uncore-init-earlier.patch13
-rw-r--r--patches.baytrail/1062-drm-i915-tell-the-user-KMS-is-required-for-gen6.patch9
-rw-r--r--patches.baytrail/1071-drm-i915-Kconfig-option-to-disable-the-legacy-fbdev-.patch52
-rw-r--r--patches.baytrail/1072-drm-i915-rename-intel_fb.c-to-intel_fbdev.c.patch699
-rw-r--r--patches.baytrail/1111-ALSA-hda-add-PCI-IDs-for-Intel-BayTrail.patch9
-rw-r--r--patches.ltsi/ltsi-makefile-addition.patch2
-rw-r--r--patches.renesas/0014-clocksource-arch_timer-use-virtual-counters.patch150
-rw-r--r--patches.workqueues/0001-workqueues-Introduce-new-flag-WQ_POWER_EFFICIENT-for.patch2
-rw-r--r--patches.zynq/0014-arm-zynq-Migrate-platform-to-clock-controller.patch2
-rw-r--r--patches.zynq/0039-clk-add-CLK_SET_RATE_NO_REPARENT-flag.patch2
-rw-r--r--patches.zynq/0070-arm-dt-zynq-Add-support-for-the-zc706-platform.patch2
-rw-r--r--series1
93 files changed, 1656 insertions, 2092 deletions
diff --git a/KERNEL_VERSION b/KERNEL_VERSION
index 8e8781cd1090b4..dce139be4e3892 100644
--- a/KERNEL_VERSION
+++ b/KERNEL_VERSION
@@ -1 +1 @@
-3.10.25
+3.10.26
diff --git a/patches.baytrail/0025-drm-i915-drop-init_dpio-shouldn-t-be-needed.patch b/patches.baytrail/0025-drm-i915-drop-init_dpio-shouldn-t-be-needed.patch
index 487f18df6af352..a58c40455b0a3a 100644
--- a/patches.baytrail/0025-drm-i915-drop-init_dpio-shouldn-t-be-needed.patch
+++ b/patches.baytrail/0025-drm-i915-drop-init_dpio-shouldn-t-be-needed.patch
@@ -12,14 +12,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 78c9b7e71d90f32ce19d4a575a1a206cfe7c6a00)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 14 --------------
+ drivers/gpu/drm/i915/intel_display.c | 14 --------------
1 file changed, 14 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 7b52c0f729d5..9a284ac81c34 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -467,17 +467,6 @@ void intel_dpio_write(struct drm_i915_private *dev_priv, int reg, u32 val)
+@@ -467,17 +467,6 @@ void intel_dpio_write(struct drm_i915_pr
DRM_ERROR("DPIO write wait timed out\n");
}
@@ -37,7 +35,7 @@ index 7b52c0f729d5..9a284ac81c34 100644
static const intel_limit_t *intel_ironlake_limit(struct drm_crtc *crtc,
int refclk)
{
-@@ -9484,9 +9473,6 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -9486,9 +9475,6 @@ void intel_modeset_cleanup(struct drm_de
ironlake_teardown_rc6(dev);
@@ -47,6 +45,3 @@ index 7b52c0f729d5..9a284ac81c34 100644
mutex_unlock(&dev->struct_mutex);
/* Disable the irq before mode object teardown, for the irq might
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0041-drm-i915-Turn-DEV_INFO_FLAGS-into-a-foreach-style-ma.patch b/patches.baytrail/0041-drm-i915-Turn-DEV_INFO_FLAGS-into-a-foreach-style-ma.patch
index 5b8f97b363983a..18261af217a71d 100644
--- a/patches.baytrail/0041-drm-i915-Turn-DEV_INFO_FLAGS-into-a-foreach-style-ma.patch
+++ b/patches.baytrail/0041-drm-i915-Turn-DEV_INFO_FLAGS-into-a-foreach-style-ma.patch
@@ -22,16 +22,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 79fc46dfd0c7cc68442554a428e03a3b7e0d44aa)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 10 ++++----
- drivers/gpu/drm/i915/i915_dma.c | 10 ++++----
- drivers/gpu/drm/i915/i915_drv.h | 50 ++++++++++++++++++-------------------
+ drivers/gpu/drm/i915/i915_debugfs.c | 10 +++----
+ drivers/gpu/drm/i915/i915_dma.c | 10 +++----
+ drivers/gpu/drm/i915/i915_drv.h | 50 ++++++++++++++++++------------------
3 files changed, 35 insertions(+), 35 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index d195d097cbb7..a55630a80f83 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -61,11 +61,11 @@ static int i915_capabilities(struct seq_file *m, void *data)
+@@ -61,11 +61,11 @@ static int i915_capabilities(struct seq_
seq_printf(m, "gen: %d\n", info->gen);
seq_printf(m, "pch: %d\n", INTEL_PCH_TYPE(dev));
@@ -48,11 +46,9 @@ index d195d097cbb7..a55630a80f83 100644
return 0;
}
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 17d9b0b6afc5..120e1fc4890f 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1445,15 +1445,15 @@ static void i915_dump_device_info(struct drm_i915_private *dev_priv)
+@@ -1453,15 +1453,15 @@ static void i915_dump_device_info(struct
{
const struct intel_device_info *info = dev_priv->info;
@@ -73,8 +69,6 @@ index 17d9b0b6afc5..120e1fc4890f 100644
}
/**
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 698da6dbdb32..c6179c8bea21 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -333,31 +333,31 @@ struct drm_i915_gt_funcs {
@@ -134,6 +128,3 @@ index 698da6dbdb32..c6179c8bea21 100644
struct intel_device_info {
u32 display_mmio_offset;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0042-drm-i915-Replace-the-line-of-s-by-a-DEV_INFO_FOR_EAC.patch b/patches.baytrail/0042-drm-i915-Replace-the-line-of-s-by-a-DEV_INFO_FOR_EAC.patch
index 3d436f63006ee3..ff416fa979a1dd 100644
--- a/patches.baytrail/0042-drm-i915-Replace-the-line-of-s-by-a-DEV_INFO_FOR_EAC.patch
+++ b/patches.baytrail/0042-drm-i915-Replace-the-line-of-s-by-a-DEV_INFO_FOR_EAC.patch
@@ -15,14 +15,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e2a5800a14abcf861b9d6565de2a22bd6e9ae0ef)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 6 +++++-
+ drivers/gpu/drm/i915/i915_dma.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 120e1fc4890f..579654d89ac3 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1445,13 +1445,17 @@ static void i915_dump_device_info(struct drm_i915_private *dev_priv)
+@@ -1453,13 +1453,17 @@ static void i915_dump_device_info(struct
{
const struct intel_device_info *info = dev_priv->info;
@@ -41,6 +39,3 @@ index 120e1fc4890f..579654d89ac3 100644
#undef PRINT_FLAG
#undef SEP_COMMA
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0045-drm-i915-Introduce-HAS_FPGA_DBG_UNCLAIMED.patch b/patches.baytrail/0045-drm-i915-Introduce-HAS_FPGA_DBG_UNCLAIMED.patch
index 514a96396d6f55..792a77826945e1 100644
--- a/patches.baytrail/0045-drm-i915-Introduce-HAS_FPGA_DBG_UNCLAIMED.patch
+++ b/patches.baytrail/0045-drm-i915-Introduce-HAS_FPGA_DBG_UNCLAIMED.patch
@@ -16,16 +16,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e76ebff887e9cc4a8448a0fc6abbb1925291f38b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/i915_drv.c | 4 ++--
- drivers/gpu/drm/i915/i915_drv.h | 1 +
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_drv.c | 4 ++--
+ drivers/gpu/drm/i915/i915_drv.h | 1 +
3 files changed, 4 insertions(+), 3 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 579654d89ac3..f7b85e1a1ba7 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1472,7 +1472,7 @@ static void intel_early_sanitize_regs(struct drm_device *dev)
+@@ -1480,7 +1480,7 @@ static void intel_early_sanitize_regs(st
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -34,11 +32,9 @@ index 579654d89ac3..f7b85e1a1ba7 100644
I915_WRITE_NOTRACE(FPGA_DBG, FPGA_DBG_RM_NOCLAIM);
}
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 7d4a284487ee..97858c71b3f7 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -1229,7 +1229,7 @@ ilk_dummy_write(struct drm_i915_private *dev_priv)
+@@ -1229,7 +1229,7 @@ ilk_dummy_write(struct drm_i915_private
static void
hsw_unclaimed_reg_clear(struct drm_i915_private *dev_priv, u32 reg)
{
@@ -47,7 +43,7 @@ index 7d4a284487ee..97858c71b3f7 100644
(I915_READ_NOTRACE(FPGA_DBG) & FPGA_DBG_RM_NOCLAIM)) {
DRM_ERROR("Unknown unclaimed register before writing to %x\n",
reg);
-@@ -1240,7 +1240,7 @@ hsw_unclaimed_reg_clear(struct drm_i915_private *dev_priv, u32 reg)
+@@ -1240,7 +1240,7 @@ hsw_unclaimed_reg_clear(struct drm_i915_
static void
hsw_unclaimed_reg_check(struct drm_i915_private *dev_priv, u32 reg)
{
@@ -56,8 +52,6 @@ index 7d4a284487ee..97858c71b3f7 100644
(I915_READ_NOTRACE(FPGA_DBG) & FPGA_DBG_RM_NOCLAIM)) {
DRM_ERROR("Unclaimed write to %x\n", reg);
I915_WRITE_NOTRACE(FPGA_DBG, FPGA_DBG_RM_NOCLAIM);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 15951914a65b..99d744441ad6 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1371,6 +1371,7 @@ struct drm_i915_file_private {
@@ -68,6 +62,3 @@ index 15951914a65b..99d744441ad6 100644
#define INTEL_PCH_DEVICE_ID_MASK 0xff00
#define INTEL_PCH_IBX_DEVICE_ID_TYPE 0x3b00
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0050-drm-i915-disable-interrupts-earlier-in-the-driver-un.patch b/patches.baytrail/0050-drm-i915-disable-interrupts-earlier-in-the-driver-un.patch
index 196d56902db749..9978ccf70ee161 100644
--- a/patches.baytrail/0050-drm-i915-disable-interrupts-earlier-in-the-driver-un.patch
+++ b/patches.baytrail/0050-drm-i915-disable-interrupts-earlier-in-the-driver-un.patch
@@ -25,15 +25,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit fd0c06420d39958032655a04cfd194d5a7b38f83)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 19 ++++++++++++-------
- drivers/gpu/drm/i915/intel_pm.c | 3 +++
+ drivers/gpu/drm/i915/intel_display.c | 19 ++++++++++++-------
+ drivers/gpu/drm/i915/intel_pm.c | 3 +++
2 files changed, 15 insertions(+), 7 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 0db840241690..df0d00df3532 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -9585,12 +9585,23 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -9587,12 +9587,23 @@ void intel_modeset_cleanup(struct drm_de
struct drm_crtc *crtc;
struct intel_crtc *intel_crtc;
@@ -58,7 +56,7 @@ index 0db840241690..df0d00df3532 100644
list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
/* Skip inactive CRTCs */
if (!crtc->fb)
-@@ -9608,12 +9619,6 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -9610,12 +9621,6 @@ void intel_modeset_cleanup(struct drm_de
mutex_unlock(&dev->struct_mutex);
@@ -71,11 +69,9 @@ index 0db840241690..df0d00df3532 100644
/* flush any delayed tasks or pending work */
flush_scheduled_work();
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 789710624d75..ad9d622c55af 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3671,6 +3671,9 @@ void intel_disable_gt_powersave(struct drm_device *dev)
+@@ -3671,6 +3671,9 @@ void intel_disable_gt_powersave(struct d
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -85,6 +81,3 @@ index 789710624d75..ad9d622c55af 100644
if (IS_IRONLAKE_M(dev)) {
ironlake_disable_drps(dev);
ironlake_disable_rc6(dev);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0054-drm-i915-protect-backlight-registers-and-data-with-a.patch b/patches.baytrail/0054-drm-i915-protect-backlight-registers-and-data-with-a.patch
index c8a1bd3911c014..13fd1dd8babf21 100644
--- a/patches.baytrail/0054-drm-i915-protect-backlight-registers-and-data-with-a.patch
+++ b/patches.baytrail/0054-drm-i915-protect-backlight-registers-and-data-with-a.patch
@@ -24,17 +24,15 @@ Conflicts:
drivers/gpu/drm/i915/i915_dma.c
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 1 +
- drivers/gpu/drm/i915/i915_drv.h | 1 +
- drivers/gpu/drm/i915/i915_suspend.c | 10 ++++++++++
- drivers/gpu/drm/i915/intel_panel.c | 30 +++++++++++++++++++++++++++++-
+ drivers/gpu/drm/i915/i915_dma.c | 1 +
+ drivers/gpu/drm/i915/i915_drv.h | 1 +
+ drivers/gpu/drm/i915/i915_suspend.c | 10 ++++++++++
+ drivers/gpu/drm/i915/intel_panel.c | 30 +++++++++++++++++++++++++++++-
4 files changed, 41 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index f7b85e1a1ba7..68a57031db2c 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1519,6 +1519,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1527,6 +1527,7 @@ int i915_driver_load(struct drm_device *
spin_lock_init(&dev_priv->gpu_error.lock);
spin_lock_init(&dev_priv->rps.lock);
spin_lock_init(&dev_priv->gt_lock);
@@ -42,8 +40,6 @@ index f7b85e1a1ba7..68a57031db2c 100644
mutex_init(&dev_priv->dpio_lock);
mutex_init(&dev_priv->rps.hw_lock);
mutex_init(&dev_priv->modeset_restore_lock);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index c123e9e0cd12..8a8e8dc5c2e1 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -961,6 +961,7 @@ typedef struct drm_i915_private {
@@ -54,11 +50,9 @@ index c123e9e0cd12..8a8e8dc5c2e1 100644
struct backlight_device *device;
} backlight;
-diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c
-index 369b3d8776ab..70db618989c4 100644
--- a/drivers/gpu/drm/i915/i915_suspend.c
+++ b/drivers/gpu/drm/i915/i915_suspend.c
-@@ -192,6 +192,7 @@ static void i915_restore_vga(struct drm_device *dev)
+@@ -192,6 +192,7 @@ static void i915_restore_vga(struct drm_
static void i915_save_display(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -66,7 +60,7 @@ index 369b3d8776ab..70db618989c4 100644
/* Display arbitration control */
if (INTEL_INFO(dev)->gen <= 4)
-@@ -202,6 +203,8 @@ static void i915_save_display(struct drm_device *dev)
+@@ -202,6 +203,8 @@ static void i915_save_display(struct drm
if (!drm_core_check_feature(dev, DRIVER_MODESET))
i915_save_display_reg(dev);
@@ -75,7 +69,7 @@ index 369b3d8776ab..70db618989c4 100644
/* LVDS state */
if (HAS_PCH_SPLIT(dev)) {
dev_priv->regfile.savePP_CONTROL = I915_READ(PCH_PP_CONTROL);
-@@ -222,6 +225,8 @@ static void i915_save_display(struct drm_device *dev)
+@@ -222,6 +225,8 @@ static void i915_save_display(struct drm
dev_priv->regfile.saveLVDS = I915_READ(LVDS);
}
@@ -84,7 +78,7 @@ index 369b3d8776ab..70db618989c4 100644
if (!IS_I830(dev) && !IS_845G(dev) && !HAS_PCH_SPLIT(dev))
dev_priv->regfile.savePFIT_CONTROL = I915_READ(PFIT_CONTROL);
-@@ -257,6 +262,7 @@ static void i915_restore_display(struct drm_device *dev)
+@@ -257,6 +262,7 @@ static void i915_restore_display(struct
{
struct drm_i915_private *dev_priv = dev->dev_private;
u32 mask = 0xffffffff;
@@ -92,7 +86,7 @@ index 369b3d8776ab..70db618989c4 100644
/* Display arbitration */
if (INTEL_INFO(dev)->gen <= 4)
-@@ -265,6 +271,8 @@ static void i915_restore_display(struct drm_device *dev)
+@@ -265,6 +271,8 @@ static void i915_restore_display(struct
if (!drm_core_check_feature(dev, DRIVER_MODESET))
i915_restore_display_reg(dev);
@@ -101,7 +95,7 @@ index 369b3d8776ab..70db618989c4 100644
/* LVDS state */
if (INTEL_INFO(dev)->gen >= 4 && !HAS_PCH_SPLIT(dev))
I915_WRITE(BLC_PWM_CTL2, dev_priv->regfile.saveBLC_PWM_CTL2);
-@@ -304,6 +312,8 @@ static void i915_restore_display(struct drm_device *dev)
+@@ -304,6 +312,8 @@ static void i915_restore_display(struct
I915_WRITE(PP_CONTROL, dev_priv->regfile.savePP_CONTROL);
}
@@ -110,11 +104,9 @@ index 369b3d8776ab..70db618989c4 100644
/* only restore FBC info on the platform that supports FBC*/
intel_disable_fbc(dev);
if (I915_HAS_FBC(dev)) {
-diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
-index 3df5931e638f..4c49b3f77455 100644
--- a/drivers/gpu/drm/i915/intel_panel.c
+++ b/drivers/gpu/drm/i915/intel_panel.c
-@@ -138,6 +138,8 @@ static u32 i915_read_blc_pwm_ctl(struct drm_device *dev)
+@@ -138,6 +138,8 @@ static u32 i915_read_blc_pwm_ctl(struct
struct drm_i915_private *dev_priv = dev->dev_private;
u32 val;
@@ -123,7 +115,7 @@ index 3df5931e638f..4c49b3f77455 100644
/* Restore the CTL value if it lost, e.g. GPU reset */
if (HAS_PCH_SPLIT(dev_priv->dev)) {
-@@ -218,6 +220,9 @@ static u32 intel_panel_get_backlight(struct drm_device *dev)
+@@ -218,6 +220,9 @@ static u32 intel_panel_get_backlight(str
{
struct drm_i915_private *dev_priv = dev->dev_private;
u32 val;
@@ -133,7 +125,7 @@ index 3df5931e638f..4c49b3f77455 100644
if (HAS_PCH_SPLIT(dev)) {
val = I915_READ(BLC_PWM_CPU_CTL) & BACKLIGHT_DUTY_CYCLE_MASK;
-@@ -235,6 +240,9 @@ static u32 intel_panel_get_backlight(struct drm_device *dev)
+@@ -235,6 +240,9 @@ static u32 intel_panel_get_backlight(str
}
val = intel_panel_compute_brightness(dev, val);
@@ -143,7 +135,7 @@ index 3df5931e638f..4c49b3f77455 100644
DRM_DEBUG_DRIVER("get backlight PWM = %d\n", val);
return val;
}
-@@ -282,11 +290,14 @@ void intel_panel_set_backlight(struct drm_device *dev, u32 level, u32 max)
+@@ -282,11 +290,14 @@ void intel_panel_set_backlight(struct dr
{
struct drm_i915_private *dev_priv = dev->dev_private;
u32 freq;
@@ -159,7 +151,7 @@ index 3df5931e638f..4c49b3f77455 100644
}
/* scale to hardware */
-@@ -298,11 +309,16 @@ void intel_panel_set_backlight(struct drm_device *dev, u32 level, u32 max)
+@@ -298,11 +309,16 @@ void intel_panel_set_backlight(struct dr
if (dev_priv->backlight.enabled)
intel_panel_actually_set_backlight(dev, level);
@@ -176,7 +168,7 @@ index 3df5931e638f..4c49b3f77455 100644
dev_priv->backlight.enabled = false;
intel_panel_actually_set_backlight(dev, 0);
-@@ -320,12 +336,17 @@ void intel_panel_disable_backlight(struct drm_device *dev)
+@@ -320,12 +336,17 @@ void intel_panel_disable_backlight(struc
I915_WRITE(BLC_PWM_PCH_CTL1, tmp);
}
}
@@ -203,7 +195,7 @@ index 3df5931e638f..4c49b3f77455 100644
}
static void intel_panel_init_backlight(struct drm_device *dev)
-@@ -433,6 +456,7 @@ int intel_panel_setup_backlight(struct drm_connector *connector)
+@@ -433,6 +456,7 @@ int intel_panel_setup_backlight(struct d
struct drm_device *dev = connector->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct backlight_properties props;
@@ -211,7 +203,7 @@ index 3df5931e638f..4c49b3f77455 100644
intel_panel_init_backlight(dev);
-@@ -442,7 +466,11 @@ int intel_panel_setup_backlight(struct drm_connector *connector)
+@@ -442,7 +466,11 @@ int intel_panel_setup_backlight(struct d
memset(&props, 0, sizeof(props));
props.type = BACKLIGHT_RAW;
props.brightness = dev_priv->backlight.level;
@@ -223,6 +215,3 @@ index 3df5931e638f..4c49b3f77455 100644
if (props.max_brightness == 0) {
DRM_DEBUG_DRIVER("Failed to get maximum backlight value\n");
return -ENODEV;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0104-drm-i915-reference-count-for-i915_hw_contexts.patch b/patches.baytrail/0104-drm-i915-reference-count-for-i915_hw_contexts.patch
index fd715fdd0ba087..8858591470218a 100644
--- a/patches.baytrail/0104-drm-i915-reference-count-for-i915_hw_contexts.patch
+++ b/patches.baytrail/0104-drm-i915-reference-count-for-i915_hw_contexts.patch
@@ -41,12 +41,10 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit dce3271b1ee05ca01ebdde50d613d7b33ef178a9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 12 ++++++++++++
- drivers/gpu/drm/i915/i915_gem_context.c | 28 ++++++++++++++--------------
+ drivers/gpu/drm/i915/i915_drv.h | 12 ++++++++++++
+ drivers/gpu/drm/i915/i915_gem_context.c | 28 ++++++++++++++--------------
2 files changed, 26 insertions(+), 14 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index c5a31c628ab3..aac5740f1ee9 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -452,6 +452,7 @@ struct i915_hw_ppgtt {
@@ -57,7 +55,7 @@ index c5a31c628ab3..aac5740f1ee9 100644
int id;
bool is_initialized;
struct drm_i915_file_private *file_priv;
-@@ -1701,6 +1702,17 @@ void i915_gem_context_fini(struct drm_device *dev);
+@@ -1701,6 +1702,17 @@ void i915_gem_context_fini(struct drm_de
void i915_gem_context_close(struct drm_device *dev, struct drm_file *file);
int i915_switch_context(struct intel_ring_buffer *ring,
struct drm_file *file, int to_id);
@@ -75,11 +73,9 @@ index c5a31c628ab3..aac5740f1ee9 100644
int i915_gem_context_create_ioctl(struct drm_device *dev, void *data,
struct drm_file *file);
int i915_gem_context_destroy_ioctl(struct drm_device *dev, void *data,
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 3bc8a58a8d5f..47ffea61c9fa 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -124,10 +124,10 @@ static int get_context_size(struct drm_device *dev)
+@@ -124,10 +124,10 @@ static int get_context_size(struct drm_d
return ret;
}
@@ -93,7 +89,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
drm_gem_object_unreference(&ctx->obj->base);
kfree(ctx);
-@@ -145,6 +145,7 @@ create_hw_context(struct drm_device *dev,
+@@ -145,6 +145,7 @@ create_hw_context(struct drm_device *dev
if (ctx == NULL)
return ERR_PTR(-ENOMEM);
@@ -101,7 +97,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
ctx->obj = i915_gem_alloc_object(dev, dev_priv->hw_context_size);
if (ctx->obj == NULL) {
kfree(ctx);
-@@ -169,18 +170,18 @@ create_hw_context(struct drm_device *dev,
+@@ -169,18 +170,18 @@ create_hw_context(struct drm_device *dev
if (file_priv == NULL)
return ctx;
@@ -123,7 +119,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
return ERR_PTR(ret);
}
-@@ -226,7 +227,7 @@ static int create_default_context(struct drm_i915_private *dev_priv)
+@@ -226,7 +227,7 @@ static int create_default_context(struct
err_unpin:
i915_gem_object_unpin(ctx->obj);
err_destroy:
@@ -132,7 +128,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
return ret;
}
-@@ -262,6 +263,7 @@ void i915_gem_context_init(struct drm_device *dev)
+@@ -262,6 +263,7 @@ void i915_gem_context_init(struct drm_de
void i915_gem_context_fini(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -140,7 +136,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
if (dev_priv->hw_contexts_disabled)
return;
-@@ -271,9 +273,8 @@ void i915_gem_context_fini(struct drm_device *dev)
+@@ -271,9 +273,8 @@ void i915_gem_context_fini(struct drm_de
* other code, leading to spurious errors. */
intel_gpu_reset(dev);
@@ -152,7 +148,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
}
static int context_idr_cleanup(int id, void *p, void *data)
-@@ -282,8 +283,7 @@ static int context_idr_cleanup(int id, void *p, void *data)
+@@ -282,8 +283,7 @@ static int context_idr_cleanup(int id, v
BUG_ON(id == DEFAULT_CONTEXT_ID);
@@ -162,7 +158,7 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
return 0;
}
-@@ -512,8 +512,8 @@ int i915_gem_context_destroy_ioctl(struct drm_device *dev, void *data,
+@@ -510,8 +510,8 @@ int i915_gem_context_destroy_ioctl(struc
return -ENOENT;
}
@@ -173,6 +169,3 @@ index 3bc8a58a8d5f..47ffea61c9fa 100644
mutex_unlock(&dev->struct_mutex);
DRM_DEBUG_DRIVER("HW context %d destroyed\n", args->ctx_id);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0109-drm-i915-put-context-upon-switching.patch b/patches.baytrail/0109-drm-i915-put-context-upon-switching.patch
index ac7c0bc5986fda..d61ca23cbc9c3b 100644
--- a/patches.baytrail/0109-drm-i915-put-context-upon-switching.patch
+++ b/patches.baytrail/0109-drm-i915-put-context-upon-switching.patch
@@ -16,15 +16,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 112522f6789581824903f6f72082b5b841a7f0f9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem_context.c | 37 +++++++++++++++++++++------------
- drivers/gpu/drm/i915/intel_ringbuffer.h | 2 +-
+ drivers/gpu/drm/i915/i915_gem_context.c | 37 ++++++++++++++++++++------------
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 2 -
2 files changed, 25 insertions(+), 14 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index fa7d4a74af22..0407e0a39987 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -361,13 +361,13 @@ mi_set_context(struct intel_ring_buffer *ring,
+@@ -359,13 +359,13 @@ mi_set_context(struct intel_ring_buffer
static int do_switch(struct i915_hw_context *to)
{
struct intel_ring_buffer *ring = to->ring;
@@ -41,7 +39,7 @@ index fa7d4a74af22..0407e0a39987 100644
return 0;
ret = i915_gem_object_pin(to->obj, CONTEXT_ALIGN, false, false);
-@@ -390,7 +390,7 @@ static int do_switch(struct i915_hw_context *to)
+@@ -388,7 +388,7 @@ static int do_switch(struct i915_hw_cont
if (!to->is_initialized || is_default_context(to))
hw_flags |= MI_RESTORE_INHIBIT;
@@ -50,7 +48,7 @@ index fa7d4a74af22..0407e0a39987 100644
hw_flags |= MI_FORCE_RESTORE;
ret = mi_set_context(ring, to, hw_flags);
-@@ -405,9 +405,9 @@ static int do_switch(struct i915_hw_context *to)
+@@ -403,9 +403,9 @@ static int do_switch(struct i915_hw_cont
* is a bit suboptimal because the retiring can occur simply after the
* MI_SET_CONTEXT instead of when the next seqno has completed.
*/
@@ -63,7 +61,7 @@ index fa7d4a74af22..0407e0a39987 100644
/* As long as MI_SET_CONTEXT is serializing, ie. it flushes the
* whole damn pipeline, we don't need to explicitly mark the
* object dirty. The only exception is that the context must be
-@@ -415,15 +415,26 @@ static int do_switch(struct i915_hw_context *to)
+@@ -413,15 +413,26 @@ static int do_switch(struct i915_hw_cont
* able to defer doing this until we know the object would be
* swapped, but there is no way to do that yet.
*/
@@ -72,7 +70,8 @@ index fa7d4a74af22..0407e0a39987 100644
- i915_gem_object_unpin(from_obj);
+ from->obj->dirty = 1;
+ BUG_ON(from->obj->ring != ring);
-+
+
+- drm_gem_object_unreference(&from_obj->base);
+ ret = i915_add_request(ring, NULL, NULL);
+ if (ret) {
+ /* Too late, we've already scheduled a context switch.
@@ -83,8 +82,7 @@ index fa7d4a74af22..0407e0a39987 100644
+ WARN_ON(mi_set_context(ring, from, MI_RESTORE_INHIBIT));
+ return ret;
+ }
-
-- drm_gem_object_unreference(&from_obj->base);
++
+ i915_gem_object_unpin(from->obj);
+ i915_gem_context_unreference(from);
}
@@ -96,8 +94,6 @@ index fa7d4a74af22..0407e0a39987 100644
to->is_initialized = true;
return 0;
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index d66208c2c48b..dac1614a1bca 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -135,7 +135,7 @@ struct intel_ring_buffer {
@@ -109,6 +105,3 @@ index d66208c2c48b..dac1614a1bca 100644
void *private;
};
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0117-drm-i915-Assert-mutex_is_locked-on-context-lookup.patch b/patches.baytrail/0117-drm-i915-Assert-mutex_is_locked-on-context-lookup.patch
index c5bde4458de57c..be69cbcf3d3292 100644
--- a/patches.baytrail/0117-drm-i915-Assert-mutex_is_locked-on-context-lookup.patch
+++ b/patches.baytrail/0117-drm-i915-Assert-mutex_is_locked-on-context-lookup.patch
@@ -19,14 +19,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 186507e9e8e89d5920305fdffd8cbba6366da795)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem_context.c | 2 ++
+ drivers/gpu/drm/i915/i915_gem_context.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 0407e0a39987..604ecd3e3a7f 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -463,6 +463,8 @@ int i915_switch_context(struct intel_ring_buffer *ring,
+@@ -461,6 +461,8 @@ int i915_switch_context(struct intel_rin
if (dev_priv->hw_contexts_disabled)
return 0;
@@ -35,6 +33,3 @@ index 0407e0a39987..604ecd3e3a7f 100644
if (ring != &dev_priv->ring[RCS])
return 0;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0126-drm-i915-add-power-well-and-cpu-transcoder-info-to-t.patch b/patches.baytrail/0126-drm-i915-add-power-well-and-cpu-transcoder-info-to-t.patch
index 449b3c094ffd51..4a090e6597ea5e 100644
--- a/patches.baytrail/0126-drm-i915-add-power-well-and-cpu-transcoder-info-to-t.patch
+++ b/patches.baytrail/0126-drm-i915-add-power-well-and-cpu-transcoder-info-to-t.patch
@@ -12,14 +12,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ff57f1b095e7c3ad0720193cd341d8ac1c781156)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 13 +++++++++++++
+ drivers/gpu/drm/i915/intel_display.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 4978de91fa5d..35fc69351889 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -9811,6 +9811,9 @@ int intel_modeset_vga_set_state(struct drm_device *dev, bool state)
+@@ -9814,6 +9814,9 @@ int intel_modeset_vga_set_state(struct d
#include <linux/seq_file.h>
struct intel_display_error_state {
@@ -29,7 +27,7 @@ index 4978de91fa5d..35fc69351889 100644
struct intel_cursor_error_state {
u32 control;
u32 position;
-@@ -9819,6 +9822,7 @@ struct intel_display_error_state {
+@@ -9822,6 +9825,7 @@ struct intel_display_error_state {
} cursor[I915_MAX_PIPES];
struct intel_pipe_error_state {
@@ -37,7 +35,7 @@ index 4978de91fa5d..35fc69351889 100644
u32 conf;
u32 source;
-@@ -9853,8 +9857,12 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -9856,8 +9860,12 @@ intel_display_capture_error_state(struct
if (error == NULL)
return NULL;
@@ -50,7 +48,7 @@ index 4978de91fa5d..35fc69351889 100644
if (INTEL_INFO(dev)->gen <= 6 || IS_VALLEYVIEW(dev)) {
error->cursor[i].control = I915_READ(CURCNTR(i));
-@@ -9900,8 +9908,13 @@ intel_display_print_error_state(struct seq_file *m,
+@@ -9903,8 +9911,13 @@ intel_display_print_error_state(struct s
int i;
seq_printf(m, "Num Pipes: %d\n", INTEL_INFO(dev)->num_pipes);
@@ -64,6 +62,3 @@ index 4978de91fa5d..35fc69351889 100644
seq_printf(m, " CONF: %08x\n", error->pipe[i].conf);
seq_printf(m, " SRC: %08x\n", error->pipe[i].source);
seq_printf(m, " HTOTAL: %08x\n", error->pipe[i].htotal);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0127-drm-i915-clear-FPGA_DBG_RM_NOCLAIM-when-capturing-er.patch b/patches.baytrail/0127-drm-i915-clear-FPGA_DBG_RM_NOCLAIM-when-capturing-er.patch
index bc37343093d4c1..69dadfa696de01 100644
--- a/patches.baytrail/0127-drm-i915-clear-FPGA_DBG_RM_NOCLAIM-when-capturing-er.patch
+++ b/patches.baytrail/0127-drm-i915-clear-FPGA_DBG_RM_NOCLAIM-when-capturing-er.patch
@@ -19,14 +19,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 12d217c795071bfee483158e1397c57e8dc3cb76)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 7 +++++++
+ drivers/gpu/drm/i915/intel_display.c | 7 +++++++
1 file changed, 7 insertions(+)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 35fc69351889..7e3b4663e51d 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -9897,6 +9897,13 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -9900,6 +9900,13 @@ intel_display_capture_error_state(struct
error->pipe[i].vsync = I915_READ(VSYNC(cpu_transcoder));
}
@@ -40,6 +38,3 @@ index 35fc69351889..7e3b4663e51d 100644
return error;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0131-drm-i915-Add-references-to-some-workaround-we-implem.patch b/patches.baytrail/0131-drm-i915-Add-references-to-some-workaround-we-implem.patch
index 0f3d10b5adffc1..c5a7d6301a8eb8 100644
--- a/patches.baytrail/0131-drm-i915-Add-references-to-some-workaround-we-implem.patch
+++ b/patches.baytrail/0131-drm-i915-Add-references-to-some-workaround-we-implem.patch
@@ -12,18 +12,16 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 8693a824873a0a97be77c1d5f1e98777f06f7305)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem_context.c | 1 +
- drivers/gpu/drm/i915/intel_ddi.c | 2 ++
- drivers/gpu/drm/i915/intel_display.c | 4 ++--
- drivers/gpu/drm/i915/intel_pm.c | 3 +++
- drivers/gpu/drm/i915/intel_ringbuffer.c | 2 ++
+ drivers/gpu/drm/i915/i915_gem_context.c | 1 +
+ drivers/gpu/drm/i915/intel_ddi.c | 2 ++
+ drivers/gpu/drm/i915/intel_display.c | 4 ++--
+ drivers/gpu/drm/i915/intel_pm.c | 3 +++
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 2 ++
5 files changed, 10 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 604ecd3e3a7f..59b536a7f773 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -333,6 +333,7 @@ mi_set_context(struct intel_ring_buffer *ring,
+@@ -331,6 +331,7 @@ mi_set_context(struct intel_ring_buffer
if (ret)
return ret;
@@ -31,11 +29,9 @@ index 604ecd3e3a7f..59b536a7f773 100644
if (IS_GEN7(ring->dev))
intel_ring_emit(ring, MI_ARB_ON_OFF | MI_ARB_DISABLE);
else
-diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
-index 46181000f6bd..217308ec3b3d 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
-@@ -174,6 +174,8 @@ void hsw_fdi_link_train(struct drm_crtc *crtc)
+@@ -174,6 +174,8 @@ void hsw_fdi_link_train(struct drm_crtc
* mode set "sequence for CRT port" document:
* - TP1 to TP2 time with the default value
* - FDI delay to 90h
@@ -44,11 +40,9 @@ index 46181000f6bd..217308ec3b3d 100644
*/
I915_WRITE(_FDI_RXA_MISC, FDI_RX_PWRDN_LANE1_VAL(2) |
FDI_RX_PWRDN_LANE0_VAL(2) |
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index f3d8e0915d7f..e43dad8d28bb 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -4121,8 +4121,8 @@ static int intel_crtc_compute_config(struct drm_crtc *crtc,
+@@ -4121,8 +4121,8 @@ static int intel_crtc_compute_config(str
if (!pipe_config->timings_set)
drm_mode_set_crtcinfo(adjusted_mode, 0);
@@ -59,11 +53,9 @@ index f3d8e0915d7f..e43dad8d28bb 100644
*/
if ((INTEL_INFO(dev)->gen > 4 || IS_G4X(dev)) &&
adjusted_mode->hsync_start == adjusted_mode->hdisplay)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 89fe32002246..f88cfbedc90e 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -4586,6 +4586,7 @@ static void __gen6_gt_force_wake_get(struct drm_i915_private *dev_priv)
+@@ -4586,6 +4586,7 @@ static void __gen6_gt_force_wake_get(str
FORCEWAKE_ACK_TIMEOUT_MS))
DRM_ERROR("Timed out waiting for forcewake to ack request.\n");
@@ -71,7 +63,7 @@ index 89fe32002246..f88cfbedc90e 100644
__gen6_gt_wait_for_thread_c0(dev_priv);
}
-@@ -4617,6 +4618,7 @@ static void __gen6_gt_force_wake_mt_get(struct drm_i915_private *dev_priv)
+@@ -4617,6 +4618,7 @@ static void __gen6_gt_force_wake_mt_get(
FORCEWAKE_ACK_TIMEOUT_MS))
DRM_ERROR("Timed out waiting for forcewake to ack request.\n");
@@ -79,7 +71,7 @@ index 89fe32002246..f88cfbedc90e 100644
__gen6_gt_wait_for_thread_c0(dev_priv);
}
-@@ -4720,6 +4722,7 @@ static void vlv_force_wake_get(struct drm_i915_private *dev_priv)
+@@ -4720,6 +4722,7 @@ static void vlv_force_wake_get(struct dr
FORCEWAKE_ACK_TIMEOUT_MS))
DRM_ERROR("Timed out waiting for media to ack forcewake request.\n");
@@ -87,11 +79,9 @@ index 89fe32002246..f88cfbedc90e 100644
__gen6_gt_wait_for_thread_c0(dev_priv);
}
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 48fe23e8d180..d99ff99b07b2 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -511,6 +511,8 @@ static int init_render_ring(struct intel_ring_buffer *ring)
+@@ -511,6 +511,8 @@ static int init_render_ring(struct intel
/* We need to disable the AsyncFlip performance optimisations in order
* to use MI_WAIT_FOR_EVENT within the CS. It should already be
* programmed to '1' on all products.
@@ -100,6 +90,3 @@ index 48fe23e8d180..d99ff99b07b2 100644
*/
if (INTEL_INFO(dev)->gen >= 6)
I915_WRITE(MI_MODE, _MASKED_BIT_ENABLE(ASYNC_FLIP_PERF_DISABLE));
---
-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 bb98dfe1a1bfb5..1dedd067edbc9a 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
@@ -18,23 +18,21 @@ Conflicts:
drivers/gpu/drm/i915/intel_sdvo.c
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 8 +--
- drivers/gpu/drm/i915/i915_drv.h | 57 +++++++++++---------
- drivers/gpu/drm/i915/intel_bios.c | 100 +++++++++++++++++------------------
- drivers/gpu/drm/i915/intel_crt.c | 4 +-
- drivers/gpu/drm/i915/intel_display.c | 12 ++---
- drivers/gpu/drm/i915/intel_dp.c | 18 +++----
- drivers/gpu/drm/i915/intel_lvds.c | 16 +++---
- drivers/gpu/drm/i915/intel_pm.c | 2 +-
- drivers/gpu/drm/i915/intel_sdvo.c | 24 ++++-----
- drivers/gpu/drm/i915/intel_tv.c | 8 +--
+ drivers/gpu/drm/i915/i915_dma.c | 8 +-
+ drivers/gpu/drm/i915/i915_drv.h | 57 +++++++++++--------
+ drivers/gpu/drm/i915/intel_bios.c | 100 +++++++++++++++++------------------
+ drivers/gpu/drm/i915/intel_crt.c | 4 -
+ drivers/gpu/drm/i915/intel_display.c | 12 ++--
+ drivers/gpu/drm/i915/intel_dp.c | 18 +++---
+ drivers/gpu/drm/i915/intel_lvds.c | 16 ++---
+ drivers/gpu/drm/i915/intel_pm.c | 2
+ drivers/gpu/drm/i915/intel_sdvo.c | 24 +++-----
+ drivers/gpu/drm/i915/intel_tv.c | 8 +-
10 files changed, 127 insertions(+), 122 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 68a57031db2c..18caacf647d0 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1744,10 +1744,10 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1752,10 +1752,10 @@ int i915_driver_unload(struct drm_device
* free the memory space allocated for the child device
* config parsed from VBT
*/
@@ -49,8 +47,6 @@ index 68a57031db2c..18caacf647d0 100644
}
vga_switcheroo_unregister_client(dev->pdev);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 05752eb2eb0c..dc2997828af1 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -892,6 +892,37 @@ enum modeset_restore {
@@ -140,11 +136,9 @@ index 05752eb2eb0c..dc2997828af1 100644
bool mchbar_need_disable;
-diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
-index 95070b2124c6..53f2bed8bc5f 100644
--- a/drivers/gpu/drm/i915/intel_bios.c
+++ b/drivers/gpu/drm/i915/intel_bios.c
-@@ -212,7 +212,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+@@ -212,7 +212,7 @@ parse_lfp_panel_data(struct drm_i915_pri
if (!lvds_options)
return;
@@ -153,7 +147,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
if (lvds_options->panel_type == 0xff)
return;
-@@ -226,7 +226,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+@@ -226,7 +226,7 @@ parse_lfp_panel_data(struct drm_i915_pri
if (!lvds_lfp_data_ptrs)
return;
@@ -162,7 +156,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
panel_dvo_timing = get_lvds_dvo_timing(lvds_lfp_data,
lvds_lfp_data_ptrs,
-@@ -238,7 +238,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+@@ -238,7 +238,7 @@ parse_lfp_panel_data(struct drm_i915_pri
fill_detail_timing_data(panel_fixed_mode, panel_dvo_timing);
@@ -171,7 +165,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
DRM_DEBUG_KMS("Found panel mode in BIOS VBT tables:\n");
drm_mode_debug_printmodeline(panel_fixed_mode);
-@@ -274,9 +274,9 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+@@ -274,9 +274,9 @@ parse_lfp_panel_data(struct drm_i915_pri
/* check the resolution, just to be sure */
if (fp_timing->x_res == panel_fixed_mode->hdisplay &&
fp_timing->y_res == panel_fixed_mode->vdisplay) {
@@ -183,7 +177,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
}
}
}
-@@ -316,7 +316,7 @@ parse_sdvo_panel_data(struct drm_i915_private *dev_priv,
+@@ -316,7 +316,7 @@ parse_sdvo_panel_data(struct drm_i915_pr
fill_detail_timing_data(panel_fixed_mode, dvo_timing + index);
@@ -192,7 +186,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
DRM_DEBUG_KMS("Found SDVO panel mode in BIOS VBT tables:\n");
drm_mode_debug_printmodeline(panel_fixed_mode);
-@@ -345,20 +345,20 @@ parse_general_features(struct drm_i915_private *dev_priv,
+@@ -345,20 +345,20 @@ parse_general_features(struct drm_i915_p
general = find_section(bdb, BDB_GENERAL_FEATURES);
if (general) {
@@ -225,7 +219,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
}
}
-@@ -375,7 +375,7 @@ parse_general_definitions(struct drm_i915_private *dev_priv,
+@@ -375,7 +375,7 @@ parse_general_definitions(struct drm_i91
int bus_pin = general->crt_ddc_gmbus_pin;
DRM_DEBUG_KMS("crt_ddc_bus_pin: %d\n", bus_pin);
if (intel_gmbus_is_port_valid(bus_pin))
@@ -234,7 +228,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
} else {
DRM_DEBUG_KMS("BDB_GD too small (%d). Invalid.\n",
block_size);
-@@ -486,7 +486,7 @@ parse_driver_features(struct drm_i915_private *dev_priv,
+@@ -486,7 +486,7 @@ parse_driver_features(struct drm_i915_pr
if (SUPPORTS_EDP(dev) &&
driver->lvds_config == BDB_DRIVER_FEATURE_EDP)
@@ -243,7 +237,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
if (driver->dual_frequency)
dev_priv->render_reclock_avail = true;
-@@ -501,20 +501,20 @@ parse_edp(struct drm_i915_private *dev_priv, struct bdb_header *bdb)
+@@ -501,20 +501,20 @@ parse_edp(struct drm_i915_private *dev_p
edp = find_section(bdb, BDB_EDP);
if (!edp) {
@@ -268,7 +262,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
break;
}
-@@ -522,48 +522,48 @@ parse_edp(struct drm_i915_private *dev_priv, struct bdb_header *bdb)
+@@ -522,48 +522,48 @@ parse_edp(struct drm_i915_private *dev_p
edp_pps = &edp->power_seqs[panel_type];
edp_link_params = &edp->link_params[panel_type];
@@ -330,7 +324,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
break;
}
}
-@@ -611,13 +611,13 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
+@@ -611,13 +611,13 @@ parse_device_mapping(struct drm_i915_pri
DRM_DEBUG_KMS("no child dev is parsed from VBT\n");
return;
}
@@ -347,7 +341,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
count = 0;
for (i = 0; i < child_device_num; i++) {
p_child = &(p_defs->devices[i]);
-@@ -625,7 +625,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
+@@ -625,7 +625,7 @@ parse_device_mapping(struct drm_i915_pri
/* skip the device block if device type is invalid */
continue;
}
@@ -356,7 +350,7 @@ index 95070b2124c6..53f2bed8bc5f 100644
count++;
memcpy((void *)child_dev_ptr, (void *)p_child,
sizeof(*p_child));
-@@ -638,23 +638,23 @@ init_vbt_defaults(struct drm_i915_private *dev_priv)
+@@ -638,23 +638,23 @@ init_vbt_defaults(struct drm_i915_privat
{
struct drm_device *dev = dev_priv->dev;
@@ -389,11 +383,9 @@ index 95070b2124c6..53f2bed8bc5f 100644
}
static int __init intel_no_opregion_vbt_callback(const struct dmi_system_id *id)
-diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index 1b9ebf4b77fc..66a0c6f0bb81 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
-@@ -435,7 +435,7 @@ static bool intel_crt_detect_ddc(struct drm_connector *connector)
+@@ -435,7 +435,7 @@ static bool intel_crt_detect_ddc(struct
BUG_ON(crt->base.type != INTEL_OUTPUT_ANALOG);
@@ -402,7 +394,7 @@ index 1b9ebf4b77fc..66a0c6f0bb81 100644
edid = intel_crt_get_edid(connector, i2c);
if (edid) {
-@@ -641,7 +641,7 @@ static int intel_crt_get_modes(struct drm_connector *connector)
+@@ -641,7 +641,7 @@ static int intel_crt_get_modes(struct dr
int ret;
struct i2c_adapter *i2c;
@@ -411,11 +403,9 @@ index 1b9ebf4b77fc..66a0c6f0bb81 100644
ret = intel_crt_ddc_get_modes(connector, i2c);
if (ret || !IS_G4X(dev))
return ret;
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 0cfe23a65439..cd9600956dd7 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -4248,7 +4248,7 @@ static inline bool intel_panel_use_ssc(struct drm_i915_private *dev_priv)
+@@ -4248,7 +4248,7 @@ static inline bool intel_panel_use_ssc(s
{
if (i915_panel_use_ssc >= 0)
return i915_panel_use_ssc != 0;
@@ -424,7 +414,7 @@ index 0cfe23a65439..cd9600956dd7 100644
&& !(dev_priv->quirks & QUIRK_LVDS_SSC_DISABLE);
}
-@@ -4284,7 +4284,7 @@ static int i9xx_get_refclk(struct drm_crtc *crtc, int num_connectors)
+@@ -4284,7 +4284,7 @@ static int i9xx_get_refclk(struct drm_cr
refclk = vlv_get_refclk(crtc);
} else if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS) &&
intel_panel_use_ssc(dev_priv) && num_connectors < 2) {
@@ -433,7 +423,7 @@ index 0cfe23a65439..cd9600956dd7 100644
DRM_DEBUG_KMS("using SSC reference clock of %d MHz\n",
refclk / 1000);
} else if (!IS_GEN2(dev)) {
-@@ -5036,7 +5036,7 @@ static void ironlake_init_pch_refclk(struct drm_device *dev)
+@@ -5036,7 +5036,7 @@ static void ironlake_init_pch_refclk(str
}
if (HAS_PCH_IBX(dev)) {
@@ -442,7 +432,7 @@ index 0cfe23a65439..cd9600956dd7 100644
can_ssc = has_ck505;
} else {
has_ck505 = false;
-@@ -5348,8 +5348,8 @@ static int ironlake_get_refclk(struct drm_crtc *crtc)
+@@ -5348,8 +5348,8 @@ static int ironlake_get_refclk(struct dr
if (is_lvds && intel_panel_use_ssc(dev_priv) && num_connectors < 2) {
DRM_DEBUG_KMS("using SSC reference clock of %d MHz\n",
@@ -453,7 +443,7 @@ index 0cfe23a65439..cd9600956dd7 100644
}
return 120000;
-@@ -5628,7 +5628,7 @@ static uint32_t ironlake_compute_dpll(struct intel_crtc *intel_crtc,
+@@ -5628,7 +5628,7 @@ static uint32_t ironlake_compute_dpll(st
factor = 21;
if (is_lvds) {
if ((intel_panel_use_ssc(dev_priv) &&
@@ -462,11 +452,9 @@ index 0cfe23a65439..cd9600956dd7 100644
(HAS_PCH_IBX(dev) && intel_is_dual_link_lvds(dev)))
factor = 25;
} else if (intel_crtc->config.sdvo_tv_clock)
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 58186ba367d1..848d3d436f7e 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -738,10 +738,10 @@ intel_dp_compute_config(struct intel_encoder *encoder,
+@@ -738,10 +738,10 @@ intel_dp_compute_config(struct intel_enc
* recomments. This means we'll up-dither 16bpp framebuffers on
* high-depth panels.
*/
@@ -480,7 +468,7 @@ index 58186ba367d1..848d3d436f7e 100644
}
for (; bpp >= 6*3; bpp -= 2*3) {
-@@ -2795,11 +2795,11 @@ bool intel_dpd_is_edp(struct drm_device *dev)
+@@ -2795,11 +2795,11 @@ bool intel_dpd_is_edp(struct drm_device
struct child_device_config *p_child;
int i;
@@ -495,7 +483,7 @@ index 58186ba367d1..848d3d436f7e 100644
if (p_child->dvo_port == PORT_IDPD &&
p_child->device_type == DEVICE_TYPE_eDP)
-@@ -2877,7 +2877,7 @@ intel_dp_init_panel_power_sequencer(struct drm_device *dev,
+@@ -2877,7 +2877,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);
@@ -504,7 +492,7 @@ index 58186ba367d1..848d3d436f7e 100644
/* 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_digital_port *intel_dig_port,
+@@ -3147,8 +3147,8 @@ intel_dp_init_connector(struct intel_dig
}
/* fallback to VBT if available for eDP */
@@ -515,11 +503,9 @@ index 58186ba367d1..848d3d436f7e 100644
if (fixed_mode)
fixed_mode->type |= DRM_MODE_TYPE_PREFERRED;
}
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index b314ef3ee644..04da66914757 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -767,11 +767,11 @@ static bool lvds_is_present_in_vbt(struct drm_device *dev,
+@@ -767,11 +767,11 @@ static bool lvds_is_present_in_vbt(struc
struct drm_i915_private *dev_priv = dev->dev_private;
int i;
@@ -534,7 +520,7 @@ index b314ef3ee644..04da66914757 100644
/* If the device type is not LFP, continue.
* We have to check both the new identifiers as well as the
-@@ -859,7 +859,7 @@ static bool compute_is_dual_link_lvds(struct intel_lvds_encoder *lvds_encoder)
+@@ -859,7 +859,7 @@ static bool compute_is_dual_link_lvds(st
*/
val = I915_READ(lvds_encoder->reg);
if (!(val & ~(LVDS_PIPE_MASK | LVDS_DETECTED)))
@@ -543,7 +529,7 @@ index b314ef3ee644..04da66914757 100644
return (val & LVDS_CLKB_POWER_MASK) == LVDS_CLKB_POWER_UP;
}
-@@ -919,7 +919,7 @@ bool intel_lvds_init(struct drm_device *dev)
+@@ -919,7 +919,7 @@ bool intel_lvds_init(struct drm_device *
if (HAS_PCH_SPLIT(dev)) {
if ((I915_READ(PCH_LVDS) & LVDS_DETECTED) == 0)
return false;
@@ -552,7 +538,7 @@ index b314ef3ee644..04da66914757 100644
DRM_DEBUG_KMS("disable LVDS for eDP support\n");
return false;
}
-@@ -1037,11 +1037,11 @@ bool intel_lvds_init(struct drm_device *dev)
+@@ -1037,11 +1037,11 @@ bool intel_lvds_init(struct drm_device *
}
/* Failed to get EDID, what about VBT? */
@@ -567,11 +553,9 @@ index b314ef3ee644..04da66914757 100644
if (fixed_mode) {
fixed_mode->type |= DRM_MODE_TYPE_PREFERRED;
goto out;
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 787813bb61c2..df200a67492f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3889,7 +3889,7 @@ static void cpt_init_clock_gating(struct drm_device *dev)
+@@ -3889,7 +3889,7 @@ static void cpt_init_clock_gating(struct
val = I915_READ(TRANS_CHICKEN2(pipe));
val |= TRANS_CHICKEN2_TIMING_OVERRIDE;
val &= ~TRANS_CHICKEN2_FDI_POLARITY_REVERSED;
@@ -580,11 +564,9 @@ index 787813bb61c2..df200a67492f 100644
val |= TRANS_CHICKEN2_FDI_POLARITY_REVERSED;
val &= ~TRANS_CHICKEN2_FRAME_START_DELAY_MASK;
val &= ~TRANS_CHICKEN2_DISABLE_DEEP_COLOR_COUNTER;
-diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index 03831c95b228..474fa8addab1 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
-@@ -1526,7 +1526,7 @@ intel_sdvo_get_analog_edid(struct drm_connector *connector)
+@@ -1526,7 +1526,7 @@ intel_sdvo_get_analog_edid(struct drm_co
return drm_get_edid(connector,
intel_gmbus_get_adapter(dev_priv,
@@ -593,7 +575,7 @@ index 03831c95b228..474fa8addab1 100644
}
static enum drm_connector_status
-@@ -1800,21 +1800,12 @@ static void intel_sdvo_get_lvds_modes(struct drm_connector *connector)
+@@ -1800,21 +1800,12 @@ static void intel_sdvo_get_lvds_modes(st
struct drm_display_mode *newmode;
/*
@@ -618,7 +600,7 @@ index 03831c95b228..474fa8addab1 100644
if (newmode != NULL) {
/* Guarantee the mode is preferred */
newmode->type = (DRM_MODE_TYPE_PREFERRED |
-@@ -1823,6 +1814,13 @@ static void intel_sdvo_get_lvds_modes(struct drm_connector *connector)
+@@ -1823,6 +1814,13 @@ static void intel_sdvo_get_lvds_modes(st
}
}
@@ -632,11 +614,9 @@ index 03831c95b228..474fa8addab1 100644
list_for_each_entry(newmode, &connector->probed_modes, head) {
if (newmode->type & DRM_MODE_TYPE_PREFERRED) {
intel_sdvo->sdvo_lvds_fixed_mode =
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index a202d8d08c56..a2fb39dede3c 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
-@@ -1529,12 +1529,12 @@ static int tv_is_present_in_vbt(struct drm_device *dev)
+@@ -1529,12 +1529,12 @@ static int tv_is_present_in_vbt(struct d
struct child_device_config *p_child;
int i, ret;
@@ -661,6 +641,3 @@ index a202d8d08c56..a2fb39dede3c 100644
return;
/*
---
-1.8.5.rc3
-
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 55bf6ae2d3f696..8ed8881275efa2 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
@@ -11,11 +11,9 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 1c0f6749e86a990eca10499c8da2b04888ce4560)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 42 ++++-------------------------------------
+ drivers/gpu/drm/i915/i915_dma.c | 42 +++-------------------------------------
1 file changed, 4 insertions(+), 38 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 18caacf647d0..29bb1303e662 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -42,7 +42,6 @@
@@ -26,7 +24,7 @@ index 18caacf647d0..29bb1303e662 100644
#define LP_RING(d) (&((struct drm_i915_private *)(d))->ring[RCS])
-@@ -1397,29 +1396,6 @@ void i915_master_destroy(struct drm_device *dev, struct drm_master *master)
+@@ -1405,29 +1404,6 @@ void i915_master_destroy(struct drm_devi
master->driver_priv = NULL;
}
@@ -56,7 +54,7 @@ index 18caacf647d0..29bb1303e662 100644
static void i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
{
struct apertures_struct *ap;
-@@ -1587,8 +1563,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1595,8 +1571,8 @@ int i915_driver_load(struct drm_device *
goto out_rmmap;
}
@@ -67,7 +65,7 @@ index 18caacf647d0..29bb1303e662 100644
/* The i915 workqueue is primarily used for batched retirement of
* requests (and thus managing bo) once the task has been completed
-@@ -1686,12 +1662,7 @@ out_gem_unload:
+@@ -1694,12 +1670,7 @@ out_gem_unload:
intel_teardown_mchbar(dev);
destroy_workqueue(dev_priv->wq);
out_mtrrfree:
@@ -81,7 +79,7 @@ index 18caacf647d0..29bb1303e662 100644
io_mapping_free(dev_priv->gtt.mappable);
dev_priv->gtt.gtt_remove(dev);
out_rmmap:
-@@ -1726,12 +1697,7 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1734,12 +1705,7 @@ int i915_driver_unload(struct drm_device
cancel_delayed_work_sync(&dev_priv->mm.retire_work);
io_mapping_free(dev_priv->gtt.mappable);
@@ -95,6 +93,3 @@ index 18caacf647d0..29bb1303e662 100644
acpi_video_unregister();
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0182-drm-i915-avoid-big-kmallocs-on-reading-error-state.patch b/patches.baytrail/0182-drm-i915-avoid-big-kmallocs-on-reading-error-state.patch
index 7c60b13b812ba9..16b52dbdba2b70 100644
--- a/patches.baytrail/0182-drm-i915-avoid-big-kmallocs-on-reading-error-state.patch
+++ b/patches.baytrail/0182-drm-i915-avoid-big-kmallocs-on-reading-error-state.patch
@@ -21,17 +21,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit edc3d8848dc9fe2a470316363dab8ef211d77e01)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 242 ++++++++++++++++++++++++++---------
- drivers/gpu/drm/i915/i915_drv.h | 16 ++-
- drivers/gpu/drm/i915/intel_display.c | 54 ++++----
- drivers/gpu/drm/i915/intel_overlay.c | 13 +-
- 4 files changed, 232 insertions(+), 93 deletions(-)
+ drivers/gpu/drm/i915/i915_debugfs.c | 242 ++++++++++++++++++++++++++---------
+ drivers/gpu/drm/i915/i915_drv.h | 16 ++
+ drivers/gpu/drm/i915/intel_display.c | 52 +++----
+ drivers/gpu/drm/i915/intel_overlay.c | 13 +
+ 4 files changed, 231 insertions(+), 92 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index a55630a80f83..3a8409a31266 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -604,15 +604,80 @@ static const char *purgeable_flag(int purgeable)
+@@ -604,15 +604,80 @@ static const char *purgeable_flag(int pu
return purgeable ? " purgeable" : "";
}
@@ -115,7 +113,7 @@ index a55630a80f83..3a8409a31266 100644
err->gtt_offset,
err->size,
err->read_domains,
-@@ -627,50 +692,50 @@ static void print_error_buffers(struct seq_file *m,
+@@ -627,50 +692,50 @@ static void print_error_buffers(struct s
cache_level_str(err->cache_level));
if (err->name)
@@ -204,7 +202,7 @@ index a55630a80f83..3a8409a31266 100644
struct drm_device *dev = error_priv->dev;
drm_i915_private_t *dev_priv = dev->dev_private;
struct drm_i915_error_state *error = error_priv->error;
-@@ -688,34 +755,35 @@ static int i915_error_state(struct seq_file *m, void *unused)
+@@ -688,34 +755,35 @@ static int i915_error_state(struct seq_f
int i, j, page, offset, elt;
if (!error) {
@@ -255,7 +253,7 @@ index a55630a80f83..3a8409a31266 100644
for_each_ring(ring, dev_priv, i)
i915_ring_error_state(m, dev, error, i);
-@@ -734,24 +802,25 @@ static int i915_error_state(struct seq_file *m, void *unused)
+@@ -734,24 +802,25 @@ static int i915_error_state(struct seq_f
struct drm_i915_error_object *obj;
if ((obj = error->ring[i].batchbuffer)) {
@@ -285,7 +283,7 @@ index a55630a80f83..3a8409a31266 100644
error->ring[i].requests[j].seqno,
error->ring[i].requests[j].jiffies,
error->ring[i].requests[j].tail);
-@@ -759,13 +828,13 @@ static int i915_error_state(struct seq_file *m, void *unused)
+@@ -759,13 +828,13 @@ static int i915_error_state(struct seq_f
}
if ((obj = error->ring[i].ringbuffer)) {
@@ -301,7 +299,7 @@ index a55630a80f83..3a8409a31266 100644
offset,
obj->pages[page][elt]);
offset += 4;
-@@ -775,12 +844,12 @@ static int i915_error_state(struct seq_file *m, void *unused)
+@@ -775,12 +844,12 @@ static int i915_error_state(struct seq_f
obj = error->ring[i].ctx;
if (obj) {
@@ -316,7 +314,7 @@ index a55630a80f83..3a8409a31266 100644
offset,
obj->pages[0][elt],
obj->pages[0][elt+1],
-@@ -806,8 +875,7 @@ i915_error_state_write(struct file *filp,
+@@ -806,8 +875,7 @@ i915_error_state_write(struct file *filp
size_t cnt,
loff_t *ppos)
{
@@ -326,7 +324,7 @@ index a55630a80f83..3a8409a31266 100644
struct drm_device *dev = error_priv->dev;
int ret;
-@@ -842,25 +910,81 @@ static int i915_error_state_open(struct inode *inode, struct file *file)
+@@ -842,25 +910,81 @@ static int i915_error_state_open(struct
kref_get(&error_priv->error->ref);
spin_unlock_irqrestore(&dev_priv->gpu_error.lock, flags);
@@ -413,8 +411,6 @@ index a55630a80f83..3a8409a31266 100644
.write = i915_error_state_write,
.llseek = default_llseek,
.release = i915_error_state_release,
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 4ab1e4266da0..e8c1ffbc9db3 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -827,6 +827,15 @@ struct i915_gem_mm {
@@ -433,7 +429,7 @@ index 4ab1e4266da0..e8c1ffbc9db3 100644
struct i915_gpu_error {
/* For hangcheck timer */
#define DRM_I915_HANGCHECK_PERIOD 1500 /* in ms */
-@@ -1822,6 +1831,8 @@ void i915_gem_dump_object(struct drm_i915_gem_object *obj, int len,
+@@ -1822,6 +1831,8 @@ void i915_gem_dump_object(struct drm_i91
/* i915_debugfs.c */
int i915_debugfs_init(struct drm_minor *minor);
void i915_debugfs_cleanup(struct drm_minor *minor);
@@ -442,7 +438,7 @@ index 4ab1e4266da0..e8c1ffbc9db3 100644
/* i915_suspend.c */
extern int i915_save_state(struct drm_device *dev);
-@@ -1903,10 +1914,11 @@ int i915_reg_read_ioctl(struct drm_device *dev, void *data,
+@@ -1903,10 +1914,11 @@ int i915_reg_read_ioctl(struct drm_devic
/* overlay */
#ifdef CONFIG_DEBUG_FS
extern struct intel_overlay_error_state *intel_overlay_capture_error_state(struct drm_device *dev);
@@ -456,11 +452,9 @@ index 4ab1e4266da0..e8c1ffbc9db3 100644
struct drm_device *dev,
struct intel_display_error_state *error);
#endif
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index e62a9770cf71..121fc5d31c7d 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -9905,48 +9905,50 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -9908,48 +9908,50 @@ intel_display_capture_error_state(struct
return error;
}
@@ -494,10 +488,6 @@ index e62a9770cf71..121fc5d31c7d 100644
- seq_printf(m, " VTOTAL: %08x\n", error->pipe[i].vtotal);
- seq_printf(m, " VBLANK: %08x\n", error->pipe[i].vblank);
- seq_printf(m, " VSYNC: %08x\n", error->pipe[i].vsync);
--
-- seq_printf(m, "Plane [%d]:\n", i);
-- seq_printf(m, " CNTR: %08x\n", error->plane[i].control);
-- seq_printf(m, " STRIDE: %08x\n", error->plane[i].stride);
+ err_printf(m, " CONF: %08x\n", error->pipe[i].conf);
+ err_printf(m, " SRC: %08x\n", error->pipe[i].source);
+ err_printf(m, " HTOTAL: %08x\n", error->pipe[i].htotal);
@@ -506,7 +496,10 @@ index e62a9770cf71..121fc5d31c7d 100644
+ err_printf(m, " VTOTAL: %08x\n", error->pipe[i].vtotal);
+ err_printf(m, " VBLANK: %08x\n", error->pipe[i].vblank);
+ err_printf(m, " VSYNC: %08x\n", error->pipe[i].vsync);
-+
+
+- seq_printf(m, "Plane [%d]:\n", i);
+- seq_printf(m, " CNTR: %08x\n", error->plane[i].control);
+- seq_printf(m, " STRIDE: %08x\n", error->plane[i].stride);
+ err_printf(m, "Plane [%d]:\n", i);
+ err_printf(m, " CNTR: %08x\n", error->plane[i].control);
+ err_printf(m, " STRIDE: %08x\n", error->plane[i].stride);
@@ -537,8 +530,6 @@ index e62a9770cf71..121fc5d31c7d 100644
}
}
#endif
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 67a2501d519d..836794b68fc6 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
@@ -1485,14 +1485,15 @@ err:
@@ -563,6 +554,3 @@ index 67a2501d519d..836794b68fc6 100644
P(OBUF_0Y);
P(OBUF_1Y);
P(OBUF_0U);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0195-drm-i915-use-mappable-size-for-fb-kickout.patch b/patches.baytrail/0195-drm-i915-use-mappable-size-for-fb-kickout.patch
index fdd1d5ca3ede71..44cc4e91daa467 100644
--- a/patches.baytrail/0195-drm-i915-use-mappable-size-for-fb-kickout.patch
+++ b/patches.baytrail/0195-drm-i915-use-mappable-size-for-fb-kickout.patch
@@ -24,14 +24,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit f64e29227d80cc15c37c7dbf7030ffc8c415cbd4)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 29bb1303e662..09233f9c5640 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1407,7 +1407,7 @@ static void i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
+@@ -1415,7 +1415,7 @@ static void i915_kick_out_firmware_fb(st
return;
ap->ranges[0].base = dev_priv->gtt.mappable_base;
@@ -40,6 +38,3 @@ index 29bb1303e662..09233f9c5640 100644
primary =
pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
---
-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 19b33c92b22da2..4a6531de605193 100644
--- a/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch
+++ b/patches.baytrail/0196-drm-i915-use-drm_mm_takedown.patch
@@ -11,14 +11,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit dd62eabd1d54336a2d5d3758ab4393cd13254102)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 ++
+ drivers/gpu/drm/i915/i915_dma.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 09233f9c5640..d9ee7e82a4a1 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1360,6 +1360,7 @@ cleanup_gem:
+@@ -1368,6 +1368,7 @@ cleanup_gem:
i915_gem_cleanup_ringbuffer(dev);
mutex_unlock(&dev->struct_mutex);
i915_gem_cleanup_aliasing_ppgtt(dev);
@@ -26,7 +24,7 @@ index 09233f9c5640..d9ee7e82a4a1 100644
cleanup_irq:
drm_irq_uninstall(dev);
cleanup_gem_stolen:
-@@ -1746,6 +1747,7 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1754,6 +1755,7 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
@@ -34,6 +32,3 @@ index 09233f9c5640..d9ee7e82a4a1 100644
if (dev_priv->regs != NULL)
pci_iounmap(dev->pdev, dev_priv->regs);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0198-drm-i915-Call-context-fini-at-cleanup.patch b/patches.baytrail/0198-drm-i915-Call-context-fini-at-cleanup.patch
index 77cbcc20aa202f..1bf6bd5446dbd0 100644
--- a/patches.baytrail/0198-drm-i915-Call-context-fini-at-cleanup.patch
+++ b/patches.baytrail/0198-drm-i915-Call-context-fini-at-cleanup.patch
@@ -16,14 +16,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 55d23285745b1be7bd25a2a4ba5ba79e05ab843a)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 1 +
+ drivers/gpu/drm/i915/i915_dma.c | 1 +
1 file changed, 1 insertion(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index d9ee7e82a4a1..57198f4bdf2c 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1358,6 +1358,7 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1366,6 +1366,7 @@ static int i915_load_modeset_init(struct
cleanup_gem:
mutex_lock(&dev->struct_mutex);
i915_gem_cleanup_ringbuffer(dev);
@@ -31,6 +29,3 @@ index d9ee7e82a4a1..57198f4bdf2c 100644
mutex_unlock(&dev->struct_mutex);
i915_gem_cleanup_aliasing_ppgtt(dev);
drm_mm_takedown(&dev_priv->mm.gtt_space);
---
-1.8.5.rc3
-
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 5a7777c86eb532..fe1d00b46e33fa 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
@@ -9,14 +9,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 6640aab6f2aed89470bc44c7450b7573659e651e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 ++
+ drivers/gpu/drm/i915/i915_dma.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 57198f4bdf2c..0a61f6f6948d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1758,6 +1758,8 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1766,6 +1766,8 @@ int i915_driver_unload(struct drm_device
destroy_workqueue(dev_priv->wq);
pm_qos_remove_request(&dev_priv->pm_qos);
@@ -25,6 +23,3 @@ index 57198f4bdf2c..0a61f6f6948d 100644
if (dev_priv->slab)
kmem_cache_destroy(dev_priv->slab);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0233-drm-i915-add-I915_PARAM_HAS_VEBOX-to-i915_getparam.patch b/patches.baytrail/0233-drm-i915-add-I915_PARAM_HAS_VEBOX-to-i915_getparam.patch
index a3170676b8c777..893008dbf3b5d1 100644
--- a/patches.baytrail/0233-drm-i915-add-I915_PARAM_HAS_VEBOX-to-i915_getparam.patch
+++ b/patches.baytrail/0233-drm-i915-add-I915_PARAM_HAS_VEBOX-to-i915_getparam.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a1f2cc73c762868435ae6ec9126bb2240337c61c)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 3 +++
- include/uapi/drm/i915_drm.h | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 3 +++
+ include/uapi/drm/i915_drm.h | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 0a61f6f6948d..d392d8fb146e 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -955,6 +955,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
+@@ -963,6 +963,9 @@ static int i915_getparam(struct drm_devi
case I915_PARAM_HAS_BLT:
value = intel_ring_initialized(&dev_priv->ring[BCS]);
break;
@@ -31,8 +29,6 @@ index 0a61f6f6948d..d392d8fb146e 100644
case I915_PARAM_HAS_RELAXED_FENCING:
value = 1;
break;
-diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
-index 81b99817198e..923ed7fe5775 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -305,7 +305,7 @@ typedef struct drm_i915_irq_wait {
@@ -44,6 +40,3 @@ index 81b99817198e..923ed7fe5775 100644
#define I915_PARAM_HAS_SECURE_BATCHES 23
#define I915_PARAM_HAS_PINNED_BATCHES 24
#define I915_PARAM_HAS_EXEC_NO_RELOC 25
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0239-drm-i915-Demote-unknown-param-to-DRM_DEBUG.patch b/patches.baytrail/0239-drm-i915-Demote-unknown-param-to-DRM_DEBUG.patch
index 6ce398e8ca735f..fded118987bd28 100644
--- a/patches.baytrail/0239-drm-i915-Demote-unknown-param-to-DRM_DEBUG.patch
+++ b/patches.baytrail/0239-drm-i915-Demote-unknown-param-to-DRM_DEBUG.patch
@@ -13,14 +13,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e29c32da531dfd94cffb150fd69760605739fb3a)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 3 +--
+ drivers/gpu/drm/i915/i915_dma.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index d392d8fb146e..cd2a5f3f7db6 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1001,8 +1001,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
+@@ -1009,8 +1009,7 @@ static int i915_getparam(struct drm_devi
value = 1;
break;
default:
@@ -30,6 +28,3 @@ index d392d8fb146e..cd2a5f3f7db6 100644
return -EINVAL;
}
---
-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 1f88ead4270faf..03652575967991 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
@@ -16,19 +16,17 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a38911a3fede294e2adfd2deea8104dfbbd760c5)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 6 +++
- drivers/gpu/drm/i915/i915_drv.h | 12 ++++++
- drivers/gpu/drm/i915/intel_drv.h | 4 ++
- drivers/gpu/drm/i915/intel_pm.c | 81 ++++++++++++++++++++++++++++++++++++----
- include/drm/i915_powerwell.h | 36 ++++++++++++++++++
+ drivers/gpu/drm/i915/i915_dma.c | 6 ++
+ drivers/gpu/drm/i915/i915_drv.h | 12 +++++
+ drivers/gpu/drm/i915/intel_drv.h | 4 +
+ drivers/gpu/drm/i915/intel_pm.c | 81 +++++++++++++++++++++++++++++++++++----
+ include/drm/i915_powerwell.h | 36 +++++++++++++++++
5 files changed, 132 insertions(+), 7 deletions(-)
create mode 100644 include/drm/i915_powerwell.h
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index cd2a5f3f7db6..628f797358bb 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1634,6 +1634,9 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1642,6 +1642,9 @@ int i915_driver_load(struct drm_device *
/* Start out suspended */
dev_priv->mm.suspended = 1;
@@ -38,7 +36,7 @@ index cd2a5f3f7db6..628f797358bb 100644
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
ret = i915_load_modeset_init(dev);
if (ret < 0) {
-@@ -1685,6 +1688,9 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1693,6 +1696,9 @@ int i915_driver_unload(struct drm_device
intel_gpu_ips_teardown();
@@ -48,8 +46,6 @@ index cd2a5f3f7db6..628f797358bb 100644
i915_teardown_sysfs(dev);
if (dev_priv->mm.inactive_shrinker.shrink)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 5297b1fe3a2c..fec0c8f56e05 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -741,6 +741,15 @@ struct intel_ilk_power_mgmt {
@@ -78,11 +74,9 @@ index 5297b1fe3a2c..fec0c8f56e05 100644
enum no_fbc_reason no_fbc_reason;
struct drm_mm_node *compressed_fb;
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 915d2693e1a0..0e5897cb8d48 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -768,6 +768,10 @@ extern void intel_update_fbc(struct drm_device *dev);
+@@ -768,6 +768,10 @@ extern void intel_update_fbc(struct drm_
extern void intel_gpu_ips_init(struct drm_i915_private *dev_priv);
extern void intel_gpu_ips_teardown(void);
@@ -93,11 +87,9 @@ index 915d2693e1a0..0e5897cb8d48 100644
extern bool intel_display_power_enabled(struct drm_device *dev,
enum intel_display_power_domain domain);
extern void intel_init_power_well(struct drm_device *dev);
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index da49e46062e1..e3aa054417d6 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -5024,18 +5024,12 @@ bool intel_display_power_enabled(struct drm_device *dev,
+@@ -5024,18 +5024,12 @@ bool intel_display_power_enabled(struct
}
}
@@ -117,7 +109,7 @@ index da49e46062e1..e3aa054417d6 100644
tmp = I915_READ(HSW_PWR_WELL_DRIVER);
is_enabled = tmp & HSW_PWR_WELL_STATE;
enable_requested = tmp & HSW_PWR_WELL_ENABLE;
-@@ -5058,6 +5052,79 @@ void intel_set_power_well(struct drm_device *dev, bool enable)
+@@ -5058,6 +5052,79 @@ void intel_set_power_well(struct drm_dev
}
}
@@ -197,9 +189,6 @@ index da49e46062e1..e3aa054417d6 100644
/*
* Starting with Haswell, we have a "Power Down Well" that can be turned off
* when not needed anymore. We have 4 registers that can request the power well
-diff --git a/include/drm/i915_powerwell.h b/include/drm/i915_powerwell.h
-new file mode 100644
-index 000000000000..cfdc884405b7
--- /dev/null
+++ b/include/drm/i915_powerwell.h
@@ -0,0 +1,36 @@
@@ -239,6 +228,3 @@ index 000000000000..cfdc884405b7
+extern void i915_release_power_well(void);
+
+#endif /* _I915_POWERWELL_H_ */
---
-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 4ac351ce39f8ef..98406176eb939d 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
@@ -16,15 +16,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e59ec13de40ed1edd19940322ebd009423fd716d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/i915_drv.h | 10 ++++++++++
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_drv.h | 10 ++++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 628f797358bb..f4669802a0fb 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1782,7 +1782,7 @@ int i915_driver_open(struct drm_device *dev, struct drm_file *file)
+@@ -1790,7 +1790,7 @@ int i915_driver_open(struct drm_device *
struct drm_i915_file_private *file_priv;
DRM_DEBUG_DRIVER("\n");
@@ -33,8 +31,6 @@ index 628f797358bb..f4669802a0fb 100644
if (!file_priv)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 0b7d8fd1685b..95b19a53aa26 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -508,6 +508,13 @@ struct i915_hw_ppgtt {
@@ -68,6 +64,3 @@ index 0b7d8fd1685b..95b19a53aa26 100644
};
#define INTEL_INFO(dev) (((struct drm_i915_private *) (dev)->dev_private)->info)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0321-drm-i915-change-i915_add_request-to-macro.patch b/patches.baytrail/0321-drm-i915-change-i915_add_request-to-macro.patch
index fbdf526bcd2f72..ec740edf51fb93 100644
--- a/patches.baytrail/0321-drm-i915-change-i915_add_request-to-macro.patch
+++ b/patches.baytrail/0321-drm-i915-change-i915_add_request-to-macro.patch
@@ -20,19 +20,17 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 0025c0772de7451c2302fa628f038b213a0783bf)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 8 +++++---
- drivers/gpu/drm/i915/i915_gem.c | 11 +++++------
- drivers/gpu/drm/i915/i915_gem_context.c | 2 +-
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +-
- drivers/gpu/drm/i915/intel_overlay.c | 4 ++--
- drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
+ drivers/gpu/drm/i915/i915_drv.h | 8 +++++---
+ drivers/gpu/drm/i915/i915_gem.c | 11 +++++------
+ drivers/gpu/drm/i915/i915_gem_context.c | 2 +-
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +-
+ drivers/gpu/drm/i915/intel_overlay.c | 4 ++--
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
6 files changed, 15 insertions(+), 14 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index dcf5db4c0d8f..3d8ae61ffe3b 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1758,9 +1758,11 @@ void i915_gem_init_swizzling(struct drm_device *dev);
+@@ -1758,9 +1758,11 @@ void i915_gem_init_swizzling(struct drm_
void i915_gem_cleanup_ringbuffer(struct drm_device *dev);
int __must_check i915_gpu_idle(struct drm_device *dev);
int __must_check i915_gem_idle(struct drm_device *dev);
@@ -47,11 +45,9 @@ index dcf5db4c0d8f..3d8ae61ffe3b 100644
int __must_check i915_wait_seqno(struct intel_ring_buffer *ring,
uint32_t seqno);
int i915_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf);
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 694af6db61a2..6671b8e11e55 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -956,7 +956,7 @@ i915_gem_check_olr(struct intel_ring_buffer *ring, u32 seqno)
+@@ -956,7 +956,7 @@ i915_gem_check_olr(struct intel_ring_buf
ret = 0;
if (seqno == ring->outstanding_lazy_request)
@@ -60,7 +56,7 @@ index 694af6db61a2..6671b8e11e55 100644
return ret;
}
-@@ -2011,10 +2011,9 @@ i915_gem_get_seqno(struct drm_device *dev, u32 *seqno)
+@@ -2011,10 +2011,9 @@ i915_gem_get_seqno(struct drm_device *de
return 0;
}
@@ -74,7 +70,7 @@ index 694af6db61a2..6671b8e11e55 100644
{
drm_i915_private_t *dev_priv = ring->dev->dev_private;
struct drm_i915_gem_request *request;
-@@ -2290,7 +2289,7 @@ i915_gem_retire_work_handler(struct work_struct *work)
+@@ -2290,7 +2289,7 @@ i915_gem_retire_work_handler(struct work
idle = true;
for_each_ring(ring, dev_priv, i) {
if (ring->gpu_caches_dirty)
@@ -83,11 +79,9 @@ index 694af6db61a2..6671b8e11e55 100644
idle &= list_empty(&ring->request_list);
}
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index e3e62aac413c..51b7a2171cae 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -455,7 +455,7 @@ static int do_switch(struct i915_hw_context *to)
+@@ -453,7 +453,7 @@ static int do_switch(struct i915_hw_cont
from->obj->dirty = 1;
BUG_ON(from->obj->ring != ring);
@@ -96,11 +90,9 @@ index e3e62aac413c..51b7a2171cae 100644
if (ret) {
/* Too late, we've already scheduled a context switch.
* Try to undo the change so that the hw state is
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index c98333d74111..d79ac7aa55d4 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -802,7 +802,7 @@ i915_gem_execbuffer_retire_commands(struct drm_device *dev,
+@@ -802,7 +802,7 @@ i915_gem_execbuffer_retire_commands(stru
ring->gpu_caches_dirty = true;
/* Add a breadcrumb for the completion of the batch buffer */
@@ -109,11 +101,9 @@ index c98333d74111..d79ac7aa55d4 100644
}
static int
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 836794b68fc6..a3698812e9c7 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
-@@ -217,7 +217,7 @@ static int intel_overlay_do_wait_request(struct intel_overlay *overlay,
+@@ -217,7 +217,7 @@ static int intel_overlay_do_wait_request
int ret;
BUG_ON(overlay->last_flip_req);
@@ -122,7 +112,7 @@ index 836794b68fc6..a3698812e9c7 100644
if (ret)
return ret;
-@@ -286,7 +286,7 @@ static int intel_overlay_continue(struct intel_overlay *overlay,
+@@ -286,7 +286,7 @@ static int intel_overlay_continue(struct
intel_ring_emit(ring, flip_addr);
intel_ring_advance(ring);
@@ -131,11 +121,9 @@ index 836794b68fc6..a3698812e9c7 100644
}
static void intel_overlay_release_old_vid_tail(struct intel_overlay *overlay)
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 1d4a7ee41881..a81647023139 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1523,7 +1523,7 @@ int intel_ring_idle(struct intel_ring_buffer *ring)
+@@ -1523,7 +1523,7 @@ int intel_ring_idle(struct intel_ring_bu
/* We need to add any requests required to flush the objects and ring */
if (ring->outstanding_lazy_request) {
@@ -144,6 +132,3 @@ index 1d4a7ee41881..a81647023139 100644
if (ret)
return ret;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0385-drm-i915-Don-t-deref-pipe-cpu_transcoder-in-the-hang.patch b/patches.baytrail/0385-drm-i915-Don-t-deref-pipe-cpu_transcoder-in-the-hang.patch
index 1faf287650019a..446628842e38a6 100644
--- a/patches.baytrail/0385-drm-i915-Don-t-deref-pipe-cpu_transcoder-in-the-hang.patch
+++ b/patches.baytrail/0385-drm-i915-Don-t-deref-pipe-cpu_transcoder-in-the-hang.patch
@@ -51,14 +51,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 63b66e5ba54b15a6592be00555d762db6db739ce)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 86 ++++++++++++++++++++++++------------
+ drivers/gpu/drm/i915/intel_display.c | 86 +++++++++++++++++++++++------------
1 file changed, 57 insertions(+), 29 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index f0701147a68a..bde6a5547568 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10046,6 +10046,8 @@ struct intel_display_error_state {
+@@ -10049,6 +10049,8 @@ struct intel_display_error_state {
u32 power_well_driver;
@@ -67,7 +65,7 @@ index f0701147a68a..bde6a5547568 100644
struct intel_cursor_error_state {
u32 control;
u32 position;
-@@ -10054,16 +10056,7 @@ struct intel_display_error_state {
+@@ -10057,16 +10059,7 @@ struct intel_display_error_state {
} cursor[I915_MAX_PIPES];
struct intel_pipe_error_state {
@@ -84,7 +82,7 @@ index f0701147a68a..bde6a5547568 100644
} pipe[I915_MAX_PIPES];
struct intel_plane_error_state {
-@@ -10075,6 +10068,19 @@ struct intel_display_error_state {
+@@ -10078,6 +10071,19 @@ struct intel_display_error_state {
u32 surface;
u32 tile_offset;
} plane[I915_MAX_PIPES];
@@ -104,7 +102,7 @@ index f0701147a68a..bde6a5547568 100644
};
struct intel_display_error_state *
-@@ -10082,9 +10088,17 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -10085,9 +10091,17 @@ intel_display_capture_error_state(struct
{
drm_i915_private_t *dev_priv = dev->dev_private;
struct intel_display_error_state *error;
@@ -123,7 +121,7 @@ index f0701147a68a..bde6a5547568 100644
error = kmalloc(sizeof(*error), GFP_ATOMIC);
if (error == NULL)
return NULL;
-@@ -10093,9 +10107,6 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -10096,9 +10110,6 @@ intel_display_capture_error_state(struct
error->power_well_driver = I915_READ(HSW_PWR_WELL_DRIVER);
for_each_pipe(i) {
@@ -133,7 +131,7 @@ index f0701147a68a..bde6a5547568 100644
if (INTEL_INFO(dev)->gen <= 6 || IS_VALLEYVIEW(dev)) {
error->cursor[i].control = I915_READ(CURCNTR(i));
error->cursor[i].position = I915_READ(CURPOS(i));
-@@ -10119,14 +10130,25 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -10122,14 +10133,25 @@ intel_display_capture_error_state(struct
error->plane[i].tile_offset = I915_READ(DSPTILEOFF(i));
}
@@ -166,7 +164,7 @@ index f0701147a68a..bde6a5547568 100644
}
/* In the code above we read the registers without checking if the power
-@@ -10148,22 +10170,16 @@ intel_display_print_error_state(struct drm_i915_error_state_buf *m,
+@@ -10151,22 +10173,16 @@ intel_display_print_error_state(struct d
{
int i;
@@ -192,7 +190,7 @@ index f0701147a68a..bde6a5547568 100644
err_printf(m, "Plane [%d]:\n", i);
err_printf(m, " CNTR: %08x\n", error->plane[i].control);
-@@ -10184,5 +10200,17 @@ intel_display_print_error_state(struct drm_i915_error_state_buf *m,
+@@ -10187,5 +10203,17 @@ intel_display_print_error_state(struct d
err_printf(m, " POS: %08x\n", error->cursor[i].position);
err_printf(m, " BASE: %08x\n", error->cursor[i].base);
}
@@ -210,6 +208,3 @@ index f0701147a68a..bde6a5547568 100644
+ }
}
#endif
---
-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 c27f6e2737de22..4c5edbcb50dfd6 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
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from drm-intel-next-queued)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 8 ++++----
- drivers/gpu/drm/i915/i915_drv.h | 4 ++--
+ drivers/gpu/drm/i915/i915_dma.c | 8 ++++----
+ drivers/gpu/drm/i915/i915_drv.h | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index f4669802a0fb..6995baca9b62 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1567,8 +1567,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1575,8 +1575,8 @@ int i915_driver_load(struct drm_device *
goto out_rmmap;
}
@@ -32,7 +30,7 @@ index f4669802a0fb..6995baca9b62 100644
/* The i915 workqueue is primarily used for batched retirement of
* requests (and thus managing bo) once the task has been completed
-@@ -1669,7 +1669,7 @@ out_gem_unload:
+@@ -1677,7 +1677,7 @@ out_gem_unload:
intel_teardown_mchbar(dev);
destroy_workqueue(dev_priv->wq);
out_mtrrfree:
@@ -41,7 +39,7 @@ index f4669802a0fb..6995baca9b62 100644
io_mapping_free(dev_priv->gtt.mappable);
dev_priv->gtt.gtt_remove(dev);
out_rmmap:
-@@ -1707,7 +1707,7 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1715,7 +1715,7 @@ int i915_driver_unload(struct drm_device
cancel_delayed_work_sync(&dev_priv->mm.retire_work);
io_mapping_free(dev_priv->gtt.mappable);
@@ -50,8 +48,6 @@ index f4669802a0fb..6995baca9b62 100644
acpi_video_unregister();
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 4bd72bf26049..cd31abf92e1d 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -470,6 +470,8 @@ struct i915_gtt {
@@ -72,6 +68,3 @@ index 4bd72bf26049..cd31abf92e1d 100644
/** PPGTT used for aliasing the PPGTT with the GTT */
struct i915_hw_ppgtt *aliasing_ppgtt;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0431-drm-i915-Getter-setter-for-object-attributes.patch b/patches.baytrail/0431-drm-i915-Getter-setter-for-object-attributes.patch
index 1c59991fab57d9..ec92148bee3b75 100644
--- a/patches.baytrail/0431-drm-i915-Getter-setter-for-object-attributes.patch
+++ b/patches.baytrail/0431-drm-i915-Getter-setter-for-object-attributes.patch
@@ -33,28 +33,26 @@ Conflicts:
e13af9a8340685cfe25d0c9f708da7121e0f51dd)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 26 +++++----
- drivers/gpu/drm/i915/i915_drv.h | 31 +++++++++++
- drivers/gpu/drm/i915/i915_gem.c | 89 +++++++++++++++---------------
- drivers/gpu/drm/i915/i915_gem_context.c | 2 +-
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 19 ++++---
- drivers/gpu/drm/i915/i915_gem_gtt.c | 8 +--
- drivers/gpu/drm/i915/i915_gem_tiling.c | 14 ++---
- drivers/gpu/drm/i915/i915_irq.c | 15 +++--
- drivers/gpu/drm/i915/i915_trace.h | 8 +--
- drivers/gpu/drm/i915/intel_display.c | 28 +++++-----
- drivers/gpu/drm/i915/intel_fb.c | 8 +--
- drivers/gpu/drm/i915/intel_overlay.c | 14 ++---
- drivers/gpu/drm/i915/intel_pm.c | 8 +--
- drivers/gpu/drm/i915/intel_ringbuffer.c | 12 ++--
- drivers/gpu/drm/i915/intel_sprite.c | 8 ++-
+ drivers/gpu/drm/i915/i915_debugfs.c | 26 ++++----
+ drivers/gpu/drm/i915/i915_drv.h | 31 ++++++++++
+ drivers/gpu/drm/i915/i915_gem.c | 89 ++++++++++++++---------------
+ drivers/gpu/drm/i915/i915_gem_context.c | 2
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 19 +++---
+ drivers/gpu/drm/i915/i915_gem_gtt.c | 8 +-
+ drivers/gpu/drm/i915/i915_gem_tiling.c | 14 ++--
+ drivers/gpu/drm/i915/i915_irq.c | 15 ++--
+ drivers/gpu/drm/i915/i915_trace.h | 8 +-
+ drivers/gpu/drm/i915/intel_display.c | 28 ++++-----
+ drivers/gpu/drm/i915/intel_fb.c | 8 +-
+ drivers/gpu/drm/i915/intel_overlay.c | 14 ++--
+ drivers/gpu/drm/i915/intel_pm.c | 8 +-
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 12 +--
+ drivers/gpu/drm/i915/intel_sprite.c | 8 +-
15 files changed, 164 insertions(+), 126 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 3e36756d0439..396387ed207a 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -122,9 +122,9 @@ describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
+@@ -122,9 +122,9 @@ describe_obj(struct seq_file *m, struct
seq_printf(m, " (pinned x %d)", obj->pin_count);
if (obj->fence_reg != I915_FENCE_REG_NONE)
seq_printf(m, " (fence: %d)", obj->fence_reg);
@@ -67,7 +65,7 @@ index 3e36756d0439..396387ed207a 100644
if (obj->stolen)
seq_printf(m, " (stolen: %08lx)", obj->stolen->start);
if (obj->pin_mappable || obj->fault_mappable) {
-@@ -175,7 +175,7 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
+@@ -175,7 +175,7 @@ static int i915_gem_object_list_info(str
describe_obj(m, obj);
seq_putc(m, '\n');
total_obj_size += obj->base.size;
@@ -76,7 +74,7 @@ index 3e36756d0439..396387ed207a 100644
count++;
}
mutex_unlock(&dev->struct_mutex);
-@@ -187,10 +187,10 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
+@@ -187,10 +187,10 @@ static int i915_gem_object_list_info(str
#define count_objects(list, member) do { \
list_for_each_entry(obj, list, member) { \
@@ -89,7 +87,7 @@ index 3e36756d0439..396387ed207a 100644
++mappable_count; \
} \
} \
-@@ -209,7 +209,7 @@ static int per_file_stats(int id, void *ptr, void *data)
+@@ -209,7 +209,7 @@ static int per_file_stats(int id, void *
stats->count++;
stats->total += obj->base.size;
@@ -98,7 +96,7 @@ index 3e36756d0439..396387ed207a 100644
if (!list_empty(&obj->ring_list))
stats->active += obj->base.size;
else
-@@ -267,11 +267,11 @@ static int i915_gem_object_info(struct seq_file *m, void *data)
+@@ -267,11 +267,11 @@ static int i915_gem_object_info(struct s
size = count = mappable_size = mappable_count = 0;
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list) {
if (obj->fault_mappable) {
@@ -112,7 +110,7 @@ index 3e36756d0439..396387ed207a 100644
++mappable_count;
}
if (obj->madv == I915_MADV_DONTNEED) {
-@@ -333,7 +333,7 @@ static int i915_gem_gtt_info(struct seq_file *m, void *data)
+@@ -333,7 +333,7 @@ static int i915_gem_gtt_info(struct seq_
describe_obj(m, obj);
seq_putc(m, '\n');
total_obj_size += obj->base.size;
@@ -121,7 +119,7 @@ index 3e36756d0439..396387ed207a 100644
count++;
}
-@@ -379,12 +379,14 @@ static int i915_gem_pageflip_info(struct seq_file *m, void *data)
+@@ -379,12 +379,14 @@ static int i915_gem_pageflip_info(struct
if (work->old_fb_obj) {
struct drm_i915_gem_object *obj = work->old_fb_obj;
if (obj)
@@ -138,8 +136,6 @@ index 3e36756d0439..396387ed207a 100644
}
}
spin_unlock_irqrestore(&dev->event_lock, flags);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 8e40123f6a12..ccf9bfa54c08 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1362,6 +1362,37 @@ struct drm_i915_gem_object {
@@ -180,11 +176,9 @@ index 8e40123f6a12..ccf9bfa54c08 100644
/**
* Request queue structure.
*
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index d9e2208cfe98..e43a35dcff63 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -135,7 +135,7 @@ int i915_mutex_lock_interruptible(struct drm_device *dev)
+@@ -135,7 +135,7 @@ int i915_mutex_lock_interruptible(struct
static inline bool
i915_gem_object_is_inactive(struct drm_i915_gem_object *obj)
{
@@ -193,7 +187,7 @@ index d9e2208cfe98..e43a35dcff63 100644
}
int
-@@ -178,7 +178,7 @@ i915_gem_get_aperture_ioctl(struct drm_device *dev, void *data,
+@@ -178,7 +178,7 @@ i915_gem_get_aperture_ioctl(struct drm_d
mutex_lock(&dev->struct_mutex);
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list)
if (obj->pin_count)
@@ -202,7 +196,7 @@ index d9e2208cfe98..e43a35dcff63 100644
mutex_unlock(&dev->struct_mutex);
args->aper_size = dev_priv->gtt.total;
-@@ -422,7 +422,7 @@ i915_gem_shmem_pread(struct drm_device *dev,
+@@ -422,7 +422,7 @@ i915_gem_shmem_pread(struct drm_device *
* anyway again before the next pread happens. */
if (obj->cache_level == I915_CACHE_NONE)
needs_clflush = 1;
@@ -211,7 +205,7 @@ index d9e2208cfe98..e43a35dcff63 100644
ret = i915_gem_object_set_to_gtt_domain(obj, false);
if (ret)
return ret;
-@@ -609,7 +609,7 @@ i915_gem_gtt_pwrite_fast(struct drm_device *dev,
+@@ -609,7 +609,7 @@ i915_gem_gtt_pwrite_fast(struct drm_devi
user_data = to_user_ptr(args->data_ptr);
remain = args->size;
@@ -220,7 +214,7 @@ index d9e2208cfe98..e43a35dcff63 100644
while (remain > 0) {
/* Operation in this page
-@@ -739,7 +739,7 @@ i915_gem_shmem_pwrite(struct drm_device *dev,
+@@ -739,7 +739,7 @@ i915_gem_shmem_pwrite(struct drm_device
* right away and we therefore have to clflush anyway. */
if (obj->cache_level == I915_CACHE_NONE)
needs_clflush_after = 1;
@@ -229,7 +223,7 @@ index d9e2208cfe98..e43a35dcff63 100644
ret = i915_gem_object_set_to_gtt_domain(obj, true);
if (ret)
return ret;
-@@ -1360,8 +1360,9 @@ int i915_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
+@@ -1360,8 +1360,9 @@ int i915_gem_fault(struct vm_area_struct
obj->fault_mappable = true;
@@ -241,7 +235,7 @@ index d9e2208cfe98..e43a35dcff63 100644
/* Finally, remap it using the new GTT offset */
ret = vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, pfn);
-@@ -1667,7 +1668,7 @@ i915_gem_object_put_pages(struct drm_i915_gem_object *obj)
+@@ -1667,7 +1668,7 @@ i915_gem_object_put_pages(struct drm_i91
if (obj->pages == NULL)
return 0;
@@ -250,7 +244,7 @@ index d9e2208cfe98..e43a35dcff63 100644
if (obj->pages_pin_count)
return -EBUSY;
-@@ -2121,8 +2122,8 @@ i915_gem_request_remove_from_client(struct drm_i915_gem_request *request)
+@@ -2121,8 +2122,8 @@ i915_gem_request_remove_from_client(stru
static bool i915_head_inside_object(u32 acthd, struct drm_i915_gem_object *obj)
{
@@ -261,7 +255,7 @@ index d9e2208cfe98..e43a35dcff63 100644
return true;
return false;
-@@ -2180,11 +2181,11 @@ static void i915_set_reset_status(struct intel_ring_buffer *ring,
+@@ -2180,11 +2181,11 @@ static void i915_set_reset_status(struct
if (ring->hangcheck.action != wait &&
i915_request_guilty(request, acthd, &inside)) {
@@ -275,7 +269,7 @@ index d9e2208cfe98..e43a35dcff63 100644
request->ctx ? request->ctx->id : 0,
acthd);
-@@ -2595,7 +2596,7 @@ i915_gem_object_unbind(struct drm_i915_gem_object *obj)
+@@ -2595,7 +2596,7 @@ i915_gem_object_unbind(struct drm_i915_g
drm_i915_private_t *dev_priv = obj->base.dev->dev_private;
int ret;
@@ -284,7 +278,7 @@ index d9e2208cfe98..e43a35dcff63 100644
return 0;
if (obj->pin_count)
-@@ -2691,12 +2692,12 @@ static void i965_write_fence_reg(struct drm_device *dev, int reg,
+@@ -2691,12 +2692,12 @@ static void i965_write_fence_reg(struct
POSTING_READ(fence_reg);
if (obj) {
@@ -300,7 +294,7 @@ index d9e2208cfe98..e43a35dcff63 100644
val |= (uint64_t)((obj->stride / 128) - 1) << fence_pitch_shift;
if (obj->tiling_mode == I915_TILING_Y)
val |= 1 << I965_FENCE_TILING_Y_SHIFT;
-@@ -2720,15 +2721,15 @@ static void i915_write_fence_reg(struct drm_device *dev, int reg,
+@@ -2720,15 +2721,15 @@ static void i915_write_fence_reg(struct
u32 val;
if (obj) {
@@ -321,7 +315,7 @@ index d9e2208cfe98..e43a35dcff63 100644
if (obj->tiling_mode == I915_TILING_Y && HAS_128_BYTE_Y_TILING(dev))
tile_width = 128;
-@@ -2739,7 +2740,7 @@ static void i915_write_fence_reg(struct drm_device *dev, int reg,
+@@ -2739,7 +2740,7 @@ static void i915_write_fence_reg(struct
pitch_val = obj->stride / tile_width;
pitch_val = ffs(pitch_val) - 1;
@@ -330,7 +324,7 @@ index d9e2208cfe98..e43a35dcff63 100644
if (obj->tiling_mode == I915_TILING_Y)
val |= 1 << I830_FENCE_TILING_Y_SHIFT;
val |= I915_FENCE_SIZE_BITS(size);
-@@ -2764,19 +2765,19 @@ static void i830_write_fence_reg(struct drm_device *dev, int reg,
+@@ -2764,19 +2765,19 @@ static void i830_write_fence_reg(struct
uint32_t val;
if (obj) {
@@ -356,7 +350,7 @@ index d9e2208cfe98..e43a35dcff63 100644
if (obj->tiling_mode == I915_TILING_Y)
val |= 1 << I830_FENCE_TILING_Y_SHIFT;
val |= I830_FENCE_SIZE_BITS(size);
-@@ -3030,8 +3031,8 @@ static void i915_gem_verify_gtt(struct drm_device *dev)
+@@ -3030,8 +3031,8 @@ static void i915_gem_verify_gtt(struct d
if (obj->cache_level != obj->gtt_space->color) {
printk(KERN_ERR "object reserved space [%08lx, %08lx] with wrong color, cache_level=%x, color=%lx\n",
@@ -367,7 +361,7 @@ index d9e2208cfe98..e43a35dcff63 100644
obj->cache_level,
obj->gtt_space->color);
err++;
-@@ -3042,8 +3043,8 @@ static void i915_gem_verify_gtt(struct drm_device *dev)
+@@ -3042,8 +3043,8 @@ static void i915_gem_verify_gtt(struct d
obj->gtt_space,
obj->cache_level)) {
printk(KERN_ERR "invalid GTT space found at [%08lx, %08lx] - color=%x\n",
@@ -389,7 +383,7 @@ index d9e2208cfe98..e43a35dcff63 100644
obj->map_and_fenceable = mappable && fenceable;
-@@ -3258,7 +3259,7 @@ i915_gem_object_set_to_gtt_domain(struct drm_i915_gem_object *obj, bool write)
+@@ -3258,7 +3259,7 @@ i915_gem_object_set_to_gtt_domain(struct
int ret;
/* Not valid to be called on unbound objects. */
@@ -398,7 +392,7 @@ index d9e2208cfe98..e43a35dcff63 100644
return -EINVAL;
if (obj->base.write_domain == I915_GEM_DOMAIN_GTT)
-@@ -3323,7 +3324,7 @@ int i915_gem_object_set_cache_level(struct drm_i915_gem_object *obj,
+@@ -3323,7 +3324,7 @@ int i915_gem_object_set_cache_level(stru
return ret;
}
@@ -407,7 +401,7 @@ index d9e2208cfe98..e43a35dcff63 100644
ret = i915_gem_object_finish_gpu(obj);
if (ret)
return ret;
-@@ -3346,7 +3347,7 @@ int i915_gem_object_set_cache_level(struct drm_i915_gem_object *obj,
+@@ -3346,7 +3347,7 @@ int i915_gem_object_set_cache_level(stru
i915_ppgtt_bind_object(dev_priv->mm.aliasing_ppgtt,
obj, cache_level);
@@ -416,7 +410,7 @@ index d9e2208cfe98..e43a35dcff63 100644
}
if (cache_level == I915_CACHE_NONE) {
-@@ -3627,14 +3628,14 @@ i915_gem_object_pin(struct drm_i915_gem_object *obj,
+@@ -3627,14 +3628,14 @@ i915_gem_object_pin(struct drm_i915_gem_
if (WARN_ON(obj->pin_count == DRM_I915_GEM_OBJECT_MAX_PIN_COUNT))
return -EBUSY;
@@ -435,7 +429,7 @@ index d9e2208cfe98..e43a35dcff63 100644
map_and_fenceable,
obj->map_and_fenceable);
ret = i915_gem_object_unbind(obj);
-@@ -3643,7 +3644,7 @@ i915_gem_object_pin(struct drm_i915_gem_object *obj,
+@@ -3643,7 +3644,7 @@ i915_gem_object_pin(struct drm_i915_gem_
}
}
@@ -453,7 +447,7 @@ index d9e2208cfe98..e43a35dcff63 100644
if (--obj->pin_count == 0)
obj->pin_mappable = false;
-@@ -3719,7 +3720,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data,
+@@ -3719,7 +3720,7 @@ i915_gem_pin_ioctl(struct drm_device *de
* as the X server doesn't manage domains yet
*/
i915_gem_object_flush_cpu_write_domain(obj);
@@ -462,11 +456,9 @@ index d9e2208cfe98..e43a35dcff63 100644
out:
drm_gem_object_unreference(&obj->base);
unlock:
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 51b7a2171cae..2074544682cf 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -377,7 +377,7 @@ mi_set_context(struct intel_ring_buffer *ring,
+@@ -375,7 +375,7 @@ mi_set_context(struct intel_ring_buffer
intel_ring_emit(ring, MI_NOOP);
intel_ring_emit(ring, MI_SET_CONTEXT);
@@ -475,11 +467,9 @@ index 51b7a2171cae..2074544682cf 100644
MI_MM_SPACE_GTT |
MI_SAVE_EXT_STATE_EN |
MI_RESTORE_EXT_STATE_EN |
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index 87a3227e5179..5aeb447ead6b 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -188,7 +188,7 @@ i915_gem_execbuffer_relocate_entry(struct drm_i915_gem_object *obj,
+@@ -188,7 +188,7 @@ i915_gem_execbuffer_relocate_entry(struc
return -ENOENT;
target_i915_obj = to_intel_bo(target_obj);
@@ -488,7 +478,7 @@ index 87a3227e5179..5aeb447ead6b 100644
/* Sandybridge PPGTT errata: We need a global gtt mapping for MI and
* pipe_control writes because the gpu doesn't properly redirect them
-@@ -280,7 +280,7 @@ i915_gem_execbuffer_relocate_entry(struct drm_i915_gem_object *obj,
+@@ -280,7 +280,7 @@ i915_gem_execbuffer_relocate_entry(struc
return ret;
/* Map the page containing the relocation we're going to perform. */
@@ -497,7 +487,7 @@ index 87a3227e5179..5aeb447ead6b 100644
reloc_page = io_mapping_map_atomic_wc(dev_priv->gtt.mappable,
reloc->offset & PAGE_MASK);
reloc_entry = (uint32_t __iomem *)
-@@ -436,8 +436,8 @@ i915_gem_execbuffer_reserve_object(struct drm_i915_gem_object *obj,
+@@ -436,8 +436,8 @@ i915_gem_execbuffer_reserve_object(struc
obj->has_aliasing_ppgtt_mapping = 1;
}
@@ -508,7 +498,7 @@ index 87a3227e5179..5aeb447ead6b 100644
*need_reloc = true;
}
-@@ -458,7 +458,7 @@ i915_gem_execbuffer_unreserve_object(struct drm_i915_gem_object *obj)
+@@ -458,7 +458,7 @@ i915_gem_execbuffer_unreserve_object(str
{
struct drm_i915_gem_exec_object2 *entry;
@@ -517,7 +507,7 @@ index 87a3227e5179..5aeb447ead6b 100644
return;
entry = obj->exec_entry;
-@@ -530,7 +530,7 @@ i915_gem_execbuffer_reserve(struct intel_ring_buffer *ring,
+@@ -530,7 +530,7 @@ i915_gem_execbuffer_reserve(struct intel
struct drm_i915_gem_exec_object2 *entry = obj->exec_entry;
bool need_fence, need_mappable;
@@ -526,7 +516,7 @@ index 87a3227e5179..5aeb447ead6b 100644
continue;
need_fence =
-@@ -539,7 +539,8 @@ i915_gem_execbuffer_reserve(struct intel_ring_buffer *ring,
+@@ -539,7 +539,8 @@ i915_gem_execbuffer_reserve(struct intel
obj->tiling_mode != I915_TILING_NONE;
need_mappable = need_fence || need_reloc_mappable(obj);
@@ -536,7 +526,7 @@ index 87a3227e5179..5aeb447ead6b 100644
(need_mappable && !obj->map_and_fenceable))
ret = i915_gem_object_unbind(obj);
else
-@@ -550,7 +551,7 @@ i915_gem_execbuffer_reserve(struct intel_ring_buffer *ring,
+@@ -550,7 +551,7 @@ i915_gem_execbuffer_reserve(struct intel
/* Bind fresh objects */
list_for_each_entry(obj, objects, exec_list) {
@@ -545,7 +535,7 @@ index 87a3227e5179..5aeb447ead6b 100644
continue;
ret = i915_gem_execbuffer_reserve_object(obj, ring, need_relocs);
-@@ -1058,7 +1059,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
+@@ -1058,7 +1059,7 @@ i915_gem_do_execbuffer(struct drm_device
goto err;
}
@@ -554,11 +544,9 @@ index 87a3227e5179..5aeb447ead6b 100644
exec_len = args->batch_len;
if (cliprects) {
for (i = 0; i < args->num_cliprects; i++) {
-diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index afba7e5e7739..6f0a4c09e26a 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
-@@ -378,7 +378,7 @@ void i915_ppgtt_bind_object(struct i915_hw_ppgtt *ppgtt,
+@@ -378,7 +378,7 @@ void i915_ppgtt_bind_object(struct i915_
enum i915_cache_level cache_level)
{
ppgtt->insert_entries(ppgtt, obj->pages,
@@ -567,7 +555,7 @@ index afba7e5e7739..6f0a4c09e26a 100644
cache_level);
}
-@@ -386,7 +386,7 @@ void i915_ppgtt_unbind_object(struct i915_hw_ppgtt *ppgtt,
+@@ -386,7 +386,7 @@ void i915_ppgtt_unbind_object(struct i91
struct drm_i915_gem_object *obj)
{
ppgtt->clear_range(ppgtt,
@@ -576,7 +564,7 @@ index afba7e5e7739..6f0a4c09e26a 100644
obj->base.size >> PAGE_SHIFT);
}
-@@ -551,7 +551,7 @@ void i915_gem_gtt_bind_object(struct drm_i915_gem_object *obj,
+@@ -551,7 +551,7 @@ void i915_gem_gtt_bind_object(struct drm
struct drm_i915_private *dev_priv = dev->dev_private;
dev_priv->gtt.gtt_insert_entries(dev, obj->pages,
@@ -585,7 +573,7 @@ index afba7e5e7739..6f0a4c09e26a 100644
cache_level);
obj->has_global_gtt_mapping = 1;
-@@ -563,7 +563,7 @@ void i915_gem_gtt_unbind_object(struct drm_i915_gem_object *obj)
+@@ -563,7 +563,7 @@ void i915_gem_gtt_unbind_object(struct d
struct drm_i915_private *dev_priv = dev->dev_private;
dev_priv->gtt.gtt_clear_range(obj->base.dev,
@@ -594,11 +582,9 @@ index afba7e5e7739..6f0a4c09e26a 100644
obj->base.size >> PAGE_SHIFT);
obj->has_global_gtt_mapping = 0;
-diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
-index 537545be69db..92a8d279ca39 100644
--- a/drivers/gpu/drm/i915/i915_gem_tiling.c
+++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
-@@ -268,18 +268,18 @@ i915_gem_object_fence_ok(struct drm_i915_gem_object *obj, int tiling_mode)
+@@ -268,18 +268,18 @@ i915_gem_object_fence_ok(struct drm_i915
return true;
if (INTEL_INFO(obj->base.dev)->gen == 3) {
@@ -621,7 +607,7 @@ index 537545be69db..92a8d279ca39 100644
return false;
return true;
-@@ -359,8 +359,8 @@ i915_gem_set_tiling(struct drm_device *dev, void *data,
+@@ -359,8 +359,8 @@ i915_gem_set_tiling(struct drm_device *d
*/
obj->map_and_fenceable =
@@ -632,7 +618,7 @@ index 537545be69db..92a8d279ca39 100644
i915_gem_object_fence_ok(obj, args->tiling_mode));
/* Rebind if we need a change of alignment */
-@@ -369,7 +369,7 @@ i915_gem_set_tiling(struct drm_device *dev, void *data,
+@@ -369,7 +369,7 @@ i915_gem_set_tiling(struct drm_device *d
i915_gem_get_gtt_alignment(dev, obj->base.size,
args->tiling_mode,
false);
@@ -641,11 +627,9 @@ index 537545be69db..92a8d279ca39 100644
ret = i915_gem_object_unbind(obj);
}
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 4a98600c6f41..eaa8c1eda17f 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -1554,7 +1554,7 @@ i915_error_object_create_sized(struct drm_i915_private *dev_priv,
+@@ -1554,7 +1554,7 @@ i915_error_object_create_sized(struct dr
if (dst == NULL)
return NULL;
@@ -654,7 +638,7 @@ index 4a98600c6f41..eaa8c1eda17f 100644
for (i = 0; i < num_pages; i++) {
unsigned long flags;
void *d;
-@@ -1606,7 +1606,6 @@ i915_error_object_create_sized(struct drm_i915_private *dev_priv,
+@@ -1606,7 +1606,6 @@ i915_error_object_create_sized(struct dr
reloc_offset += PAGE_SIZE;
}
dst->page_count = num_pages;
@@ -662,7 +646,7 @@ index 4a98600c6f41..eaa8c1eda17f 100644
return dst;
-@@ -1660,7 +1659,7 @@ static void capture_bo(struct drm_i915_error_buffer *err,
+@@ -1660,7 +1659,7 @@ static void capture_bo(struct drm_i915_e
err->name = obj->base.name;
err->rseqno = obj->last_read_seqno;
err->wseqno = obj->last_write_seqno;
@@ -671,7 +655,7 @@ index 4a98600c6f41..eaa8c1eda17f 100644
err->read_domains = obj->base.read_domains;
err->write_domain = obj->base.write_domain;
err->fence_reg = obj->fence_reg;
-@@ -1758,8 +1757,8 @@ i915_error_first_batchbuffer(struct drm_i915_private *dev_priv,
+@@ -1758,8 +1757,8 @@ i915_error_first_batchbuffer(struct drm_
return NULL;
obj = ring->private;
@@ -682,7 +666,7 @@ index 4a98600c6f41..eaa8c1eda17f 100644
return i915_error_object_create(dev_priv, obj);
}
-@@ -1840,7 +1839,7 @@ static void i915_gem_record_active_context(struct intel_ring_buffer *ring,
+@@ -1840,7 +1839,7 @@ static void i915_gem_record_active_conte
return;
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list) {
@@ -691,7 +675,7 @@ index 4a98600c6f41..eaa8c1eda17f 100644
ering->ctx = i915_error_object_create_sized(dev_priv,
obj, 1);
break;
-@@ -2206,10 +2205,10 @@ static void __always_unused i915_pageflip_stall_check(struct drm_device *dev, in
+@@ -2206,10 +2205,10 @@ static void __always_unused i915_pagefli
if (INTEL_INFO(dev)->gen >= 4) {
int dspsurf = DSPSURF(intel_crtc->plane);
stall_detected = I915_HI_DISPBASE(I915_READ(dspsurf)) ==
@@ -704,8 +688,6 @@ index 4a98600c6f41..eaa8c1eda17f 100644
crtc->y * crtc->fb->pitches[0] +
crtc->x * crtc->fb->bits_per_pixel/8);
}
-diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
-index 3db4a6817713..7d283b5fcbf9 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -46,8 +46,8 @@ TRACE_EVENT(i915_gem_object_bind,
@@ -730,11 +712,9 @@ index 3db4a6817713..7d283b5fcbf9 100644
),
TP_printk("obj=%p, offset=%08x size=%x",
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 9733f275454d..3886db95a688 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -1980,16 +1980,17 @@ static int i9xx_update_plane(struct drm_crtc *crtc, struct drm_framebuffer *fb,
+@@ -1980,16 +1980,17 @@ static int i9xx_update_plane(struct drm_
intel_crtc->dspaddr_offset = linear_offset;
}
@@ -756,7 +736,7 @@ index 9733f275454d..3886db95a688 100644
POSTING_READ(reg);
return 0;
-@@ -2069,11 +2070,12 @@ static int ironlake_update_plane(struct drm_crtc *crtc,
+@@ -2069,11 +2070,12 @@ static int ironlake_update_plane(struct
fb->pitches[0]);
linear_offset -= intel_crtc->dspaddr_offset;
@@ -772,7 +752,7 @@ index 9733f275454d..3886db95a688 100644
if (IS_HASWELL(dev)) {
I915_WRITE(DSPOFFSET(plane), (y << 16) | x);
} else {
-@@ -6568,7 +6570,7 @@ static int intel_crtc_cursor_set(struct drm_crtc *crtc,
+@@ -6568,7 +6570,7 @@ static int intel_crtc_cursor_set(struct
goto fail_unpin;
}
@@ -781,7 +761,7 @@ index 9733f275454d..3886db95a688 100644
} else {
int align = IS_I830(dev) ? 16 * 1024 : 256;
ret = i915_gem_attach_phys_object(dev, obj,
-@@ -7340,7 +7342,7 @@ static int intel_gen2_queue_flip(struct drm_device *dev,
+@@ -7340,7 +7342,7 @@ static int intel_gen2_queue_flip(struct
intel_ring_emit(ring, MI_DISPLAY_FLIP |
MI_DISPLAY_FLIP_PLANE(intel_crtc->plane));
intel_ring_emit(ring, fb->pitches[0]);
@@ -790,7 +770,7 @@ index 9733f275454d..3886db95a688 100644
intel_ring_emit(ring, 0); /* aux display base address, unused */
intel_mark_page_flip_active(intel_crtc);
-@@ -7381,7 +7383,7 @@ static int intel_gen3_queue_flip(struct drm_device *dev,
+@@ -7381,7 +7383,7 @@ static int intel_gen3_queue_flip(struct
intel_ring_emit(ring, MI_DISPLAY_FLIP_I915 |
MI_DISPLAY_FLIP_PLANE(intel_crtc->plane));
intel_ring_emit(ring, fb->pitches[0]);
@@ -799,7 +779,7 @@ index 9733f275454d..3886db95a688 100644
intel_ring_emit(ring, MI_NOOP);
intel_mark_page_flip_active(intel_crtc);
-@@ -7421,7 +7423,7 @@ static int intel_gen4_queue_flip(struct drm_device *dev,
+@@ -7421,7 +7423,7 @@ static int intel_gen4_queue_flip(struct
MI_DISPLAY_FLIP_PLANE(intel_crtc->plane));
intel_ring_emit(ring, fb->pitches[0]);
intel_ring_emit(ring,
@@ -808,7 +788,7 @@ index 9733f275454d..3886db95a688 100644
obj->tiling_mode);
/* XXX Enabling the panel-fitter across page-flip is so far
-@@ -7464,7 +7466,7 @@ static int intel_gen6_queue_flip(struct drm_device *dev,
+@@ -7464,7 +7466,7 @@ static int intel_gen6_queue_flip(struct
intel_ring_emit(ring, MI_DISPLAY_FLIP |
MI_DISPLAY_FLIP_PLANE(intel_crtc->plane));
intel_ring_emit(ring, fb->pitches[0] | obj->tiling_mode);
@@ -817,7 +797,7 @@ index 9733f275454d..3886db95a688 100644
/* Contrary to the suggestions in the documentation,
* "Enable Panel Fitter" does not seem to be required when page
-@@ -7529,7 +7531,7 @@ static int intel_gen7_queue_flip(struct drm_device *dev,
+@@ -7529,7 +7531,7 @@ static int intel_gen7_queue_flip(struct
intel_ring_emit(ring, MI_DISPLAY_FLIP_I915 | plane_bit);
intel_ring_emit(ring, (fb->pitches[0] | obj->tiling_mode));
@@ -826,11 +806,9 @@ index 9733f275454d..3886db95a688 100644
intel_ring_emit(ring, (MI_NOOP));
intel_mark_page_flip_active(intel_crtc);
-diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fb.c
-index dff669e2387f..f3c97e05b0d8 100644
--- a/drivers/gpu/drm/i915/intel_fb.c
+++ b/drivers/gpu/drm/i915/intel_fb.c
-@@ -139,11 +139,11 @@ static int intelfb_create(struct drm_fb_helper *helper,
+@@ -139,11 +139,11 @@ static int intelfb_create(struct drm_fb_
info->apertures->ranges[0].base = dev->mode_config.fb_base;
info->apertures->ranges[0].size = dev_priv->gtt.mappable_end;
@@ -844,7 +822,7 @@ index dff669e2387f..f3c97e05b0d8 100644
size);
if (!info->screen_base) {
ret = -ENOSPC;
-@@ -166,9 +166,9 @@ static int intelfb_create(struct drm_fb_helper *helper,
+@@ -166,9 +166,9 @@ static int intelfb_create(struct drm_fb_
/* Use default scratch pixmap (info->pixmap.flags = FB_PIXMAP_SYSTEM) */
@@ -856,11 +834,9 @@ index dff669e2387f..f3c97e05b0d8 100644
mutex_unlock(&dev->struct_mutex);
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index a3698812e9c7..81c3ca14fa92 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
-@@ -196,7 +196,7 @@ intel_overlay_map_regs(struct intel_overlay *overlay)
+@@ -196,7 +196,7 @@ intel_overlay_map_regs(struct intel_over
regs = (struct overlay_registers __iomem *)overlay->reg_bo->phys_obj->handle->vaddr;
else
regs = io_mapping_map_wc(dev_priv->gtt.mappable,
@@ -869,7 +845,7 @@ index a3698812e9c7..81c3ca14fa92 100644
return regs;
}
-@@ -740,7 +740,7 @@ static int intel_overlay_do_put_image(struct intel_overlay *overlay,
+@@ -740,7 +740,7 @@ static int intel_overlay_do_put_image(st
swidth = params->src_w;
swidthsw = calc_swidthsw(overlay->dev, params->offset_Y, tmp_width);
sheight = params->src_h;
@@ -878,7 +854,7 @@ index a3698812e9c7..81c3ca14fa92 100644
ostride = params->stride_Y;
if (params->format & I915_OVERLAY_YUV_PLANAR) {
-@@ -754,8 +754,8 @@ static int intel_overlay_do_put_image(struct intel_overlay *overlay,
+@@ -754,8 +754,8 @@ static int intel_overlay_do_put_image(st
params->src_w/uv_hscale);
swidthsw |= max_t(u32, tmp_U, tmp_V) << 16;
sheight |= (params->src_h/uv_vscale) << 16;
@@ -889,7 +865,7 @@ index a3698812e9c7..81c3ca14fa92 100644
ostride |= params->stride_UV << 16;
}
-@@ -1355,7 +1355,7 @@ void intel_setup_overlay(struct drm_device *dev)
+@@ -1355,7 +1355,7 @@ void intel_setup_overlay(struct drm_devi
DRM_ERROR("failed to pin overlay register bo\n");
goto out_free_bo;
}
@@ -898,7 +874,7 @@ index a3698812e9c7..81c3ca14fa92 100644
ret = i915_gem_object_set_to_gtt_domain(reg_bo, true);
if (ret) {
-@@ -1435,7 +1435,7 @@ intel_overlay_map_regs_atomic(struct intel_overlay *overlay)
+@@ -1435,7 +1435,7 @@ intel_overlay_map_regs_atomic(struct int
overlay->reg_bo->phys_obj->handle->vaddr;
else
regs = io_mapping_map_atomic_wc(dev_priv->gtt.mappable,
@@ -907,7 +883,7 @@ index a3698812e9c7..81c3ca14fa92 100644
return regs;
}
-@@ -1468,7 +1468,7 @@ intel_overlay_capture_error_state(struct drm_device *dev)
+@@ -1468,7 +1468,7 @@ intel_overlay_capture_error_state(struct
if (OVERLAY_NEEDS_PHYSICAL(overlay->dev))
error->base = (__force long)overlay->reg_bo->phys_obj->handle->vaddr;
else
@@ -916,11 +892,9 @@ index a3698812e9c7..81c3ca14fa92 100644
regs = intel_overlay_map_regs_atomic(overlay);
if (!regs)
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index f9d0afd4bd6c..613923a75abe 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -218,7 +218,7 @@ static void ironlake_enable_fbc(struct drm_crtc *crtc, unsigned long interval)
+@@ -218,7 +218,7 @@ static void ironlake_enable_fbc(struct d
(stall_watermark << DPFC_RECOMP_STALL_WM_SHIFT) |
(interval << DPFC_RECOMP_TIMER_COUNT_SHIFT));
I915_WRITE(ILK_DPFC_FENCE_YOFF, crtc->y);
@@ -929,7 +903,7 @@ index f9d0afd4bd6c..613923a75abe 100644
/* enable it... */
I915_WRITE(ILK_DPFC_CONTROL, dpfc_ctl | DPFC_CTL_EN);
-@@ -275,7 +275,7 @@ static void gen7_enable_fbc(struct drm_crtc *crtc, unsigned long interval)
+@@ -275,7 +275,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);
@@ -938,7 +912,7 @@ index f9d0afd4bd6c..613923a75abe 100644
I915_WRITE(ILK_DPFC_CONTROL, DPFC_CTL_EN | DPFC_CTL_LIMIT_1X |
IVB_DPFC_CTL_FENCE_EN |
-@@ -3700,7 +3700,7 @@ static void ironlake_enable_rc6(struct drm_device *dev)
+@@ -3700,7 +3700,7 @@ static void ironlake_enable_rc6(struct d
intel_ring_emit(ring, MI_SUSPEND_FLUSH | MI_SUSPEND_FLUSH_EN);
intel_ring_emit(ring, MI_SET_CONTEXT);
@@ -947,7 +921,7 @@ index f9d0afd4bd6c..613923a75abe 100644
MI_MM_SPACE_GTT |
MI_SAVE_EXT_STATE_EN |
MI_RESTORE_EXT_STATE_EN |
-@@ -3723,7 +3723,7 @@ static void ironlake_enable_rc6(struct drm_device *dev)
+@@ -3723,7 +3723,7 @@ static void ironlake_enable_rc6(struct d
return;
}
@@ -956,11 +930,9 @@ index f9d0afd4bd6c..613923a75abe 100644
I915_WRITE(RSTDBYCTL, I915_READ(RSTDBYCTL) & ~RCX_SW_EXIT);
}
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 079ef0129e74..ea6aef5e6fea 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -440,14 +440,14 @@ static int init_ring_common(struct intel_ring_buffer *ring)
+@@ -440,14 +440,14 @@ static int init_ring_common(struct intel
* registers with the above sequence (the readback of the HEAD registers
* also enforces ordering), otherwise the hw might lose the new ring
* register values. */
@@ -977,7 +949,7 @@ index 079ef0129e74..ea6aef5e6fea 100644
(I915_READ_HEAD(ring) & HEAD_ADDR) == 0, 50)) {
DRM_ERROR("%s initialization failed "
"ctl %08x head %08x tail %08x start %08x\n",
-@@ -505,7 +505,7 @@ init_pipe_control(struct intel_ring_buffer *ring)
+@@ -505,7 +505,7 @@ init_pipe_control(struct intel_ring_buff
if (ret)
goto err_unref;
@@ -986,7 +958,7 @@ index 079ef0129e74..ea6aef5e6fea 100644
pc->cpu_page = kmap(sg_page(obj->pages->sgl));
if (pc->cpu_page == NULL) {
ret = -ENOMEM;
-@@ -1156,7 +1156,7 @@ i830_dispatch_execbuffer(struct intel_ring_buffer *ring,
+@@ -1156,7 +1156,7 @@ i830_dispatch_execbuffer(struct intel_ri
intel_ring_advance(ring);
} else {
struct drm_i915_gem_object *obj = ring->private;
@@ -995,7 +967,7 @@ index 079ef0129e74..ea6aef5e6fea 100644
if (len > I830_BATCH_LIMIT)
return -ENOSPC;
-@@ -1241,7 +1241,7 @@ static int init_status_page(struct intel_ring_buffer *ring)
+@@ -1241,7 +1241,7 @@ static int init_status_page(struct intel
goto err_unref;
}
@@ -1004,7 +976,7 @@ index 079ef0129e74..ea6aef5e6fea 100644
ring->status_page.page_addr = kmap(sg_page(obj->pages->sgl));
if (ring->status_page.page_addr == NULL) {
ret = -ENOMEM;
-@@ -1328,7 +1328,7 @@ static int intel_init_ring_buffer(struct drm_device *dev,
+@@ -1328,7 +1328,7 @@ static int intel_init_ring_buffer(struct
goto err_unpin;
ring->virtual_start =
@@ -1013,11 +985,9 @@ index 079ef0129e74..ea6aef5e6fea 100644
ring->size);
if (ring->virtual_start == NULL) {
DRM_ERROR("Failed to map ringbuffer.\n");
-diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
-index 1fa5612a4572..55bdf70b548b 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
-@@ -133,7 +133,7 @@ vlv_update_plane(struct drm_plane *dplane, struct drm_framebuffer *fb,
+@@ -133,7 +133,7 @@ vlv_update_plane(struct drm_plane *dplan
I915_WRITE(SPSIZE(pipe, plane), (crtc_h << 16) | crtc_w);
I915_WRITE(SPCNTR(pipe, plane), sprctl);
@@ -1026,7 +996,7 @@ index 1fa5612a4572..55bdf70b548b 100644
sprsurf_offset);
POSTING_READ(SPSURF(pipe, plane));
}
-@@ -308,7 +308,8 @@ ivb_update_plane(struct drm_plane *plane, struct drm_framebuffer *fb,
+@@ -308,7 +308,8 @@ ivb_update_plane(struct drm_plane *plane
if (intel_plane->can_scale)
I915_WRITE(SPRSCALE(pipe), sprscale);
I915_WRITE(SPRCTL(pipe), sprctl);
@@ -1036,7 +1006,7 @@ index 1fa5612a4572..55bdf70b548b 100644
POSTING_READ(SPRSURF(pipe));
/* potentially re-enable LP watermarks */
-@@ -478,7 +479,8 @@ ilk_update_plane(struct drm_plane *plane, struct drm_framebuffer *fb,
+@@ -478,7 +479,8 @@ ilk_update_plane(struct drm_plane *plane
I915_WRITE(DVSSIZE(pipe), (crtc_h << 16) | crtc_w);
I915_WRITE(DVSSCALE(pipe), dvsscale);
I915_WRITE(DVSCNTR(pipe), dvscntr);
@@ -1046,6 +1016,3 @@ index 1fa5612a4572..55bdf70b548b 100644
POSTING_READ(DVSSURF(pipe));
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0441-drm-i915-don-t-frob-mm.suspended-when-not-using-ums.patch b/patches.baytrail/0441-drm-i915-don-t-frob-mm.suspended-when-not-using-ums.patch
index 2c6c19fbe29b67..c68f21daa83ea1 100644
--- a/patches.baytrail/0441-drm-i915-don-t-frob-mm.suspended-when-not-using-ums.patch
+++ b/patches.baytrail/0441-drm-i915-don-t-frob-mm.suspended-when-not-using-ums.patch
@@ -37,18 +37,16 @@ Conflicts:
e13af9a8340685cfe25d0c9f708da7121e0f51dd)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 13 +++-------
- drivers/gpu/drm/i915/i915_drv.c | 11 +++++---
- drivers/gpu/drm/i915/i915_drv.h | 24 ++++++++++--------
- drivers/gpu/drm/i915/i915_gem.c | 40 ++++++++++++++++++------------
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 13 ++-------
+ drivers/gpu/drm/i915/i915_drv.c | 11 +++++--
+ drivers/gpu/drm/i915/i915_drv.h | 24 ++++++++++-------
+ drivers/gpu/drm/i915/i915_gem.c | 40 +++++++++++++++++------------
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 -
5 files changed, 50 insertions(+), 40 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 6995baca9b62..240e1ef3c993 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1323,10 +1323,8 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1331,10 +1331,8 @@ static int i915_load_modeset_init(struct
/* Always safe in the mode setting case. */
/* FIXME: do pre/post-mode set stuff in core KMS code */
dev->vblank_disable_allowed = 1;
@@ -60,7 +58,7 @@ index 6995baca9b62..240e1ef3c993 100644
ret = intel_fbdev_init(dev);
if (ret)
-@@ -1352,9 +1350,6 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1360,9 +1358,6 @@ static int i915_load_modeset_init(struct
drm_kms_helper_poll_init(dev);
@@ -70,7 +68,7 @@ index 6995baca9b62..240e1ef3c993 100644
return 0;
cleanup_gem:
-@@ -1631,9 +1626,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1639,9 +1634,6 @@ int i915_driver_load(struct drm_device *
goto out_gem_unload;
}
@@ -80,7 +78,7 @@ index 6995baca9b62..240e1ef3c993 100644
if (HAS_POWER_WELL(dev))
i915_init_power_well(dev);
-@@ -1643,6 +1635,9 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1651,6 +1643,9 @@ int i915_driver_load(struct drm_device *
DRM_ERROR("failed to init modeset\n");
goto out_gem_unload;
}
@@ -90,11 +88,9 @@ index 6995baca9b62..240e1ef3c993 100644
}
i915_setup_sysfs(dev);
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 95fe9c2a1449..370f2da5d9c0 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -556,7 +556,11 @@ static int i915_drm_freeze(struct drm_device *dev)
+@@ -556,7 +556,11 @@ static int i915_drm_freeze(struct drm_de
/* If KMS is active, we do the leavevt stuff here */
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
@@ -107,7 +103,7 @@ index 95fe9c2a1449..370f2da5d9c0 100644
if (error) {
dev_err(&dev->pdev->dev,
"GEM idle failed, resume might fail\n");
-@@ -661,7 +665,6 @@ static int __i915_drm_thaw(struct drm_device *dev)
+@@ -661,7 +665,6 @@ static int __i915_drm_thaw(struct drm_de
intel_init_pch_refclk(dev);
mutex_lock(&dev->struct_mutex);
@@ -129,8 +125,6 @@ index 95fe9c2a1449..370f2da5d9c0 100644
i915_gem_init_swizzling(dev);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index db64bfefe8c5..eab408e66584 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -815,6 +815,18 @@ struct i915_dri1_state {
@@ -178,11 +172,9 @@ index db64bfefe8c5..eab408e66584 100644
} drm_i915_private_t;
/* Iterate over initialised rings */
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index ee1f4add3430..5846134574f1 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -2086,7 +2086,7 @@ int __i915_add_request(struct intel_ring_buffer *ring,
+@@ -2086,7 +2086,7 @@ int __i915_add_request(struct intel_ring
trace_i915_gem_request_add(ring, request->seqno);
ring->outstanding_lazy_request = 0;
@@ -191,7 +183,7 @@ index ee1f4add3430..5846134574f1 100644
if (i915_enable_hangcheck) {
mod_timer(&dev_priv->gpu_error.hangcheck_timer,
round_jiffies_up(jiffies + DRM_I915_HANGCHECK_JIFFIES));
-@@ -2401,7 +2401,7 @@ i915_gem_retire_work_handler(struct work_struct *work)
+@@ -2401,7 +2401,7 @@ i915_gem_retire_work_handler(struct work
idle &= list_empty(&ring->request_list);
}
@@ -239,7 +231,7 @@ index ee1f4add3430..5846134574f1 100644
int ret;
if (drm_core_check_feature(dev, DRIVER_MODESET))
-@@ -4229,7 +4220,7 @@ i915_gem_entervt_ioctl(struct drm_device *dev, void *data,
+@@ -4229,7 +4220,7 @@ i915_gem_entervt_ioctl(struct drm_device
}
mutex_lock(&dev->struct_mutex);
@@ -248,7 +240,7 @@ index ee1f4add3430..5846134574f1 100644
ret = i915_gem_init_hw(dev);
if (ret != 0) {
-@@ -4249,7 +4240,7 @@ i915_gem_entervt_ioctl(struct drm_device *dev, void *data,
+@@ -4249,7 +4240,7 @@ i915_gem_entervt_ioctl(struct drm_device
cleanup_ringbuffer:
mutex_lock(&dev->struct_mutex);
i915_gem_cleanup_ringbuffer(dev);
@@ -285,7 +277,7 @@ index ee1f4add3430..5846134574f1 100644
}
void
-@@ -4274,9 +4280,11 @@ i915_gem_lastclose(struct drm_device *dev)
+@@ -4274,9 +4280,11 @@ i915_gem_lastclose(struct drm_device *de
if (drm_core_check_feature(dev, DRIVER_MODESET))
return;
@@ -297,11 +289,9 @@ index ee1f4add3430..5846134574f1 100644
}
static void
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index 5aeb447ead6b..64eda4463b70 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -973,7 +973,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
+@@ -973,7 +973,7 @@ i915_gem_do_execbuffer(struct drm_device
if (ret)
goto pre_mutex_err;
@@ -310,6 +300,3 @@ index 5aeb447ead6b..64eda4463b70 100644
mutex_unlock(&dev->struct_mutex);
ret = -EBUSY;
goto pre_mutex_err;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0450-drm-i915-kill-dev_priv-rps.lock.patch b/patches.baytrail/0450-drm-i915-kill-dev_priv-rps.lock.patch
index b2fa01f18b6ed7..0fa422ba371871 100644
--- a/patches.baytrail/0450-drm-i915-kill-dev_priv-rps.lock.patch
+++ b/patches.baytrail/0450-drm-i915-kill-dev_priv-rps.lock.patch
@@ -26,19 +26,17 @@ Conflicts:
(context changes)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 1 -
- drivers/gpu/drm/i915/i915_drv.h | 8 ++++----
- drivers/gpu/drm/i915/i915_irq.c | 12 ++++++------
- drivers/gpu/drm/i915/intel_pm.c | 16 ++++++++--------
- drivers/gpu/drm/i915/intel_ringbuffer.c | 8 ++++----
- drivers/gpu/drm/i915/intel_ringbuffer.h | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 1 -
+ drivers/gpu/drm/i915/i915_drv.h | 8 ++++----
+ drivers/gpu/drm/i915/i915_irq.c | 12 ++++++------
+ drivers/gpu/drm/i915/intel_pm.c | 16 ++++++++--------
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 8 ++++----
+ drivers/gpu/drm/i915/intel_ringbuffer.h | 2 +-
6 files changed, 23 insertions(+), 24 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 240e1ef3c993..b290daba28cf 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1492,7 +1492,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1500,7 +1500,6 @@ int i915_driver_load(struct drm_device *
spin_lock_init(&dev_priv->irq_lock);
spin_lock_init(&dev_priv->gpu_error.lock);
@@ -46,8 +44,6 @@ index 240e1ef3c993..b290daba28cf 100644
spin_lock_init(&dev_priv->gt_lock);
spin_lock_init(&dev_priv->backlight.lock);
mutex_init(&dev_priv->dpio_lock);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 876ba7d7efd5..380d5799146c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -744,12 +744,12 @@ struct i915_suspend_saved_registers {
@@ -67,11 +63,9 @@ index 876ba7d7efd5..380d5799146c 100644
/* The below variables an all the rps hw state are protected by
* dev->struct mutext. */
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index b08ce0b9f0bb..2da9e68db4f3 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -719,13 +719,13 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -719,13 +719,13 @@ static void gen6_pm_rps_work(struct work
u32 pm_iir, pm_imr;
u8 new_delay;
@@ -87,7 +81,7 @@ index b08ce0b9f0bb..2da9e68db4f3 100644
if ((pm_iir & GEN6_PM_RPS_EVENTS) == 0)
return;
-@@ -887,11 +887,11 @@ static void gen6_rps_irq_handler(struct drm_i915_private *dev_priv,
+@@ -887,11 +887,11 @@ static void gen6_rps_irq_handler(struct
* The mask bit in IMR is cleared by dev_priv->rps.work.
*/
@@ -101,7 +95,7 @@ index b08ce0b9f0bb..2da9e68db4f3 100644
queue_work(dev_priv->wq, &dev_priv->rps.work);
}
-@@ -964,12 +964,12 @@ static void hsw_pm_irq_handler(struct drm_i915_private *dev_priv,
+@@ -964,12 +964,12 @@ static void hsw_pm_irq_handler(struct dr
u32 pm_iir)
{
if (pm_iir & GEN6_PM_RPS_EVENTS) {
@@ -116,11 +110,9 @@ index b08ce0b9f0bb..2da9e68db4f3 100644
queue_work(dev_priv->wq, &dev_priv->rps.work);
}
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 613923a75abe..886da760df06 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3135,9 +3135,9 @@ static void gen6_disable_rps(struct drm_device *dev)
+@@ -3135,9 +3135,9 @@ static void gen6_disable_rps(struct drm_
* register (PMIMR) to mask PM interrupts. The only risk is in leaving
* stale bits in PMIIR and PMIMR which gen6_enable_rps will clean up. */
@@ -132,7 +124,7 @@ index 613923a75abe..886da760df06 100644
I915_WRITE(GEN6_PMIIR, GEN6_PM_RPS_EVENTS);
}
-@@ -3154,9 +3154,9 @@ static void valleyview_disable_rps(struct drm_device *dev)
+@@ -3154,9 +3154,9 @@ static void valleyview_disable_rps(struc
* register (PMIMR) to mask PM interrupts. The only risk is in leaving
* stale bits in PMIIR and PMIMR which gen6_enable_rps will clean up. */
@@ -144,7 +136,7 @@ index 613923a75abe..886da760df06 100644
I915_WRITE(GEN6_PMIIR, I915_READ(GEN6_PMIIR));
-@@ -3321,13 +3321,13 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3321,13 +3321,13 @@ static void gen6_enable_rps(struct drm_d
/* requires MSI enabled */
I915_WRITE(GEN6_PMIER, I915_READ(GEN6_PMIER) | GEN6_PM_RPS_EVENTS);
@@ -160,7 +152,7 @@ index 613923a75abe..886da760df06 100644
/* unmask all PM interrupts */
I915_WRITE(GEN6_PMINTRMSK, 0);
-@@ -3601,10 +3601,10 @@ static void valleyview_enable_rps(struct drm_device *dev)
+@@ -3601,10 +3601,10 @@ static void valleyview_enable_rps(struct
/* requires MSI enabled */
I915_WRITE(GEN6_PMIER, GEN6_PM_RPS_EVENTS);
@@ -173,11 +165,9 @@ index 613923a75abe..886da760df06 100644
/* enable all PM interrupts */
I915_WRITE(GEN6_PMINTRMSK, 0);
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index ea6aef5e6fea..ad439afdcc6d 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -1082,14 +1082,14 @@ hsw_vebox_get_irq(struct intel_ring_buffer *ring)
+@@ -1082,14 +1082,14 @@ hsw_vebox_get_irq(struct intel_ring_buff
if (!dev->irq_enabled)
return false;
@@ -194,7 +184,7 @@ index ea6aef5e6fea..ad439afdcc6d 100644
return true;
}
-@@ -1104,14 +1104,14 @@ hsw_vebox_put_irq(struct intel_ring_buffer *ring)
+@@ -1104,14 +1104,14 @@ hsw_vebox_put_irq(struct intel_ring_buff
if (!dev->irq_enabled)
return;
@@ -211,8 +201,6 @@ index ea6aef5e6fea..ad439afdcc6d 100644
}
static int
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index 799f04c9da45..8a87b3f9974c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -80,7 +80,7 @@ struct intel_ring_buffer {
@@ -224,6 +212,3 @@ index 799f04c9da45..8a87b3f9974c 100644
} irq_refcount;
u32 irq_enable_mask; /* bitmask to enable ring interrupt */
u32 trace_irq_seqno;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0455-drm-i915-move-error-state-to-own-compilation-unit.patch b/patches.baytrail/0455-drm-i915-move-error-state-to-own-compilation-unit.patch
index 33838e795ace99..39a0283b47d531 100644
--- a/patches.baytrail/0455-drm-i915-move-error-state-to-own-compilation-unit.patch
+++ b/patches.baytrail/0455-drm-i915-move-error-state-to-own-compilation-unit.patch
@@ -22,18 +22,16 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 84734a049d0ef2f6f5fb0a1fe060cd51480dd855)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/Makefile | 1 +
- drivers/gpu/drm/i915/i915_debugfs.c | 415 +--------------
- drivers/gpu/drm/i915/i915_drv.h | 24 +-
- drivers/gpu/drm/i915/i915_gpu_error.c | 971 ++++++++++++++++++++++++++++++++++
- drivers/gpu/drm/i915/i915_irq.c | 529 ------------------
- drivers/gpu/drm/i915/intel_display.c | 4 -
- drivers/gpu/drm/i915/intel_overlay.c | 4 -
+ drivers/gpu/drm/i915/Makefile | 1
+ drivers/gpu/drm/i915/i915_debugfs.c | 415 --------------
+ drivers/gpu/drm/i915/i915_drv.h | 24
+ drivers/gpu/drm/i915/i915_gpu_error.c | 971 ++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/i915_irq.c | 529 ------------------
+ drivers/gpu/drm/i915/intel_display.c | 4
+ drivers/gpu/drm/i915/intel_overlay.c | 4
7 files changed, 983 insertions(+), 965 deletions(-)
create mode 100644 drivers/gpu/drm/i915/i915_gpu_error.c
-diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
-index 40034ecefd3b..9d1da7cceb21 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -5,6 +5,7 @@
@@ -44,8 +42,6 @@ index 40034ecefd3b..9d1da7cceb21 100644
i915_suspend.o \
i915_gem.o \
i915_gem_context.o \
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index d4138124d993..86379799dab8 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -30,7 +30,6 @@
@@ -56,7 +52,7 @@ index d4138124d993..86379799dab8 100644
#include <drm/drmP.h>
#include "intel_drv.h"
#include "intel_ringbuffer.h"
-@@ -90,16 +89,6 @@ static const char *get_tiling_flag(struct drm_i915_gem_object *obj)
+@@ -90,16 +89,6 @@ static const char *get_tiling_flag(struc
}
}
@@ -73,7 +69,7 @@ index d4138124d993..86379799dab8 100644
static void
describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
{
-@@ -113,7 +102,7 @@ describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
+@@ -113,7 +102,7 @@ describe_obj(struct seq_file *m, struct
obj->last_read_seqno,
obj->last_write_seqno,
obj->last_fenced_seqno,
@@ -82,7 +78,7 @@ index d4138124d993..86379799dab8 100644
obj->dirty ? " dirty" : "",
obj->madv == I915_MADV_DONTNEED ? " purgeable" : "");
if (obj->base.name)
-@@ -608,358 +597,6 @@ static int i915_hws_info(struct seq_file *m, void *data)
+@@ -608,358 +597,6 @@ static int i915_hws_info(struct seq_file
return 0;
}
@@ -441,7 +437,7 @@ index d4138124d993..86379799dab8 100644
static ssize_t
i915_error_state_write(struct file *filp,
const char __user *ubuf,
-@@ -982,26 +619,6 @@ i915_error_state_write(struct file *filp,
+@@ -982,26 +619,6 @@ i915_error_state_write(struct file *filp
return cnt;
}
@@ -468,10 +464,11 @@ index d4138124d993..86379799dab8 100644
static int i915_error_state_open(struct inode *inode, struct file *file)
{
struct drm_device *dev = inode->i_private;
-@@ -1030,36 +647,6 @@ static int i915_error_state_release(struct inode *inode, struct file *file)
+@@ -1029,36 +646,6 @@ static int i915_error_state_release(stru
+
return 0;
}
-
+-
-int i915_error_state_buf_init(struct drm_i915_error_state_buf *ebuf,
- size_t count, loff_t pos)
-{
@@ -501,15 +498,12 @@ index d4138124d993..86379799dab8 100644
-
- return 0;
-}
--
+
static ssize_t i915_error_state_read(struct file *file, char __user *userbuf,
size_t count, loff_t *pos)
- {
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 380d5799146c..a7fbefaa1c4a 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1629,21 +1629,12 @@ extern void intel_hpd_init(struct drm_device *dev);
+@@ -1629,21 +1629,12 @@ extern void intel_hpd_init(struct drm_de
extern void intel_gt_init(struct drm_device *dev);
extern void intel_gt_sanitize(struct drm_device *dev);
@@ -531,7 +525,7 @@ index 380d5799146c..a7fbefaa1c4a 100644
/* i915_gem.c */
int i915_gem_init_ioctl(struct drm_device *dev, void *data,
struct drm_file *file_priv);
-@@ -1954,13 +1945,12 @@ void i915_gem_dump_object(struct drm_i915_gem_object *obj, int len,
+@@ -1954,13 +1945,12 @@ void i915_gem_dump_object(struct drm_i91
/* i915_debugfs.c */
int i915_debugfs_init(struct drm_minor *minor);
void i915_debugfs_cleanup(struct drm_minor *minor);
@@ -547,7 +541,7 @@ index 380d5799146c..a7fbefaa1c4a 100644
int i915_error_state_buf_init(struct drm_i915_error_state_buf *eb,
size_t count, loff_t pos);
static inline void i915_error_state_buf_release(
-@@ -1968,6 +1958,14 @@ static inline void i915_error_state_buf_release(
+@@ -1968,6 +1958,14 @@ static inline void i915_error_state_buf_
{
kfree(eb->buf);
}
@@ -562,7 +556,7 @@ index 380d5799146c..a7fbefaa1c4a 100644
/* i915_suspend.c */
extern int i915_save_state(struct drm_device *dev);
-@@ -2047,7 +2045,6 @@ int i915_reg_read_ioctl(struct drm_device *dev, void *data,
+@@ -2047,7 +2045,6 @@ int i915_reg_read_ioctl(struct drm_devic
struct drm_file *file);
/* overlay */
@@ -570,7 +564,7 @@ index 380d5799146c..a7fbefaa1c4a 100644
extern struct intel_overlay_error_state *intel_overlay_capture_error_state(struct drm_device *dev);
extern void intel_overlay_print_error_state(struct drm_i915_error_state_buf *e,
struct intel_overlay_error_state *error);
-@@ -2056,7 +2053,6 @@ extern struct intel_display_error_state *intel_display_capture_error_state(struc
+@@ -2056,7 +2053,6 @@ extern struct intel_display_error_state
extern void intel_display_print_error_state(struct drm_i915_error_state_buf *e,
struct drm_device *dev,
struct intel_display_error_state *error);
@@ -578,9 +572,6 @@ index 380d5799146c..a7fbefaa1c4a 100644
/* On SNB platform, before reading ring registers forcewake bit
* must be set to prevent GT core from power down and stale values being
-diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
-new file mode 100644
-index 000000000000..58386cebb865
--- /dev/null
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -0,0 +1,971 @@
@@ -1555,11 +1546,9 @@ index 000000000000..58386cebb865
+ break;
+ }
+}
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index f77e87365480..a710ec29781b 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -1527,535 +1527,6 @@ static void i915_error_work_func(struct work_struct *work)
+@@ -1527,535 +1527,6 @@ static void i915_error_work_func(struct
}
}
@@ -2095,11 +2084,9 @@ index f77e87365480..a710ec29781b 100644
static void i915_report_and_clear_eir(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 861dcc5d4ebf..7b52eaab0dc4 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10213,9 +10213,6 @@ int intel_modeset_vga_set_state(struct drm_device *dev, bool state)
+@@ -10216,9 +10216,6 @@ int intel_modeset_vga_set_state(struct d
return 0;
}
@@ -2109,16 +2096,14 @@ index 861dcc5d4ebf..7b52eaab0dc4 100644
struct intel_display_error_state {
u32 power_well_driver;
-@@ -10387,4 +10384,3 @@ intel_display_print_error_state(struct drm_i915_error_state_buf *m,
+@@ -10390,4 +10387,3 @@ intel_display_print_error_state(struct d
err_printf(m, " VSYNC: %08x\n", error->transcoder[i].vsync);
}
}
-#endif
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 81c3ca14fa92..2abb53e6f1e0 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
-@@ -1412,9 +1412,6 @@ void intel_cleanup_overlay(struct drm_device *dev)
+@@ -1412,9 +1412,6 @@ void intel_cleanup_overlay(struct drm_de
kfree(dev_priv->overlay);
}
@@ -2128,11 +2113,8 @@ index 81c3ca14fa92..2abb53e6f1e0 100644
struct intel_overlay_error_state {
struct overlay_registers regs;
unsigned long base;
-@@ -1537,4 +1534,3 @@ intel_overlay_print_error_state(struct drm_i915_error_state_buf *m,
+@@ -1537,4 +1534,3 @@ intel_overlay_print_error_state(struct d
P(UVSCALEV);
#undef P
}
-#endif
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0461-drm-i915-store-eLLC-size.patch b/patches.baytrail/0461-drm-i915-store-eLLC-size.patch
index 319d8db09fed3c..753c2819a1839b 100644
--- a/patches.baytrail/0461-drm-i915-store-eLLC-size.patch
+++ b/patches.baytrail/0461-drm-i915-store-eLLC-size.patch
@@ -32,16 +32,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 59124506ba5297e48410e410c3bce83784fddf58)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 10 ++++++++++
- drivers/gpu/drm/i915/i915_drv.h | 3 +++
- drivers/gpu/drm/i915/i915_gem.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 10 ++++++++++
+ drivers/gpu/drm/i915/i915_drv.h | 3 +++
+ drivers/gpu/drm/i915/i915_gem.c | 2 +-
3 files changed, 14 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index b290daba28cf..db56ee7f27d5 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1527,6 +1527,16 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1535,6 +1535,16 @@ int i915_driver_load(struct drm_device *
intel_early_sanitize_regs(dev);
@@ -58,8 +56,6 @@ index b290daba28cf..db56ee7f27d5 100644
ret = i915_gem_gtt_init(dev);
if (ret)
goto put_bridge;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index a7fbefaa1c4a..7adf2b45b185 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1152,6 +1152,9 @@ typedef struct drm_i915_private {
@@ -72,8 +68,6 @@ index a7fbefaa1c4a..7adf2b45b185 100644
/* gen6+ rps state */
struct intel_gen6_power_mgmt rps;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index a7039e69395b..791c238a6b01 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4131,7 +4131,7 @@ i915_gem_init_hw(struct drm_device *dev)
@@ -85,6 +79,3 @@ index a7039e69395b..791c238a6b01 100644
I915_WRITE(HSW_IDICR, I915_READ(HSW_IDICR) | IDIHASHMSK(0xf));
if (HAS_PCH_NOP(dev)) {
---
-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 1b25d5f1c69408..239a4f438c6361 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
@@ -30,18 +30,16 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 853ba5d2231619e1c7f7de1269e135174ec8e3cb)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 4 +-
- drivers/gpu/drm/i915/i915_dma.c | 4 +-
- drivers/gpu/drm/i915/i915_drv.h | 57 ++++++-------
- drivers/gpu/drm/i915/i915_gem.c | 4 +-
- drivers/gpu/drm/i915/i915_gem_gtt.c | 165 ++++++++++++++++++++----------------
+ drivers/gpu/drm/i915/i915_debugfs.c | 4
+ drivers/gpu/drm/i915/i915_dma.c | 4
+ drivers/gpu/drm/i915/i915_drv.h | 57 +++++-------
+ drivers/gpu/drm/i915/i915_gem.c | 4
+ drivers/gpu/drm/i915/i915_gem_gtt.c | 165 +++++++++++++++++++-----------------
5 files changed, 123 insertions(+), 111 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 8819f851e996..1c697c0ab7e5 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -276,8 +276,8 @@ static int i915_gem_object_info(struct seq_file *m, void *data)
+@@ -276,8 +276,8 @@ static int i915_gem_object_info(struct s
count, size);
seq_printf(m, "%zu [%lu] gtt total\n",
@@ -52,11 +50,9 @@ index 8819f851e996..1c697c0ab7e5 100644
seq_putc(m, '\n');
list_for_each_entry_reverse(file, &dev->filelist, lhead) {
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index db56ee7f27d5..146890cacabe 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1675,7 +1675,7 @@ out_gem_unload:
+@@ -1683,7 +1683,7 @@ out_gem_unload:
out_mtrrfree:
arch_phys_wc_del(dev_priv->gtt.mtrr);
io_mapping_free(dev_priv->gtt.mappable);
@@ -65,7 +61,7 @@ index db56ee7f27d5..146890cacabe 100644
out_rmmap:
pci_iounmap(dev->pdev, dev_priv->regs);
put_bridge:
-@@ -1770,7 +1770,7 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1778,7 +1778,7 @@ int i915_driver_unload(struct drm_device
destroy_workqueue(dev_priv->wq);
pm_qos_remove_request(&dev_priv->pm_qos);
@@ -74,8 +70,6 @@ index db56ee7f27d5..146890cacabe 100644
if (dev_priv->slab)
kmem_cache_destroy(dev_priv->slab);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index fc7b1105b47a..3ce73b4041ef 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -446,6 +446,29 @@ enum i915_cache_level {
@@ -179,11 +173,9 @@ index fc7b1105b47a..3ce73b4041ef 100644
struct i915_gem_mm mm;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index e2370a2ef1ae..cc336bc8d8fe 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -181,7 +181,7 @@ i915_gem_get_aperture_ioctl(struct drm_device *dev, void *data,
+@@ -181,7 +181,7 @@ i915_gem_get_aperture_ioctl(struct drm_d
pinned += i915_gem_obj_ggtt_size(obj);
mutex_unlock(&dev->struct_mutex);
@@ -192,7 +184,7 @@ index e2370a2ef1ae..cc336bc8d8fe 100644
args->aper_available_size = args->aper_size - pinned;
return 0;
-@@ -3065,7 +3065,7 @@ i915_gem_object_bind_to_gtt(struct drm_i915_gem_object *obj,
+@@ -3065,7 +3065,7 @@ i915_gem_object_bind_to_gtt(struct drm_i
u32 size, fence_size, fence_alignment, unfenced_alignment;
bool mappable, fenceable;
size_t gtt_max = map_and_fenceable ?
@@ -201,11 +193,9 @@ index e2370a2ef1ae..cc336bc8d8fe 100644
int ret;
fence_size = i915_gem_get_gtt_size(dev,
-diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index 422273328302..f982bf0de157 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
-@@ -124,7 +124,7 @@ static gen6_gtt_pte_t iris_pte_encode(dma_addr_t addr,
+@@ -124,7 +124,7 @@ static gen6_gtt_pte_t iris_pte_encode(dm
static void gen6_write_pdes(struct i915_hw_ppgtt *ppgtt)
{
@@ -214,7 +204,7 @@ index 422273328302..f982bf0de157 100644
gen6_gtt_pte_t __iomem *pd_addr;
uint32_t pd_entry;
int i;
-@@ -203,18 +203,18 @@ static int gen6_ppgtt_enable(struct drm_device *dev)
+@@ -203,18 +203,18 @@ static int gen6_ppgtt_enable(struct drm_
}
/* PPGTT support for Sandybdrige/Gen6 and later */
@@ -237,7 +227,7 @@ index 422273328302..f982bf0de157 100644
while (num_entries) {
last_pte = first_pte + num_entries;
-@@ -234,11 +234,13 @@ static void gen6_ppgtt_clear_range(struct i915_hw_ppgtt *ppgtt,
+@@ -234,11 +234,13 @@ static void gen6_ppgtt_clear_range(struc
}
}
@@ -252,7 +242,7 @@ index 422273328302..f982bf0de157 100644
gen6_gtt_pte_t *pt_vaddr;
unsigned act_pt = first_entry / I915_PPGTT_PT_ENTRIES;
unsigned act_pte = first_entry % I915_PPGTT_PT_ENTRIES;
-@@ -249,7 +251,7 @@ static void gen6_ppgtt_insert_entries(struct i915_hw_ppgtt *ppgtt,
+@@ -249,7 +251,7 @@ static void gen6_ppgtt_insert_entries(st
dma_addr_t page_addr;
page_addr = sg_page_iter_dma_address(&sg_iter);
@@ -261,7 +251,7 @@ index 422273328302..f982bf0de157 100644
if (++act_pte == I915_PPGTT_PT_ENTRIES) {
kunmap_atomic(pt_vaddr);
act_pt++;
-@@ -261,13 +263,15 @@ static void gen6_ppgtt_insert_entries(struct i915_hw_ppgtt *ppgtt,
+@@ -261,13 +263,15 @@ static void gen6_ppgtt_insert_entries(st
kunmap_atomic(pt_vaddr);
}
@@ -279,7 +269,7 @@ index 422273328302..f982bf0de157 100644
ppgtt->pt_dma_addr[i],
4096, PCI_DMA_BIDIRECTIONAL);
}
-@@ -281,7 +285,7 @@ static void gen6_ppgtt_cleanup(struct i915_hw_ppgtt *ppgtt)
+@@ -281,7 +285,7 @@ static void gen6_ppgtt_cleanup(struct i9
static int gen6_ppgtt_init(struct i915_hw_ppgtt *ppgtt)
{
@@ -288,7 +278,7 @@ index 422273328302..f982bf0de157 100644
struct drm_i915_private *dev_priv = dev->dev_private;
unsigned first_pd_entry_in_global_pt;
int i;
-@@ -293,17 +297,18 @@ static int gen6_ppgtt_init(struct i915_hw_ppgtt *ppgtt)
+@@ -293,17 +297,18 @@ static int gen6_ppgtt_init(struct i915_h
first_pd_entry_in_global_pt = gtt_total_entries(dev_priv->gtt);
if (IS_HASWELL(dev)) {
@@ -313,7 +303,7 @@ index 422273328302..f982bf0de157 100644
ppgtt->pt_pages = kzalloc(sizeof(struct page *)*ppgtt->num_pd_entries,
GFP_KERNEL);
if (!ppgtt->pt_pages)
-@@ -334,8 +339,8 @@ static int gen6_ppgtt_init(struct i915_hw_ppgtt *ppgtt)
+@@ -334,8 +339,8 @@ static int gen6_ppgtt_init(struct i915_h
ppgtt->pt_dma_addr[i] = pt_addr;
}
@@ -324,7 +314,7 @@ index 422273328302..f982bf0de157 100644
ppgtt->pd_offset = first_pd_entry_in_global_pt * sizeof(gen6_gtt_pte_t);
-@@ -368,7 +373,7 @@ static int i915_gem_init_aliasing_ppgtt(struct drm_device *dev)
+@@ -368,7 +373,7 @@ static int i915_gem_init_aliasing_ppgtt(
if (!ppgtt)
return -ENOMEM;
@@ -333,7 +323,7 @@ index 422273328302..f982bf0de157 100644
if (INTEL_INFO(dev)->gen < 8)
ret = gen6_ppgtt_init(ppgtt);
-@@ -391,7 +396,7 @@ void i915_gem_cleanup_aliasing_ppgtt(struct drm_device *dev)
+@@ -391,7 +396,7 @@ void i915_gem_cleanup_aliasing_ppgtt(str
if (!ppgtt)
return;
@@ -342,7 +332,7 @@ index 422273328302..f982bf0de157 100644
dev_priv->mm.aliasing_ppgtt = NULL;
}
-@@ -399,17 +404,17 @@ void i915_ppgtt_bind_object(struct i915_hw_ppgtt *ppgtt,
+@@ -399,17 +404,17 @@ void i915_ppgtt_bind_object(struct i915_
struct drm_i915_gem_object *obj,
enum i915_cache_level cache_level)
{
@@ -366,7 +356,7 @@ index 422273328302..f982bf0de157 100644
}
extern int intel_iommu_gfx_mapped;
-@@ -456,8 +461,9 @@ void i915_gem_restore_gtt_mappings(struct drm_device *dev)
+@@ -456,8 +461,9 @@ void i915_gem_restore_gtt_mappings(struc
struct drm_i915_gem_object *obj;
/* First fill our portion of the GTT with scratch pages */
@@ -378,7 +368,7 @@ index 422273328302..f982bf0de157 100644
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list) {
i915_gem_clflush_object(obj);
-@@ -486,12 +492,12 @@ int i915_gem_gtt_prepare_object(struct drm_i915_gem_object *obj)
+@@ -486,12 +492,12 @@ int i915_gem_gtt_prepare_object(struct d
* within the global GTT as well as accessible by the GPU through the GMADR
* mapped BAR (dev_priv->mm.gtt->gtt).
*/
@@ -393,7 +383,7 @@ index 422273328302..f982bf0de157 100644
gen6_gtt_pte_t __iomem *gtt_entries =
(gen6_gtt_pte_t __iomem *)dev_priv->gtt.gsm + first_entry;
int i = 0;
-@@ -500,8 +506,7 @@ static void gen6_ggtt_insert_entries(struct drm_device *dev,
+@@ -500,8 +506,7 @@ static void gen6_ggtt_insert_entries(str
for_each_sg_page(st->sgl, &sg_iter, st->nents, 0) {
addr = sg_page_iter_dma_address(&sg_iter);
@@ -403,7 +393,7 @@ index 422273328302..f982bf0de157 100644
i++;
}
-@@ -512,8 +517,8 @@ static void gen6_ggtt_insert_entries(struct drm_device *dev,
+@@ -512,8 +517,8 @@ static void gen6_ggtt_insert_entries(str
* hardware should work, we must keep this posting read for paranoia.
*/
if (i != 0)
@@ -414,7 +404,7 @@ index 422273328302..f982bf0de157 100644
/* This next bit makes the above posting read even more important. We
* want to flush the TLBs only after we're certain all the PTE updates
-@@ -523,11 +528,11 @@ static void gen6_ggtt_insert_entries(struct drm_device *dev,
+@@ -523,11 +528,11 @@ static void gen6_ggtt_insert_entries(str
POSTING_READ(GFX_FLSH_CNTL_GEN6);
}
@@ -428,7 +418,7 @@ index 422273328302..f982bf0de157 100644
gen6_gtt_pte_t scratch_pte, __iomem *gtt_base =
(gen6_gtt_pte_t __iomem *) dev_priv->gtt.gsm + first_entry;
const int max_entries = gtt_total_entries(dev_priv->gtt) - first_entry;
-@@ -538,15 +543,14 @@ static void gen6_ggtt_clear_range(struct drm_device *dev,
+@@ -538,15 +543,14 @@ static void gen6_ggtt_clear_range(struct
first_entry, num_entries, max_entries))
num_entries = max_entries;
@@ -446,7 +436,7 @@ index 422273328302..f982bf0de157 100644
struct sg_table *st,
unsigned int pg_start,
enum i915_cache_level cache_level)
-@@ -558,7 +562,7 @@ static void i915_ggtt_insert_entries(struct drm_device *dev,
+@@ -558,7 +562,7 @@ static void i915_ggtt_insert_entries(str
}
@@ -455,7 +445,7 @@ index 422273328302..f982bf0de157 100644
unsigned int first_entry,
unsigned int num_entries)
{
-@@ -571,10 +575,11 @@ void i915_gem_gtt_bind_object(struct drm_i915_gem_object *obj,
+@@ -571,10 +575,11 @@ void i915_gem_gtt_bind_object(struct drm
{
struct drm_device *dev = obj->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -470,7 +460,7 @@ index 422273328302..f982bf0de157 100644
obj->has_global_gtt_mapping = 1;
}
-@@ -583,10 +588,11 @@ void i915_gem_gtt_unbind_object(struct drm_i915_gem_object *obj)
+@@ -583,10 +588,11 @@ void i915_gem_gtt_unbind_object(struct d
{
struct drm_device *dev = obj->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -485,7 +475,7 @@ index 422273328302..f982bf0de157 100644
obj->has_global_gtt_mapping = 0;
}
-@@ -663,20 +669,23 @@ void i915_gem_setup_global_gtt(struct drm_device *dev,
+@@ -663,20 +669,23 @@ void i915_gem_setup_global_gtt(struct dr
obj->has_global_gtt_mapping = 1;
}
@@ -514,7 +504,7 @@ index 422273328302..f982bf0de157 100644
}
static bool
-@@ -699,7 +708,7 @@ void i915_gem_init_global_gtt(struct drm_device *dev)
+@@ -699,7 +708,7 @@ void i915_gem_init_global_gtt(struct drm
struct drm_i915_private *dev_priv = dev->dev_private;
unsigned long gtt_size, mappable_size;
@@ -523,7 +513,7 @@ index 422273328302..f982bf0de157 100644
mappable_size = dev_priv->gtt.mappable_end;
if (intel_enable_ppgtt(dev) && HAS_ALIASING_PPGTT(dev)) {
-@@ -744,8 +753,8 @@ static int setup_scratch_page(struct drm_device *dev)
+@@ -744,8 +753,8 @@ static int setup_scratch_page(struct drm
#else
dma_addr = page_to_phys(page);
#endif
@@ -534,7 +524,7 @@ index 422273328302..f982bf0de157 100644
return 0;
}
-@@ -753,11 +762,13 @@ static int setup_scratch_page(struct drm_device *dev)
+@@ -753,11 +762,13 @@ static int setup_scratch_page(struct drm
static void teardown_scratch_page(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -552,7 +542,7 @@ index 422273328302..f982bf0de157 100644
}
static inline unsigned int gen6_get_total_gtt_size(u16 snb_gmch_ctl)
-@@ -820,17 +831,18 @@ static int gen6_gmch_probe(struct drm_device *dev,
+@@ -820,17 +831,18 @@ static int gen6_gmch_probe(struct drm_de
if (ret)
DRM_ERROR("Scratch setup failed\n");
@@ -577,7 +567,7 @@ index 422273328302..f982bf0de157 100644
}
static int i915_gmch_probe(struct drm_device *dev,
-@@ -851,13 +863,13 @@ static int i915_gmch_probe(struct drm_device *dev,
+@@ -851,13 +863,13 @@ static int i915_gmch_probe(struct drm_de
intel_gtt_get(gtt_total, stolen, mappable_base, mappable_end);
dev_priv->gtt.do_idle_maps = needs_idle_maps(dev_priv->dev);
@@ -594,7 +584,7 @@ index 422273328302..f982bf0de157 100644
{
intel_gmch_remove();
}
-@@ -870,27 +882,30 @@ int i915_gem_gtt_init(struct drm_device *dev)
+@@ -870,27 +882,30 @@ int i915_gem_gtt_init(struct drm_device
if (INTEL_INFO(dev)->gen <= 5) {
gtt->gtt_probe = i915_gmch_probe;
@@ -633,6 +623,3 @@ index 422273328302..f982bf0de157 100644
DRM_DEBUG_DRIVER("GMADR size = %ldM\n", gtt->mappable_end >> 20);
DRM_DEBUG_DRIVER("GTT stolen size = %zdM\n", gtt->stolen_size >> 20);
---
-1.8.5.rc3
-
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 75aef1ffdf00ce..03de74b708998b 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
@@ -19,19 +19,17 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 93bd8649dba3155d1a0ba2a902d9c49f1c75a1da)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 4 ++--
- drivers/gpu/drm/i915/i915_drv.h | 3 +--
- drivers/gpu/drm/i915/i915_gem.c | 2 +-
- drivers/gpu/drm/i915/i915_gem_evict.c | 10 +++++-----
- drivers/gpu/drm/i915/i915_gem_gtt.c | 17 +++++++++++------
- drivers/gpu/drm/i915/i915_gem_stolen.c | 4 ++--
+ drivers/gpu/drm/i915/i915_dma.c | 4 ++--
+ drivers/gpu/drm/i915/i915_drv.h | 3 +--
+ drivers/gpu/drm/i915/i915_gem.c | 2 +-
+ drivers/gpu/drm/i915/i915_gem_evict.c | 10 +++++-----
+ drivers/gpu/drm/i915/i915_gem_gtt.c | 17 +++++++++++------
+ drivers/gpu/drm/i915/i915_gem_stolen.c | 4 ++--
6 files changed, 22 insertions(+), 18 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 146890cacabe..c6d3105516ca 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1358,7 +1358,7 @@ cleanup_gem:
+@@ -1366,7 +1366,7 @@ cleanup_gem:
i915_gem_context_fini(dev);
mutex_unlock(&dev->struct_mutex);
i915_gem_cleanup_aliasing_ppgtt(dev);
@@ -40,7 +38,7 @@ index 146890cacabe..c6d3105516ca 100644
cleanup_irq:
drm_irq_uninstall(dev);
cleanup_gem_stolen:
-@@ -1760,7 +1760,7 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1768,7 +1768,7 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
@@ -49,8 +47,6 @@ index 146890cacabe..c6d3105516ca 100644
if (dev_priv->regs != NULL)
pci_iounmap(dev->pdev, dev_priv->regs);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 3ce73b4041ef..a6497f520578 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -447,6 +447,7 @@ enum i915_cache_level {
@@ -70,11 +66,9 @@ index 3ce73b4041ef..a6497f520578 100644
/** List of all objects in gtt_space. Used to restore gtt
* mappings on resume */
struct list_head bound_list;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index cc336bc8d8fe..b99c73b82ce4 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -3107,7 +3107,7 @@ i915_gem_object_bind_to_gtt(struct drm_i915_gem_object *obj,
+@@ -3107,7 +3107,7 @@ i915_gem_object_bind_to_gtt(struct drm_i
i915_gem_object_pin_pages(obj);
search_free:
@@ -83,11 +77,9 @@ index cc336bc8d8fe..b99c73b82ce4 100644
&obj->gtt_space,
size, alignment,
obj->cache_level, 0, gtt_max);
-diff --git a/drivers/gpu/drm/i915/i915_gem_evict.c b/drivers/gpu/drm/i915/i915_gem_evict.c
-index 5f8afc48bb7e..f1c9ab096b00 100644
--- a/drivers/gpu/drm/i915/i915_gem_evict.c
+++ b/drivers/gpu/drm/i915/i915_gem_evict.c
-@@ -78,12 +78,12 @@ i915_gem_evict_something(struct drm_device *dev, int min_size,
+@@ -78,12 +78,12 @@ i915_gem_evict_something(struct drm_devi
INIT_LIST_HEAD(&unwind_list);
if (mappable)
@@ -105,11 +97,9 @@ index 5f8afc48bb7e..f1c9ab096b00 100644
/* First see if there is a large enough contiguous idle region... */
list_for_each_entry(obj, &dev_priv->mm.inactive_list, mm_list) {
-diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index f982bf0de157..999ecfecb32e 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
-@@ -269,6 +269,8 @@ static void gen6_ppgtt_cleanup(struct i915_address_space *vm)
+@@ -269,6 +269,8 @@ static void gen6_ppgtt_cleanup(struct i9
container_of(vm, struct i915_hw_ppgtt, base);
int i;
@@ -118,7 +108,7 @@ index f982bf0de157..999ecfecb32e 100644
if (ppgtt->pt_dma_addr) {
for (i = 0; i < ppgtt->num_pd_entries; i++)
pci_unmap_page(ppgtt->base.dev->pdev,
-@@ -382,8 +384,11 @@ static int i915_gem_init_aliasing_ppgtt(struct drm_device *dev)
+@@ -382,8 +384,11 @@ static int i915_gem_init_aliasing_ppgtt(
if (ret)
kfree(ppgtt);
@@ -131,7 +121,7 @@ index f982bf0de157..999ecfecb32e 100644
return ret;
}
-@@ -651,9 +656,9 @@ void i915_gem_setup_global_gtt(struct drm_device *dev,
+@@ -651,9 +656,9 @@ void i915_gem_setup_global_gtt(struct dr
BUG_ON(mappable_end > end);
/* Subtract the guard page ... */
@@ -143,7 +133,7 @@ index f982bf0de157..999ecfecb32e 100644
/* Mark any preallocated objects as occupied */
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list) {
-@@ -662,7 +667,7 @@ void i915_gem_setup_global_gtt(struct drm_device *dev,
+@@ -662,7 +667,7 @@ void i915_gem_setup_global_gtt(struct dr
i915_gem_obj_ggtt_offset(obj), obj->base.size);
WARN_ON(i915_gem_obj_ggtt_bound(obj));
@@ -152,7 +142,7 @@ index f982bf0de157..999ecfecb32e 100644
&obj->gtt_space);
if (ret)
DRM_DEBUG_KMS("Reservation failed\n");
-@@ -673,7 +678,7 @@ void i915_gem_setup_global_gtt(struct drm_device *dev,
+@@ -673,7 +678,7 @@ void i915_gem_setup_global_gtt(struct dr
dev_priv->gtt.base.total = end - start;
/* Clear any non-preallocated blocks */
@@ -161,7 +151,7 @@ index f982bf0de157..999ecfecb32e 100644
hole_start, hole_end) {
const unsigned long count = (hole_end - hole_start) / PAGE_SIZE;
DRM_DEBUG_KMS("clearing unused GTT space: [%lx, %lx]\n",
-@@ -727,7 +732,7 @@ void i915_gem_init_global_gtt(struct drm_device *dev)
+@@ -727,7 +732,7 @@ void i915_gem_init_global_gtt(struct drm
return;
DRM_ERROR("Aliased PPGTT setup failed %d\n", ret);
@@ -170,11 +160,9 @@ index f982bf0de157..999ecfecb32e 100644
gtt_size += GEN6_PPGTT_PD_ENTRIES * PAGE_SIZE;
}
i915_gem_setup_global_gtt(dev, 0, mappable_size, gtt_size);
-diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c
-index 5c1a535d5072..ede8c41399d9 100644
--- a/drivers/gpu/drm/i915/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
-@@ -399,8 +399,8 @@ i915_gem_object_create_stolen_for_preallocated(struct drm_device *dev,
+@@ -399,8 +399,8 @@ i915_gem_object_create_stolen_for_preall
*/
obj->gtt_space.start = gtt_offset;
obj->gtt_space.size = size;
@@ -185,6 +173,3 @@ index 5c1a535d5072..ede8c41399d9 100644
&obj->gtt_space);
if (ret) {
DRM_DEBUG_KMS("failed to allocate stolen GTT space\n");
---
-1.8.5.rc3
-
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 c8967502dc35da..b56569b0856aa6 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
@@ -18,15 +18,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a7bbbd63e79a89b3e7b77eb734f2773ad69a2a43)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 6 ++++++
- drivers/gpu/drm/i915/i915_drv.h | 2 ++
+ drivers/gpu/drm/i915/i915_dma.c | 6 ++++++
+ drivers/gpu/drm/i915/i915_drv.h | 2 ++
2 files changed, 8 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index c6d3105516ca..3bbf8ef0f984 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1500,6 +1500,10 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1508,6 +1508,10 @@ int i915_driver_load(struct drm_device *
i915_dump_device_info(dev_priv);
@@ -37,7 +35,7 @@ index c6d3105516ca..3bbf8ef0f984 100644
if (i915_get_bridge_dev(dev)) {
ret = -EIO;
goto free_priv;
-@@ -1760,6 +1764,8 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1768,6 +1772,8 @@ int i915_driver_unload(struct drm_device
i915_free_hws(dev);
}
@@ -46,8 +44,6 @@ index c6d3105516ca..3bbf8ef0f984 100644
drm_mm_takedown(&dev_priv->gtt.base.mm);
if (dev_priv->regs != NULL)
pci_iounmap(dev->pdev, dev_priv->regs);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index a6497f520578..bcfcc1086d5b 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -449,6 +449,7 @@ typedef uint32_t gen6_gtt_pte_t;
@@ -66,6 +62,3 @@ index a6497f520578..bcfcc1086d5b 100644
struct i915_gtt gtt; /* VMA representing the global address space */
struct i915_gem_mm mm;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0524-Re-create-dirty-merge-cb54b53.patch b/patches.baytrail/0524-Re-create-dirty-merge-cb54b53.patch
index e0a2c4c2fe7634..b2a4dfc691592c 100644
--- a/patches.baytrail/0524-Re-create-dirty-merge-cb54b53.patch
+++ b/patches.baytrail/0524-Re-create-dirty-merge-cb54b53.patch
@@ -12,15 +12,13 @@ Signed-off-by: James Ausmus <james.ausmus@intel.com>
chromeos-3.10, e362220fa6a86569cf3c2dfa47ce24935da661d6)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/i915_gem.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_gem.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 3bbf8ef0f984..d71e765b814d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1492,8 +1492,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1500,8 +1500,8 @@ int i915_driver_load(struct drm_device *
spin_lock_init(&dev_priv->irq_lock);
spin_lock_init(&dev_priv->gpu_error.lock);
@@ -30,11 +28,9 @@ index 3bbf8ef0f984..d71e765b814d 100644
mutex_init(&dev_priv->dpio_lock);
mutex_init(&dev_priv->rps.hw_lock);
mutex_init(&dev_priv->modeset_restore_lock);
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 7221793239c3..73521ed14eeb 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -4643,7 +4643,7 @@ i915_gem_inactive_shrink(struct shrinker *shrinker, struct shrink_control *sc)
+@@ -4643,7 +4643,7 @@ i915_gem_inactive_shrink(struct shrinker
list_for_each_entry(obj, &dev_priv->mm.unbound_list, global_list)
if (obj->pages_pin_count == 0)
cnt += obj->base.size >> PAGE_SHIFT;
@@ -43,6 +39,3 @@ index 7221793239c3..73521ed14eeb 100644
if (obj->pin_count == 0 && obj->pages_pin_count == 0)
cnt += obj->base.size >> PAGE_SHIFT;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0525-drm-i915-Colocate-all-GT-access-routines-in-the-same.patch b/patches.baytrail/0525-drm-i915-Colocate-all-GT-access-routines-in-the-same.patch
index afcd2fc08805d7..75d6aa3add6719 100644
--- a/patches.baytrail/0525-drm-i915-Colocate-all-GT-access-routines-in-the-same.patch
+++ b/patches.baytrail/0525-drm-i915-Colocate-all-GT-access-routines-in-the-same.patch
@@ -34,24 +34,22 @@ Conflicts:
(context changes)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/Makefile | 1 +
- drivers/gpu/drm/i915/i915_debugfs.c | 12 +-
- drivers/gpu/drm/i915/i915_dma.c | 24 +-
- drivers/gpu/drm/i915/i915_drv.c | 271 +----------------
- drivers/gpu/drm/i915/i915_drv.h | 31 +-
- drivers/gpu/drm/i915/i915_irq.c | 6 +-
- drivers/gpu/drm/i915/intel_display.c | 3 +-
- drivers/gpu/drm/i915/intel_drv.h | 1 -
- drivers/gpu/drm/i915/intel_pm.c | 264 +---------------
- drivers/gpu/drm/i915/intel_uncore.c | 571 +++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/Makefile | 1
+ drivers/gpu/drm/i915/i915_debugfs.c | 12
+ drivers/gpu/drm/i915/i915_dma.c | 24 -
+ drivers/gpu/drm/i915/i915_drv.c | 271 ----------------
+ drivers/gpu/drm/i915/i915_drv.h | 31 +
+ drivers/gpu/drm/i915/i915_irq.c | 6
+ drivers/gpu/drm/i915/intel_display.c | 3
+ drivers/gpu/drm/i915/intel_drv.h | 1
+ drivers/gpu/drm/i915/intel_pm.c | 264 ----------------
+ drivers/gpu/drm/i915/intel_uncore.c | 571 +++++++++++++++++++++++++++++++++++
10 files changed, 613 insertions(+), 571 deletions(-)
create mode 100644 drivers/gpu/drm/i915/intel_uncore.c
-diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
-index 9d1da7cceb21..b8449a84a0dc 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
-@@ -38,6 +38,7 @@ i915-y := i915_drv.o i915_dma.o i915_irq.o \
+@@ -38,6 +38,7 @@ i915-y := i915_drv.o i915_dma.o i915_irq
intel_sprite.o \
intel_opregion.o \
intel_sideband.o \
@@ -59,11 +57,9 @@ index 9d1da7cceb21..b8449a84a0dc 100644
dvo_ch7xxx.o \
dvo_ch7017.o \
dvo_ivch.o \
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 9d871c7eeaee..0e904986f3e9 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -989,9 +989,9 @@ static int gen6_drpc_info(struct seq_file *m)
+@@ -989,9 +989,9 @@ static int gen6_drpc_info(struct seq_fil
if (ret)
return ret;
@@ -76,7 +72,7 @@ index 9d871c7eeaee..0e904986f3e9 100644
if (forcewake_count) {
seq_puts(m, "RC information inaccurate because somebody "
-@@ -1375,9 +1375,9 @@ static int i915_gen6_forcewake_count_info(struct seq_file *m, void *data)
+@@ -1375,9 +1375,9 @@ static int i915_gen6_forcewake_count_inf
struct drm_i915_private *dev_priv = dev->dev_private;
unsigned forcewake_count;
@@ -89,11 +85,9 @@ index 9d871c7eeaee..0e904986f3e9 100644
seq_printf(m, "forcewake count = %u\n", forcewake_count);
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index d71e765b814d..dcc44597ea14 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1436,22 +1436,6 @@ static void i915_dump_device_info(struct drm_i915_private *dev_priv)
+@@ -1444,22 +1444,6 @@ static void i915_dump_device_info(struct
}
/**
@@ -116,7 +110,7 @@ index d71e765b814d..dcc44597ea14 100644
* i915_driver_load - setup chip and create an initial config
* @dev: DRM device
* @flags: startup flags
-@@ -1493,7 +1477,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1501,7 +1485,7 @@ int i915_driver_load(struct drm_device *
spin_lock_init(&dev_priv->irq_lock);
spin_lock_init(&dev_priv->gpu_error.lock);
spin_lock_init(&dev_priv->backlight.lock);
@@ -125,7 +119,7 @@ index d71e765b814d..dcc44597ea14 100644
mutex_init(&dev_priv->dpio_lock);
mutex_init(&dev_priv->rps.hw_lock);
mutex_init(&dev_priv->modeset_restore_lock);
-@@ -1529,7 +1513,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1537,7 +1521,7 @@ int i915_driver_load(struct drm_device *
goto put_bridge;
}
@@ -134,7 +128,7 @@ index d71e765b814d..dcc44597ea14 100644
if (IS_HASWELL(dev) && (I915_READ(HSW_EDRAM_PRESENT) == 1)) {
/* The docs do not explain exactly how the calculation can be
-@@ -1603,8 +1587,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1611,8 +1595,8 @@ int i915_driver_load(struct drm_device *
intel_irq_init(dev);
intel_pm_init(dev);
@@ -145,11 +139,9 @@ index d71e765b814d..dcc44597ea14 100644
/* Try to make sure MCHBAR is enabled before poking at it */
intel_setup_mchbar(dev);
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 5849b0a91b4e..01d63a0435fb 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -723,7 +723,7 @@ static int i915_drm_thaw(struct drm_device *dev)
+@@ -723,7 +723,7 @@ static int i915_drm_thaw(struct drm_devi
{
int error = 0;
@@ -445,8 +437,6 @@ index 5849b0a91b4e..01d63a0435fb 100644
-
- return 0;
-}
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 452b2ae84c4e..928a7309b7c3 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -391,11 +391,20 @@ struct drm_i915_display_funcs {
@@ -487,7 +477,7 @@ index 452b2ae84c4e..928a7309b7c3 100644
struct intel_gmbus gmbus[GMBUS_NUM_PORTS];
-@@ -1671,8 +1673,14 @@ void i915_handle_error(struct drm_device *dev, bool wedged);
+@@ -1671,8 +1673,14 @@ void i915_handle_error(struct drm_device
extern void intel_irq_init(struct drm_device *dev);
extern void intel_pm_init(struct drm_device *dev);
extern void intel_hpd_init(struct drm_device *dev);
@@ -504,7 +494,7 @@ index 452b2ae84c4e..928a7309b7c3 100644
void
i915_enable_pipestat(drm_i915_private_t *dev_priv, int pipe, u32 mask);
-@@ -2108,7 +2116,6 @@ extern void intel_display_print_error_state(struct drm_i915_error_state_buf *e,
+@@ -2108,7 +2116,6 @@ extern void intel_display_print_error_st
*/
void gen6_gt_force_wake_get(struct drm_i915_private *dev_priv);
void gen6_gt_force_wake_put(struct drm_i915_private *dev_priv);
@@ -512,11 +502,9 @@ index 452b2ae84c4e..928a7309b7c3 100644
int sandybridge_pcode_read(struct drm_i915_private *dev_priv, u8 mbox, u32 *val);
int sandybridge_pcode_write(struct drm_i915_private *dev_priv, u8 mbox, u32 val);
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 52a43470e125..a588cd5745aa 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -1307,11 +1307,7 @@ static irqreturn_t ironlake_irq_handler(int irq, void *arg)
+@@ -1307,11 +1307,7 @@ static irqreturn_t ironlake_irq_handler(
/* We get interrupts on unclaimed registers, so check for this before we
* do any I915_{READ,WRITE}. */
@@ -529,11 +517,9 @@ index 52a43470e125..a588cd5745aa 100644
/* disable master interrupt before clearing iir */
de_ier = I915_READ(DEIER);
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 73965dfbf149..afac090a4f3d 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10481,8 +10481,7 @@ intel_display_capture_error_state(struct drm_device *dev)
+@@ -10484,8 +10484,7 @@ intel_display_capture_error_state(struct
* well was on, so here we have to clear the FPGA_DBG_RM_NOCLAIM bit to
* prevent the next I915_WRITE from detecting it and printing an error
* message. */
@@ -543,11 +529,9 @@ index 73965dfbf149..afac090a4f3d 100644
return error;
}
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 3fbe80bc36bb..d9f50e368fe9 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -806,7 +806,6 @@ extern void intel_init_power_well(struct drm_device *dev);
+@@ -806,7 +806,6 @@ extern void intel_init_power_well(struct
extern void intel_set_power_well(struct drm_device *dev, bool enable);
extern void intel_enable_gt_powersave(struct drm_device *dev);
extern void intel_disable_gt_powersave(struct drm_device *dev);
@@ -555,8 +539,6 @@ index 3fbe80bc36bb..d9f50e368fe9 100644
extern void ironlake_teardown_rc6(struct drm_device *dev);
extern bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 948c171d7f73..5d7d0e76da7f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -32,8 +32,6 @@
@@ -568,7 +550,7 @@ index 948c171d7f73..5d7d0e76da7f 100644
/* FBC, or Frame Buffer Compression, is a technique employed to compress the
* framebuffer contents in-memory, aiming at reducing the required bandwidth
* during in-memory transfers and, therefore, reduce the power packet.
-@@ -5307,260 +5305,6 @@ void intel_init_pm(struct drm_device *dev)
+@@ -5307,260 +5305,6 @@ void intel_init_pm(struct drm_device *de
}
}
@@ -829,7 +811,7 @@ index 948c171d7f73..5d7d0e76da7f 100644
int sandybridge_pcode_read(struct drm_i915_private *dev_priv, u8 mbox, u32 *val)
{
WARN_ON(!mutex_is_locked(&dev_priv->rps.hw_lock));
-@@ -5663,3 +5407,11 @@ int vlv_freq_opcode(int ddr_freq, int val)
+@@ -5663,3 +5407,11 @@ int vlv_freq_opcode(int ddr_freq, int va
return val;
}
@@ -841,9 +823,6 @@ index 948c171d7f73..5d7d0e76da7f 100644
+ intel_gen6_powersave_work);
+}
+
-diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
-new file mode 100644
-index 000000000000..97e8b1b86476
--- /dev/null
+++ b/drivers/gpu/drm/i915/intel_uncore.c
@@ -0,0 +1,571 @@
@@ -1418,6 +1397,3 @@ index 000000000000..97e8b1b86476
+ I915_WRITE_NOTRACE(FPGA_DBG, FPGA_DBG_RM_NOCLAIM);
+ }
+}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0530-drm-i915-fix-the-racy-object-accounting.patch b/patches.baytrail/0530-drm-i915-fix-the-racy-object-accounting.patch
index 54e23e54e6cdec..3fe0876e1f00a5 100644
--- a/patches.baytrail/0530-drm-i915-fix-the-racy-object-accounting.patch
+++ b/patches.baytrail/0530-drm-i915-fix-the-racy-object-accounting.patch
@@ -17,16 +17,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c20e835586c0e4d08f891362b3c829d45ef45f9d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 1 +
- drivers/gpu/drm/i915/i915_drv.h | 1 +
- drivers/gpu/drm/i915/i915_gem.c | 4 ++++
+ drivers/gpu/drm/i915/i915_dma.c | 1 +
+ drivers/gpu/drm/i915/i915_drv.h | 1 +
+ drivers/gpu/drm/i915/i915_gem.c | 4 ++++
3 files changed, 6 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index dcc44597ea14..de611f64bb16 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1478,6 +1478,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1486,6 +1486,7 @@ int i915_driver_load(struct drm_device *
spin_lock_init(&dev_priv->gpu_error.lock);
spin_lock_init(&dev_priv->backlight.lock);
spin_lock_init(&dev_priv->uncore.lock);
@@ -34,8 +32,6 @@ index dcc44597ea14..de611f64bb16 100644
mutex_init(&dev_priv->dpio_lock);
mutex_init(&dev_priv->rps.hw_lock);
mutex_init(&dev_priv->modeset_restore_lock);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 2f8699b03722..f31a1b0adbda 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -935,6 +935,7 @@ struct i915_gem_mm {
@@ -46,11 +42,9 @@ index 2f8699b03722..f31a1b0adbda 100644
size_t object_memory;
u32 object_count;
};
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 73521ed14eeb..3a5d4baa4c53 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -76,15 +76,19 @@ static inline void i915_gem_object_fence_lost(struct drm_i915_gem_object *obj)
+@@ -76,15 +76,19 @@ static inline void i915_gem_object_fence
static void i915_gem_info_add_obj(struct drm_i915_private *dev_priv,
size_t size)
{
@@ -70,6 +64,3 @@ index 73521ed14eeb..3a5d4baa4c53 100644
}
static int
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0572-drm-i915-Create-an-init-vm.patch b/patches.baytrail/0572-drm-i915-Create-an-init-vm.patch
index 9c619f5ef59af4..093c272ac38a3e 100644
--- a/patches.baytrail/0572-drm-i915-Create-an-init-vm.patch
+++ b/patches.baytrail/0572-drm-i915-Create-an-init-vm.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit fc8c067eee712b274e554be5cc87c79366cc5ad2)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 4 ----
- drivers/gpu/drm/i915/i915_gem.c | 15 +++++++++++++--
+ drivers/gpu/drm/i915/i915_dma.c | 4 ----
+ drivers/gpu/drm/i915/i915_gem.c | 15 +++++++++++++--
2 files changed, 13 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index de611f64bb16..e4e98dfb7f25 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1485,10 +1485,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1493,10 +1493,6 @@ int i915_driver_load(struct drm_device *
i915_dump_device_info(dev_priv);
@@ -32,11 +30,9 @@ index de611f64bb16..e4e98dfb7f25 100644
if (i915_get_bridge_dev(dev)) {
ret = -EIO;
goto free_priv;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 3a5d4baa4c53..8f9ee89ed971 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -4334,6 +4334,16 @@ init_ring_lists(struct intel_ring_buffer *ring)
+@@ -4334,6 +4334,16 @@ init_ring_lists(struct intel_ring_buffer
INIT_LIST_HEAD(&ring->request_list);
}
@@ -65,6 +61,3 @@ index 3a5d4baa4c53..8f9ee89ed971 100644
INIT_LIST_HEAD(&dev_priv->mm.unbound_list);
INIT_LIST_HEAD(&dev_priv->mm.bound_list);
INIT_LIST_HEAD(&dev_priv->mm.fence_list);
---
-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 fb50be8799d89f..9f5ccf1de15fb6 100644
--- a/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch
+++ b/patches.baytrail/0576-drm-i915-Add-VM-to-pin.patch
@@ -17,20 +17,18 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c37e22046148971a35a89931aa1f951bb99d5514)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 11 +++++++++++
- drivers/gpu/drm/i915/i915_gem.c | 9 +++++----
- drivers/gpu/drm/i915/i915_gem_context.c | 4 ++--
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 +++-
- drivers/gpu/drm/i915/intel_overlay.c | 2 +-
- drivers/gpu/drm/i915/intel_pm.c | 2 +-
- drivers/gpu/drm/i915/intel_ringbuffer.c | 8 ++++----
+ drivers/gpu/drm/i915/i915_drv.h | 11 +++++++++++
+ drivers/gpu/drm/i915/i915_gem.c | 9 +++++----
+ drivers/gpu/drm/i915/i915_gem_context.c | 4 ++--
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 +++-
+ drivers/gpu/drm/i915/intel_overlay.c | 2 +-
+ drivers/gpu/drm/i915/intel_pm.c | 2 +-
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 8 ++++----
7 files changed, 27 insertions(+), 13 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 5fe98c572ba3..356970c9368a 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1711,6 +1711,7 @@ struct i915_vma *i915_gem_vma_create(struct drm_i915_gem_object *obj,
+@@ -1711,6 +1711,7 @@ struct i915_vma *i915_gem_vma_create(str
void i915_gem_vma_destroy(struct i915_vma *vma);
int __must_check i915_gem_object_pin(struct drm_i915_gem_object *obj,
@@ -38,7 +36,7 @@ index 5fe98c572ba3..356970c9368a 100644
uint32_t alignment,
bool map_and_fenceable,
bool nonblocking);
-@@ -1896,6 +1897,16 @@ i915_gem_obj_ggtt_size(struct drm_i915_gem_object *obj)
+@@ -1896,6 +1897,16 @@ i915_gem_obj_ggtt_size(struct drm_i915_g
{
return i915_gem_obj_size(obj, obj_to_ggtt(obj));
}
@@ -55,11 +53,9 @@ index 5fe98c572ba3..356970c9368a 100644
#undef obj_to_ggtt
/* i915_gem_context.c */
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index c7e0db1ff8f5..d2d1d58ff3d0 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -593,7 +593,7 @@ i915_gem_gtt_pwrite_fast(struct drm_device *dev,
+@@ -593,7 +593,7 @@ i915_gem_gtt_pwrite_fast(struct drm_devi
char __user *user_data;
int page_offset, page_length, ret;
@@ -68,7 +64,7 @@ index c7e0db1ff8f5..d2d1d58ff3d0 100644
if (ret)
goto out;
-@@ -1347,7 +1347,7 @@ int i915_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
+@@ -1347,7 +1347,7 @@ int i915_gem_fault(struct vm_area_struct
}
/* Now bind it into the GTT if needed */
@@ -77,7 +73,7 @@ index c7e0db1ff8f5..d2d1d58ff3d0 100644
if (ret)
goto unlock;
-@@ -3482,7 +3482,7 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj,
+@@ -3482,7 +3482,7 @@ i915_gem_object_pin_to_display_plane(str
* (e.g. libkms for the bootup splash), we have to ensure that we
* always use map_and_fenceable for all scanout buffers.
*/
@@ -86,7 +82,7 @@ index c7e0db1ff8f5..d2d1d58ff3d0 100644
if (ret)
return ret;
-@@ -3625,6 +3625,7 @@ i915_gem_ring_throttle(struct drm_device *dev, struct drm_file *file)
+@@ -3625,6 +3625,7 @@ i915_gem_ring_throttle(struct drm_device
int
i915_gem_object_pin(struct drm_i915_gem_object *obj,
@@ -94,7 +90,7 @@ index c7e0db1ff8f5..d2d1d58ff3d0 100644
uint32_t alignment,
bool map_and_fenceable,
bool nonblocking)
-@@ -3714,7 +3715,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data,
+@@ -3714,7 +3715,7 @@ i915_gem_pin_ioctl(struct drm_device *de
}
if (obj->user_pin_count == 0) {
@@ -103,11 +99,9 @@ index c7e0db1ff8f5..d2d1d58ff3d0 100644
if (ret)
goto out;
}
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 2470206a4d07..d1cb28cbc71e 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -214,7 +214,7 @@ static int create_default_context(struct drm_i915_private *dev_priv)
+@@ -214,7 +214,7 @@ static int create_default_context(struct
* default context.
*/
dev_priv->ring[RCS].default_context = ctx;
@@ -116,7 +110,7 @@ index 2470206a4d07..d1cb28cbc71e 100644
if (ret) {
DRM_DEBUG_DRIVER("Couldn't pin %d\n", ret);
goto err_destroy;
-@@ -400,7 +400,7 @@ static int do_switch(struct i915_hw_context *to)
+@@ -398,7 +398,7 @@ static int do_switch(struct i915_hw_cont
if (from == to)
return 0;
@@ -125,11 +119,9 @@ index 2470206a4d07..d1cb28cbc71e 100644
if (ret)
return ret;
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index 5b6d764e9bb2..7addab31783f 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -409,7 +409,9 @@ i915_gem_execbuffer_reserve_object(struct drm_i915_gem_object *obj,
+@@ -409,7 +409,9 @@ i915_gem_execbuffer_reserve_object(struc
obj->tiling_mode != I915_TILING_NONE;
need_mappable = need_fence || need_reloc_mappable(obj);
@@ -140,11 +132,9 @@ index 5b6d764e9bb2..7addab31783f 100644
if (ret)
return ret;
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 9ec5a4e12af2..ddfd0aefe0c0 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
-@@ -1352,7 +1352,7 @@ void intel_setup_overlay(struct drm_device *dev)
+@@ -1352,7 +1352,7 @@ void intel_setup_overlay(struct drm_devi
}
overlay->flip_addr = reg_bo->phys_obj->handle->busaddr;
} else {
@@ -153,11 +143,9 @@ index 9ec5a4e12af2..ddfd0aefe0c0 100644
if (ret) {
DRM_ERROR("failed to pin overlay register bo\n");
goto out_free_bo;
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 03fa8656155d..af4ca44bbad2 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -2886,7 +2886,7 @@ intel_alloc_context_page(struct drm_device *dev)
+@@ -2886,7 +2886,7 @@ intel_alloc_context_page(struct drm_devi
return NULL;
}
@@ -166,11 +154,9 @@ index 03fa8656155d..af4ca44bbad2 100644
if (ret) {
DRM_ERROR("failed to pin power context: %d\n", ret);
goto err_unref;
-diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index bc78c794ae81..89a9c908c99d 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
-@@ -501,7 +501,7 @@ init_pipe_control(struct intel_ring_buffer *ring)
+@@ -501,7 +501,7 @@ init_pipe_control(struct intel_ring_buff
i915_gem_object_set_cache_level(obj, I915_CACHE_LLC);
@@ -179,7 +165,7 @@ index bc78c794ae81..89a9c908c99d 100644
if (ret)
goto err_unref;
-@@ -1236,7 +1236,7 @@ static int init_status_page(struct intel_ring_buffer *ring)
+@@ -1236,7 +1236,7 @@ static int init_status_page(struct intel
i915_gem_object_set_cache_level(obj, I915_CACHE_LLC);
@@ -188,7 +174,7 @@ index bc78c794ae81..89a9c908c99d 100644
if (ret != 0) {
goto err_unref;
}
-@@ -1319,7 +1319,7 @@ static int intel_init_ring_buffer(struct drm_device *dev,
+@@ -1319,7 +1319,7 @@ static int intel_init_ring_buffer(struct
ring->obj = obj;
@@ -197,7 +183,7 @@ index bc78c794ae81..89a9c908c99d 100644
if (ret)
goto err_unref;
-@@ -1840,7 +1840,7 @@ int intel_init_render_ring_buffer(struct drm_device *dev)
+@@ -1840,7 +1840,7 @@ int intel_init_render_ring_buffer(struct
return -ENOMEM;
}
@@ -206,6 +192,3 @@ index bc78c794ae81..89a9c908c99d 100644
if (ret != 0) {
drm_gem_object_unreference(&obj->base);
DRM_ERROR("Failed to ping batch bo\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 b860bcabbc067f..c632cec609bea9 100644
--- a/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch
+++ b/patches.baytrail/0598-drm-const-ify-ioctls-table-v2.patch
@@ -19,39 +19,37 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit baa7094355a10b432bbccacb925da4bdac861c8d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/exynos/exynos_drm_drv.c | 4 ++--
- drivers/gpu/drm/gma500/psb_drv.c | 2 +-
- drivers/gpu/drm/i810/i810_dma.c | 2 +-
- drivers/gpu/drm/i810/i810_drv.h | 2 +-
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/i915_drv.h | 2 +-
- drivers/gpu/drm/mga/mga_drv.h | 2 +-
- drivers/gpu/drm/mga/mga_state.c | 2 +-
- drivers/gpu/drm/nouveau/nouveau_drm.c | 5 ++---
- drivers/gpu/drm/omapdrm/omap_drv.c | 2 +-
- drivers/gpu/drm/qxl/qxl_drv.h | 2 +-
- drivers/gpu/drm/qxl/qxl_ioctl.c | 2 +-
- drivers/gpu/drm/r128/r128_drv.h | 2 +-
- drivers/gpu/drm/r128/r128_state.c | 2 +-
- drivers/gpu/drm/radeon/radeon_drv.c | 2 +-
- drivers/gpu/drm/radeon/radeon_kms.c | 2 +-
- drivers/gpu/drm/savage/savage_bci.c | 2 +-
- drivers/gpu/drm/savage/savage_drv.h | 2 +-
- drivers/gpu/drm/sis/sis_drv.h | 2 +-
- drivers/gpu/drm/sis/sis_mm.c | 2 +-
- drivers/gpu/drm/via/via_dma.c | 2 +-
- drivers/gpu/drm/via/via_drv.h | 2 +-
- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 4 ++--
- drivers/gpu/host1x/drm/drm.c | 2 +-
- drivers/staging/imx-drm/imx-drm-core.c | 2 +-
- include/drm/drmP.h | 2 +-
+ drivers/gpu/drm/exynos/exynos_drm_drv.c | 4 ++--
+ drivers/gpu/drm/gma500/psb_drv.c | 2 +-
+ drivers/gpu/drm/i810/i810_dma.c | 2 +-
+ drivers/gpu/drm/i810/i810_drv.h | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_drv.h | 2 +-
+ drivers/gpu/drm/mga/mga_drv.h | 2 +-
+ drivers/gpu/drm/mga/mga_state.c | 2 +-
+ drivers/gpu/drm/nouveau/nouveau_drm.c | 5 ++---
+ drivers/gpu/drm/omapdrm/omap_drv.c | 2 +-
+ drivers/gpu/drm/qxl/qxl_drv.h | 2 +-
+ drivers/gpu/drm/qxl/qxl_ioctl.c | 2 +-
+ drivers/gpu/drm/r128/r128_drv.h | 2 +-
+ drivers/gpu/drm/r128/r128_state.c | 2 +-
+ drivers/gpu/drm/radeon/radeon_drv.c | 2 +-
+ drivers/gpu/drm/radeon/radeon_kms.c | 2 +-
+ drivers/gpu/drm/savage/savage_bci.c | 2 +-
+ drivers/gpu/drm/savage/savage_drv.h | 2 +-
+ drivers/gpu/drm/sis/sis_drv.h | 2 +-
+ drivers/gpu/drm/sis/sis_mm.c | 2 +-
+ drivers/gpu/drm/via/via_dma.c | 2 +-
+ drivers/gpu/drm/via/via_drv.h | 2 +-
+ drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 4 ++--
+ drivers/gpu/host1x/drm/drm.c | 2 +-
+ drivers/staging/imx-drm/imx-drm-core.c | 2 +-
+ include/drm/drmP.h | 2 +-
26 files changed, 29 insertions(+), 30 deletions(-)
-diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-index 1ff89aca1fed..7e4669188c63 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-@@ -218,7 +218,7 @@ static const struct vm_operations_struct exynos_drm_gem_vm_ops = {
+@@ -218,7 +218,7 @@ static const struct vm_operations_struct
.close = drm_gem_vm_close,
};
@@ -60,7 +58,7 @@ index 1ff89aca1fed..7e4669188c63 100644
DRM_IOCTL_DEF_DRV(EXYNOS_GEM_CREATE, exynos_drm_gem_create_ioctl,
DRM_UNLOCKED | DRM_AUTH),
DRM_IOCTL_DEF_DRV(EXYNOS_GEM_MAP_OFFSET,
-@@ -282,6 +282,7 @@ static struct drm_driver exynos_drm_driver = {
+@@ -282,6 +282,7 @@ static struct drm_driver exynos_drm_driv
.gem_prime_export = exynos_dmabuf_prime_export,
.gem_prime_import = exynos_dmabuf_prime_import,
.ioctls = exynos_ioctls,
@@ -68,7 +66,7 @@ index 1ff89aca1fed..7e4669188c63 100644
.fops = &exynos_drm_driver_fops,
.name = DRIVER_NAME,
.desc = DRIVER_DESC,
-@@ -295,7 +296,6 @@ static int exynos_drm_platform_probe(struct platform_device *pdev)
+@@ -295,7 +296,6 @@ static int exynos_drm_platform_probe(str
DRM_DEBUG_DRIVER("%s\n", __FILE__);
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
@@ -76,11 +74,9 @@ index 1ff89aca1fed..7e4669188c63 100644
return drm_platform_init(&exynos_drm_driver, pdev);
}
-diff --git a/drivers/gpu/drm/gma500/psb_drv.c b/drivers/gpu/drm/gma500/psb_drv.c
-index ed06d5ce3757..d13c2fc848bc 100644
--- a/drivers/gpu/drm/gma500/psb_drv.c
+++ b/drivers/gpu/drm/gma500/psb_drv.c
-@@ -131,7 +131,7 @@ static int psb_gamma_ioctl(struct drm_device *dev, void *data,
+@@ -131,7 +131,7 @@ static int psb_gamma_ioctl(struct drm_de
static int psb_dpst_bl_ioctl(struct drm_device *dev, void *data,
struct drm_file *file_priv);
@@ -89,11 +85,9 @@ index ed06d5ce3757..d13c2fc848bc 100644
DRM_IOCTL_DEF_DRV(GMA_ADB, psb_adb_ioctl, DRM_AUTH),
DRM_IOCTL_DEF_DRV(GMA_MODE_OPERATION, psb_mode_operation_ioctl,
DRM_AUTH),
-diff --git a/drivers/gpu/drm/i810/i810_dma.c b/drivers/gpu/drm/i810/i810_dma.c
-index 004ecdfe1b55..926ac7d48381 100644
--- a/drivers/gpu/drm/i810/i810_dma.c
+++ b/drivers/gpu/drm/i810/i810_dma.c
-@@ -1241,7 +1241,7 @@ int i810_driver_dma_quiescent(struct drm_device *dev)
+@@ -1241,7 +1241,7 @@ int i810_driver_dma_quiescent(struct drm
return 0;
}
@@ -102,11 +96,9 @@ index 004ecdfe1b55..926ac7d48381 100644
DRM_IOCTL_DEF_DRV(I810_INIT, i810_dma_init, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY|DRM_UNLOCKED),
DRM_IOCTL_DEF_DRV(I810_VERTEX, i810_dma_vertex, DRM_AUTH|DRM_UNLOCKED),
DRM_IOCTL_DEF_DRV(I810_CLEAR, i810_clear_bufs, DRM_AUTH|DRM_UNLOCKED),
-diff --git a/drivers/gpu/drm/i810/i810_drv.h b/drivers/gpu/drm/i810/i810_drv.h
-index 6e0acad9e0f5..d4d16eddd651 100644
--- a/drivers/gpu/drm/i810/i810_drv.h
+++ b/drivers/gpu/drm/i810/i810_drv.h
-@@ -125,7 +125,7 @@ extern void i810_driver_preclose(struct drm_device *dev,
+@@ -125,7 +125,7 @@ extern void i810_driver_preclose(struct
extern int i810_driver_device_is_agp(struct drm_device *dev);
extern long i810_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
@@ -115,11 +107,9 @@ index 6e0acad9e0f5..d4d16eddd651 100644
extern int i810_max_ioctl;
#define I810_BASE(reg) ((unsigned long) \
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index e4e98dfb7f25..0adfe4000871 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1833,7 +1833,7 @@ void i915_driver_postclose(struct drm_device *dev, struct drm_file *file)
+@@ -1843,7 +1843,7 @@ void i915_driver_postclose(struct drm_de
kfree(file_priv);
}
@@ -128,8 +118,6 @@ index e4e98dfb7f25..0adfe4000871 100644
DRM_IOCTL_DEF_DRV(I915_INIT, i915_dma_init, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(I915_FLUSH, i915_flush_ioctl, DRM_AUTH),
DRM_IOCTL_DEF_DRV(I915_FLIP, i915_flip_bufs, DRM_AUTH),
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 06c31752fcb2..2468d3aec9af 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1595,7 +1595,7 @@ struct drm_i915_file_private {
@@ -141,8 +129,6 @@ index 06c31752fcb2..2468d3aec9af 100644
extern int i915_max_ioctl;
extern unsigned int i915_fbpercrtc __always_unused;
extern int i915_panel_ignore_lid __read_mostly;
-diff --git a/drivers/gpu/drm/mga/mga_drv.h b/drivers/gpu/drm/mga/mga_drv.h
-index 54558a01969a..ca4bc54ea214 100644
--- a/drivers/gpu/drm/mga/mga_drv.h
+++ b/drivers/gpu/drm/mga/mga_drv.h
@@ -149,7 +149,7 @@ typedef struct drm_mga_private {
@@ -154,8 +140,6 @@ index 54558a01969a..ca4bc54ea214 100644
extern int mga_max_ioctl;
/* mga_dma.c */
-diff --git a/drivers/gpu/drm/mga/mga_state.c b/drivers/gpu/drm/mga/mga_state.c
-index 9c145143ad0f..37cc2fb4eadd 100644
--- a/drivers/gpu/drm/mga/mga_state.c
+++ b/drivers/gpu/drm/mga/mga_state.c
@@ -1083,7 +1083,7 @@ file_priv)
@@ -167,11 +151,9 @@ index 9c145143ad0f..37cc2fb4eadd 100644
DRM_IOCTL_DEF_DRV(MGA_INIT, mga_dma_init, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(MGA_FLUSH, mga_dma_flush, DRM_AUTH),
DRM_IOCTL_DEF_DRV(MGA_RESET, mga_dma_reset, DRM_AUTH),
-diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
-index b77bcb9237e0..421815b1ef93 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
-@@ -640,7 +640,7 @@ nouveau_drm_postclose(struct drm_device *dev, struct drm_file *fpriv)
+@@ -640,7 +640,7 @@ nouveau_drm_postclose(struct drm_device
nouveau_cli_destroy(cli);
}
@@ -197,11 +179,9 @@ index b77bcb9237e0..421815b1ef93 100644
if (nouveau_modeset == -1) {
#ifdef CONFIG_VGA_CONSOLE
if (vgacon_text_force())
-diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
-index 75886a3bf639..f69f9f6785e8 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
-@@ -404,7 +404,7 @@ static int ioctl_gem_info(struct drm_device *dev, void *data,
+@@ -404,7 +404,7 @@ static int ioctl_gem_info(struct drm_dev
return ret;
}
@@ -210,8 +190,6 @@ index 75886a3bf639..f69f9f6785e8 100644
DRM_IOCTL_DEF_DRV(OMAP_GET_PARAM, ioctl_get_param, DRM_UNLOCKED|DRM_AUTH),
DRM_IOCTL_DEF_DRV(OMAP_SET_PARAM, ioctl_set_param, DRM_UNLOCKED|DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(OMAP_GEM_NEW, ioctl_gem_new, DRM_UNLOCKED|DRM_AUTH),
-diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h
-index 089fd42802dd..6bdb2689e95e 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.h
+++ b/drivers/gpu/drm/qxl/qxl_drv.h
@@ -319,7 +319,7 @@ struct qxl_device {
@@ -223,11 +201,9 @@ index 089fd42802dd..6bdb2689e95e 100644
extern int qxl_max_ioctl;
int qxl_driver_load(struct drm_device *dev, unsigned long flags);
-diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c
-index a30f29425c21..faa5b17a9c9e 100644
--- a/drivers/gpu/drm/qxl/qxl_ioctl.c
+++ b/drivers/gpu/drm/qxl/qxl_ioctl.c
-@@ -396,7 +396,7 @@ static int qxl_alloc_surf_ioctl(struct drm_device *dev, void *data,
+@@ -396,7 +396,7 @@ static int qxl_alloc_surf_ioctl(struct d
return ret;
}
@@ -236,8 +212,6 @@ index a30f29425c21..faa5b17a9c9e 100644
DRM_IOCTL_DEF_DRV(QXL_ALLOC, qxl_alloc_ioctl, DRM_AUTH|DRM_UNLOCKED),
DRM_IOCTL_DEF_DRV(QXL_MAP, qxl_map_ioctl, DRM_AUTH|DRM_UNLOCKED),
-diff --git a/drivers/gpu/drm/r128/r128_drv.h b/drivers/gpu/drm/r128/r128_drv.h
-index 930c71b2fb5e..56eb5e3f5439 100644
--- a/drivers/gpu/drm/r128/r128_drv.h
+++ b/drivers/gpu/drm/r128/r128_drv.h
@@ -131,7 +131,7 @@ typedef struct drm_r128_buf_priv {
@@ -249,11 +223,9 @@ index 930c71b2fb5e..56eb5e3f5439 100644
extern int r128_max_ioctl;
/* r128_cce.c */
-diff --git a/drivers/gpu/drm/r128/r128_state.c b/drivers/gpu/drm/r128/r128_state.c
-index 19bb7e6f3d9a..01dd9aef9f0e 100644
--- a/drivers/gpu/drm/r128/r128_state.c
+++ b/drivers/gpu/drm/r128/r128_state.c
-@@ -1643,7 +1643,7 @@ void r128_driver_lastclose(struct drm_device *dev)
+@@ -1643,7 +1643,7 @@ void r128_driver_lastclose(struct drm_de
r128_do_cleanup_cce(dev);
}
@@ -262,11 +234,9 @@ index 19bb7e6f3d9a..01dd9aef9f0e 100644
DRM_IOCTL_DEF_DRV(R128_INIT, r128_cce_init, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(R128_CCE_START, r128_cce_start, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(R128_CCE_STOP, r128_cce_stop, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
-diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
-index bef72931ea08..cb84df3114a6 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.c
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
-@@ -110,7 +110,7 @@ void radeon_gem_object_close(struct drm_gem_object *obj,
+@@ -110,7 +110,7 @@ void radeon_gem_object_close(struct drm_
struct drm_file *file_priv);
extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc,
int *vpos, int *hpos);
@@ -275,11 +245,9 @@ index bef72931ea08..cb84df3114a6 100644
extern int radeon_max_kms_ioctl;
int radeon_mmap(struct file *filp, struct vm_area_struct *vma);
int radeon_mode_dumb_mmap(struct drm_file *filp,
-diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
-index 7e292d899209..100d10930da5 100644
--- a/drivers/gpu/drm/radeon/radeon_kms.c
+++ b/drivers/gpu/drm/radeon/radeon_kms.c
-@@ -716,7 +716,7 @@ KMS_INVALID_IOCTL(radeon_surface_alloc_kms)
+@@ -716,7 +716,7 @@ KMS_INVALID_IOCTL(radeon_surface_alloc_k
KMS_INVALID_IOCTL(radeon_surface_free_kms)
@@ -288,11 +256,9 @@ index 7e292d899209..100d10930da5 100644
DRM_IOCTL_DEF_DRV(RADEON_CP_INIT, radeon_cp_init_kms, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(RADEON_CP_START, radeon_cp_start_kms, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(RADEON_CP_STOP, radeon_cp_stop_kms, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
-diff --git a/drivers/gpu/drm/savage/savage_bci.c b/drivers/gpu/drm/savage/savage_bci.c
-index b55c1d661147..ce3a7d42ee43 100644
--- a/drivers/gpu/drm/savage/savage_bci.c
+++ b/drivers/gpu/drm/savage/savage_bci.c
-@@ -1085,7 +1085,7 @@ void savage_reclaim_buffers(struct drm_device *dev, struct drm_file *file_priv)
+@@ -1085,7 +1085,7 @@ void savage_reclaim_buffers(struct drm_d
drm_idlelock_release(&file_priv->master->lock);
}
@@ -301,8 +267,6 @@ index b55c1d661147..ce3a7d42ee43 100644
DRM_IOCTL_DEF_DRV(SAVAGE_BCI_INIT, savage_bci_init, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
DRM_IOCTL_DEF_DRV(SAVAGE_BCI_CMDBUF, savage_bci_cmdbuf, DRM_AUTH),
DRM_IOCTL_DEF_DRV(SAVAGE_BCI_EVENT_EMIT, savage_bci_event_emit, DRM_AUTH),
-diff --git a/drivers/gpu/drm/savage/savage_drv.h b/drivers/gpu/drm/savage/savage_drv.h
-index df2aac6636f7..5f55b21ea22d 100644
--- a/drivers/gpu/drm/savage/savage_drv.h
+++ b/drivers/gpu/drm/savage/savage_drv.h
@@ -104,7 +104,7 @@ enum savage_family {
@@ -314,11 +278,9 @@ index df2aac6636f7..5f55b21ea22d 100644
extern int savage_max_ioctl;
#define S3_SAVAGE3D_SERIES(chip) ((chip>=S3_SAVAGE3D) && (chip<=S3_SAVAGE_MX))
-diff --git a/drivers/gpu/drm/sis/sis_drv.h b/drivers/gpu/drm/sis/sis_drv.h
-index 13b527bb83be..c31c0253054d 100644
--- a/drivers/gpu/drm/sis/sis_drv.h
+++ b/drivers/gpu/drm/sis/sis_drv.h
-@@ -70,7 +70,7 @@ extern void sis_reclaim_buffers_locked(struct drm_device *dev,
+@@ -70,7 +70,7 @@ extern void sis_reclaim_buffers_locked(s
struct drm_file *file_priv);
extern void sis_lastclose(struct drm_device *dev);
@@ -327,11 +289,9 @@ index 13b527bb83be..c31c0253054d 100644
extern int sis_max_ioctl;
#endif
-diff --git a/drivers/gpu/drm/sis/sis_mm.c b/drivers/gpu/drm/sis/sis_mm.c
-index 23a234985941..01857d836350 100644
--- a/drivers/gpu/drm/sis/sis_mm.c
+++ b/drivers/gpu/drm/sis/sis_mm.c
-@@ -350,7 +350,7 @@ void sis_reclaim_buffers_locked(struct drm_device *dev,
+@@ -350,7 +350,7 @@ void sis_reclaim_buffers_locked(struct d
return;
}
@@ -340,11 +300,9 @@ index 23a234985941..01857d836350 100644
DRM_IOCTL_DEF_DRV(SIS_FB_ALLOC, sis_fb_alloc, DRM_AUTH),
DRM_IOCTL_DEF_DRV(SIS_FB_FREE, sis_drm_free, DRM_AUTH),
DRM_IOCTL_DEF_DRV(SIS_AGP_INIT, sis_ioctl_agp_init, DRM_AUTH | DRM_MASTER | DRM_ROOT_ONLY),
-diff --git a/drivers/gpu/drm/via/via_dma.c b/drivers/gpu/drm/via/via_dma.c
-index 13558f5a2422..652f9b43ec9d 100644
--- a/drivers/gpu/drm/via/via_dma.c
+++ b/drivers/gpu/drm/via/via_dma.c
-@@ -720,7 +720,7 @@ static int via_cmdbuf_size(struct drm_device *dev, void *data, struct drm_file *
+@@ -720,7 +720,7 @@ static int via_cmdbuf_size(struct drm_de
return ret;
}
@@ -353,8 +311,6 @@ index 13558f5a2422..652f9b43ec9d 100644
DRM_IOCTL_DEF_DRV(VIA_ALLOCMEM, via_mem_alloc, DRM_AUTH),
DRM_IOCTL_DEF_DRV(VIA_FREEMEM, via_mem_free, DRM_AUTH),
DRM_IOCTL_DEF_DRV(VIA_AGP_INIT, via_agp_init, DRM_AUTH|DRM_MASTER),
-diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h
-index 893a65090c36..a811ef2b505f 100644
--- a/drivers/gpu/drm/via/via_drv.h
+++ b/drivers/gpu/drm/via/via_drv.h
@@ -114,7 +114,7 @@ enum via_family {
@@ -366,8 +322,6 @@ index 893a65090c36..a811ef2b505f 100644
extern int via_max_ioctl;
extern int via_fb_init(struct drm_device *dev, void *data, struct drm_file *file_priv);
-diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-index 6c44c69a5ba4..46ebf7312dc9 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
@@ -124,7 +124,7 @@
@@ -379,7 +333,7 @@ index 6c44c69a5ba4..46ebf7312dc9 100644
VMW_IOCTL_DEF(VMW_GET_PARAM, vmw_getparam_ioctl,
DRM_AUTH | DRM_UNLOCKED),
VMW_IOCTL_DEF(VMW_ALLOC_DMABUF, vmw_dmabuf_alloc_ioctl,
-@@ -792,7 +792,7 @@ static long vmw_unlocked_ioctl(struct file *filp, unsigned int cmd,
+@@ -792,7 +792,7 @@ static long vmw_unlocked_ioctl(struct fi
if ((nr >= DRM_COMMAND_BASE) && (nr < DRM_COMMAND_END)
&& (nr < DRM_COMMAND_BASE + dev->driver->num_ioctls)) {
@@ -388,11 +342,9 @@ index 6c44c69a5ba4..46ebf7312dc9 100644
&vmw_ioctls[nr - DRM_COMMAND_BASE];
if (unlikely(ioctl->cmd_drv != cmd)) {
-diff --git a/drivers/gpu/host1x/drm/drm.c b/drivers/gpu/host1x/drm/drm.c
-index da15a6291bb9..c114080d0d58 100644
--- a/drivers/gpu/host1x/drm/drm.c
+++ b/drivers/gpu/host1x/drm/drm.c
-@@ -479,7 +479,7 @@ static int tegra_submit(struct drm_device *drm, void *data,
+@@ -479,7 +479,7 @@ static int tegra_submit(struct drm_devic
}
#endif
@@ -401,11 +353,9 @@ index da15a6291bb9..c114080d0d58 100644
#ifdef CONFIG_DRM_TEGRA_STAGING
DRM_IOCTL_DEF_DRV(TEGRA_GEM_CREATE, tegra_gem_create, DRM_UNLOCKED | DRM_AUTH),
DRM_IOCTL_DEF_DRV(TEGRA_GEM_MMAP, tegra_gem_mmap, DRM_UNLOCKED),
-diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c
-index a18622570812..f2a07af5cd5e 100644
--- a/drivers/staging/imx-drm/imx-drm-core.c
+++ b/drivers/staging/imx-drm/imx-drm-core.c
-@@ -787,7 +787,7 @@ int imx_drm_remove_connector(struct imx_drm_connector *imx_drm_connector)
+@@ -787,7 +787,7 @@ int imx_drm_remove_connector(struct imx_
}
EXPORT_SYMBOL_GPL(imx_drm_remove_connector);
@@ -414,8 +364,6 @@ index a18622570812..f2a07af5cd5e 100644
/* none so far */
};
-diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 9a8ea57e3b94..70de499fa3b7 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -965,7 +965,7 @@ struct drm_driver {
@@ -427,6 +375,3 @@ index 9a8ea57e3b94..70de499fa3b7 100644
int num_ioctls;
const struct file_operations *fops;
union {
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0610-drm-edid-Move-HDMI_IDENTIFIER-to-hdmi.h.patch b/patches.baytrail/0610-drm-edid-Move-HDMI_IDENTIFIER-to-hdmi.h.patch
index bbee7a7c9df641..b4c34bebe9a9c0 100644
--- a/patches.baytrail/0610-drm-edid-Move-HDMI_IDENTIFIER-to-hdmi.h.patch
+++ b/patches.baytrail/0610-drm-edid-Move-HDMI_IDENTIFIER-to-hdmi.h.patch
@@ -21,15 +21,13 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit c782d2e73d1e69c863d03945907bc7fbc879a778)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 1 -
- include/linux/hdmi.h | 1 +
+ drivers/gpu/drm/drm_edid.c | 1 -
+ include/linux/hdmi.h | 1 +
2 files changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 0cb9b5d8e30a..388039be229d 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2287,7 +2287,6 @@ add_detailed_modes(struct drm_connector *connector, struct edid *edid,
+@@ -2292,7 +2292,6 @@ add_detailed_modes(struct drm_connector
return closure.modes;
}
@@ -37,8 +35,6 @@ index 0cb9b5d8e30a..388039be229d 100644
#define AUDIO_BLOCK 0x01
#define VIDEO_BLOCK 0x02
#define VENDOR_BLOCK 0x03
-diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
-index e733252c2b5d..37e0cd755284 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -18,6 +18,7 @@ enum hdmi_infoframe_type {
@@ -49,6 +45,3 @@ index e733252c2b5d..37e0cd755284 100644
#define HDMI_INFOFRAME_HEADER_SIZE 4
#define HDMI_AVI_INFOFRAME_SIZE 13
#define HDMI_SPD_INFOFRAME_SIZE 25
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0613-drm-edid-Fix-add_cea_modes-style-issues.patch b/patches.baytrail/0613-drm-edid-Fix-add_cea_modes-style-issues.patch
index ca7d3fdd7c2069..636d214f5850dc 100644
--- a/patches.baytrail/0613-drm-edid-Fix-add_cea_modes-style-issues.patch
+++ b/patches.baytrail/0613-drm-edid-Fix-add_cea_modes-style-issues.patch
@@ -19,14 +19,12 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit 13ac3f5593cf0964cdb239864829e57cc6981dac)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 12 +++++++-----
+ drivers/gpu/drm/drm_edid.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 388039be229d..8b5b7aee73cb 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2368,10 +2368,11 @@ EXPORT_SYMBOL(drm_match_cea_mode);
+@@ -2373,10 +2373,11 @@ EXPORT_SYMBOL(drm_match_cea_mode);
static int
@@ -40,7 +38,7 @@ index 388039be229d..8b5b7aee73cb 100644
int modes = 0;
for (mode = db; mode < db + len; mode++) {
-@@ -2428,8 +2429,9 @@ cea_db_offsets(const u8 *cea, int *start, int *end)
+@@ -2433,8 +2434,9 @@ cea_db_offsets(const u8 *cea, int *start
static int
add_cea_modes(struct drm_connector *connector, struct edid *edid)
{
@@ -52,7 +50,7 @@ index 388039be229d..8b5b7aee73cb 100644
int modes = 0;
if (cea && cea_revision(cea) >= 3) {
-@@ -2443,7 +2445,7 @@ add_cea_modes(struct drm_connector *connector, struct edid *edid)
+@@ -2448,7 +2450,7 @@ add_cea_modes(struct drm_connector *conn
dbl = cea_db_payload_len(db);
if (cea_db_tag(db) == VIDEO_BLOCK)
@@ -61,6 +59,3 @@ index 388039be229d..8b5b7aee73cb 100644
}
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0614-drm-edid-Parse-the-HDMI-CEA-block-and-look-for-4k-mo.patch b/patches.baytrail/0614-drm-edid-Parse-the-HDMI-CEA-block-and-look-for-4k-mo.patch
index 86dedf0fbb3b77..8dfa3a79ec2ca0 100644
--- a/patches.baytrail/0614-drm-edid-Parse-the-HDMI-CEA-block-and-look-for-4k-mo.patch
+++ b/patches.baytrail/0614-drm-edid-Parse-the-HDMI-CEA-block-and-look-for-4k-mo.patch
@@ -28,14 +28,12 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit 7ebe1963a063daf30f95752c35244c5d49550aa9)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 124 +++++++++++++++++++++++++++++++++++++++------
+ drivers/gpu/drm/drm_edid.c | 124 +++++++++++++++++++++++++++++++++++++++------
1 file changed, 109 insertions(+), 15 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 8b5b7aee73cb..49b5492e6d59 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -934,6 +934,36 @@ static const struct drm_display_mode edid_cea_modes[] = {
+@@ -939,6 +939,36 @@ static const struct drm_display_mode edi
.vrefresh = 100, },
};
@@ -72,7 +70,7 @@ index 8b5b7aee73cb..49b5492e6d59 100644
/*** DDC fetch and block validation ***/
static const u8 edid_header[] = {
-@@ -2392,6 +2422,68 @@ do_cea_modes(struct drm_connector *connector, const u8 *db, u8 len)
+@@ -2397,6 +2427,68 @@ do_cea_modes(struct drm_connector *conne
return modes;
}
@@ -141,7 +139,7 @@ index 8b5b7aee73cb..49b5492e6d59 100644
static int
cea_db_payload_len(const u8 *db)
{
-@@ -2423,6 +2515,21 @@ cea_db_offsets(const u8 *cea, int *start, int *end)
+@@ -2428,6 +2520,21 @@ cea_db_offsets(const u8 *cea, int *start
return 0;
}
@@ -163,7 +161,7 @@ index 8b5b7aee73cb..49b5492e6d59 100644
#define for_each_cea_db(cea, i, start, end) \
for ((i) = (start); (i) < (end) && (i) + cea_db_payload_len(&(cea)[(i)]) < (end); (i) += cea_db_payload_len(&(cea)[(i)]) + 1)
-@@ -2446,6 +2553,8 @@ add_cea_modes(struct drm_connector *connector, struct edid *edid)
+@@ -2451,6 +2558,8 @@ add_cea_modes(struct drm_connector *conn
if (cea_db_tag(db) == VIDEO_BLOCK)
modes += do_cea_modes(connector, db + 1, dbl);
@@ -172,7 +170,7 @@ index 8b5b7aee73cb..49b5492e6d59 100644
}
}
-@@ -2498,21 +2607,6 @@ monitor_name(struct detailed_timing *t, void *data)
+@@ -2503,21 +2612,6 @@ monitor_name(struct detailed_timing *t,
*(u8 **)data = t->data.other_data.data.str.str;
}
@@ -194,6 +192,3 @@ index 8b5b7aee73cb..49b5492e6d59 100644
/**
* drm_edid_to_eld - build ELD from EDID
* @connector: connector corresponding to the HDMI/DP sink
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0615-video-hdmi-Rename-HDMI_IDENTIFIER-to-HDMI_IEEE_OUI.patch b/patches.baytrail/0615-video-hdmi-Rename-HDMI_IDENTIFIER-to-HDMI_IEEE_OUI.patch
index de0464f7357683..41bcb14f2abb82 100644
--- a/patches.baytrail/0615-video-hdmi-Rename-HDMI_IDENTIFIER-to-HDMI_IEEE_OUI.patch
+++ b/patches.baytrail/0615-video-hdmi-Rename-HDMI_IDENTIFIER-to-HDMI_IEEE_OUI.patch
@@ -15,16 +15,14 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit 6cb3b7f1c013fd4bea41e16ee557bcb2f1561787)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 2 +-
- drivers/video/hdmi.c | 4 ++--
- include/linux/hdmi.h | 2 +-
+ drivers/gpu/drm/drm_edid.c | 2 +-
+ drivers/video/hdmi.c | 4 ++--
+ include/linux/hdmi.h | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 49b5492e6d59..97c6c8c95a95 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2527,7 +2527,7 @@ static bool cea_db_is_hdmi_vsdb(const u8 *db)
+@@ -2532,7 +2532,7 @@ static bool cea_db_is_hdmi_vsdb(const u8
hdmi_id = db[1] | (db[2] << 8) | (db[3] << 16);
@@ -33,11 +31,9 @@ index 49b5492e6d59..97c6c8c95a95 100644
}
#define for_each_cea_db(cea, i, start, end) \
-diff --git a/drivers/video/hdmi.c b/drivers/video/hdmi.c
-index e22ea8b16a1d..7944eaa935f5 100644
--- a/drivers/video/hdmi.c
+++ b/drivers/video/hdmi.c
-@@ -300,7 +300,7 @@ int hdmi_vendor_infoframe_init(struct hdmi_vendor_infoframe *frame)
+@@ -300,7 +300,7 @@ int hdmi_vendor_infoframe_init(struct hd
frame->type = HDMI_INFOFRAME_TYPE_VENDOR;
frame->version = 1;
@@ -46,7 +42,7 @@ index e22ea8b16a1d..7944eaa935f5 100644
/*
* 0 is a valid value for s3d_struct, so we use a special "not set"
-@@ -387,7 +387,7 @@ hdmi_vendor_any_infoframe_pack(union hdmi_vendor_any_infoframe *frame,
+@@ -387,7 +387,7 @@ hdmi_vendor_any_infoframe_pack(union hdm
void *buffer, size_t size)
{
/* we only know about HDMI vendor infoframes */
@@ -55,8 +51,6 @@ index e22ea8b16a1d..7944eaa935f5 100644
return -EINVAL;
return hdmi_vendor_infoframe_pack(&frame->hdmi, buffer, size);
-diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
-index d4ae12c7931b..9231be9e90a2 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -18,7 +18,7 @@ enum hdmi_infoframe_type {
@@ -68,6 +62,3 @@ index d4ae12c7931b..9231be9e90a2 100644
#define HDMI_INFOFRAME_HEADER_SIZE 4
#define HDMI_AVI_INFOFRAME_SIZE 13
#define HDMI_SPD_INFOFRAME_SIZE 25
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0620-drm-Handle-the-DBLCLK-flag-in-the-common-infoframe-h.patch b/patches.baytrail/0620-drm-Handle-the-DBLCLK-flag-in-the-common-infoframe-h.patch
index c83b8300da24ab..e01c518ffe7906 100644
--- a/patches.baytrail/0620-drm-Handle-the-DBLCLK-flag-in-the-common-infoframe-h.patch
+++ b/patches.baytrail/0620-drm-Handle-the-DBLCLK-flag-in-the-common-infoframe-h.patch
@@ -14,15 +14,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit bf02db99384929a12eff0cf1205b4547e41e881b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 3 +++
- drivers/gpu/drm/i915/intel_hdmi.c | 3 ---
+ drivers/gpu/drm/drm_edid.c | 3 +++
+ drivers/gpu/drm/i915/intel_hdmi.c | 3 ---
2 files changed, 3 insertions(+), 3 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 97c6c8c95a95..9d4d21f46a8a 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -3123,6 +3123,9 @@ drm_hdmi_avi_infoframe_from_display_mode(struct hdmi_avi_infoframe *frame,
+@@ -3131,6 +3131,9 @@ drm_hdmi_avi_infoframe_from_display_mode
if (err < 0)
return err;
@@ -32,11 +30,9 @@ index 97c6c8c95a95..9d4d21f46a8a 100644
frame->video_code = drm_match_cea_mode(mode);
if (!frame->video_code)
return 0;
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index ba742b8e16dc..0a4a81447a03 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -364,9 +364,6 @@ static void intel_hdmi_set_avi_infoframe(struct drm_encoder *encoder,
+@@ -364,9 +364,6 @@ static void intel_hdmi_set_avi_infoframe
return;
}
@@ -46,6 +42,3 @@ index ba742b8e16dc..0a4a81447a03 100644
if (intel_hdmi->rgb_quant_range_selectable) {
if (intel_crtc->config.limited_color_range)
frame.avi.quantization_range =
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0628-drm-i915-mm_list-is-per-VMA.patch b/patches.baytrail/0628-drm-i915-mm_list-is-per-VMA.patch
index 4052863840dcb2..37710aa44e9b71 100644
--- a/patches.baytrail/0628-drm-i915-mm_list-is-per-VMA.patch
+++ b/patches.baytrail/0628-drm-i915-mm_list-is-per-VMA.patch
@@ -39,21 +39,19 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ca191b1313e733e47a9fb37c26b44aa6cdd9b1b1)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 54 +++++++++++++++++++-----------
- drivers/gpu/drm/i915/i915_drv.h | 5 +--
- drivers/gpu/drm/i915/i915_gem.c | 28 +++++++++-------
- drivers/gpu/drm/i915/i915_gem_context.c | 3 ++
- drivers/gpu/drm/i915/i915_gem_evict.c | 14 ++++----
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 ++
- drivers/gpu/drm/i915/i915_gem_stolen.c | 2 +-
- drivers/gpu/drm/i915/i915_gpu_error.c | 37 +++++++++++---------
- 8 files changed, 86 insertions(+), 59 deletions(-)
+ drivers/gpu/drm/i915/i915_debugfs.c | 54 ++++++++++++++++++-----------
+ drivers/gpu/drm/i915/i915_drv.h | 5 +-
+ drivers/gpu/drm/i915/i915_gem.c | 28 ++++++++-------
+ drivers/gpu/drm/i915/i915_gem_context.c | 3 +
+ drivers/gpu/drm/i915/i915_gem_evict.c | 14 +++----
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +
+ drivers/gpu/drm/i915/i915_gem_stolen.c | 2 -
+ drivers/gpu/drm/i915/i915_gpu_error.c | 43 ++++++++++++-----------
+ 8 files changed, 89 insertions(+), 62 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 5d52a23d5662..a1f4c91fb112 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -149,7 +149,7 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
+@@ -149,7 +149,7 @@ static int i915_gem_object_list_info(str
struct drm_device *dev = node->minor->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct i915_address_space *vm = &dev_priv->gtt.base;
@@ -62,7 +60,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
size_t total_obj_size, total_gtt_size;
int count, ret;
-@@ -157,6 +157,7 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
+@@ -157,6 +157,7 @@ static int i915_gem_object_list_info(str
if (ret)
return ret;
@@ -70,7 +68,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
switch (list) {
case ACTIVE_LIST:
seq_puts(m, "Active:\n");
-@@ -172,12 +173,12 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
+@@ -172,12 +173,12 @@ static int i915_gem_object_list_info(str
}
total_obj_size = total_gtt_size = count = 0;
@@ -89,7 +87,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
count++;
}
mutex_unlock(&dev->struct_mutex);
-@@ -224,7 +225,18 @@ static int per_file_stats(int id, void *ptr, void *data)
+@@ -224,7 +225,18 @@ static int per_file_stats(int id, void *
return 0;
}
@@ -109,7 +107,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
{
struct drm_info_node *node = (struct drm_info_node *) m->private;
struct drm_device *dev = node->minor->dev;
-@@ -234,6 +246,7 @@ static int i915_gem_object_info(struct seq_file *m, void *data)
+@@ -234,6 +246,7 @@ static int i915_gem_object_info(struct s
struct drm_i915_gem_object *obj;
struct i915_address_space *vm = &dev_priv->gtt.base;
struct drm_file *file;
@@ -117,7 +115,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
int ret;
ret = mutex_lock_interruptible(&dev->struct_mutex);
-@@ -250,12 +263,12 @@ static int i915_gem_object_info(struct seq_file *m, void *data)
+@@ -250,12 +263,12 @@ static int i915_gem_object_info(struct s
count, mappable_count, size, mappable_size);
size = count = mappable_size = mappable_count = 0;
@@ -132,7 +130,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
seq_printf(m, " %u [%u] inactive objects, %zu [%zu] bytes\n",
count, mappable_count, size, mappable_size);
-@@ -1774,7 +1787,8 @@ i915_drop_caches_set(void *data, u64 val)
+@@ -1774,7 +1787,8 @@ i915_drop_caches_set(void *data, u64 val
struct drm_device *dev = data;
struct drm_i915_private *dev_priv = dev->dev_private;
struct drm_i915_gem_object *obj, *next;
@@ -142,7 +140,7 @@ index 5d52a23d5662..a1f4c91fb112 100644
int ret;
DRM_DEBUG_DRIVER("Dropping caches: 0x%08llx\n", val);
-@@ -1795,14 +1809,16 @@ i915_drop_caches_set(void *data, u64 val)
+@@ -1795,14 +1809,16 @@ i915_drop_caches_set(void *data, u64 val
i915_gem_retire_requests(dev);
if (val & DROP_BOUND) {
@@ -167,8 +165,6 @@ index 5d52a23d5662..a1f4c91fb112 100644
}
}
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 1a3dc5317eec..cd5d4f591e2d 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -558,6 +558,9 @@ struct i915_vma {
@@ -191,11 +187,9 @@ index 1a3dc5317eec..cd5d4f591e2d 100644
/** This object's place in the batchbuffer or on the eviction list */
struct list_head exec_list;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 103815bedba4..093781a28080 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -1873,7 +1873,6 @@ i915_gem_object_move_to_active(struct drm_i915_gem_object *obj,
+@@ -1873,7 +1873,6 @@ i915_gem_object_move_to_active(struct dr
{
struct drm_device *dev = obj->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -203,7 +197,7 @@ index 103815bedba4..093781a28080 100644
u32 seqno = intel_ring_get_seqno(ring);
BUG_ON(ring == NULL);
-@@ -1889,8 +1888,6 @@ i915_gem_object_move_to_active(struct drm_i915_gem_object *obj,
+@@ -1889,8 +1888,6 @@ i915_gem_object_move_to_active(struct dr
obj->active = 1;
}
@@ -212,7 +206,7 @@ index 103815bedba4..093781a28080 100644
list_move_tail(&obj->ring_list, &ring->active_list);
obj->last_read_seqno = seqno;
-@@ -1912,14 +1909,14 @@ i915_gem_object_move_to_active(struct drm_i915_gem_object *obj,
+@@ -1912,14 +1909,14 @@ i915_gem_object_move_to_active(struct dr
static void
i915_gem_object_move_to_inactive(struct drm_i915_gem_object *obj)
{
@@ -231,7 +225,7 @@ index 103815bedba4..093781a28080 100644
list_del_init(&obj->ring_list);
obj->ring = NULL;
-@@ -2627,7 +2624,7 @@ int i915_vma_unbind(struct i915_vma *vma)
+@@ -2627,7 +2624,7 @@ int i915_vma_unbind(struct i915_vma *vma
i915_gem_gtt_finish_object(obj);
i915_gem_object_unpin_pages(obj);
@@ -249,7 +243,7 @@ index 103815bedba4..093781a28080 100644
/* Keep GGTT vmas first to make debug easier */
if (i915_is_ggtt(vm))
-@@ -3340,9 +3337,14 @@ i915_gem_object_set_to_gtt_domain(struct drm_i915_gem_object *obj, bool write)
+@@ -3340,9 +3337,14 @@ i915_gem_object_set_to_gtt_domain(struct
old_write_domain);
/* And bump the LRU for this access */
@@ -275,7 +269,7 @@ index 103815bedba4..093781a28080 100644
INIT_LIST_HEAD(&obj->global_list);
INIT_LIST_HEAD(&obj->ring_list);
INIT_LIST_HEAD(&obj->exec_list);
-@@ -4057,6 +4058,7 @@ struct i915_vma *i915_gem_vma_create(struct drm_i915_gem_object *obj,
+@@ -4057,6 +4058,7 @@ struct i915_vma *i915_gem_vma_create(str
return ERR_PTR(-ENOMEM);
INIT_LIST_HEAD(&vma->vma_link);
@@ -283,11 +277,9 @@ index 103815bedba4..093781a28080 100644
vma->vm = vm;
vma->obj = obj;
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 7273a729a039..403309c2a7d6 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -436,7 +436,10 @@ static int do_switch(struct i915_hw_context *to)
+@@ -434,7 +434,10 @@ static int do_switch(struct i915_hw_cont
* MI_SET_CONTEXT instead of when the next seqno has completed.
*/
if (from != NULL) {
@@ -298,11 +290,9 @@ index 7273a729a039..403309c2a7d6 100644
i915_gem_object_move_to_active(from->obj, ring);
/* As long as MI_SET_CONTEXT is serializing, ie. it flushes the
* whole damn pipeline, we don't need to explicitly mark the
-diff --git a/drivers/gpu/drm/i915/i915_gem_evict.c b/drivers/gpu/drm/i915/i915_gem_evict.c
-index 61bf5e20e5e0..425939b7d343 100644
--- a/drivers/gpu/drm/i915/i915_gem_evict.c
+++ b/drivers/gpu/drm/i915/i915_gem_evict.c
-@@ -87,8 +87,7 @@ i915_gem_evict_something(struct drm_device *dev, struct i915_address_space *vm,
+@@ -87,8 +87,7 @@ i915_gem_evict_something(struct drm_devi
drm_mm_init_scan(&vm->mm, min_size, alignment, cache_level);
/* First see if there is a large enough contiguous idle region... */
@@ -312,7 +302,7 @@ index 61bf5e20e5e0..425939b7d343 100644
if (mark_free(vma, &unwind_list))
goto found;
}
-@@ -97,8 +96,7 @@ i915_gem_evict_something(struct drm_device *dev, struct i915_address_space *vm,
+@@ -97,8 +96,7 @@ i915_gem_evict_something(struct drm_devi
goto none;
/* Now merge in the soon-to-be-expired objects... */
@@ -322,7 +312,7 @@ index 61bf5e20e5e0..425939b7d343 100644
if (mark_free(vma, &unwind_list))
goto found;
}
-@@ -159,7 +157,7 @@ i915_gem_evict_everything(struct drm_device *dev)
+@@ -159,7 +157,7 @@ i915_gem_evict_everything(struct drm_dev
{
drm_i915_private_t *dev_priv = dev->dev_private;
struct i915_address_space *vm;
@@ -331,7 +321,7 @@ index 61bf5e20e5e0..425939b7d343 100644
bool lists_empty = true;
int ret;
-@@ -187,9 +185,9 @@ i915_gem_evict_everything(struct drm_device *dev)
+@@ -187,9 +185,9 @@ i915_gem_evict_everything(struct drm_dev
/* Having flushed everything, unbind() should never raise an error */
list_for_each_entry(vm, &dev_priv->vm_list, global_link) {
@@ -344,11 +334,9 @@ index 61bf5e20e5e0..425939b7d343 100644
}
return 0;
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index aa3fa9425cae..8ccc29ac9629 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -801,6 +801,8 @@ i915_gem_execbuffer_move_to_active(struct list_head *objects,
+@@ -801,6 +801,8 @@ i915_gem_execbuffer_move_to_active(struc
obj->base.read_domains = obj->base.pending_read_domains;
obj->fenced_gpu_access = obj->pending_fenced_gpu_access;
@@ -357,11 +345,9 @@ index aa3fa9425cae..8ccc29ac9629 100644
i915_gem_object_move_to_active(obj, ring);
if (obj->base.write_domain) {
obj->dirty = 1;
-diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c
-index ba4dabca83c2..8912f489f53a 100644
--- a/drivers/gpu/drm/i915/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
-@@ -418,7 +418,7 @@ i915_gem_object_create_stolen_for_preallocated(struct drm_device *dev,
+@@ -418,7 +418,7 @@ i915_gem_object_create_stolen_for_preall
obj->has_global_gtt_mapping = 1;
list_add_tail(&obj->global_list, &dev_priv->mm.bound_list);
@@ -370,11 +356,9 @@ index ba4dabca83c2..8912f489f53a 100644
return obj;
-diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
-index 8091485e7e88..fad48b2bb870 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
-@@ -556,11 +556,11 @@ static void capture_bo(struct drm_i915_error_buffer *err,
+@@ -556,11 +556,11 @@ static void capture_bo(struct drm_i915_e
static u32 capture_active_bo(struct drm_i915_error_buffer *err,
int count, struct list_head *head)
{
@@ -399,33 +383,36 @@ index 8091485e7e88..fad48b2bb870 100644
struct drm_i915_gem_object *obj;
u32 seqno;
-@@ -642,20 +643,23 @@ i915_error_first_batchbuffer(struct drm_i915_private *dev_priv,
+@@ -642,20 +643,23 @@ i915_error_first_batchbuffer(struct drm_
}
seqno = ring->get_seqno(ring, false);
- list_for_each_entry(obj, &vm->active_list, mm_list) {
- if (obj->ring != ring)
- continue;
+-
+- if (i915_seqno_passed(seqno, obj->last_read_seqno))
+- continue;
+-
+- if ((obj->base.read_domains & I915_GEM_DOMAIN_COMMAND) == 0)
+- continue;
+-
+- /* We need to copy these to an anonymous buffer as the simplest
+- * method to avoid being overwritten by userspace.
+- */
+- return i915_error_object_create(dev_priv, obj);
+ list_for_each_entry(vm, &dev_priv->vm_list, global_link) {
+ list_for_each_entry(vma, &vm->active_list, mm_list) {
+ obj = vma->obj;
+ if (obj->ring != ring)
+ continue;
-
-- if (i915_seqno_passed(seqno, obj->last_read_seqno))
-- continue;
++
+ if (i915_seqno_passed(seqno, obj->last_read_seqno))
+ continue;
-
-- if ((obj->base.read_domains & I915_GEM_DOMAIN_COMMAND) == 0)
-- continue;
++
+ if ((obj->base.read_domains & I915_GEM_DOMAIN_COMMAND) == 0)
+ continue;
-
-- /* We need to copy these to an anonymous buffer as the simplest
-- * method to avoid being overwritten by userspace.
-- */
-- return i915_error_object_create(dev_priv, obj);
++
+ /* We need to copy these to an anonymous buffer as the simplest
+ * method to avoid being overwritten by userspace.
+ */
@@ -434,7 +421,7 @@ index 8091485e7e88..fad48b2bb870 100644
}
return NULL;
-@@ -775,11 +779,12 @@ static void i915_gem_capture_buffers(struct drm_i915_private *dev_priv,
+@@ -775,11 +779,12 @@ static void i915_gem_capture_buffers(str
struct drm_i915_error_state *error)
{
struct i915_address_space *vm = &dev_priv->gtt.base;
@@ -448,6 +435,3 @@ index 8091485e7e88..fad48b2bb870 100644
i++;
error->active_bo_count = i;
list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0678-drm-i915-Use-Write-Through-cacheing-for-the-display-.patch b/patches.baytrail/0678-drm-i915-Use-Write-Through-cacheing-for-the-display-.patch
index 590ee1d749d0ae..c51a41b9d7b6a9 100644
--- a/patches.baytrail/0678-drm-i915-Use-Write-Through-cacheing-for-the-display-.patch
+++ b/patches.baytrail/0678-drm-i915-Use-Write-Through-cacheing-for-the-display-.patch
@@ -30,18 +30,16 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 651d794fae9b79237aae1c97f8a9d9f3817bd31d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 3 +++
- drivers/gpu/drm/i915/i915_drv.h | 4 +++-
- drivers/gpu/drm/i915/i915_gem.c | 14 ++++++++++++--
- drivers/gpu/drm/i915/i915_gem_gtt.c | 11 ++++++++++-
- include/uapi/drm/i915_drm.h | 1 +
+ drivers/gpu/drm/i915/i915_dma.c | 3 +++
+ drivers/gpu/drm/i915/i915_drv.h | 4 +++-
+ drivers/gpu/drm/i915/i915_gem.c | 14 ++++++++++++--
+ drivers/gpu/drm/i915/i915_gem_gtt.c | 11 ++++++++++-
+ include/uapi/drm/i915_drm.h | 1 +
5 files changed, 29 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 0adfe4000871..45c262b9cb40 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -976,6 +976,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
+@@ -984,6 +984,9 @@ static int i915_getparam(struct drm_devi
case I915_PARAM_HAS_LLC:
value = HAS_LLC(dev);
break;
@@ -51,8 +49,6 @@ index 0adfe4000871..45c262b9cb40 100644
case I915_PARAM_HAS_ALIASING_PPGTT:
value = dev_priv->mm.aliasing_ppgtt ? 1 : 0;
break;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index cccd6084b236..dcae809eafe8 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -454,6 +454,7 @@ enum i915_cache_level {
@@ -80,11 +76,9 @@ index cccd6084b236..dcae809eafe8 100644
#define I915_NEED_GFX_HWS(dev) (INTEL_INFO(dev)->need_gfx_hws)
#define HAS_HW_CONTEXTS(dev) (INTEL_INFO(dev)->gen >= 6)
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 66136cd88ed5..8e41b2c6eb1d 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -3459,7 +3459,16 @@ int i915_gem_get_caching_ioctl(struct drm_device *dev, void *data,
+@@ -3459,7 +3459,16 @@ int i915_gem_get_caching_ioctl(struct dr
goto unlock;
}
@@ -102,7 +96,7 @@ index 66136cd88ed5..8e41b2c6eb1d 100644
drm_gem_object_unreference(&obj->base);
unlock:
-@@ -3553,7 +3562,8 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj,
+@@ -3553,7 +3562,8 @@ i915_gem_object_pin_to_display_plane(str
* of uncaching, which would allow us to flush all the LLC-cached data
* with that bit in the PTE to main memory with just one PIPE_CONTROL.
*/
@@ -112,8 +106,6 @@ index 66136cd88ed5..8e41b2c6eb1d 100644
if (ret)
goto err_unpin_display;
-diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index c9420c280cf0..212f6d8c35ec 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -55,6 +55,7 @@
@@ -124,7 +116,7 @@ index c9420c280cf0..212f6d8c35ec 100644
static gen6_gtt_pte_t snb_pte_encode(dma_addr_t addr,
enum i915_cache_level level)
-@@ -138,8 +139,16 @@ static gen6_gtt_pte_t iris_pte_encode(dma_addr_t addr,
+@@ -138,8 +139,16 @@ static gen6_gtt_pte_t iris_pte_encode(dm
gen6_gtt_pte_t pte = GEN6_PTE_VALID;
pte |= HSW_PTE_ADDR_ENCODE(addr);
@@ -142,8 +134,6 @@ index c9420c280cf0..212f6d8c35ec 100644
return pte;
}
-diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
-index 0bb3e5524382..55bb5729bd78 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -334,6 +334,7 @@ typedef struct drm_i915_irq_wait {
@@ -154,6 +144,3 @@ index 0bb3e5524382..55bb5729bd78 100644
typedef struct drm_i915_getparam {
int param;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0680-drm-i915-remove-set-but-unused-variables.patch b/patches.baytrail/0680-drm-i915-remove-set-but-unused-variables.patch
index 22b31f5e2909f0..9c8a109b742fb2 100644
--- a/patches.baytrail/0680-drm-i915-remove-set-but-unused-variables.patch
+++ b/patches.baytrail/0680-drm-i915-remove-set-but-unused-variables.patch
@@ -10,16 +10,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit f3f08572fc245bc0cf5f102473ce0f54e693831d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_display.c | 12 ++----------
- drivers/gpu/drm/i915/intel_dp.c | 3 ---
- drivers/gpu/drm/i915/intel_hdmi.c | 2 --
+ drivers/gpu/drm/i915/intel_display.c | 12 ++----------
+ drivers/gpu/drm/i915/intel_dp.c | 3 ---
+ drivers/gpu/drm/i915/intel_hdmi.c | 2 --
3 files changed, 2 insertions(+), 15 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 65bc851f5f91..52508e7f2658 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -690,7 +690,7 @@ vlv_find_best_dpll(const intel_limit_t *limit, struct drm_crtc *crtc,
+@@ -690,7 +690,7 @@ vlv_find_best_dpll(const intel_limit_t *
{
u32 p1, p2, m1, m2, vco, bestn, bestm1, bestm2, bestp1, bestp2;
u32 m, n, fastclk;
@@ -28,7 +26,7 @@ index 65bc851f5f91..52508e7f2658 100644
unsigned long bestppm, ppm, absppm;
int dotclk, flag;
-@@ -701,7 +701,6 @@ vlv_find_best_dpll(const intel_limit_t *limit, struct drm_crtc *crtc,
+@@ -701,7 +701,6 @@ vlv_find_best_dpll(const intel_limit_t *
fastclk = dotclk / (2*100);
updrate = 0;
minupdate = 19200;
@@ -36,7 +34,7 @@ index 65bc851f5f91..52508e7f2658 100644
n = p = p1 = p2 = m = m1 = m2 = vco = bestn = 0;
bestm1 = bestm2 = bestp1 = bestp2 = 0;
-@@ -4419,13 +4418,10 @@ static void vlv_update_pll(struct intel_crtc *crtc)
+@@ -4419,13 +4418,10 @@ static void vlv_update_pll(struct intel_
int pipe = crtc->pipe;
u32 dpll, mdiv;
u32 bestn, bestm1, bestm2, bestp1, bestp2;
@@ -50,7 +48,7 @@ index 65bc851f5f91..52508e7f2658 100644
bestn = crtc->config.dpll.n;
bestm1 = crtc->config.dpll.m1;
bestm2 = crtc->config.dpll.m2;
-@@ -8900,14 +8896,13 @@ intel_modeset_stage_output_state(struct drm_device *dev,
+@@ -8900,14 +8896,13 @@ intel_modeset_stage_output_state(struct
struct drm_crtc *new_crtc;
struct intel_connector *connector;
struct intel_encoder *encoder;
@@ -66,7 +64,7 @@ index 65bc851f5f91..52508e7f2658 100644
list_for_each_entry(connector, &dev->mode_config.connector_list,
base.head) {
/* Otherwise traverse passed in connector list and get encoders
-@@ -8941,7 +8936,6 @@ intel_modeset_stage_output_state(struct drm_device *dev,
+@@ -8941,7 +8936,6 @@ intel_modeset_stage_output_state(struct
/* connector->new_encoder is now updated for all connectors. */
/* Update crtc of enabled connectors. */
@@ -74,7 +72,7 @@ index 65bc851f5f91..52508e7f2658 100644
list_for_each_entry(connector, &dev->mode_config.connector_list,
base.head) {
if (!connector->new_encoder)
-@@ -10301,7 +10295,6 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10303,7 +10297,6 @@ void intel_modeset_cleanup(struct drm_de
{
struct drm_i915_private *dev_priv = dev->dev_private;
struct drm_crtc *crtc;
@@ -82,7 +80,7 @@ index 65bc851f5f91..52508e7f2658 100644
/*
* Interrupts and polling as the first thing to avoid creating havoc.
-@@ -10325,7 +10318,6 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10327,7 +10320,6 @@ void intel_modeset_cleanup(struct drm_de
if (!crtc->fb)
continue;
@@ -90,11 +88,9 @@ index 65bc851f5f91..52508e7f2658 100644
intel_increase_pllclock(crtc);
}
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 9e22bfd850df..46f3e674210d 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -2337,7 +2337,6 @@ intel_dp_start_link_train(struct intel_dp *intel_dp)
+@@ -2337,7 +2337,6 @@ intel_dp_start_link_train(struct intel_d
struct drm_device *dev = encoder->dev;
int i;
uint8_t voltage;
@@ -102,7 +98,7 @@ index 9e22bfd850df..46f3e674210d 100644
int voltage_tries, loop_tries;
uint32_t DP = intel_dp->DP;
-@@ -2355,7 +2354,6 @@ intel_dp_start_link_train(struct intel_dp *intel_dp)
+@@ -2355,7 +2354,6 @@ intel_dp_start_link_train(struct intel_d
voltage = 0xff;
voltage_tries = 0;
loop_tries = 0;
@@ -110,7 +106,7 @@ index 9e22bfd850df..46f3e674210d 100644
for (;;) {
/* Use intel_dp->train_set[0] to set the voltage and pre emphasis values */
uint8_t link_status[DP_LINK_STATUS_SIZE];
-@@ -2376,7 +2374,6 @@ intel_dp_start_link_train(struct intel_dp *intel_dp)
+@@ -2376,7 +2374,6 @@ intel_dp_start_link_train(struct intel_d
if (drm_dp_clock_recovery_ok(link_status, intel_dp->lane_count)) {
DRM_DEBUG_KMS("clock recovery OK\n");
@@ -118,11 +114,9 @@ index 9e22bfd850df..46f3e674210d 100644
break;
}
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index dd4fa35e0a85..a619d9435107 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -1245,7 +1245,6 @@ void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port)
+@@ -1245,7 +1245,6 @@ void intel_hdmi_init(struct drm_device *
{
struct intel_digital_port *intel_dig_port;
struct intel_encoder *intel_encoder;
@@ -130,7 +124,7 @@ index dd4fa35e0a85..a619d9435107 100644
struct intel_connector *intel_connector;
intel_dig_port = kzalloc(sizeof(struct intel_digital_port), GFP_KERNEL);
-@@ -1259,7 +1258,6 @@ void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port)
+@@ -1259,7 +1258,6 @@ void intel_hdmi_init(struct drm_device *
}
intel_encoder = &intel_dig_port->base;
@@ -138,6 +132,3 @@ index dd4fa35e0a85..a619d9435107 100644
drm_encoder_init(dev, &intel_encoder->base, &intel_hdmi_enc_funcs,
DRM_MODE_ENCODER_TMDS);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0682-drm-i915-print-a-message-when-we-detect-an-early-Has.patch b/patches.baytrail/0682-drm-i915-print-a-message-when-we-detect-an-early-Has.patch
index f517be98de051a..cb6936da433351 100644
--- a/patches.baytrail/0682-drm-i915-print-a-message-when-we-detect-an-early-Has.patch
+++ b/patches.baytrail/0682-drm-i915-print-a-message-when-we-detect-an-early-Has.patch
@@ -24,15 +24,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ed1c9e2cf414e32cb7ea1217b51b39e70fc132d2)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 8 ++++++++
- drivers/gpu/drm/i915/i915_drv.h | 2 ++
+ drivers/gpu/drm/i915/i915_dma.c | 8 ++++++++
+ drivers/gpu/drm/i915/i915_drv.h | 2 ++
2 files changed, 10 insertions(+)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 45c262b9cb40..b30404d00757 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1488,6 +1488,14 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1496,6 +1496,14 @@ int i915_driver_load(struct drm_device *
i915_dump_device_info(dev_priv);
@@ -47,8 +45,6 @@ index 45c262b9cb40..b30404d00757 100644
if (i915_get_bridge_dev(dev)) {
ret = -EIO;
goto free_priv;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index dcae809eafe8..3fc432437524 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1511,6 +1511,8 @@ struct drm_i915_file_private {
@@ -60,6 +56,3 @@ index dcae809eafe8..3fc432437524 100644
#define IS_ULT(dev) (IS_HASWELL(dev) && \
((dev)->pci_device & 0xFF00) == 0x0A00)
---
-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 0b8d1ae3cc46cd..96ee9ddb36267b 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
@@ -29,14 +29,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 79f8dea13391f8220470997f9a5213ab5aa9f1c7)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 7 ++++++-
+ drivers/gpu/drm/i915/i915_dma.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index b30404d00757..d2dc02b67512 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1688,8 +1688,13 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1696,8 +1696,13 @@ int i915_driver_unload(struct drm_device
intel_gpu_ips_teardown();
@@ -51,6 +49,3 @@ index b30404d00757..d2dc02b67512 100644
i915_teardown_sysfs(dev);
---
-1.8.5.rc3
-
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 afa3558441d746..db9afa6d1fd413 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
@@ -44,23 +44,21 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c67a470b1db781c54be07a87217cff35a91f564e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 10 +++
- drivers/gpu/drm/i915/i915_drv.c | 11 +++
- drivers/gpu/drm/i915/i915_drv.h | 72 +++++++++++++++
- drivers/gpu/drm/i915/i915_gem.c | 2 +
- drivers/gpu/drm/i915/i915_irq.c | 101 +++++++++++++++++++++
- drivers/gpu/drm/i915/intel_display.c | 170 ++++++++++++++++++++++++++++++++++-
- drivers/gpu/drm/i915/intel_dp.c | 3 +
- drivers/gpu/drm/i915/intel_drv.h | 8 ++
- drivers/gpu/drm/i915/intel_i2c.c | 2 +
- drivers/gpu/drm/i915/intel_pm.c | 13 ++-
+ drivers/gpu/drm/i915/i915_dma.c | 10 ++
+ drivers/gpu/drm/i915/i915_drv.c | 11 ++
+ drivers/gpu/drm/i915/i915_drv.h | 72 ++++++++++++++
+ drivers/gpu/drm/i915/i915_gem.c | 2
+ drivers/gpu/drm/i915/i915_irq.c | 101 ++++++++++++++++++++
+ drivers/gpu/drm/i915/intel_display.c | 170 ++++++++++++++++++++++++++++++++++-
+ drivers/gpu/drm/i915/intel_dp.c | 3
+ drivers/gpu/drm/i915/intel_drv.h | 8 +
+ drivers/gpu/drm/i915/intel_i2c.c | 2
+ drivers/gpu/drm/i915/intel_pm.c | 13 ++
10 files changed, 390 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index d2dc02b67512..4c7669f3f586 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1486,6 +1486,14 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1494,6 +1494,14 @@ int i915_driver_load(struct drm_device *
mutex_init(&dev_priv->rps.hw_lock);
mutex_init(&dev_priv->modeset_restore_lock);
@@ -75,7 +73,7 @@ index d2dc02b67512..4c7669f3f586 100644
i915_dump_device_info(dev_priv);
/* Not all pre-production machines fall into this category, only the
-@@ -1740,6 +1748,8 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1748,6 +1756,8 @@ int i915_driver_unload(struct drm_device
cancel_work_sync(&dev_priv->gpu_error.work);
i915_destroy_error_state(dev);
@@ -84,11 +82,9 @@ index d2dc02b67512..4c7669f3f586 100644
if (dev->pdev->msi_enabled)
pci_disable_msi(dev->pdev);
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index a9c8f18e26fc..f19736208214 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -141,6 +141,10 @@ module_param_named(fastboot, i915_fastboot, bool, 0600);
+@@ -141,6 +141,10 @@ module_param_named(fastboot, i915_fastbo
MODULE_PARM_DESC(fastboot, "Try to skip unnecessary mode sets at boot time "
"(default: false)");
@@ -99,7 +95,7 @@ index a9c8f18e26fc..f19736208214 100644
bool i915_prefault_disable __read_mostly;
module_param_named(prefault_disable, i915_prefault_disable, bool, 0600);
MODULE_PARM_DESC(prefault_disable,
-@@ -557,6 +561,9 @@ static int i915_drm_freeze(struct drm_device *dev)
+@@ -557,6 +561,9 @@ static int i915_drm_freeze(struct drm_de
dev_priv->modeset_restore = MODESET_SUSPENDED;
mutex_unlock(&dev_priv->modeset_restore_lock);
@@ -109,7 +105,7 @@ index a9c8f18e26fc..f19736208214 100644
intel_set_power_well(dev, true);
drm_kms_helper_poll_disable(dev);
-@@ -713,6 +720,10 @@ static int __i915_drm_thaw(struct drm_device *dev)
+@@ -713,6 +720,10 @@ static int __i915_drm_thaw(struct drm_de
schedule_work(&dev_priv->console_resume_work);
}
@@ -120,8 +116,6 @@ index a9c8f18e26fc..f19736208214 100644
mutex_lock(&dev_priv->modeset_restore_lock);
dev_priv->modeset_restore = MODESET_DONE;
mutex_unlock(&dev_priv->modeset_restore_lock);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 5cc71ac04beb..85a352860a83 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1076,6 +1076,75 @@ struct intel_wm_level {
@@ -209,7 +203,7 @@ index 5cc71ac04beb..85a352860a83 100644
/* Old dri1 support infrastructure, beware the dragons ya fools entering
* here! */
struct i915_dri1_state dri1;
-@@ -1635,6 +1706,7 @@ extern unsigned int i915_preliminary_hw_support __read_mostly;
+@@ -1635,6 +1706,7 @@ extern unsigned int i915_preliminary_hw_
extern int i915_disable_power_well __read_mostly;
extern int i915_enable_ips __read_mostly;
extern bool i915_fastboot __read_mostly;
@@ -217,11 +211,9 @@ index 5cc71ac04beb..85a352860a83 100644
extern bool i915_prefault_disable __read_mostly;
extern int i915_suspend(struct drm_device *dev, pm_message_t state);
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 199107e734fb..2d1cb10d846f 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -999,6 +999,8 @@ static int __wait_seqno(struct intel_ring_buffer *ring, u32 seqno,
+@@ -999,6 +999,8 @@ static int __wait_seqno(struct intel_rin
bool wait_forever = true;
int ret;
@@ -230,11 +222,9 @@ index 199107e734fb..2d1cb10d846f 100644
if (i915_seqno_passed(ring->get_seqno(ring, true), seqno))
return 0;
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 9e2ea5b16233..0eac036fb833 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -85,6 +85,12 @@ ironlake_enable_display_irq(drm_i915_private_t *dev_priv, u32 mask)
+@@ -85,6 +85,12 @@ ironlake_enable_display_irq(drm_i915_pri
{
assert_spin_locked(&dev_priv->irq_lock);
@@ -247,7 +237,7 @@ index 9e2ea5b16233..0eac036fb833 100644
if ((dev_priv->irq_mask & mask) != 0) {
dev_priv->irq_mask &= ~mask;
I915_WRITE(DEIMR, dev_priv->irq_mask);
-@@ -97,6 +103,12 @@ ironlake_disable_display_irq(drm_i915_private_t *dev_priv, u32 mask)
+@@ -97,6 +103,12 @@ ironlake_disable_display_irq(drm_i915_pr
{
assert_spin_locked(&dev_priv->irq_lock);
@@ -260,7 +250,7 @@ index 9e2ea5b16233..0eac036fb833 100644
if ((dev_priv->irq_mask & mask) != mask) {
dev_priv->irq_mask |= mask;
I915_WRITE(DEIMR, dev_priv->irq_mask);
-@@ -116,6 +128,14 @@ static void ilk_update_gt_irq(struct drm_i915_private *dev_priv,
+@@ -116,6 +128,14 @@ static void ilk_update_gt_irq(struct drm
{
assert_spin_locked(&dev_priv->irq_lock);
@@ -275,7 +265,7 @@ index 9e2ea5b16233..0eac036fb833 100644
dev_priv->gt_irq_mask &= ~interrupt_mask;
dev_priv->gt_irq_mask |= (~enabled_irq_mask & interrupt_mask);
I915_WRITE(GTIMR, dev_priv->gt_irq_mask);
-@@ -146,6 +166,14 @@ static void snb_update_pm_irq(struct drm_i915_private *dev_priv,
+@@ -146,6 +166,14 @@ static void snb_update_pm_irq(struct drm
assert_spin_locked(&dev_priv->irq_lock);
@@ -290,7 +280,7 @@ index 9e2ea5b16233..0eac036fb833 100644
new_val = dev_priv->pm_irq_mask;
new_val &= ~interrupt_mask;
new_val |= (~enabled_irq_mask & interrupt_mask);
-@@ -257,6 +285,15 @@ static void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
+@@ -257,6 +285,15 @@ static void ibx_display_interrupt_update
assert_spin_locked(&dev_priv->irq_lock);
@@ -306,7 +296,7 @@ index 9e2ea5b16233..0eac036fb833 100644
I915_WRITE(SDEIMR, sdeimr);
POSTING_READ(SDEIMR);
}
-@@ -3159,3 +3196,67 @@ void intel_hpd_init(struct drm_device *dev)
+@@ -3159,3 +3196,67 @@ void intel_hpd_init(struct drm_device *d
dev_priv->display.hpd_irq_setup(dev);
spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
}
@@ -374,11 +364,9 @@ index 9e2ea5b16233..0eac036fb833 100644
+
+ spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
+}
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 29e43b2cf908..6cf35357afad 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -6064,6 +6064,166 @@ void hsw_restore_lcpll(struct drm_i915_private *dev_priv)
+@@ -6064,6 +6064,166 @@ void hsw_restore_lcpll(struct drm_i915_p
dev_priv->uncore.funcs.force_wake_put(dev_priv);
}
@@ -545,7 +533,7 @@ index 29e43b2cf908..6cf35357afad 100644
static void haswell_modeset_global_resources(struct drm_device *dev)
{
bool enable = false;
-@@ -6079,6 +6239,8 @@ static void haswell_modeset_global_resources(struct drm_device *dev)
+@@ -6079,6 +6239,8 @@ static void haswell_modeset_global_resou
}
intel_set_power_well(dev, enable);
@@ -554,7 +542,7 @@ index 29e43b2cf908..6cf35357afad 100644
}
static int haswell_crtc_mode_set(struct drm_crtc *crtc,
-@@ -7314,13 +7476,19 @@ static void intel_decrease_pllclock(struct drm_crtc *crtc)
+@@ -7314,13 +7476,19 @@ static void intel_decrease_pllclock(stru
void intel_mark_busy(struct drm_device *dev)
{
@@ -575,11 +563,9 @@ index 29e43b2cf908..6cf35357afad 100644
if (!i915_powersave)
return;
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 46f3e674210d..79c14e298ba6 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -344,6 +344,8 @@ intel_dp_aux_ch(struct intel_dp *intel_dp,
+@@ -344,6 +344,8 @@ intel_dp_aux_ch(struct intel_dp *intel_d
else
precharge = 5;
@@ -588,7 +574,7 @@ index 46f3e674210d..79c14e298ba6 100644
/* Try to wait for any previous AUX channel activity */
for (try = 0; try < 3; try++) {
status = I915_READ_NOTRACE(ch_ctl);
-@@ -434,6 +436,7 @@ intel_dp_aux_ch(struct intel_dp *intel_dp,
+@@ -434,6 +436,7 @@ intel_dp_aux_ch(struct intel_dp *intel_d
ret = recv_bytes;
out:
pm_qos_update_request(&dev_priv->pm_qos, PM_QOS_DEFAULT_VALUE);
@@ -596,11 +582,9 @@ index 46f3e674210d..79c14e298ba6 100644
return ret;
}
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 8222f2426b47..176080822a74 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -745,6 +745,7 @@ extern void intel_set_power_well(struct drm_device *dev, bool enable);
+@@ -745,6 +745,7 @@ extern void intel_set_power_well(struct
extern void intel_enable_gt_powersave(struct drm_device *dev);
extern void intel_disable_gt_powersave(struct drm_device *dev);
extern void ironlake_teardown_rc6(struct drm_device *dev);
@@ -608,7 +592,7 @@ index 8222f2426b47..176080822a74 100644
extern bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
enum pipe *pipe);
-@@ -784,5 +785,12 @@ extern void ilk_disable_gt_irq(struct drm_i915_private *dev_priv,
+@@ -784,5 +785,12 @@ extern void ilk_disable_gt_irq(struct dr
extern void snb_enable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask);
extern void snb_disable_pm_irq(struct drm_i915_private *dev_priv,
uint32_t mask);
@@ -621,8 +605,6 @@ index 8222f2426b47..176080822a74 100644
+extern void intel_aux_display_runtime_put(struct drm_i915_private *dev_priv);
#endif /* __INTEL_DRV_H__ */
-diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c
-index 639fe192997c..d1c1e0f7f262 100644
--- a/drivers/gpu/drm/i915/intel_i2c.c
+++ b/drivers/gpu/drm/i915/intel_i2c.c
@@ -398,6 +398,7 @@ gmbus_xfer(struct i2c_adapter *adapter,
@@ -641,11 +623,9 @@ index 639fe192997c..d1c1e0f7f262 100644
return ret;
}
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 178da3ec31b4..46056820d1d2 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3607,7 +3607,7 @@ static void gen6_enable_rps(struct drm_device *dev)
+@@ -3607,7 +3607,7 @@ static void gen6_enable_rps(struct drm_d
gen6_gt_force_wake_put(dev_priv);
}
@@ -654,7 +634,7 @@ index 178da3ec31b4..46056820d1d2 100644
{
struct drm_i915_private *dev_priv = dev->dev_private;
int min_freq = 15;
-@@ -5416,6 +5416,17 @@ void intel_init_power_well(struct drm_device *dev)
+@@ -5416,6 +5416,17 @@ void intel_init_power_well(struct drm_de
I915_WRITE(HSW_PWR_WELL_BIOS, 0);
}
@@ -672,6 +652,3 @@ index 178da3ec31b4..46056820d1d2 100644
/* Set up chip specific power management-related functions */
void intel_init_pm(struct drm_device *dev)
{
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0727-gpu-vga_switcheroo-add-driver-control-power-feature..patch b/patches.baytrail/0727-gpu-vga_switcheroo-add-driver-control-power-feature..patch
index 7e7391973e2999..ed01c7aeb6432b 100644
--- a/patches.baytrail/0727-gpu-vga_switcheroo-add-driver-control-power-feature..patch
+++ b/patches.baytrail/0727-gpu-vga_switcheroo-add-driver-control-power-feature..patch
@@ -29,18 +29,16 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 0d69704ae348c03bc216b01e32a0e9a2372be419)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/nouveau/nouveau_vga.c | 2 +-
- drivers/gpu/drm/radeon/radeon_device.c | 2 +-
- drivers/gpu/vga/vga_switcheroo.c | 147 +++++++++++++++++++++++++++++++--
- include/linux/vga_switcheroo.h | 13 ++-
+ drivers/gpu/drm/i915/i915_dma.c | 2
+ drivers/gpu/drm/nouveau/nouveau_vga.c | 2
+ drivers/gpu/drm/radeon/radeon_device.c | 2
+ drivers/gpu/vga/vga_switcheroo.c | 147 +++++++++++++++++++++++++++++++--
+ include/linux/vga_switcheroo.h | 13 ++
5 files changed, 156 insertions(+), 10 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 4c7669f3f586..3e4e6073d171 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1296,7 +1296,7 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1304,7 +1304,7 @@ static int i915_load_modeset_init(struct
intel_register_dsm_handler();
@@ -49,11 +47,9 @@ index 4c7669f3f586..3e4e6073d171 100644
if (ret)
goto cleanup_vga_client;
-diff --git a/drivers/gpu/drm/nouveau/nouveau_vga.c b/drivers/gpu/drm/nouveau/nouveau_vga.c
-index 25d3495725eb..40a09f11a600 100644
--- a/drivers/gpu/drm/nouveau/nouveau_vga.c
+++ b/drivers/gpu/drm/nouveau/nouveau_vga.c
-@@ -79,7 +79,7 @@ nouveau_vga_init(struct nouveau_drm *drm)
+@@ -79,7 +79,7 @@ nouveau_vga_init(struct nouveau_drm *drm
{
struct drm_device *dev = drm->dev;
vga_client_register(dev->pdev, dev, NULL, nouveau_vga_set_decode);
@@ -62,11 +58,9 @@ index 25d3495725eb..40a09f11a600 100644
}
void
-diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
-index 8df1525f71d2..6ea7983790d7 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
-@@ -1169,7 +1169,7 @@ int radeon_device_init(struct radeon_device *rdev,
+@@ -1169,7 +1169,7 @@ int radeon_device_init(struct radeon_dev
/* this will fail for cards that aren't VGA class devices, just
* ignore it */
vga_client_register(rdev->pdev, rdev, NULL, radeon_vga_set_decode);
@@ -75,8 +69,6 @@ index 8df1525f71d2..6ea7983790d7 100644
r = radeon_init(rdev);
if (r)
-diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c
-index cf787e1d9322..ec0ae2d1686a 100644
--- a/drivers/gpu/vga/vga_switcheroo.c
+++ b/drivers/gpu/vga/vga_switcheroo.c
@@ -27,6 +27,7 @@
@@ -95,7 +87,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
struct list_head list;
};
-@@ -132,7 +134,7 @@ EXPORT_SYMBOL(vga_switcheroo_unregister_handler);
+@@ -132,7 +134,7 @@ EXPORT_SYMBOL(vga_switcheroo_unregister_
static int register_client(struct pci_dev *pdev,
const struct vga_switcheroo_client_ops *ops,
@@ -104,7 +96,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
{
struct vga_switcheroo_client *client;
-@@ -145,6 +147,7 @@ static int register_client(struct pci_dev *pdev,
+@@ -145,6 +147,7 @@ static int register_client(struct pci_de
client->ops = ops;
client->id = id;
client->active = active;
@@ -112,7 +104,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
mutex_lock(&vgasr_mutex);
list_add_tail(&client->list, &vgasr_priv.clients);
-@@ -160,10 +163,11 @@ static int register_client(struct pci_dev *pdev,
+@@ -160,10 +163,11 @@ static int register_client(struct pci_de
}
int vga_switcheroo_register_client(struct pci_dev *pdev,
@@ -126,7 +118,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
}
EXPORT_SYMBOL(vga_switcheroo_register_client);
-@@ -171,7 +175,7 @@ int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
+@@ -171,7 +175,7 @@ int vga_switcheroo_register_audio_client
const struct vga_switcheroo_client_ops *ops,
int id, bool active)
{
@@ -135,7 +127,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
}
EXPORT_SYMBOL(vga_switcheroo_register_audio_client);
-@@ -258,10 +262,11 @@ static int vga_switcheroo_show(struct seq_file *m, void *v)
+@@ -258,10 +262,11 @@ static int vga_switcheroo_show(struct se
int i = 0;
mutex_lock(&vgasr_mutex);
list_for_each_entry(client, &vgasr_priv.clients, list) {
@@ -148,7 +140,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
client->pwr_state ? "Pwr" : "Off",
pci_name(client->pdev));
i++;
-@@ -277,6 +282,8 @@ static int vga_switcheroo_debugfs_open(struct inode *inode, struct file *file)
+@@ -277,6 +282,8 @@ static int vga_switcheroo_debugfs_open(s
static int vga_switchon(struct vga_switcheroo_client *client)
{
@@ -157,7 +149,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
if (vgasr_priv.handler->power_state)
vgasr_priv.handler->power_state(client->id, VGA_SWITCHEROO_ON);
/* call the driver callback to turn on device */
-@@ -287,6 +294,8 @@ static int vga_switchon(struct vga_switcheroo_client *client)
+@@ -287,6 +294,8 @@ static int vga_switchon(struct vga_switc
static int vga_switchoff(struct vga_switcheroo_client *client)
{
@@ -166,7 +158,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
/* call the driver callback to turn off device */
client->ops->set_gpu_state(client->pdev, VGA_SWITCHEROO_OFF);
if (vgasr_priv.handler->power_state)
-@@ -402,6 +411,8 @@ vga_switcheroo_debugfs_write(struct file *filp, const char __user *ubuf,
+@@ -402,6 +411,8 @@ vga_switcheroo_debugfs_write(struct file
list_for_each_entry(client, &vgasr_priv.clients, list) {
if (client->active || client_is_audio(client))
continue;
@@ -175,7 +167,7 @@ index cf787e1d9322..ec0ae2d1686a 100644
set_audio_state(client->id, VGA_SWITCHEROO_OFF);
if (client->pwr_state == VGA_SWITCHEROO_ON)
vga_switchoff(client);
-@@ -413,6 +424,8 @@ vga_switcheroo_debugfs_write(struct file *filp, const char __user *ubuf,
+@@ -413,6 +424,8 @@ vga_switcheroo_debugfs_write(struct file
list_for_each_entry(client, &vgasr_priv.clients, list) {
if (client->active || client_is_audio(client))
continue;
@@ -312,8 +304,6 @@ index cf787e1d9322..ec0ae2d1686a 100644
+ return -EINVAL;
+}
+EXPORT_SYMBOL(vga_switcheroo_init_domain_pm_optimus_hdmi_audio);
-diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h
-index ddb419cf4530..502073a53dd3 100644
--- a/include/linux/vga_switcheroo.h
+++ b/include/linux/vga_switcheroo.h
@@ -45,7 +45,8 @@ struct vga_switcheroo_client_ops {
@@ -326,7 +316,7 @@ index ddb419cf4530..502073a53dd3 100644
int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
const struct vga_switcheroo_client_ops *ops,
int id, bool active);
-@@ -60,11 +61,15 @@ int vga_switcheroo_process_delayed_switch(void);
+@@ -60,11 +61,15 @@ int vga_switcheroo_process_delayed_switc
int vga_switcheroo_get_client_state(struct pci_dev *dev);
@@ -343,7 +333,7 @@ index ddb419cf4530..502073a53dd3 100644
static inline void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info) {}
static inline int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) { return 0; }
static inline int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
-@@ -74,6 +79,10 @@ static inline void vga_switcheroo_unregister_handler(void) {}
+@@ -74,6 +79,10 @@ static inline void vga_switcheroo_unregi
static inline int vga_switcheroo_process_delayed_switch(void) { return 0; }
static inline int vga_switcheroo_get_client_state(struct pci_dev *dev) { return VGA_SWITCHEROO_ON; }
@@ -354,6 +344,3 @@ index ddb419cf4530..502073a53dd3 100644
#endif
#endif /* _LINUX_VGA_SWITCHEROO_H_ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0728-drm-edid-Add-both-60Hz-and-59.94Hz-CEA-modes-to-conn.patch b/patches.baytrail/0728-drm-edid-Add-both-60Hz-and-59.94Hz-CEA-modes-to-conn.patch
index 5ce772595ef28e..6c7dd4d93a9605 100644
--- a/patches.baytrail/0728-drm-edid-Add-both-60Hz-and-59.94Hz-CEA-modes-to-conn.patch
+++ b/patches.baytrail/0728-drm-edid-Add-both-60Hz-and-59.94Hz-CEA-modes-to-conn.patch
@@ -28,14 +28,12 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit e6e792092e816bea0797995c886fb057c91d4546)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 102 ++++++++++++++++++++++++++++++++++++++-------
+ drivers/gpu/drm/drm_edid.c | 102 ++++++++++++++++++++++++++++++++++++++-------
1 file changed, 88 insertions(+), 14 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 9d4d21f46a8a..298e1052fcc3 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2353,6 +2353,31 @@ u8 *drm_find_cea_extension(struct edid *edid)
+@@ -2358,6 +2358,31 @@ u8 *drm_find_cea_extension(struct edid *
}
EXPORT_SYMBOL(drm_find_cea_extension);
@@ -67,7 +65,7 @@ index 9d4d21f46a8a..298e1052fcc3 100644
/**
* drm_match_cea_mode - look for a CEA mode matching given mode
* @to_match: display mode
-@@ -2371,21 +2396,9 @@ u8 drm_match_cea_mode(const struct drm_display_mode *to_match)
+@@ -2376,21 +2401,9 @@ u8 drm_match_cea_mode(const struct drm_d
const struct drm_display_mode *cea_mode = &edid_cea_modes[mode];
unsigned int clock1, clock2;
@@ -91,7 +89,7 @@ index 9d4d21f46a8a..298e1052fcc3 100644
if ((KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock1) ||
KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock2)) &&
-@@ -2396,6 +2409,66 @@ u8 drm_match_cea_mode(const struct drm_display_mode *to_match)
+@@ -2401,6 +2414,66 @@ u8 drm_match_cea_mode(const struct drm_d
}
EXPORT_SYMBOL(drm_match_cea_mode);
@@ -158,7 +156,7 @@ index 9d4d21f46a8a..298e1052fcc3 100644
static int
do_cea_modes(struct drm_connector *connector, const u8 *db, u8 len)
-@@ -3044,6 +3117,7 @@ int drm_add_edid_modes(struct drm_connector *connector, struct edid *edid)
+@@ -3049,6 +3122,7 @@ int drm_add_edid_modes(struct drm_connec
if (edid->features & DRM_EDID_FEATURE_DEFAULT_GTF)
num_modes += add_inferred_modes(connector, edid);
num_modes += add_cea_modes(connector, edid);
@@ -166,6 +164,3 @@ index 9d4d21f46a8a..298e1052fcc3 100644
if (quirks & (EDID_QUIRK_PREFER_LARGE_60 | EDID_QUIRK_PREFER_LARGE_75))
edid_fixup_preferred(connector, quirks);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0729-drm-Add-support-for-alternate-clocks-of-4k-modes.patch b/patches.baytrail/0729-drm-Add-support-for-alternate-clocks-of-4k-modes.patch
index 6cf5be691a30d7..239fa2b20fd3a1 100644
--- a/patches.baytrail/0729-drm-Add-support-for-alternate-clocks-of-4k-modes.patch
+++ b/patches.baytrail/0729-drm-Add-support-for-alternate-clocks-of-4k-modes.patch
@@ -17,14 +17,12 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit 3f2f653378112c1453c0d83c81746a9225e4bc75)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 68 ++++++++++++++++++++++++++++++++++++++++++----
+ drivers/gpu/drm/drm_edid.c | 68 +++++++++++++++++++++++++++++++++++++++++----
1 file changed, 62 insertions(+), 6 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 298e1052fcc3..4adcea91d728 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2409,6 +2409,54 @@ u8 drm_match_cea_mode(const struct drm_display_mode *to_match)
+@@ -2414,6 +2414,54 @@ u8 drm_match_cea_mode(const struct drm_d
}
EXPORT_SYMBOL(drm_match_cea_mode);
@@ -79,7 +77,7 @@ index 298e1052fcc3..4adcea91d728 100644
static int
add_alternate_cea_modes(struct drm_connector *connector, struct edid *edid)
{
-@@ -2426,18 +2474,26 @@ add_alternate_cea_modes(struct drm_connector *connector, struct edid *edid)
+@@ -2431,18 +2479,26 @@ add_alternate_cea_modes(struct drm_conne
* with the alternate clock for certain CEA modes.
*/
list_for_each_entry(mode, &connector->probed_modes, head) {
@@ -112,6 +110,3 @@ index 298e1052fcc3..4adcea91d728 100644
if (clock1 == clock2)
continue;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0730-drm-Make-drm_match_cea_mode-return-the-underlying-2D.patch b/patches.baytrail/0730-drm-Make-drm_match_cea_mode-return-the-underlying-2D.patch
index ccc137f3091c33..817d1bacb1e17e 100644
--- a/patches.baytrail/0730-drm-Make-drm_match_cea_mode-return-the-underlying-2D.patch
+++ b/patches.baytrail/0730-drm-Make-drm_match_cea_mode-return-the-underlying-2D.patch
@@ -19,16 +19,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit f2ecf2e3bc01868f244fc6ba9cf8fe5d8446db5b)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 4 ++--
- drivers/gpu/drm/drm_modes.c | 18 ++++++++++++------
- include/drm/drm_crtc.h | 2 +-
+ drivers/gpu/drm/drm_edid.c | 4 ++--
+ drivers/gpu/drm/drm_modes.c | 18 ++++++++++++------
+ include/drm/drm_crtc.h | 2 +-
3 files changed, 15 insertions(+), 9 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 4adcea91d728..1e5db5bb8eaf 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2402,7 +2402,7 @@ u8 drm_match_cea_mode(const struct drm_display_mode *to_match)
+@@ -2407,7 +2407,7 @@ u8 drm_match_cea_mode(const struct drm_d
if ((KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock1) ||
KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock2)) &&
@@ -37,7 +35,7 @@ index 4adcea91d728..1e5db5bb8eaf 100644
return mode + 1;
}
return 0;
-@@ -2451,7 +2451,7 @@ static u8 drm_match_hdmi_mode(const struct drm_display_mode *to_match)
+@@ -2456,7 +2456,7 @@ static u8 drm_match_hdmi_mode(const stru
if ((KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock1) ||
KHZ2PICOS(to_match->clock) == KHZ2PICOS(clock2)) &&
@@ -46,11 +44,9 @@ index 4adcea91d728..1e5db5bb8eaf 100644
return mode + 1;
}
return 0;
-diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
-index a371ff865a88..1d29b473fe6a 100644
--- a/drivers/gpu/drm/drm_modes.c
+++ b/drivers/gpu/drm/drm_modes.c
-@@ -848,12 +848,16 @@ bool drm_mode_equal(const struct drm_display_mode *mode1, const struct drm_displ
+@@ -848,12 +848,16 @@ bool drm_mode_equal(const struct drm_dis
} else if (mode1->clock != mode2->clock)
return false;
@@ -85,7 +81,7 @@ index a371ff865a88..1d29b473fe6a 100644
{
if (mode1->hdisplay == mode2->hdisplay &&
mode1->hsync_start == mode2->hsync_start &&
-@@ -878,12 +883,13 @@ bool drm_mode_equal_no_clocks(const struct drm_display_mode *mode1, const struct
+@@ -878,12 +883,13 @@ bool drm_mode_equal_no_clocks(const stru
mode1->vsync_end == mode2->vsync_end &&
mode1->vtotal == mode2->vtotal &&
mode1->vscan == mode2->vscan &&
@@ -101,11 +97,9 @@ index a371ff865a88..1d29b473fe6a 100644
/**
* drm_mode_validate_size - make sure modes adhere to size constraints
-diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
-index 2cbbfd44c6df..c2f130e584c3 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
-@@ -920,7 +920,7 @@ extern void drm_mode_config_reset(struct drm_device *dev);
+@@ -920,7 +920,7 @@ extern void drm_mode_config_reset(struct
extern void drm_mode_config_cleanup(struct drm_device *dev);
extern void drm_mode_set_name(struct drm_display_mode *mode);
extern bool drm_mode_equal(const struct drm_display_mode *mode1, const struct drm_display_mode *mode2);
@@ -114,6 +108,3 @@ index 2cbbfd44c6df..c2f130e584c3 100644
extern int drm_mode_width(const struct drm_display_mode *mode);
extern int drm_mode_height(const struct drm_display_mode *mode);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0731-drm-Add-a-helper-to-forge-HDMI-vendor-infoframes.patch b/patches.baytrail/0731-drm-Add-a-helper-to-forge-HDMI-vendor-infoframes.patch
index ca6dd13662315a..9b48b1a1d9dfd2 100644
--- a/patches.baytrail/0731-drm-Add-a-helper-to-forge-HDMI-vendor-infoframes.patch
+++ b/patches.baytrail/0731-drm-Add-a-helper-to-forge-HDMI-vendor-infoframes.patch
@@ -19,15 +19,13 @@ Signed-off-by: Dave Airlie <airlied@gmail.com>
(cherry picked from commit 83dd000865eaaeb0799bf5e6d12f8d8cdb740e91)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 36 ++++++++++++++++++++++++++++++++++++
- include/drm/drm_edid.h | 4 ++++
+ drivers/gpu/drm/drm_edid.c | 36 ++++++++++++++++++++++++++++++++++++
+ include/drm/drm_edid.h | 4 ++++
2 files changed, 40 insertions(+)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 1e5db5bb8eaf..63c50ce3934f 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -3266,3 +3266,39 @@ drm_hdmi_avi_infoframe_from_display_mode(struct hdmi_avi_infoframe *frame,
+@@ -3274,3 +3274,39 @@ drm_hdmi_avi_infoframe_from_display_mode
return 0;
}
EXPORT_SYMBOL(drm_hdmi_avi_infoframe_from_display_mode);
@@ -67,8 +65,6 @@ index 1e5db5bb8eaf..63c50ce3934f 100644
+ return 0;
+}
+EXPORT_SYMBOL(drm_hdmi_vendor_infoframe_from_display_mode);
-diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
-index fc481fc17085..7b75621fda4c 100644
--- a/include/drm/drm_edid.h
+++ b/include/drm/drm_edid.h
@@ -256,6 +256,7 @@ struct drm_encoder;
@@ -79,7 +75,7 @@ index fc481fc17085..7b75621fda4c 100644
void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid);
int drm_edid_to_sad(struct edid *edid, struct cea_sad **sads);
-@@ -268,5 +269,8 @@ int drm_load_edid_firmware(struct drm_connector *connector);
+@@ -268,5 +269,8 @@ int drm_load_edid_firmware(struct drm_co
int
drm_hdmi_avi_infoframe_from_display_mode(struct hdmi_avi_infoframe *frame,
const struct drm_display_mode *mode);
@@ -88,6 +84,3 @@ index fc481fc17085..7b75621fda4c 100644
+ const struct drm_display_mode *mode);
#endif /* __DRM_EDID_H__ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0733-drm-edid-Expose-mandatory-stereo-modes-for-HDMI-sink.patch b/patches.baytrail/0733-drm-edid-Expose-mandatory-stereo-modes-for-HDMI-sink.patch
index 06c39a858f83bc..8fe0d0f00cdc1a 100644
--- a/patches.baytrail/0733-drm-edid-Expose-mandatory-stereo-modes-for-HDMI-sink.patch
+++ b/patches.baytrail/0733-drm-edid-Expose-mandatory-stereo-modes-for-HDMI-sink.patch
@@ -24,14 +24,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c858cfcae6dd3829e8708a48d009c2f676b79d4d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 110 ++++++++++++++++++++++++++++++++++++++++++---
+ drivers/gpu/drm/drm_edid.c | 110 ++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 103 insertions(+), 7 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 63c50ce3934f..41a5f3428e93 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2551,13 +2551,95 @@ do_cea_modes(struct drm_connector *connector, const u8 *db, u8 len)
+@@ -2556,13 +2556,95 @@ do_cea_modes(struct drm_connector *conne
return modes;
}
@@ -128,7 +126,7 @@ index 63c50ce3934f..41a5f3428e93 100644
*/
static int
do_hdmi_vsdb_modes(struct drm_connector *connector, const u8 *db, u8 len)
-@@ -2583,10 +2665,15 @@ do_hdmi_vsdb_modes(struct drm_connector *connector, const u8 *db, u8 len)
+@@ -2588,10 +2670,15 @@ do_hdmi_vsdb_modes(struct drm_connector
/* the declared length is not long enough for the 2 first bytes
* of additional video format capabilities */
@@ -146,7 +144,7 @@ index 63c50ce3934f..41a5f3428e93 100644
vic_len = db[8 + offset] >> 5;
for (i = 0; i < vic_len && len >= (9 + offset + i); i++) {
-@@ -2666,8 +2753,8 @@ static int
+@@ -2671,8 +2758,8 @@ static int
add_cea_modes(struct drm_connector *connector, struct edid *edid)
{
const u8 *cea = drm_find_cea_extension(edid);
@@ -157,7 +155,7 @@ index 63c50ce3934f..41a5f3428e93 100644
int modes = 0;
if (cea && cea_revision(cea) >= 3) {
-@@ -2682,11 +2769,20 @@ add_cea_modes(struct drm_connector *connector, struct edid *edid)
+@@ -2687,11 +2774,20 @@ add_cea_modes(struct drm_connector *conn
if (cea_db_tag(db) == VIDEO_BLOCK)
modes += do_cea_modes(connector, db + 1, dbl);
@@ -180,6 +178,3 @@ index 63c50ce3934f..41a5f3428e93 100644
return modes;
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0734-drm-Extract-add_hdmi_mode-out-of-do_hdmi_vsdb_modes.patch b/patches.baytrail/0734-drm-Extract-add_hdmi_mode-out-of-do_hdmi_vsdb_modes.patch
index 53a7a8e1b5ae50..084e801f3bc90b 100644
--- a/patches.baytrail/0734-drm-Extract-add_hdmi_mode-out-of-do_hdmi_vsdb_modes.patch
+++ b/patches.baytrail/0734-drm-Extract-add_hdmi_mode-out-of-do_hdmi_vsdb_modes.patch
@@ -20,14 +20,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 1deee8d76724b478240f1bba5affe017e4f9bfa3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 36 +++++++++++++++++++++---------------
+ drivers/gpu/drm/drm_edid.c | 36 +++++++++++++++++++++---------------
1 file changed, 21 insertions(+), 15 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 41a5f3428e93..a23a3be52a09 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2632,6 +2632,26 @@ static int add_hdmi_mandatory_stereo_modes(struct drm_connector *connector)
+@@ -2637,6 +2637,26 @@ static int add_hdmi_mandatory_stereo_mod
return modes;
}
@@ -54,7 +52,7 @@ index 41a5f3428e93..a23a3be52a09 100644
/*
* do_hdmi_vsdb_modes - Parse the HDMI Vendor Specific data block
* @connector: connector corresponding to the HDMI sink
-@@ -2644,7 +2664,6 @@ static int add_hdmi_mandatory_stereo_modes(struct drm_connector *connector)
+@@ -2649,7 +2669,6 @@ static int add_hdmi_mandatory_stereo_mod
static int
do_hdmi_vsdb_modes(struct drm_connector *connector, const u8 *db, u8 len)
{
@@ -62,7 +60,7 @@ index 41a5f3428e93..a23a3be52a09 100644
int modes = 0, offset = 0, i;
u8 vic_len;
-@@ -2677,23 +2696,10 @@ do_hdmi_vsdb_modes(struct drm_connector *connector, const u8 *db, u8 len)
+@@ -2682,23 +2701,10 @@ do_hdmi_vsdb_modes(struct drm_connector
vic_len = db[8 + offset] >> 5;
for (i = 0; i < vic_len && len >= (9 + offset + i); i++) {
@@ -87,6 +85,3 @@ index 41a5f3428e93..a23a3be52a09 100644
}
out:
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0735-drm-Code-stereo-layouts-as-an-enum-rather-than-a-bit.patch b/patches.baytrail/0735-drm-Code-stereo-layouts-as-an-enum-rather-than-a-bit.patch
index 0a65ee762b267d..6dfde746e063e3 100644
--- a/patches.baytrail/0735-drm-Code-stereo-layouts-as-an-enum-rather-than-a-bit.patch
+++ b/patches.baytrail/0735-drm-Code-stereo-layouts-as-an-enum-rather-than-a-bit.patch
@@ -26,16 +26,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit f7e121b76469624459152542c1b809a1ebc835fe)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 47 +++++++++++++++------------------------------
- include/drm/drm_crtc.h | 9 ---------
- include/uapi/drm/drm_mode.h | 19 ++++++++++--------
+ drivers/gpu/drm/drm_edid.c | 47 ++++++++++++++------------------------------
+ include/drm/drm_crtc.h | 9 --------
+ include/uapi/drm/drm_mode.h | 19 ++++++++++-------
3 files changed, 26 insertions(+), 49 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index a23a3be52a09..802daf1dfa60 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -2557,16 +2557,16 @@ struct stereo_mandatory_mode {
+@@ -2562,16 +2562,16 @@ struct stereo_mandatory_mode {
};
static const struct stereo_mandatory_mode stereo_mandatory_modes[] = {
@@ -58,7 +56,7 @@ index a23a3be52a09..802daf1dfa60 100644
};
static bool
-@@ -2581,50 +2581,33 @@ stereo_match_mandatory(const struct drm_display_mode *mode,
+@@ -2586,50 +2586,33 @@ stereo_match_mandatory(const struct drm_
drm_mode_vrefresh(mode) == stereo_mode->vrefresh;
}
@@ -118,8 +116,6 @@ index a23a3be52a09..802daf1dfa60 100644
}
list_splice_tail(&stereo_modes, &connector->probed_modes);
-diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
-index f96e7ff0035b..b228321549fa 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -179,15 +179,6 @@ struct drm_display_mode {
@@ -138,8 +134,6 @@ index f96e7ff0035b..b228321549fa 100644
static inline bool drm_mode_is_stereo(const struct drm_display_mode *mode)
{
return mode->flags & DRM_MODE_FLAG_3D_MASK;
-diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
-index acc75bac67f1..82adefbabfa4 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -58,14 +58,17 @@
@@ -168,6 +162,3 @@ index acc75bac67f1..82adefbabfa4 100644
/* DPMS flags */
/* bit compatible with the xorg definitions. */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0736-drm-Set-the-relevant-infoframe-field-when-scanning-o.patch b/patches.baytrail/0736-drm-Set-the-relevant-infoframe-field-when-scanning-o.patch
index 32dfce4b58da8e..81cca3b1614cc9 100644
--- a/patches.baytrail/0736-drm-Set-the-relevant-infoframe-field-when-scanning-o.patch
+++ b/patches.baytrail/0736-drm-Set-the-relevant-infoframe-field-when-scanning-o.patch
@@ -18,14 +18,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 4eed4a0a4ac31830b4c328739cabb69721584bfc)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 40 ++++++++++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/drm_edid.c | 40 ++++++++++++++++++++++++++++++++++++++--
1 file changed, 38 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 802daf1dfa60..61fdd6b532fc 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -3352,6 +3352,33 @@ drm_hdmi_avi_infoframe_from_display_mode(struct hdmi_avi_infoframe *frame,
+@@ -3360,6 +3360,33 @@ drm_hdmi_avi_infoframe_from_display_mode
}
EXPORT_SYMBOL(drm_hdmi_avi_infoframe_from_display_mode);
@@ -59,7 +57,7 @@ index 802daf1dfa60..61fdd6b532fc 100644
/**
* drm_hdmi_vendor_infoframe_from_display_mode() - fill an HDMI infoframe with
* data from a DRM display mode
-@@ -3369,20 +3396,29 @@ drm_hdmi_vendor_infoframe_from_display_mode(struct hdmi_vendor_infoframe *frame,
+@@ -3377,20 +3404,29 @@ drm_hdmi_vendor_infoframe_from_display_m
const struct drm_display_mode *mode)
{
int err;
@@ -91,6 +89,3 @@ index 802daf1dfa60..61fdd6b532fc 100644
return 0;
}
---
-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 fd739e4f4bcdc0..bc88ec89337c27 100644
--- a/patches.baytrail/0740-drm-i915-Support-render-nodes.patch
+++ b/patches.baytrail/0740-drm-i915-Support-render-nodes.patch
@@ -18,15 +18,13 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 10ba50129ab0bdbc0ee712e50913d1c8db88c5f0)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 42 ++++++++++++++++++++---------------------
- drivers/gpu/drm/i915/i915_drv.c | 3 ++-
+ drivers/gpu/drm/i915/i915_dma.c | 42 ++++++++++++++++++++--------------------
+ drivers/gpu/drm/i915/i915_drv.c | 3 +-
2 files changed, 23 insertions(+), 22 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 3e4e6073d171..fdaa0915ce56 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1866,7 +1866,7 @@ const struct drm_ioctl_desc i915_ioctls[] = {
+@@ -1876,7 +1876,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),
@@ -35,7 +33,7 @@ index 3e4e6073d171..fdaa0915ce56 100644
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),
-@@ -1879,35 +1879,35 @@ const struct drm_ioctl_desc i915_ioctls[] = {
+@@ -1889,35 +1889,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),
@@ -91,8 +89,6 @@ index 3e4e6073d171..fdaa0915ce56 100644
};
int i915_max_ioctl = DRM_ARRAY_SIZE(i915_ioctls);
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 735dd5625e9e..ccb28ead3501 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -1022,7 +1022,8 @@ static struct drm_driver driver = {
@@ -105,6 +101,3 @@ index 735dd5625e9e..ccb28ead3501 100644
.load = i915_driver_load,
.unload = i915_driver_unload,
.open = i915_driver_open,
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0755-i915-Update-VGA-arbiter-support-for-newer-devices.patch b/patches.baytrail/0755-i915-Update-VGA-arbiter-support-for-newer-devices.patch
index 79e99e8579bd81..197fb261bed16f 100644
--- a/patches.baytrail/0755-i915-Update-VGA-arbiter-support-for-newer-devices.patch
+++ b/patches.baytrail/0755-i915-Update-VGA-arbiter-support-for-newer-devices.patch
@@ -37,16 +37,14 @@ fixup 2
(cherry picked from commit 81b5c7bc8de3e6f63419139c2fc91bf81dea8a7d)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 9 ++++++---
- drivers/gpu/drm/i915/intel_display.c | 25 +++++++++++++++++++++++++
- include/linux/vgaarb.h | 7 +++++++
+ drivers/gpu/drm/i915/i915_dma.c | 9 ++++++---
+ drivers/gpu/drm/i915/intel_display.c | 25 +++++++++++++++++++++++++
+ include/linux/vgaarb.h | 7 +++++++
3 files changed, 38 insertions(+), 3 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index fdaa0915ce56..3de60503378e 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1290,9 +1290,12 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1298,9 +1298,12 @@ static int i915_load_modeset_init(struct
* then we do not take part in VGA arbitration and the
* vga_client_register() fails with -ENODEV.
*/
@@ -62,11 +60,9 @@ index fdaa0915ce56..3de60503378e 100644
intel_register_dsm_handler();
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 2fd611ac91ba..369fdb452125 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10045,6 +10045,15 @@ static void i915_disable_vga(struct drm_device *dev)
+@@ -10045,6 +10045,15 @@ static void i915_disable_vga(struct drm_
outb(SR01, VGA_SR_INDEX);
sr1 = inb(VGA_SR_DATA);
outb(sr1 | 1<<5, VGA_SR_DATA);
@@ -82,7 +78,7 @@ index 2fd611ac91ba..369fdb452125 100644
vga_put(dev->pdev, VGA_RSRC_LEGACY_IO);
udelay(300);
-@@ -10052,6 +10061,20 @@ static void i915_disable_vga(struct drm_device *dev)
+@@ -10052,6 +10061,20 @@ static void i915_disable_vga(struct drm_
POSTING_READ(vga_reg);
}
@@ -103,7 +99,7 @@ index 2fd611ac91ba..369fdb452125 100644
void intel_modeset_init_hw(struct drm_device *dev)
{
intel_init_power_well(dev);
-@@ -10543,6 +10566,8 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10545,6 +10568,8 @@ void intel_modeset_cleanup(struct drm_de
intel_disable_fbc(dev);
@@ -112,8 +108,6 @@ index 2fd611ac91ba..369fdb452125 100644
intel_disable_gt_powersave(dev);
ironlake_teardown_rc6(dev);
-diff --git a/include/linux/vgaarb.h b/include/linux/vgaarb.h
-index 2c02f3a8d2ba..80cf8173a65b 100644
--- a/include/linux/vgaarb.h
+++ b/include/linux/vgaarb.h
@@ -65,8 +65,15 @@ struct pci_dev;
@@ -132,6 +126,3 @@ index 2c02f3a8d2ba..80cf8173a65b 100644
/**
* vga_get - acquire & locks VGA resources
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0787-drm-i915-Do-not-add-an-interrupt-for-a-context-switc.patch b/patches.baytrail/0787-drm-i915-Do-not-add-an-interrupt-for-a-context-switc.patch
index 88a120a1805ca4..d2b24788d08e91 100644
--- a/patches.baytrail/0787-drm-i915-Do-not-add-an-interrupt-for-a-context-switc.patch
+++ b/patches.baytrail/0787-drm-i915-Do-not-add-an-interrupt-for-a-context-switc.patch
@@ -42,15 +42,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c0321e2c5acaaff7ed41d46d97cee71ad9238481)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_gem.c | 1 -
- drivers/gpu/drm/i915/i915_gem_context.c | 12 +-----------
+ drivers/gpu/drm/i915/i915_gem.c | 1 -
+ drivers/gpu/drm/i915/i915_gem_context.c | 12 +-----------
2 files changed, 1 insertion(+), 12 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 80342c8f02e6..22be39feadc0 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -2045,7 +2045,6 @@ int __i915_add_request(struct intel_ring_buffer *ring,
+@@ -2045,7 +2045,6 @@ int __i915_add_request(struct intel_ring
if (request == NULL)
return -ENOMEM;
@@ -58,11 +56,9 @@ index 80342c8f02e6..22be39feadc0 100644
/* Record the position of the start of the request so that
* should we detect the updated seqno part-way through the
* GPU processing the request, we never over-estimate the
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 403309c2a7d6..b6da70b51aea 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -451,17 +451,7 @@ static int do_switch(struct i915_hw_context *to)
+@@ -449,17 +449,7 @@ static int do_switch(struct i915_hw_cont
from->obj->dirty = 1;
BUG_ON(from->obj->ring != ring);
@@ -81,6 +77,3 @@ index 403309c2a7d6..b6da70b51aea 100644
i915_gem_object_unpin(from->obj);
i915_gem_context_unreference(from);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0812-drm-i915-Delay-disabling-of-VGA-memory-until-vgacon-.patch b/patches.baytrail/0812-drm-i915-Delay-disabling-of-VGA-memory-until-vgacon-.patch
index 2c59069fab9706..fdf5224a4da28a 100644
--- a/patches.baytrail/0812-drm-i915-Delay-disabling-of-VGA-memory-until-vgacon-.patch
+++ b/patches.baytrail/0812-drm-i915-Delay-disabling-of-VGA-memory-until-vgacon-.patch
@@ -41,16 +41,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 6e1b4fdad5157bb9e88777d525704aba24389bee)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 6 ++++++
- drivers/gpu/drm/i915/intel_display.c | 27 ++++++++++++++++-----------
- drivers/gpu/drm/i915/intel_drv.h | 1 +
+ drivers/gpu/drm/i915/i915_dma.c | 6 ++++++
+ drivers/gpu/drm/i915/intel_display.c | 27 ++++++++++++++++-----------
+ drivers/gpu/drm/i915/intel_drv.h | 1 +
3 files changed, 23 insertions(+), 11 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 3de60503378e..9b265a4c6a3d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1351,6 +1351,12 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1359,6 +1359,12 @@ static int i915_load_modeset_init(struct
*/
intel_fbdev_initial_config(dev);
@@ -63,11 +61,9 @@ index 3de60503378e..9b265a4c6a3d 100644
/* Only enable hotplug handling once the fbdev is fully set up. */
dev_priv->enable_hotplug_processing = true;
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index f68091d2078a..099ad416fcdd 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10065,15 +10065,6 @@ static void i915_disable_vga(struct drm_device *dev)
+@@ -10065,15 +10065,6 @@ static void i915_disable_vga(struct drm_
outb(SR01, VGA_SR_INDEX);
sr1 = inb(VGA_SR_DATA);
outb(sr1 | 1<<5, VGA_SR_DATA);
@@ -83,7 +79,7 @@ index f68091d2078a..099ad416fcdd 100644
vga_put(dev->pdev, VGA_RSRC_LEGACY_IO);
udelay(300);
-@@ -10081,7 +10072,7 @@ static void i915_disable_vga(struct drm_device *dev)
+@@ -10081,7 +10072,7 @@ static void i915_disable_vga(struct drm_
POSTING_READ(vga_reg);
}
@@ -92,7 +88,7 @@ index f68091d2078a..099ad416fcdd 100644
{
/* Enable VGA memory on Intel HD */
if (HAS_PCH_SPLIT(dev)) {
-@@ -10095,6 +10086,19 @@ static void i915_enable_vga(struct drm_device *dev)
+@@ -10095,6 +10086,19 @@ static void i915_enable_vga(struct drm_d
}
}
@@ -112,7 +108,7 @@ index f68091d2078a..099ad416fcdd 100644
void intel_modeset_init_hw(struct drm_device *dev)
{
intel_init_power_well(dev);
-@@ -10373,6 +10377,7 @@ void i915_redisable_vga(struct drm_device *dev)
+@@ -10373,6 +10377,7 @@ void i915_redisable_vga(struct drm_devic
if (I915_READ(vga_reg) != VGA_DISP_DISABLE) {
DRM_DEBUG_KMS("Something enabled VGA plane, disabling it\n");
i915_disable_vga(dev);
@@ -120,7 +116,7 @@ index f68091d2078a..099ad416fcdd 100644
}
}
-@@ -10586,7 +10591,7 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10588,7 +10593,7 @@ void intel_modeset_cleanup(struct drm_de
intel_disable_fbc(dev);
@@ -129,17 +125,12 @@ index f68091d2078a..099ad416fcdd 100644
intel_disable_gt_powersave(dev);
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index ea97c2347200..322dbc6b20a2 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -798,5 +798,6 @@ extern void hsw_pc8_disable_interrupts(struct drm_device *dev);
+@@ -798,5 +798,6 @@ extern void hsw_pc8_disable_interrupts(s
extern void hsw_pc8_restore_interrupts(struct drm_device *dev);
extern void intel_aux_display_runtime_get(struct drm_i915_private *dev_priv);
extern void intel_aux_display_runtime_put(struct drm_i915_private *dev_priv);
+extern void i915_disable_vga_mem(struct drm_device *dev);
#endif /* __INTEL_DRV_H__ */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0883-drm-i915-Do-remaps-for-all-contexts.patch b/patches.baytrail/0883-drm-i915-Do-remaps-for-all-contexts.patch
index 0c52272a3b7547..8377d3df2828b1 100644
--- a/patches.baytrail/0883-drm-i915-Do-remaps-for-all-contexts.patch
+++ b/patches.baytrail/0883-drm-i915-Do-remaps-for-all-contexts.patch
@@ -41,17 +41,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 3ccfd19dea7c5c85aa4b1f929a97a02b026ab356)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 8 +++++++
- drivers/gpu/drm/i915/i915_drv.h | 1 +
- drivers/gpu/drm/i915/i915_gem_context.c | 22 ++++++++++++++++----
- drivers/gpu/drm/i915/i915_sysfs.c | 37 +++++++++++++--------------------
+ drivers/gpu/drm/i915/i915_debugfs.c | 8 ++++++
+ drivers/gpu/drm/i915/i915_drv.h | 1
+ drivers/gpu/drm/i915/i915_gem_context.c | 22 +++++++++++++++----
+ drivers/gpu/drm/i915/i915_sysfs.c | 37 ++++++++++++--------------------
4 files changed, 41 insertions(+), 27 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index ada095023dad..80bed69fe5b7 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -145,6 +145,13 @@ describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
+@@ -145,6 +145,13 @@ describe_obj(struct seq_file *m, struct
seq_printf(m, " (%s)", obj->ring->name);
}
@@ -65,7 +63,7 @@ index ada095023dad..80bed69fe5b7 100644
static int i915_gem_object_list_info(struct seq_file *m, void *data)
{
struct drm_info_node *node = (struct drm_info_node *) m->private;
-@@ -1463,6 +1470,7 @@ static int i915_context_status(struct seq_file *m, void *unused)
+@@ -1463,6 +1470,7 @@ static int i915_context_status(struct se
list_for_each_entry(ctx, &dev_priv->context_list, link) {
seq_puts(m, "HW context ");
@@ -73,8 +71,6 @@ index ada095023dad..80bed69fe5b7 100644
for_each_ring(ring, dev_priv, i)
if (ring->default_context == ctx)
seq_printf(m, "(default context %s) ", ring->name);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 179592762537..015df5264dcc 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -601,6 +601,7 @@ struct i915_hw_context {
@@ -85,11 +81,9 @@ index 179592762537..015df5264dcc 100644
struct drm_i915_file_private *file_priv;
struct intel_ring_buffer *ring;
struct drm_i915_gem_object *obj;
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 2bbdce821ac3..9af3fe7e42b0 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -181,6 +181,10 @@ create_hw_context(struct drm_device *dev,
+@@ -181,6 +181,10 @@ create_hw_context(struct drm_device *dev
ctx->file_priv = file_priv;
ctx->id = ret;
@@ -100,7 +94,7 @@ index 2bbdce821ac3..9af3fe7e42b0 100644
return ctx;
-@@ -396,11 +400,11 @@ static int do_switch(struct i915_hw_context *to)
+@@ -394,11 +398,11 @@ static int do_switch(struct i915_hw_cont
struct intel_ring_buffer *ring = to->ring;
struct i915_hw_context *from = ring->last_context;
u32 hw_flags = 0;
@@ -114,7 +108,7 @@ index 2bbdce821ac3..9af3fe7e42b0 100644
return 0;
ret = i915_gem_obj_ggtt_pin(to->obj, CONTEXT_ALIGN, false, false);
-@@ -423,8 +427,6 @@ static int do_switch(struct i915_hw_context *to)
+@@ -421,8 +425,6 @@ static int do_switch(struct i915_hw_cont
if (!to->is_initialized || is_default_context(to))
hw_flags |= MI_RESTORE_INHIBIT;
@@ -123,7 +117,7 @@ index 2bbdce821ac3..9af3fe7e42b0 100644
ret = mi_set_context(ring, to, hw_flags);
if (ret) {
-@@ -432,6 +434,18 @@ static int do_switch(struct i915_hw_context *to)
+@@ -430,6 +432,18 @@ static int do_switch(struct i915_hw_cont
return ret;
}
@@ -142,11 +136,9 @@ index 2bbdce821ac3..9af3fe7e42b0 100644
/* The backing object for the context is done after switching to the
* *next* context. Therefore we cannot retire the previous context until
* the next context has already started running. In fact, the below code
-diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c
-index b07bdfb8892d..deb8787308d6 100644
--- a/drivers/gpu/drm/i915/i915_sysfs.c
+++ b/drivers/gpu/drm/i915/i915_sysfs.c
-@@ -118,9 +118,8 @@ i915_l3_read(struct file *filp, struct kobject *kobj,
+@@ -118,9 +118,8 @@ i915_l3_read(struct file *filp, struct k
struct drm_minor *dminor = container_of(dev, struct drm_minor, kdev);
struct drm_device *drm_dev = dminor->dev;
struct drm_i915_private *dev_priv = drm_dev->dev_private;
@@ -157,7 +149,7 @@ index b07bdfb8892d..deb8787308d6 100644
count = round_down(count, 4);
-@@ -134,26 +133,13 @@ i915_l3_read(struct file *filp, struct kobject *kobj,
+@@ -134,26 +133,13 @@ i915_l3_read(struct file *filp, struct k
if (ret)
return ret;
@@ -174,11 +166,6 @@ index b07bdfb8892d..deb8787308d6 100644
-
- misccpctl = I915_READ(GEN7_MISCCPCTL);
- I915_WRITE(GEN7_MISCCPCTL, misccpctl & ~GEN7_DOP_CLOCK_GATE_ENABLE);
--
-- for (i = 0; i < count; i += 4)
-- *((uint32_t *)(&buf[i])) = I915_READ(GEN7_L3LOG_BASE + offset + i);
--
-- I915_WRITE(GEN7_MISCCPCTL, misccpctl);
+ if (dev_priv->l3_parity.remap_info[slice])
+ memcpy(buf,
+ dev_priv->l3_parity.remap_info[slice] + (offset/4),
@@ -186,11 +173,16 @@ index b07bdfb8892d..deb8787308d6 100644
+ else
+ memset(buf, 0, count);
+- for (i = 0; i < count; i += 4)
+- *((uint32_t *)(&buf[i])) = I915_READ(GEN7_L3LOG_BASE + offset + i);
+-
+- I915_WRITE(GEN7_MISCCPCTL, misccpctl);
+-
-out:
mutex_unlock(&drm_dev->struct_mutex);
return count;
-@@ -168,6 +154,7 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -168,6 +154,7 @@ i915_l3_write(struct file *filp, struct
struct drm_minor *dminor = container_of(dev, struct drm_minor, kdev);
struct drm_device *drm_dev = dminor->dev;
struct drm_i915_private *dev_priv = drm_dev->dev_private;
@@ -198,7 +190,7 @@ index b07bdfb8892d..deb8787308d6 100644
u32 *temp = NULL; /* Just here to make handling failures easy */
int slice = (int)(uintptr_t)attr->private;
int ret;
-@@ -176,6 +163,9 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -176,6 +163,9 @@ i915_l3_write(struct file *filp, struct
if (ret)
return ret;
@@ -208,7 +200,7 @@ index b07bdfb8892d..deb8787308d6 100644
ret = i915_mutex_lock_interruptible(drm_dev);
if (ret)
return ret;
-@@ -204,8 +194,9 @@ i915_l3_write(struct file *filp, struct kobject *kobj,
+@@ -204,8 +194,9 @@ i915_l3_write(struct file *filp, struct
memcpy(dev_priv->l3_parity.remap_info[slice] + (offset/4), buf, count);
@@ -220,6 +212,3 @@ index b07bdfb8892d..deb8787308d6 100644
mutex_unlock(&drm_dev->struct_mutex);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0893-drm-i915-Pull-intel_init_power_well-out-of-intel_mod.patch b/patches.baytrail/0893-drm-i915-Pull-intel_init_power_well-out-of-intel_mod.patch
index 64c9dc7b678735..9671c589991f0b 100644
--- a/patches.baytrail/0893-drm-i915-Pull-intel_init_power_well-out-of-intel_mod.patch
+++ b/patches.baytrail/0893-drm-i915-Pull-intel_init_power_well-out-of-intel_mod.patch
@@ -16,16 +16,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit d6317290bfd8673d1cf3b6f8a12c72b3297eac36)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 ++
- drivers/gpu/drm/i915/i915_drv.c | 2 ++
- drivers/gpu/drm/i915/intel_display.c | 2 --
+ drivers/gpu/drm/i915/i915_dma.c | 2 ++
+ drivers/gpu/drm/i915/i915_drv.c | 2 ++
+ drivers/gpu/drm/i915/intel_display.c | 2 --
3 files changed, 4 insertions(+), 2 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index be5120f702cc..553586eae991 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1324,6 +1324,8 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1332,6 +1332,8 @@ static int i915_load_modeset_init(struct
INIT_WORK(&dev_priv->console_resume_work, intel_console_resume);
@@ -34,11 +32,9 @@ index be5120f702cc..553586eae991 100644
intel_modeset_gem_init(dev);
/* Always safe in the mode setting case. */
-diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 75e7550064f4..6f385e1e9ed6 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
-@@ -605,6 +605,8 @@ static int __i915_drm_thaw(struct drm_device *dev, bool restore_gtt_mappings)
+@@ -605,6 +605,8 @@ static int __i915_drm_thaw(struct drm_de
/* We need working interrupts for modeset enabling ... */
drm_irq_install(dev);
@@ -47,11 +43,9 @@ index 75e7550064f4..6f385e1e9ed6 100644
intel_modeset_init_hw(dev);
drm_modeset_lock_all(dev);
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 5d0b03fbdac7..951e4b5f7e77 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10279,8 +10279,6 @@ void i915_disable_vga_mem(struct drm_device *dev)
+@@ -10279,8 +10279,6 @@ void i915_disable_vga_mem(struct drm_dev
void intel_modeset_init_hw(struct drm_device *dev)
{
@@ -60,6 +54,3 @@ index 5d0b03fbdac7..951e4b5f7e77 100644
intel_prepare_ddi(dev);
intel_init_clock_gating(dev);
---
-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 bb14d65540262b..39458c99f28f01 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
@@ -14,29 +14,27 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b14c5679dd2c87b5bd14c49c5bdd1962be2ab209)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
- drivers/gpu/drm/i915/i915_dma.c | 6 +++---
- drivers/gpu/drm/i915/i915_gem.c | 2 +-
- drivers/gpu/drm/i915/intel_crt.c | 2 +-
- drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
- drivers/gpu/drm/i915/intel_display.c | 2 +-
- drivers/gpu/drm/i915/intel_dp.c | 4 ++--
- drivers/gpu/drm/i915/intel_dvo.c | 4 ++--
- drivers/gpu/drm/i915/intel_fb.c | 2 +-
- drivers/gpu/drm/i915/intel_hdmi.c | 4 ++--
- drivers/gpu/drm/i915/intel_lvds.c | 4 ++--
- drivers/gpu/drm/i915/intel_overlay.c | 4 ++--
- drivers/gpu/drm/i915/intel_pm.c | 2 +-
- drivers/gpu/drm/i915/intel_sdvo.c | 10 +++++-----
- drivers/gpu/drm/i915/intel_sprite.c | 2 +-
- drivers/gpu/drm/i915/intel_tv.c | 4 ++--
+ drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 6 +++---
+ drivers/gpu/drm/i915/i915_gem.c | 2 +-
+ drivers/gpu/drm/i915/intel_crt.c | 2 +-
+ drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
+ drivers/gpu/drm/i915/intel_display.c | 2 +-
+ drivers/gpu/drm/i915/intel_dp.c | 4 ++--
+ drivers/gpu/drm/i915/intel_dvo.c | 4 ++--
+ drivers/gpu/drm/i915/intel_fb.c | 2 +-
+ drivers/gpu/drm/i915/intel_hdmi.c | 4 ++--
+ drivers/gpu/drm/i915/intel_lvds.c | 4 ++--
+ drivers/gpu/drm/i915/intel_overlay.c | 4 ++--
+ drivers/gpu/drm/i915/intel_pm.c | 2 +-
+ drivers/gpu/drm/i915/intel_sdvo.c | 10 +++++-----
+ drivers/gpu/drm/i915/intel_sprite.c | 2 +-
+ drivers/gpu/drm/i915/intel_tv.c | 4 ++--
16 files changed, 30 insertions(+), 30 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 80bed69fe5b7..09c93d7989f1 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -2156,7 +2156,7 @@ drm_add_fake_info_node(struct drm_minor *minor,
+@@ -2156,7 +2156,7 @@ drm_add_fake_info_node(struct drm_minor
{
struct drm_info_node *node;
@@ -45,11 +43,9 @@ index 80bed69fe5b7..09c93d7989f1 100644
if (node == NULL) {
debugfs_remove(ent);
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 553586eae991..b387c6b2af75 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -641,7 +641,7 @@ static int i915_batchbuffer(struct drm_device *dev, void *data,
+@@ -649,7 +649,7 @@ static int i915_batchbuffer(struct drm_d
if (batch->num_cliprects) {
cliprects = kcalloc(batch->num_cliprects,
@@ -58,7 +54,7 @@ index 553586eae991..b387c6b2af75 100644
GFP_KERNEL);
if (cliprects == NULL)
return -ENOMEM;
-@@ -703,7 +703,7 @@ static int i915_cmdbuffer(struct drm_device *dev, void *data,
+@@ -711,7 +711,7 @@ static int i915_cmdbuffer(struct drm_dev
if (cmdbuf->num_cliprects) {
cliprects = kcalloc(cmdbuf->num_cliprects,
@@ -67,7 +63,7 @@ index 553586eae991..b387c6b2af75 100644
if (cliprects == NULL) {
ret = -ENOMEM;
goto fail_batch_free;
-@@ -1480,7 +1480,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1488,7 +1488,7 @@ int i915_driver_load(struct drm_device *
dev->types[8] = _DRM_STAT_SECONDARY;
dev->types[9] = _DRM_STAT_DMA;
@@ -76,11 +72,9 @@ index 553586eae991..b387c6b2af75 100644
if (dev_priv == NULL)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index c12f44abb69a..08bff16a0b72 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -4630,7 +4630,7 @@ static int i915_gem_init_phys_object(struct drm_device *dev,
+@@ -4630,7 +4630,7 @@ static int i915_gem_init_phys_object(str
if (dev_priv->mm.phys_objs[id - 1] || !size)
return 0;
@@ -89,11 +83,9 @@ index c12f44abb69a..08bff16a0b72 100644
if (!phys_obj)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index 6f101d5620e4..f9a5f3d1f0cd 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
-@@ -764,7 +764,7 @@ void intel_crt_init(struct drm_device *dev)
+@@ -764,7 +764,7 @@ void intel_crt_init(struct drm_device *d
if (!crt)
return;
@@ -102,11 +94,9 @@ index 6f101d5620e4..f9a5f3d1f0cd 100644
if (!intel_connector) {
kfree(crt);
return;
-diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
-index 04f68804834d..351e21a0be07 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
-@@ -1337,11 +1337,11 @@ void intel_ddi_init(struct drm_device *dev, enum port port)
+@@ -1337,11 +1337,11 @@ void intel_ddi_init(struct drm_device *d
struct intel_connector *hdmi_connector = NULL;
struct intel_connector *dp_connector = NULL;
@@ -120,7 +110,7 @@ index 04f68804834d..351e21a0be07 100644
if (!dp_connector) {
kfree(intel_dig_port);
return;
-@@ -1381,7 +1381,7 @@ void intel_ddi_init(struct drm_device *dev, enum port port)
+@@ -1381,7 +1381,7 @@ void intel_ddi_init(struct drm_device *d
}
if (intel_encoder->type != INTEL_OUTPUT_EDP) {
@@ -129,11 +119,9 @@ index 04f68804834d..351e21a0be07 100644
GFP_KERNEL);
if (!hdmi_connector) {
return;
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 12595a514074..f0b18c342dee 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -8097,7 +8097,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
+@@ -8097,7 +8097,7 @@ static int intel_crtc_page_flip(struct d
fb->pitches[0] != crtc->fb->pitches[0]))
return -EINVAL;
@@ -142,11 +130,9 @@ index 12595a514074..f0b18c342dee 100644
if (work == NULL)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 605908df95d8..2f3d67f12a88 100644
--- 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, int output_reg, enum port port)
+@@ -3633,11 +3633,11 @@ intel_dp_init(struct drm_device *dev, in
struct drm_encoder *encoder;
struct intel_connector *intel_connector;
@@ -160,11 +146,9 @@ index 605908df95d8..2f3d67f12a88 100644
if (!intel_connector) {
kfree(intel_dig_port);
return;
-diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
-index ff86c366218c..6305433797ac 100644
--- a/drivers/gpu/drm/i915/intel_dvo.c
+++ b/drivers/gpu/drm/i915/intel_dvo.c
-@@ -448,11 +448,11 @@ void intel_dvo_init(struct drm_device *dev)
+@@ -448,11 +448,11 @@ void intel_dvo_init(struct drm_device *d
int i;
int encoder_type = DRM_MODE_ENCODER_NONE;
@@ -178,11 +162,9 @@ index ff86c366218c..6305433797ac 100644
if (!intel_connector) {
kfree(intel_dvo);
return;
-diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fb.c
-index bc2100007b21..6aa66aaceaef 100644
--- a/drivers/gpu/drm/i915/intel_fb.c
+++ b/drivers/gpu/drm/i915/intel_fb.c
-@@ -216,7 +216,7 @@ int intel_fbdev_init(struct drm_device *dev)
+@@ -216,7 +216,7 @@ int intel_fbdev_init(struct drm_device *
struct drm_i915_private *dev_priv = dev->dev_private;
int ret;
@@ -191,11 +173,9 @@ index bc2100007b21..6aa66aaceaef 100644
if (!ifbdev)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index 79582f912414..a6310ca444cf 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -1292,11 +1292,11 @@ void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port)
+@@ -1292,11 +1292,11 @@ void intel_hdmi_init(struct drm_device *
struct intel_encoder *intel_encoder;
struct intel_connector *intel_connector;
@@ -209,11 +189,9 @@ index 79582f912414..a6310ca444cf 100644
if (!intel_connector) {
kfree(intel_dig_port);
return;
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index 1ba9998add08..87d5a769b3ae 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -964,11 +964,11 @@ void intel_lvds_init(struct drm_device *dev)
+@@ -964,11 +964,11 @@ void intel_lvds_init(struct drm_device *
}
}
@@ -227,11 +205,9 @@ index 1ba9998add08..87d5a769b3ae 100644
if (!lvds_connector) {
kfree(lvds_encoder);
return;
-diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 8d6d0a1bf5bf..a98a990fbab3 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
-@@ -1053,7 +1053,7 @@ int intel_overlay_put_image(struct drm_device *dev, void *data,
+@@ -1053,7 +1053,7 @@ int intel_overlay_put_image(struct drm_d
return ret;
}
@@ -240,7 +216,7 @@ index 8d6d0a1bf5bf..a98a990fbab3 100644
if (!params)
return -ENOMEM;
-@@ -1320,7 +1320,7 @@ void intel_setup_overlay(struct drm_device *dev)
+@@ -1320,7 +1320,7 @@ void intel_setup_overlay(struct drm_devi
if (!HAS_OVERLAY(dev))
return;
@@ -249,11 +225,9 @@ index 8d6d0a1bf5bf..a98a990fbab3 100644
if (!overlay)
return;
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 4692f8cb7724..d27eda661548 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -370,7 +370,7 @@ static void intel_enable_fbc(struct drm_crtc *crtc, unsigned long interval)
+@@ -370,7 +370,7 @@ static void intel_enable_fbc(struct drm_
intel_cancel_fbc_work(dev_priv);
@@ -262,11 +236,9 @@ index 4692f8cb7724..d27eda661548 100644
if (work == NULL) {
DRM_ERROR("Failed to allocate FBC work structure\n");
dev_priv->display.enable_fbc(crtc, interval);
-diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index 91aea9e1ab6f..d8040e8a68b5 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
-@@ -2397,7 +2397,7 @@ intel_sdvo_dvi_init(struct intel_sdvo *intel_sdvo, int device)
+@@ -2397,7 +2397,7 @@ intel_sdvo_dvi_init(struct intel_sdvo *i
struct intel_connector *intel_connector;
struct intel_sdvo_connector *intel_sdvo_connector;
@@ -275,7 +247,7 @@ index 91aea9e1ab6f..d8040e8a68b5 100644
if (!intel_sdvo_connector)
return false;
-@@ -2445,7 +2445,7 @@ intel_sdvo_tv_init(struct intel_sdvo *intel_sdvo, int type)
+@@ -2445,7 +2445,7 @@ intel_sdvo_tv_init(struct intel_sdvo *in
struct intel_connector *intel_connector;
struct intel_sdvo_connector *intel_sdvo_connector;
@@ -284,7 +256,7 @@ index 91aea9e1ab6f..d8040e8a68b5 100644
if (!intel_sdvo_connector)
return false;
-@@ -2482,7 +2482,7 @@ intel_sdvo_analog_init(struct intel_sdvo *intel_sdvo, int device)
+@@ -2482,7 +2482,7 @@ intel_sdvo_analog_init(struct intel_sdvo
struct intel_connector *intel_connector;
struct intel_sdvo_connector *intel_sdvo_connector;
@@ -293,7 +265,7 @@ index 91aea9e1ab6f..d8040e8a68b5 100644
if (!intel_sdvo_connector)
return false;
-@@ -2513,7 +2513,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
+@@ -2513,7 +2513,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *
struct intel_connector *intel_connector;
struct intel_sdvo_connector *intel_sdvo_connector;
@@ -302,7 +274,7 @@ index 91aea9e1ab6f..d8040e8a68b5 100644
if (!intel_sdvo_connector)
return false;
-@@ -2879,7 +2879,7 @@ bool intel_sdvo_init(struct drm_device *dev, uint32_t sdvo_reg, bool is_sdvob)
+@@ -2879,7 +2879,7 @@ bool intel_sdvo_init(struct drm_device *
struct intel_encoder *intel_encoder;
struct intel_sdvo *intel_sdvo;
int i;
@@ -311,11 +283,9 @@ index 91aea9e1ab6f..d8040e8a68b5 100644
if (!intel_sdvo)
return false;
-diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
-index 231b289e8e57..cae10bc746d0 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
-@@ -1034,7 +1034,7 @@ intel_plane_init(struct drm_device *dev, enum pipe pipe, int plane)
+@@ -1034,7 +1034,7 @@ intel_plane_init(struct drm_device *dev,
if (INTEL_INFO(dev)->gen < 5)
return -ENODEV;
@@ -324,8 +294,6 @@ index 231b289e8e57..cae10bc746d0 100644
if (!intel_plane)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index dd6f84bf6c22..e6e93ce34f7b 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
@@ -1590,12 +1590,12 @@ intel_tv_init(struct drm_device *dev)
@@ -343,6 +311,3 @@ index dd6f84bf6c22..e6e93ce34f7b 100644
if (!intel_connector) {
kfree(intel_tv);
return;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0911-drm-i915-Fix-unclaimed-register-access-due-to-delaye.patch b/patches.baytrail/0911-drm-i915-Fix-unclaimed-register-access-due-to-delaye.patch
index b57afdbfbd9446..0446bafa745732 100644
--- a/patches.baytrail/0911-drm-i915-Fix-unclaimed-register-access-due-to-delaye.patch
+++ b/patches.baytrail/0911-drm-i915-Fix-unclaimed-register-access-due-to-delaye.patch
@@ -51,14 +51,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit ce352550327b394f3072a07c9cd9d27af9276f15)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 8 +++++++-
+ drivers/gpu/drm/i915/i915_dma.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index b387c6b2af75..954ea301047d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1326,13 +1326,18 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1334,13 +1334,18 @@ static int i915_load_modeset_init(struct
intel_init_power_well(dev);
@@ -78,7 +76,7 @@ index b387c6b2af75..954ea301047d 100644
ret = intel_fbdev_init(dev);
if (ret)
-@@ -1358,6 +1363,7 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1366,6 +1371,7 @@ static int i915_load_modeset_init(struct
* vgacon_save_screen() works during the handover.
*/
i915_disable_vga_mem(dev);
@@ -86,6 +84,3 @@ index b387c6b2af75..954ea301047d 100644
/* Only enable hotplug handling once the fbdev is fully set up. */
dev_priv->enable_hotplug_processing = true;
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0913-drm-i915-Move-power-well-init-earlier-during-driver-.patch b/patches.baytrail/0913-drm-i915-Move-power-well-init-earlier-during-driver-.patch
index a49ba837d527fe..69ce8a847e9e2d 100644
--- a/patches.baytrail/0913-drm-i915-Move-power-well-init-earlier-during-driver-.patch
+++ b/patches.baytrail/0913-drm-i915-Move-power-well-init-earlier-during-driver-.patch
@@ -16,14 +16,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit a14853206517b0c8102accbc77401805a0dbdb9e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 15 ++++++++-------
+ drivers/gpu/drm/i915/i915_dma.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 954ea301047d..b435414f85a4 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1314,21 +1314,21 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1322,21 +1322,21 @@ static int i915_load_modeset_init(struct
if (ret)
goto cleanup_gem_stolen;
@@ -51,7 +49,7 @@ index 954ea301047d..b435414f85a4 100644
intel_modeset_gem_init(dev);
/* Always safe in the mode setting case. */
-@@ -1379,7 +1379,8 @@ cleanup_gem:
+@@ -1387,7 +1387,8 @@ cleanup_gem:
mutex_unlock(&dev->struct_mutex);
i915_gem_cleanup_aliasing_ppgtt(dev);
drm_mm_takedown(&dev_priv->gtt.base.mm);
@@ -61,6 +59,3 @@ index 954ea301047d..b435414f85a4 100644
drm_irq_uninstall(dev);
cleanup_gem_stolen:
i915_gem_cleanup_stolen(dev);
---
-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 1ac8639832008a..e32d47575ca02d 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
@@ -33,16 +33,14 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit aec347ab197ec064d1e98b52717d968521a62929)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 6 ++++--
- drivers/gpu/drm/i915/i915_drv.h | 3 +++
- drivers/gpu/drm/i915/intel_uncore.c | 33 +++++++++++++++++++++++++++++++--
+ drivers/gpu/drm/i915/i915_dma.c | 6 ++++--
+ drivers/gpu/drm/i915/i915_drv.h | 3 +++
+ drivers/gpu/drm/i915/intel_uncore.c | 33 +++++++++++++++++++++++++++++++--
3 files changed, 38 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index b435414f85a4..1ef50e154f7c 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1792,8 +1792,6 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1800,8 +1800,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);
@@ -51,7 +49,7 @@ index b435414f85a4..1ef50e154f7c 100644
intel_teardown_gmbus(dev);
intel_teardown_mchbar(dev);
-@@ -1803,6 +1801,10 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1811,6 +1809,10 @@ int i915_driver_unload(struct drm_device
dev_priv->gtt.base.cleanup(&dev_priv->gtt.base);
@@ -62,8 +60,6 @@ index b435414f85a4..1ef50e154f7c 100644
if (dev_priv->slab)
kmem_cache_destroy(dev_priv->slab);
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index bbe889dfc0ff..662c0ff0b049 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -408,6 +408,8 @@ struct intel_uncore {
@@ -75,7 +71,7 @@ index bbe889dfc0ff..662c0ff0b049 100644
};
#define DEV_INFO_FOR_EACH_FLAG(func, sep) \
-@@ -1801,6 +1803,7 @@ extern void intel_uncore_early_sanitize(struct drm_device *dev);
+@@ -1801,6 +1803,7 @@ extern void intel_uncore_early_sanitize(
extern void intel_uncore_init(struct drm_device *dev);
extern void intel_uncore_clear_errors(struct drm_device *dev);
extern void intel_uncore_check_errors(struct drm_device *dev);
@@ -83,11 +79,9 @@ index bbe889dfc0ff..662c0ff0b049 100644
void
i915_enable_pipestat(drm_i915_private_t *dev_priv, int pipe, u32 mask);
-diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
-index 8649f1c36b00..f2753d9fb098 100644
--- a/drivers/gpu/drm/i915/intel_uncore.c
+++ b/drivers/gpu/drm/i915/intel_uncore.c
-@@ -204,6 +204,18 @@ static void vlv_force_wake_put(struct drm_i915_private *dev_priv)
+@@ -204,6 +204,18 @@ static void vlv_force_wake_put(struct dr
gen6_gt_check_fifodbg(dev_priv);
}
@@ -106,7 +100,7 @@ index 8649f1c36b00..f2753d9fb098 100644
void intel_uncore_early_sanitize(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -216,6 +228,9 @@ void intel_uncore_init(struct drm_device *dev)
+@@ -216,6 +228,9 @@ void intel_uncore_init(struct drm_device
{
struct drm_i915_private *dev_priv = dev->dev_private;
@@ -116,7 +110,7 @@ index 8649f1c36b00..f2753d9fb098 100644
if (IS_VALLEYVIEW(dev)) {
dev_priv->uncore.funcs.force_wake_get = vlv_force_wake_get;
dev_priv->uncore.funcs.force_wake_put = vlv_force_wake_put;
-@@ -261,6 +276,16 @@ void intel_uncore_init(struct drm_device *dev)
+@@ -261,6 +276,16 @@ void intel_uncore_init(struct drm_device
}
}
@@ -133,7 +127,7 @@ index 8649f1c36b00..f2753d9fb098 100644
static void intel_uncore_forcewake_reset(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -306,8 +331,12 @@ void gen6_gt_force_wake_put(struct drm_i915_private *dev_priv)
+@@ -306,8 +331,12 @@ void gen6_gt_force_wake_put(struct drm_i
unsigned long irqflags;
spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);
@@ -148,6 +142,3 @@ index 8649f1c36b00..f2753d9fb098 100644
spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
}
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0934-drm-i915-Convert-active-API-to-VMA.patch b/patches.baytrail/0934-drm-i915-Convert-active-API-to-VMA.patch
index 6fadc80876364c..52d05db5aef836 100644
--- a/patches.baytrail/0934-drm-i915-Convert-active-API-to-VMA.patch
+++ b/patches.baytrail/0934-drm-i915-Convert-active-API-to-VMA.patch
@@ -20,17 +20,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e2d05a8b1e4a7f6feae89a59543b1edbece1bda3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_drv.h | 5 ++---
- drivers/gpu/drm/i915/i915_gem.c | 9 ++++++++-
- drivers/gpu/drm/i915/i915_gem_context.c | 5 +----
- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 3 +--
+ drivers/gpu/drm/i915/i915_drv.h | 5 ++---
+ drivers/gpu/drm/i915/i915_gem.c | 9 ++++++++-
+ drivers/gpu/drm/i915/i915_gem_context.c | 5 +----
+ drivers/gpu/drm/i915/i915_gem_execbuffer.c | 3 +--
4 files changed, 12 insertions(+), 10 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index a3d43b25e1d9..7ccb0cd35474 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1905,9 +1905,8 @@ static inline void i915_gem_object_unpin_pages(struct drm_i915_gem_object *obj)
+@@ -1905,9 +1905,8 @@ static inline void i915_gem_object_unpin
int __must_check i915_mutex_lock_interruptible(struct drm_device *dev);
int i915_gem_object_sync(struct drm_i915_gem_object *obj,
struct intel_ring_buffer *to);
@@ -42,11 +40,9 @@ index a3d43b25e1d9..7ccb0cd35474 100644
int i915_gem_dumb_create(struct drm_file *file_priv,
struct drm_device *dev,
struct drm_mode_create_dumb *args);
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 6b134f08c93e..f6c8b0ed056c 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -1910,7 +1910,7 @@ i915_gem_object_get_pages(struct drm_i915_gem_object *obj)
+@@ -1910,7 +1910,7 @@ i915_gem_object_get_pages(struct drm_i91
return 0;
}
@@ -55,7 +51,7 @@ index 6b134f08c93e..f6c8b0ed056c 100644
i915_gem_object_move_to_active(struct drm_i915_gem_object *obj,
struct intel_ring_buffer *ring)
{
-@@ -1949,6 +1949,13 @@ i915_gem_object_move_to_active(struct drm_i915_gem_object *obj,
+@@ -1949,6 +1949,13 @@ i915_gem_object_move_to_active(struct dr
}
}
@@ -69,11 +65,9 @@ index 6b134f08c93e..f6c8b0ed056c 100644
static void
i915_gem_object_move_to_inactive(struct drm_i915_gem_object *obj)
{
-diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
-index 9af3fe7e42b0..1a877a547290 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
-@@ -453,11 +453,8 @@ static int do_switch(struct i915_hw_context *to)
+@@ -451,11 +451,8 @@ static int do_switch(struct i915_hw_cont
* MI_SET_CONTEXT instead of when the next seqno has completed.
*/
if (from != NULL) {
@@ -86,11 +80,9 @@ index 9af3fe7e42b0..1a877a547290 100644
/* As long as MI_SET_CONTEXT is serializing, ie. it flushes the
* whole damn pipeline, we don't need to explicitly mark the
* object dirty. The only exception is that the context must be
-diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index da23cfe3902b..0ce0d47e4b0f 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -872,8 +872,7 @@ i915_gem_execbuffer_move_to_active(struct list_head *vmas,
+@@ -872,8 +872,7 @@ i915_gem_execbuffer_move_to_active(struc
obj->base.read_domains = obj->base.pending_read_domains;
obj->fenced_gpu_access = obj->pending_fenced_gpu_access;
@@ -100,6 +92,3 @@ index da23cfe3902b..0ce0d47e4b0f 100644
if (obj->base.write_domain) {
obj->dirty = 1;
obj->last_write_seqno = intel_ring_get_seqno(ring);
---
-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 9aa34e319d5b28..e3567398538fdc 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
@@ -36,22 +36,20 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit d9255d57147e1dbcebdf6670409c2fa0ac3609e6)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/intel_crt.c | 1 -
- drivers/gpu/drm/i915/intel_display.c | 5 +++++
- drivers/gpu/drm/i915/intel_dp.c | 1 -
- drivers/gpu/drm/i915/intel_dsi.c | 1 -
- drivers/gpu/drm/i915/intel_dvo.c | 1 -
- drivers/gpu/drm/i915/intel_hdmi.c | 1 -
- drivers/gpu/drm/i915/intel_lvds.c | 1 -
- drivers/gpu/drm/i915/intel_sdvo.c | 7 +++++--
- drivers/gpu/drm/i915/intel_tv.c | 1 -
+ drivers/gpu/drm/i915/intel_crt.c | 1 -
+ drivers/gpu/drm/i915/intel_display.c | 5 +++++
+ drivers/gpu/drm/i915/intel_dp.c | 1 -
+ drivers/gpu/drm/i915/intel_dsi.c | 1 -
+ drivers/gpu/drm/i915/intel_dvo.c | 1 -
+ drivers/gpu/drm/i915/intel_hdmi.c | 1 -
+ drivers/gpu/drm/i915/intel_lvds.c | 1 -
+ drivers/gpu/drm/i915/intel_sdvo.c | 7 +++++--
+ drivers/gpu/drm/i915/intel_tv.c | 1 -
9 files changed, 10 insertions(+), 9 deletions(-)
-diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index 0263629332d0..942b9acb0d8e 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
-@@ -677,7 +677,6 @@ intel_crt_detect(struct drm_connector *connector, bool force)
+@@ -677,7 +677,6 @@ intel_crt_detect(struct drm_connector *c
static void intel_crt_destroy(struct drm_connector *connector)
{
@@ -59,11 +57,9 @@ index 0263629332d0..942b9acb0d8e 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 925d69044878..c1a51399b9ec 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10727,6 +10727,7 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10729,6 +10729,7 @@ void intel_modeset_cleanup(struct drm_de
{
struct drm_i915_private *dev_priv = dev->dev_private;
struct drm_crtc *crtc;
@@ -71,7 +67,7 @@ index 925d69044878..c1a51399b9ec 100644
/*
* Interrupts and polling as the first thing to avoid creating havoc.
-@@ -10769,6 +10770,10 @@ void intel_modeset_cleanup(struct drm_device *dev)
+@@ -10771,6 +10772,10 @@ void intel_modeset_cleanup(struct drm_de
/* destroy backlight, if any, before the connectors */
intel_panel_destroy_backlight(dev);
@@ -82,11 +78,9 @@ index 925d69044878..c1a51399b9ec 100644
drm_mode_config_cleanup(dev);
intel_cleanup_overlay(dev);
-diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index d1ba44294f3a..8dff9b1c919e 100644
--- 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_connector *connector)
+@@ -3197,7 +3197,6 @@ intel_dp_connector_destroy(struct drm_co
if (connector->connector_type == DRM_MODE_CONNECTOR_eDP)
intel_panel_fini(&intel_connector->panel);
@@ -94,11 +88,9 @@ index d1ba44294f3a..8dff9b1c919e 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c
-index 674fd4989b45..9a2fdd2a7e34 100644
--- a/drivers/gpu/drm/i915/intel_dsi.c
+++ b/drivers/gpu/drm/i915/intel_dsi.c
-@@ -504,7 +504,6 @@ static void intel_dsi_destroy(struct drm_connector *connector)
+@@ -504,7 +504,6 @@ static void intel_dsi_destroy(struct drm
DRM_DEBUG_KMS("\n");
intel_panel_fini(&intel_connector->panel);
@@ -106,11 +98,9 @@ index 674fd4989b45..9a2fdd2a7e34 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
-index 91287d1d3059..1b64145c669a 100644
--- a/drivers/gpu/drm/i915/intel_dvo.c
+++ b/drivers/gpu/drm/i915/intel_dvo.c
-@@ -367,7 +367,6 @@ static int intel_dvo_get_modes(struct drm_connector *connector)
+@@ -367,7 +367,6 @@ static int intel_dvo_get_modes(struct dr
static void intel_dvo_destroy(struct drm_connector *connector)
{
@@ -118,11 +108,9 @@ index 91287d1d3059..1b64145c669a 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index 6004f9c549aa..4f4d346db8f0 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -1181,7 +1181,6 @@ static void intel_hdmi_post_disable(struct intel_encoder *encoder)
+@@ -1181,7 +1181,6 @@ static void intel_hdmi_post_disable(stru
static void intel_hdmi_destroy(struct drm_connector *connector)
{
@@ -130,11 +118,9 @@ index 6004f9c549aa..4f4d346db8f0 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index 4986aff3827d..b0ef55833087 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
-@@ -474,7 +474,6 @@ static void intel_lvds_destroy(struct drm_connector *connector)
+@@ -474,7 +474,6 @@ static void intel_lvds_destroy(struct dr
intel_panel_fini(&lvds_connector->base.panel);
@@ -142,11 +128,9 @@ index 4986aff3827d..b0ef55833087 100644
drm_connector_cleanup(connector);
kfree(connector);
}
-diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index 5e59d64cfd95..a583e8f718a7 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
-@@ -2009,7 +2009,6 @@ static void intel_sdvo_destroy(struct drm_connector *connector)
+@@ -2009,7 +2009,6 @@ static void intel_sdvo_destroy(struct dr
intel_sdvo_connector->tv_format);
intel_sdvo_destroy_enhance_property(connector);
@@ -154,7 +138,7 @@ index 5e59d64cfd95..a583e8f718a7 100644
drm_connector_cleanup(connector);
kfree(intel_sdvo_connector);
}
-@@ -2482,6 +2481,7 @@ intel_sdvo_tv_init(struct intel_sdvo *intel_sdvo, int type)
+@@ -2482,6 +2481,7 @@ intel_sdvo_tv_init(struct intel_sdvo *in
return true;
err:
@@ -162,7 +146,7 @@ index 5e59d64cfd95..a583e8f718a7 100644
intel_sdvo_destroy(connector);
return false;
}
-@@ -2553,6 +2553,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
+@@ -2553,6 +2553,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *
return true;
err:
@@ -170,7 +154,7 @@ index 5e59d64cfd95..a583e8f718a7 100644
intel_sdvo_destroy(connector);
return false;
}
-@@ -2624,8 +2625,10 @@ static void intel_sdvo_output_cleanup(struct intel_sdvo *intel_sdvo)
+@@ -2624,8 +2625,10 @@ static void intel_sdvo_output_cleanup(st
list_for_each_entry_safe(connector, tmp,
&dev->mode_config.connector_list, head) {
@@ -182,11 +166,9 @@ index 5e59d64cfd95..a583e8f718a7 100644
}
}
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index 75925a1ab351..92895f92a738 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
-@@ -1433,7 +1433,6 @@ intel_tv_get_modes(struct drm_connector *connector)
+@@ -1433,7 +1433,6 @@ intel_tv_get_modes(struct drm_connector
static void
intel_tv_destroy(struct drm_connector *connector)
{
@@ -194,6 +176,3 @@ index 75925a1ab351..92895f92a738 100644
drm_connector_cleanup(connector);
kfree(connector);
}
---
-1.8.5.rc3
-
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 4995676cc22e22..f121012b57e3e7 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
@@ -13,14 +13,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit cbb47d179fb345c579cd8cd884693903fceed26a)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 19 +++++++++++++++----
+ drivers/gpu/drm/i915/i915_dma.c | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 1ef50e154f7c..901fda3e4dfd 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1561,7 +1561,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1569,7 +1569,7 @@ int i915_driver_load(struct drm_device *
ret = i915_gem_gtt_init(dev);
if (ret)
@@ -29,7 +27,7 @@ index 1ef50e154f7c..901fda3e4dfd 100644
if (drm_core_check_feature(dev, DRIVER_MODESET))
i915_kick_out_firmware_fb(dev_priv);
-@@ -1590,7 +1590,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1598,7 +1598,7 @@ int i915_driver_load(struct drm_device *
aperture_size);
if (dev_priv->gtt.mappable == NULL) {
ret = -EIO;
@@ -38,7 +36,7 @@ index 1ef50e154f7c..901fda3e4dfd 100644
}
dev_priv->gtt.mtrr = arch_phys_wc_add(dev_priv->gtt.mappable_base,
-@@ -1664,7 +1664,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1672,7 +1672,7 @@ int i915_driver_load(struct drm_device *
ret = i915_load_modeset_init(dev);
if (ret < 0) {
DRM_ERROR("failed to init modeset\n");
@@ -47,7 +45,7 @@ index 1ef50e154f7c..901fda3e4dfd 100644
}
} else {
/* Start out suspended in ums mode. */
-@@ -1684,6 +1684,10 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1692,6 +1692,10 @@ int i915_driver_load(struct drm_device *
return 0;
@@ -58,7 +56,7 @@ index 1ef50e154f7c..901fda3e4dfd 100644
out_gem_unload:
if (dev_priv->mm.inactive_shrinker.shrink)
unregister_shrinker(&dev_priv->mm.inactive_shrinker);
-@@ -1697,12 +1701,17 @@ out_gem_unload:
+@@ -1705,12 +1709,17 @@ out_gem_unload:
out_mtrrfree:
arch_phys_wc_del(dev_priv->gtt.mtrr);
io_mapping_free(dev_priv->gtt.mappable);
@@ -77,7 +75,7 @@ index 1ef50e154f7c..901fda3e4dfd 100644
kfree(dev_priv);
return ret;
}
-@@ -1793,6 +1802,8 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1801,6 +1810,8 @@ int i915_driver_unload(struct drm_device
WARN_ON(!list_empty(&dev_priv->vm_list));
drm_mm_takedown(&dev_priv->gtt.base.mm);
@@ -86,6 +84,3 @@ index 1ef50e154f7c..901fda3e4dfd 100644
intel_teardown_gmbus(dev);
intel_teardown_mchbar(dev);
---
-1.8.5.rc3
-
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 7136980e449dc0..9af81bf16d9e39 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
@@ -72,25 +72,24 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit b29c19b645287f7062e17d70fa4e9781a01a5d88)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 16 ++---
- drivers/gpu/drm/i915/i915_drv.h | 19 +++--
- drivers/gpu/drm/i915/i915_gem.c | 135 ++++++++++++++++++++++++-----------
- drivers/gpu/drm/i915/i915_irq.c | 11 ---
- drivers/gpu/drm/i915/intel_display.c | 3 +
- drivers/gpu/drm/i915/intel_drv.h | 3 +
- drivers/gpu/drm/i915/intel_pm.c | 42 ++++++-----
+ drivers/gpu/drm/i915/i915_dma.c | 16 +---
+ drivers/gpu/drm/i915/i915_drv.h | 19 +++-
+ drivers/gpu/drm/i915/i915_gem.c | 135 ++++++++++++++++++++++++-----------
+ drivers/gpu/drm/i915/i915_irq.c | 11 --
+ drivers/gpu/drm/i915/intel_display.c | 3
+ drivers/gpu/drm/i915/intel_drv.h | 3
+ drivers/gpu/drm/i915/intel_pm.c | 42 +++++-----
7 files changed, 138 insertions(+), 91 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 901fda3e4dfd..513a4feb3137 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1827,19 +1827,11 @@ int i915_driver_unload(struct drm_device *dev)
+@@ -1835,19 +1835,11 @@ int i915_driver_unload(struct drm_device
int i915_driver_open(struct drm_device *dev, struct drm_file *file)
{
- struct drm_i915_file_private *file_priv;
--
++ int ret;
+
- DRM_DEBUG_DRIVER("\n");
- file_priv = kzalloc(sizeof(*file_priv), GFP_KERNEL);
- if (!file_priv)
@@ -100,8 +99,7 @@ index 901fda3e4dfd..513a4feb3137 100644
-
- spin_lock_init(&file_priv->mm.lock);
- INIT_LIST_HEAD(&file_priv->mm.request_list);
-+ int ret;
-
+-
- idr_init(&file_priv->context_idr);
+ ret = i915_gem_open(dev, file);
+ if (ret)
@@ -109,8 +107,6 @@ index 901fda3e4dfd..513a4feb3137 100644
return 0;
}
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 79bbcf925e4a..d1c6b92edae0 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -844,9 +844,6 @@ struct intel_gen6_power_mgmt {
@@ -157,7 +153,7 @@ index 79bbcf925e4a..d1c6b92edae0 100644
};
#define INTEL_INFO(dev) (to_i915(dev)->info)
-@@ -1953,7 +1963,7 @@ i915_gem_object_unpin_fence(struct drm_i915_gem_object *obj)
+@@ -1953,7 +1963,7 @@ i915_gem_object_unpin_fence(struct drm_i
}
}
@@ -166,7 +162,7 @@ index 79bbcf925e4a..d1c6b92edae0 100644
void i915_gem_retire_requests_ring(struct intel_ring_buffer *ring);
int __must_check i915_gem_check_wedge(struct i915_gpu_error *error,
bool interruptible);
-@@ -2004,6 +2014,7 @@ int i915_gem_attach_phys_object(struct drm_device *dev,
+@@ -2004,6 +2014,7 @@ int i915_gem_attach_phys_object(struct d
void i915_gem_detach_phys_object(struct drm_device *dev,
struct drm_i915_gem_object *obj);
void i915_gem_free_all_phys_object(struct drm_device *dev);
@@ -174,11 +170,9 @@ index 79bbcf925e4a..d1c6b92edae0 100644
void i915_gem_release(struct drm_device *dev, struct drm_file *file);
uint32_t
-diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 6ee80f4e80ce..052280840f99 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -980,6 +980,14 @@ static bool missed_irq(struct drm_i915_private *dev_priv,
+@@ -980,6 +980,14 @@ static bool missed_irq(struct drm_i915_p
return test_bit(ring->id, &dev_priv->gpu_error.missed_irq_rings);
}
@@ -193,7 +187,7 @@ index 6ee80f4e80ce..052280840f99 100644
/**
* __wait_seqno - wait until execution of seqno has finished
* @ring: the ring expected to report seqno
-@@ -1000,7 +1008,9 @@ static bool missed_irq(struct drm_i915_private *dev_priv,
+@@ -1000,7 +1008,9 @@ static bool missed_irq(struct drm_i915_p
*/
static int __wait_seqno(struct intel_ring_buffer *ring, u32 seqno,
unsigned reset_counter,
@@ -204,7 +198,7 @@ index 6ee80f4e80ce..052280840f99 100644
{
drm_i915_private_t *dev_priv = ring->dev->dev_private;
struct timespec before, now;
-@@ -1015,6 +1025,14 @@ static int __wait_seqno(struct intel_ring_buffer *ring, u32 seqno,
+@@ -1015,6 +1025,14 @@ static int __wait_seqno(struct intel_rin
timeout_jiffies = timeout ? timespec_to_jiffies_timeout(timeout) : 1;
@@ -219,7 +213,7 @@ index 6ee80f4e80ce..052280840f99 100644
if (!(dev_priv->gpu_error.test_irq_rings & intel_ring_flag(ring)) &&
WARN_ON(!ring->irq_get(ring)))
return -ENODEV;
-@@ -1114,7 +1132,7 @@ i915_wait_seqno(struct intel_ring_buffer *ring, uint32_t seqno)
+@@ -1114,7 +1132,7 @@ i915_wait_seqno(struct intel_ring_buffer
return __wait_seqno(ring, seqno,
atomic_read(&dev_priv->gpu_error.reset_counter),
@@ -228,7 +222,7 @@ index 6ee80f4e80ce..052280840f99 100644
}
static int
-@@ -1164,6 +1182,7 @@ i915_gem_object_wait_rendering(struct drm_i915_gem_object *obj,
+@@ -1164,6 +1182,7 @@ i915_gem_object_wait_rendering(struct dr
*/
static __must_check int
i915_gem_object_wait_rendering__nonblocking(struct drm_i915_gem_object *obj,
@@ -236,7 +230,7 @@ index 6ee80f4e80ce..052280840f99 100644
bool readonly)
{
struct drm_device *dev = obj->base.dev;
-@@ -1190,7 +1209,7 @@ i915_gem_object_wait_rendering__nonblocking(struct drm_i915_gem_object *obj,
+@@ -1190,7 +1209,7 @@ i915_gem_object_wait_rendering__nonblock
reset_counter = atomic_read(&dev_priv->gpu_error.reset_counter);
mutex_unlock(&dev->struct_mutex);
@@ -245,7 +239,7 @@ index 6ee80f4e80ce..052280840f99 100644
mutex_lock(&dev->struct_mutex);
if (ret)
return ret;
-@@ -1239,7 +1258,7 @@ i915_gem_set_domain_ioctl(struct drm_device *dev, void *data,
+@@ -1239,7 +1258,7 @@ i915_gem_set_domain_ioctl(struct drm_dev
* We will repeat the flush holding the lock in the normal manner
* to catch cases where we are gazumped.
*/
@@ -254,7 +248,7 @@ index 6ee80f4e80ce..052280840f99 100644
if (ret)
goto unref;
-@@ -2155,6 +2174,7 @@ int __i915_add_request(struct intel_ring_buffer *ring,
+@@ -2155,6 +2174,7 @@ int __i915_add_request(struct intel_ring
i915_queue_hangcheck(ring->dev);
if (was_empty) {
@@ -262,7 +256,7 @@ index 6ee80f4e80ce..052280840f99 100644
queue_delayed_work(dev_priv->wq,
&dev_priv->mm.retire_work,
round_jiffies_up_relative(HZ));
-@@ -2176,10 +2196,8 @@ i915_gem_request_remove_from_client(struct drm_i915_gem_request *request)
+@@ -2176,10 +2196,8 @@ i915_gem_request_remove_from_client(stru
return;
spin_lock(&file_priv->mm.lock);
@@ -275,7 +269,7 @@ index 6ee80f4e80ce..052280840f99 100644
spin_unlock(&file_priv->mm.lock);
}
-@@ -2443,57 +2461,53 @@ i915_gem_retire_requests_ring(struct intel_ring_buffer *ring)
+@@ -2443,57 +2461,53 @@ i915_gem_retire_requests_ring(struct int
WARN_ON(i915_verify_lists(ring->dev));
}
@@ -361,7 +355,7 @@ index 6ee80f4e80ce..052280840f99 100644
}
/**
-@@ -2591,7 +2605,7 @@ i915_gem_wait_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
+@@ -2591,7 +2605,7 @@ i915_gem_wait_ioctl(struct drm_device *d
reset_counter = atomic_read(&dev_priv->gpu_error.reset_counter);
mutex_unlock(&dev->struct_mutex);
@@ -370,7 +364,7 @@ index 6ee80f4e80ce..052280840f99 100644
if (timeout)
args->timeout_ns = timespec_to_ns(timeout);
return ret;
-@@ -3802,7 +3816,7 @@ i915_gem_ring_throttle(struct drm_device *dev, struct drm_file *file)
+@@ -3802,7 +3816,7 @@ i915_gem_ring_throttle(struct drm_device
if (seqno == 0)
return 0;
@@ -396,7 +390,7 @@ index 6ee80f4e80ce..052280840f99 100644
init_waitqueue_head(&dev_priv->gpu_error.reset_queue);
/* On GEN3 we really need to make sure the ARB C3 LP bit is set */
-@@ -4828,6 +4845,8 @@ void i915_gem_release(struct drm_device *dev, struct drm_file *file)
+@@ -4828,6 +4845,8 @@ void i915_gem_release(struct drm_device
{
struct drm_i915_file_private *file_priv = file->driver_priv;
@@ -405,7 +399,7 @@ index 6ee80f4e80ce..052280840f99 100644
/* Clean up our request list when the client is going away, so that
* later retire_requests won't dereference our soon-to-be-gone
* file_priv.
-@@ -4845,6 +4864,38 @@ void i915_gem_release(struct drm_device *dev, struct drm_file *file)
+@@ -4845,6 +4864,38 @@ void i915_gem_release(struct drm_device
spin_unlock(&file_priv->mm.lock);
}
@@ -444,11 +438,9 @@ index 6ee80f4e80ce..052280840f99 100644
static bool mutex_is_locked_by(struct mutex *mutex, struct task_struct *task)
{
if (!mutex_is_locked(mutex))
-diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 05c05a6a4360..6ee557280e11 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -859,17 +859,6 @@ static void gen6_pm_rps_work(struct work_struct *work)
+@@ -859,17 +859,6 @@ static void gen6_pm_rps_work(struct work
gen6_set_rps(dev_priv->dev, new_delay);
}
@@ -466,11 +458,9 @@ index 05c05a6a4360..6ee557280e11 100644
mutex_unlock(&dev_priv->rps.hw_lock);
}
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 3e2c6a464b91..b41c1592ffda 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -7726,6 +7726,9 @@ void intel_mark_idle(struct drm_device *dev)
+@@ -7726,6 +7726,9 @@ void intel_mark_idle(struct drm_device *
intel_decrease_pllclock(crtc);
}
@@ -480,11 +470,9 @@ index 3e2c6a464b91..b41c1592ffda 100644
}
void intel_mark_fb_busy(struct drm_i915_gem_object *obj,
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index e6db0c67e0be..922c5d752cc3 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -825,4 +825,7 @@ int intel_sprite_get_colorkey(struct drm_device *dev, void *data,
+@@ -825,4 +825,7 @@ int intel_sprite_get_colorkey(struct drm
/* intel_tv.c */
void intel_tv_init(struct drm_device *dev);
@@ -492,11 +480,9 @@ index e6db0c67e0be..922c5d752cc3 100644
+void gen6_rps_boost(struct drm_i915_private *dev_priv);
+
#endif /* __INTEL_DRV_H__ */
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index 9753bd9591eb..ca063c25ad32 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -3345,6 +3345,26 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
+@@ -3345,6 +3345,26 @@ void gen6_set_rps(struct drm_device *dev
trace_intel_gpu_freq_change(val * 50);
}
@@ -523,7 +509,7 @@ index 9753bd9591eb..ca063c25ad32 100644
/*
* Wait until the previous freq change has completed,
* or the timeout elapsed, and then update our notion
-@@ -3734,24 +3754,6 @@ int valleyview_rps_min_freq(struct drm_i915_private *dev_priv)
+@@ -3734,24 +3754,6 @@ int valleyview_rps_min_freq(struct drm_i
return vlv_punit_read(dev_priv, PUNIT_REG_GPU_LFM) & 0xff;
}
@@ -548,7 +534,7 @@ index 9753bd9591eb..ca063c25ad32 100644
static void valleyview_setup_pctx(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -3894,8 +3896,6 @@ static void valleyview_enable_rps(struct drm_device *dev)
+@@ -3894,8 +3896,6 @@ static void valleyview_enable_rps(struct
dev_priv->rps.rpe_delay),
dev_priv->rps.rpe_delay);
@@ -557,7 +543,7 @@ index 9753bd9591eb..ca063c25ad32 100644
valleyview_set_rps(dev_priv->dev, dev_priv->rps.rpe_delay);
gen6_enable_rps_interrupts(dev);
-@@ -4635,8 +4635,6 @@ void intel_disable_gt_powersave(struct drm_device *dev)
+@@ -4635,8 +4635,6 @@ void intel_disable_gt_powersave(struct d
} else if (INTEL_INFO(dev)->gen >= 6) {
cancel_delayed_work_sync(&dev_priv->rps.delayed_resume_work);
cancel_work_sync(&dev_priv->rps.work);
@@ -566,6 +552,3 @@ index 9753bd9591eb..ca063c25ad32 100644
mutex_lock(&dev_priv->rps.hw_lock);
if (IS_VALLEYVIEW(dev))
valleyview_disable_rps(dev);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0992-drm-edid-add-drm_edid_duplicate.patch b/patches.baytrail/0992-drm-edid-add-drm_edid_duplicate.patch
index 697a40c079b72c..b5fb2ff7145bb1 100644
--- a/patches.baytrail/0992-drm-edid-add-drm_edid_duplicate.patch
+++ b/patches.baytrail/0992-drm-edid-add-drm_edid_duplicate.patch
@@ -10,15 +10,13 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 51f8da5916f85c18b696f74f97970e5a7330147e)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_edid.c | 12 ++++++++++++
- include/drm/drm_crtc.h | 1 +
+ drivers/gpu/drm/drm_edid.c | 12 ++++++++++++
+ include/drm/drm_crtc.h | 1 +
2 files changed, 13 insertions(+)
-diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 61fdd6b532fc..9494e596d99c 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
-@@ -1261,6 +1261,18 @@ struct edid *drm_get_edid(struct drm_connector *connector,
+@@ -1266,6 +1266,18 @@ struct edid *drm_get_edid(struct drm_con
}
EXPORT_SYMBOL(drm_get_edid);
@@ -37,11 +35,9 @@ index 61fdd6b532fc..9494e596d99c 100644
/*** EDID parsing ***/
/**
-diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
-index 2743dad5fe88..b3cdbf6fc20b 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
-@@ -919,6 +919,7 @@ extern int drm_mode_group_init_legacy_group(struct drm_device *dev, struct drm_m
+@@ -919,6 +919,7 @@ extern int drm_mode_group_init_legacy_gr
extern bool drm_probe_ddc(struct i2c_adapter *adapter);
extern struct edid *drm_get_edid(struct drm_connector *connector,
struct i2c_adapter *adapter);
@@ -49,6 +45,3 @@ index 2743dad5fe88..b3cdbf6fc20b 100644
extern int drm_add_edid_modes(struct drm_connector *connector, struct edid *edid);
extern void drm_mode_probed_add(struct drm_connector *connector, struct drm_display_mode *mode);
extern void drm_mode_remove(struct drm_connector *connector, struct drm_display_mode *mode);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/0994-drm-Make-vblank_disable_allowed-bool.patch b/patches.baytrail/0994-drm-Make-vblank_disable_allowed-bool.patch
index 884eb7865bb562..ab06391da54621 100644
--- a/patches.baytrail/0994-drm-Make-vblank_disable_allowed-bool.patch
+++ b/patches.baytrail/0994-drm-Make-vblank_disable_allowed-bool.patch
@@ -21,20 +21,18 @@ Conflicts:
'airlied/drm-next' into drm-intel-next"))
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_irq.c | 5 +++--
- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 4 ++--
- drivers/gpu/drm/exynos/exynos_drm_vidi.c | 4 ++--
- drivers/gpu/drm/gma500/psb_drv.c | 2 +-
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/staging/imx-drm/imx-drm-core.c | 4 ++--
- include/drm/drmP.h | 2 +-
+ drivers/gpu/drm/drm_irq.c | 5 +++--
+ drivers/gpu/drm/exynos/exynos_drm_fimd.c | 4 ++--
+ drivers/gpu/drm/exynos/exynos_drm_vidi.c | 4 ++--
+ drivers/gpu/drm/gma500/psb_drv.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/staging/imx-drm/imx-drm-core.c | 4 ++--
+ include/drm/drmP.h | 2 +-
7 files changed, 12 insertions(+), 11 deletions(-)
-diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
-index f92da0a32f0d..81b4c84449a4 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
-@@ -271,7 +271,8 @@ int drm_vblank_init(struct drm_device *dev, int num_crtcs)
+@@ -271,7 +271,8 @@ int drm_vblank_init(struct drm_device *d
atomic_set(&dev->vblank_refcount[i], 0);
}
@@ -44,7 +42,7 @@ index f92da0a32f0d..81b4c84449a4 100644
return 0;
err:
-@@ -1085,7 +1086,7 @@ void drm_vblank_post_modeset(struct drm_device *dev, int crtc)
+@@ -1085,7 +1086,7 @@ void drm_vblank_post_modeset(struct drm_
if (dev->vblank_inmodeset[crtc]) {
spin_lock_irqsave(&dev->vbl_lock, irqflags);
@@ -53,11 +51,9 @@ index f92da0a32f0d..81b4c84449a4 100644
spin_unlock_irqrestore(&dev->vbl_lock, irqflags);
if (dev->vblank_inmodeset[crtc] & 0x2)
-diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
-index 97c61dbffd82..2cb5b2ad07b3 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
-@@ -710,11 +710,11 @@ static int fimd_subdrv_probe(struct drm_device *drm_dev, struct device *dev)
+@@ -710,11 +710,11 @@ static int fimd_subdrv_probe(struct drm_
drm_dev->irq_enabled = 1;
/*
@@ -71,11 +67,9 @@ index 97c61dbffd82..2cb5b2ad07b3 100644
/* attach this sub driver to iommu mapping if supported. */
if (is_drm_iommu_supported(drm_dev))
-diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
-index 24376c194a5e..51706119faa0 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_vidi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
-@@ -420,11 +420,11 @@ static int vidi_subdrv_probe(struct drm_device *drm_dev, struct device *dev)
+@@ -420,11 +420,11 @@ static int vidi_subdrv_probe(struct drm_
drm_dev->irq_enabled = 1;
/*
@@ -89,11 +83,9 @@ index 24376c194a5e..51706119faa0 100644
return 0;
}
-diff --git a/drivers/gpu/drm/gma500/psb_drv.c b/drivers/gpu/drm/gma500/psb_drv.c
-index 99b5293972c6..937ba40a8f9d 100644
--- a/drivers/gpu/drm/gma500/psb_drv.c
+++ b/drivers/gpu/drm/gma500/psb_drv.c
-@@ -359,7 +359,7 @@ static int psb_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -359,7 +359,7 @@ static int psb_driver_load(struct drm_de
drm_irq_install(dev);
@@ -102,11 +94,9 @@ index 99b5293972c6..937ba40a8f9d 100644
dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 513a4feb3137..0ac796a8d0f9 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1333,7 +1333,7 @@ static int i915_load_modeset_init(struct drm_device *dev)
+@@ -1341,7 +1341,7 @@ static int i915_load_modeset_init(struct
/* Always safe in the mode setting case. */
/* FIXME: do pre/post-mode set stuff in core KMS code */
@@ -115,11 +105,9 @@ index 513a4feb3137..0ac796a8d0f9 100644
if (INTEL_INFO(dev)->num_pipes == 0) {
intel_display_power_put(dev, POWER_DOMAIN_VGA);
return 0;
-diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c
-index 33eb04e79dfe..11321147fc0b 100644
--- a/drivers/staging/imx-drm/imx-drm-core.c
+++ b/drivers/staging/imx-drm/imx-drm-core.c
-@@ -440,11 +440,11 @@ static int imx_drm_driver_load(struct drm_device *drm, unsigned long flags)
+@@ -440,11 +440,11 @@ static int imx_drm_driver_load(struct dr
goto err_init;
/*
@@ -133,8 +121,6 @@ index 33eb04e79dfe..11321147fc0b 100644
ret = 0;
-diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 4bad54c302f6..227292ae8736 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -1155,7 +1155,7 @@ struct drm_device {
@@ -146,6 +132,3 @@ index 4bad54c302f6..227292ae8736 100644
wait_queue_head_t *vbl_queue; /**< VBLANK wait queue */
atomic_t *_vblank_count; /**< number of VBLANK interrupts (driver must alloc the right number of counters) */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1001-drm-Remove-pci_vendor-and-pci_device-from-struct-drm.patch b/patches.baytrail/1001-drm-Remove-pci_vendor-and-pci_device-from-struct-drm.patch
index 32c339274cc88f..dade3beabc6849 100644
--- a/patches.baytrail/1001-drm-Remove-pci_vendor-and-pci_device-from-struct-drm.patch
+++ b/patches.baytrail/1001-drm-Remove-pci_vendor-and-pci_device-from-struct-drm.patch
@@ -16,29 +16,27 @@ Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit ffbab09bf939975b62ec233c426bf7df0dd4cea8)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_pci.c | 3 ---
- drivers/gpu/drm/gma500/psb_drv.h | 8 +++----
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/i915_drv.h | 36 ++++++++++++++---------------
- drivers/gpu/drm/i915/i915_gpu_error.c | 2 +-
- drivers/gpu/drm/i915/intel_tv.c | 2 +-
- drivers/gpu/drm/nouveau/dispnv04/arb.c | 8 +++----
- drivers/gpu/drm/nouveau/dispnv04/dfp.c | 4 ++--
- drivers/gpu/drm/nouveau/dispnv04/disp.h | 6 ++---
- drivers/gpu/drm/nouveau/dispnv04/hw.c | 4 ++--
- drivers/gpu/drm/nouveau/nouveau_abi16.c | 4 ++--
- drivers/gpu/drm/nouveau/nouveau_bios.c | 4 ++--
- drivers/gpu/drm/nouveau/nouveau_connector.c | 4 ++--
- drivers/gpu/drm/radeon/radeon_bios.c | 6 ++---
- drivers/gpu/drm/radeon/radeon_kms.c | 2 +-
- include/drm/drmP.h | 2 --
+ drivers/gpu/drm/drm_pci.c | 3 --
+ drivers/gpu/drm/gma500/psb_drv.h | 8 +++---
+ drivers/gpu/drm/i915/i915_dma.c | 2 -
+ drivers/gpu/drm/i915/i915_drv.h | 36 ++++++++++++++--------------
+ drivers/gpu/drm/i915/i915_gpu_error.c | 2 -
+ drivers/gpu/drm/i915/intel_tv.c | 2 -
+ drivers/gpu/drm/nouveau/dispnv04/arb.c | 8 +++---
+ drivers/gpu/drm/nouveau/dispnv04/dfp.c | 4 +--
+ drivers/gpu/drm/nouveau/dispnv04/disp.h | 6 ++--
+ drivers/gpu/drm/nouveau/dispnv04/hw.c | 4 +--
+ drivers/gpu/drm/nouveau/nouveau_abi16.c | 4 +--
+ drivers/gpu/drm/nouveau/nouveau_bios.c | 4 +--
+ drivers/gpu/drm/nouveau/nouveau_connector.c | 4 +--
+ drivers/gpu/drm/radeon/radeon_bios.c | 6 ++--
+ drivers/gpu/drm/radeon/radeon_kms.c | 2 -
+ include/drm/drmP.h | 2 -
16 files changed, 46 insertions(+), 51 deletions(-)
-diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c
-index efcbc3dbf21a..21c2419a5156 100644
--- a/drivers/gpu/drm/drm_pci.c
+++ b/drivers/gpu/drm/drm_pci.c
-@@ -335,9 +335,6 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
+@@ -335,9 +335,6 @@ int drm_get_pci_dev(struct pci_dev *pdev
goto err_g1;
dev->pdev = pdev;
@@ -48,8 +46,6 @@ index efcbc3dbf21a..21c2419a5156 100644
#ifdef __alpha__
dev->hose = pdev->sysdata;
#endif
-diff --git a/drivers/gpu/drm/gma500/psb_drv.h b/drivers/gpu/drm/gma500/psb_drv.h
-index 5a608c0c2396..0081064e6efd 100644
--- a/drivers/gpu/drm/gma500/psb_drv.h
+++ b/drivers/gpu/drm/gma500/psb_drv.h
@@ -43,10 +43,10 @@ enum {
@@ -67,11 +63,9 @@ index 5a608c0c2396..0081064e6efd 100644
/*
* Driver definitions
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 0ac796a8d0f9..a6b170cc35ea 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -931,7 +931,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
+@@ -939,7 +939,7 @@ static int i915_getparam(struct drm_devi
value = READ_BREADCRUMB(dev_priv);
break;
case I915_PARAM_CHIPSET_ID:
@@ -80,8 +74,6 @@ index 0ac796a8d0f9..a6b170cc35ea 100644
break;
case I915_PARAM_HAS_GEM:
value = 1;
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index ed8653fd97ad..2792540fa5af 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1615,39 +1615,39 @@ struct drm_i915_file_private {
@@ -142,11 +134,9 @@ index ed8653fd97ad..2792540fa5af 100644
#define IS_PRELIMINARY_HW(intel_info) ((intel_info)->is_preliminary)
/*
-diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
-index da1022a328e3..915c8ca08969 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
-@@ -304,7 +304,7 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m,
+@@ -304,7 +304,7 @@ int i915_error_state_to_str(struct drm_i
err_printf(m, "Time: %ld s %ld us\n", error->time.tv_sec,
error->time.tv_usec);
err_printf(m, "Kernel: " UTS_RELEASE "\n");
@@ -155,11 +145,9 @@ index da1022a328e3..915c8ca08969 100644
err_printf(m, "EIR: 0x%08x\n", error->eir);
err_printf(m, "IER: 0x%08x\n", error->ier);
err_printf(m, "PGTBL_ER: 0x%08x\n", error->pgtbl_er);
-diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index 92895f92a738..d61aec23a523 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
-@@ -1044,7 +1044,7 @@ static void intel_tv_mode_set(struct intel_encoder *encoder)
+@@ -1044,7 +1044,7 @@ static void intel_tv_mode_set(struct int
tv_mode->dda3_inc << TV_SCDDA3_INC_SHIFT;
/* Enable two fixes for the chips that need them. */
@@ -168,11 +156,9 @@ index 92895f92a738..d61aec23a523 100644
tv_ctl |= TV_ENC_C0_FIX | TV_ENC_SDP_FIX;
I915_WRITE(TV_H_CTL_1, hctl1);
-diff --git a/drivers/gpu/drm/nouveau/dispnv04/arb.c b/drivers/gpu/drm/nouveau/dispnv04/arb.c
-index 2e70462883e8..2a15b98b4d2b 100644
--- a/drivers/gpu/drm/nouveau/dispnv04/arb.c
+++ b/drivers/gpu/drm/nouveau/dispnv04/arb.c
-@@ -210,8 +210,8 @@ nv04_update_arb(struct drm_device *dev, int VClk, int bpp,
+@@ -210,8 +210,8 @@ nv04_update_arb(struct drm_device *dev,
sim_data.nvclk_khz = NVClk;
sim_data.bpp = bpp;
sim_data.two_heads = nv_two_heads(dev);
@@ -183,7 +169,7 @@ index 2e70462883e8..2a15b98b4d2b 100644
uint32_t type;
pci_read_config_dword(pci_get_bus_and_slot(0, 1), 0x7c, &type);
-@@ -256,8 +256,8 @@ nouveau_calc_arb(struct drm_device *dev, int vclk, int bpp, int *burst, int *lwm
+@@ -256,8 +256,8 @@ nouveau_calc_arb(struct drm_device *dev,
if (nv_device(drm->device)->card_type < NV_20)
nv04_update_arb(dev, vclk, bpp, burst, lwm);
@@ -194,11 +180,9 @@ index 2e70462883e8..2a15b98b4d2b 100644
*burst = 128;
*lwm = 0x0480;
} else
-diff --git a/drivers/gpu/drm/nouveau/dispnv04/dfp.c b/drivers/gpu/drm/nouveau/dispnv04/dfp.c
-index 93dd23ff0093..59d1c040b84f 100644
--- a/drivers/gpu/drm/nouveau/dispnv04/dfp.c
+++ b/drivers/gpu/drm/nouveau/dispnv04/dfp.c
-@@ -490,8 +490,8 @@ static void nv04_dfp_update_backlight(struct drm_encoder *encoder, int mode)
+@@ -490,8 +490,8 @@ static void nv04_dfp_update_backlight(st
/* BIOS scripts usually take care of the backlight, thanks
* Apple for your consistency.
*/
@@ -209,8 +193,6 @@ index 93dd23ff0093..59d1c040b84f 100644
if (mode == DRM_MODE_DPMS_ON) {
nv_mask(device, NV_PBUS_DEBUG_DUALHEAD_CTL, 0, 1 << 31);
nv_mask(device, NV_PCRTC_GPIO_EXT, 3, 1);
-diff --git a/drivers/gpu/drm/nouveau/dispnv04/disp.h b/drivers/gpu/drm/nouveau/dispnv04/disp.h
-index a0a031dad13f..fcbc3fdcac21 100644
--- a/drivers/gpu/drm/nouveau/dispnv04/disp.h
+++ b/drivers/gpu/drm/nouveau/dispnv04/disp.h
@@ -126,7 +126,7 @@ static inline bool
@@ -239,11 +221,9 @@ index a0a031dad13f..fcbc3fdcac21 100644
if (impl == 0x0310 || impl == 0x0340 || nv_device(drm->device)->card_type >= NV_40)
return true;
-diff --git a/drivers/gpu/drm/nouveau/dispnv04/hw.c b/drivers/gpu/drm/nouveau/dispnv04/hw.c
-index 973056b86207..f8dee834527f 100644
--- a/drivers/gpu/drm/nouveau/dispnv04/hw.c
+++ b/drivers/gpu/drm/nouveau/dispnv04/hw.c
-@@ -220,7 +220,7 @@ nouveau_hw_get_clock(struct drm_device *dev, enum nvbios_pll_type plltype)
+@@ -220,7 +220,7 @@ nouveau_hw_get_clock(struct drm_device *
int ret;
if (plltype == PLL_MEMORY &&
@@ -252,7 +232,7 @@ index 973056b86207..f8dee834527f 100644
uint32_t mpllP;
pci_read_config_dword(pci_get_bus_and_slot(0, 3), 0x6c, &mpllP);
-@@ -230,7 +230,7 @@ nouveau_hw_get_clock(struct drm_device *dev, enum nvbios_pll_type plltype)
+@@ -230,7 +230,7 @@ nouveau_hw_get_clock(struct drm_device *
return 400000 / mpllP;
} else
if (plltype == PLL_MEMORY &&
@@ -261,11 +241,9 @@ index 973056b86207..f8dee834527f 100644
uint32_t clock;
pci_read_config_dword(pci_get_bus_and_slot(0, 5), 0x4c, &clock);
-diff --git a/drivers/gpu/drm/nouveau/nouveau_abi16.c b/drivers/gpu/drm/nouveau/nouveau_abi16.c
-index 1c4c6c9161ac..2f093f6c7a3c 100644
--- a/drivers/gpu/drm/nouveau/nouveau_abi16.c
+++ b/drivers/gpu/drm/nouveau/nouveau_abi16.c
-@@ -177,10 +177,10 @@ nouveau_abi16_ioctl_getparam(ABI16_IOCTL_ARGS)
+@@ -177,10 +177,10 @@ nouveau_abi16_ioctl_getparam(ABI16_IOCTL
getparam->value = device->chipset;
break;
case NOUVEAU_GETPARAM_PCI_VENDOR:
@@ -278,11 +256,9 @@ index 1c4c6c9161ac..2f093f6c7a3c 100644
break;
case NOUVEAU_GETPARAM_BUS_TYPE:
if (drm_pci_device_is_agp(dev))
-diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
-index 6aa2137e093a..fd55c99ba565 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bios.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
-@@ -127,8 +127,8 @@ static int call_lvds_manufacturer_script(struct drm_device *dev, struct dcb_outp
+@@ -127,8 +127,8 @@ static int call_lvds_manufacturer_script
#ifdef __powerpc__
/* Powerbook specific quirks */
if (script == LVDS_RESET &&
@@ -293,11 +269,9 @@ index 6aa2137e093a..fd55c99ba565 100644
nv_write_tmds(dev, dcbent->or, 0, 0x02, 0x72);
#endif
-diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
-index 4da776f344d7..63b94f30f13d 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
-@@ -213,8 +213,8 @@ nouveau_connector_set_encoder(struct drm_connector *connector,
+@@ -213,8 +213,8 @@ nouveau_connector_set_encoder(struct drm
connector->doublescan_allowed = true;
if (nv_device(drm->device)->card_type == NV_20 ||
(nv_device(drm->device)->card_type == NV_10 &&
@@ -308,11 +282,9 @@ index 4da776f344d7..63b94f30f13d 100644
/* HW is broken */
connector->interlace_allowed = false;
else
-diff --git a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c
-index 061b227dae0c..c155d6f3fa68 100644
--- a/drivers/gpu/drm/radeon/radeon_bios.c
+++ b/drivers/gpu/drm/radeon/radeon_bios.c
-@@ -499,7 +499,7 @@ static bool legacy_read_disabled_bios(struct radeon_device *rdev)
+@@ -499,7 +499,7 @@ static bool legacy_read_disabled_bios(st
crtc_ext_cntl = RREG32(RADEON_CRTC_EXT_CNTL);
fp2_gen_cntl = 0;
@@ -321,7 +293,7 @@ index 061b227dae0c..c155d6f3fa68 100644
fp2_gen_cntl = RREG32(RADEON_FP2_GEN_CNTL);
}
-@@ -536,7 +536,7 @@ static bool legacy_read_disabled_bios(struct radeon_device *rdev)
+@@ -536,7 +536,7 @@ static bool legacy_read_disabled_bios(st
(RADEON_CRTC_SYNC_TRISTAT |
RADEON_CRTC_DISPLAY_DIS)));
@@ -330,7 +302,7 @@ index 061b227dae0c..c155d6f3fa68 100644
WREG32(RADEON_FP2_GEN_CNTL, (fp2_gen_cntl & ~RADEON_FP2_ON));
}
-@@ -554,7 +554,7 @@ static bool legacy_read_disabled_bios(struct radeon_device *rdev)
+@@ -554,7 +554,7 @@ static bool legacy_read_disabled_bios(st
WREG32(RADEON_CRTC2_GEN_CNTL, crtc2_gen_cntl);
}
WREG32(RADEON_CRTC_EXT_CNTL, crtc_ext_cntl);
@@ -339,11 +311,9 @@ index 061b227dae0c..c155d6f3fa68 100644
WREG32(RADEON_FP2_GEN_CNTL, fp2_gen_cntl);
}
return r;
-diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
-index 100d10930da5..69c8157eff74 100644
--- a/drivers/gpu/drm/radeon/radeon_kms.c
+++ b/drivers/gpu/drm/radeon/radeon_kms.c
-@@ -191,7 +191,7 @@ int radeon_info_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
+@@ -191,7 +191,7 @@ int radeon_info_ioctl(struct drm_device
switch (info->request) {
case RADEON_INFO_DEVICE_ID:
@@ -352,8 +322,6 @@ index 100d10930da5..69c8157eff74 100644
break;
case RADEON_INFO_NUM_GB_PIPES:
*value = rdev->num_gb_pipes;
-diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 32019d82882e..6b091e5ba4e5 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -1191,8 +1191,6 @@ struct drm_device {
@@ -365,6 +333,3 @@ index 32019d82882e..6b091e5ba4e5 100644
#ifdef __alpha__
struct pci_controller *hose;
#endif
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1008-drm-Kill-drm-perf-counter-leftovers.patch b/patches.baytrail/1008-drm-Kill-drm-perf-counter-leftovers.patch
index fac673a42d8bc4..9d05abdeb8b895 100644
--- a/patches.baytrail/1008-drm-Kill-drm-perf-counter-leftovers.patch
+++ b/patches.baytrail/1008-drm-Kill-drm-perf-counter-leftovers.patch
@@ -29,18 +29,16 @@ Conflicts:
'airlied/drm-next' into drm-intel-next")
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/drm_drv.c | 1 -
- drivers/gpu/drm/drm_fops.c | 7 -------
- drivers/gpu/drm/drm_lock.c | 3 ---
- drivers/gpu/drm/drm_stub.c | 9 ---------
- drivers/gpu/drm/i810/i810_dma.c | 11 -----------
- drivers/gpu/drm/i915/i915_dma.c | 7 -------
- drivers/gpu/drm/mga/mga_dma.c | 5 -----
- include/drm/drmP.h | 7 -------
+ drivers/gpu/drm/drm_drv.c | 1 -
+ drivers/gpu/drm/drm_fops.c | 7 -------
+ drivers/gpu/drm/drm_lock.c | 3 ---
+ drivers/gpu/drm/drm_stub.c | 9 ---------
+ drivers/gpu/drm/i810/i810_dma.c | 11 -----------
+ drivers/gpu/drm/i915/i915_dma.c | 7 -------
+ drivers/gpu/drm/mga/mga_dma.c | 5 -----
+ include/drm/drmP.h | 7 -------
8 files changed, 50 deletions(-)
-diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
-index d08762962dc0..8c462161ab02 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
@@ -323,7 +323,6 @@ long drm_ioctl(struct file *filp,
@@ -51,11 +49,9 @@ index d08762962dc0..8c462161ab02 100644
++file_priv->ioctl_count;
if ((nr >= DRM_CORE_IOCTL_COUNT) &&
-diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c
-index 0bfbbe1506c8..6b06ac4029fb 100644
--- a/drivers/gpu/drm/drm_fops.c
+++ b/drivers/gpu/drm/drm_fops.c
-@@ -112,7 +112,6 @@ int drm_open(struct inode *inode, struct file *filp)
+@@ -112,7 +112,6 @@ int drm_open(struct inode *inode, struct
retcode = drm_open_helper(inode, filp, dev);
if (retcode)
goto err_undo;
@@ -63,7 +59,7 @@ index 0bfbbe1506c8..6b06ac4029fb 100644
if (need_setup) {
retcode = drm_setup(dev);
if (retcode)
-@@ -376,17 +375,12 @@ static void drm_events_release(struct drm_file *file_priv)
+@@ -376,17 +375,12 @@ static void drm_events_release(struct dr
*/
static void drm_legacy_dev_reinit(struct drm_device *dev)
{
@@ -81,7 +77,7 @@ index 0bfbbe1506c8..6b06ac4029fb 100644
dev->sigdata.lock = NULL;
dev->context_flag = 0;
-@@ -570,7 +564,6 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -570,7 +564,6 @@ int drm_release(struct inode *inode, str
* End inline drm_release
*/
@@ -89,11 +85,9 @@ index 0bfbbe1506c8..6b06ac4029fb 100644
if (!--dev->open_count) {
if (atomic_read(&dev->ioctl_count)) {
DRM_ERROR("Device busy: %d\n",
-diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c
-index d752c96d6090..f6452682141b 100644
--- a/drivers/gpu/drm/drm_lock.c
+++ b/drivers/gpu/drm/drm_lock.c
-@@ -86,7 +86,6 @@ int drm_lock(struct drm_device *dev, void *data, struct drm_file *file_priv)
+@@ -86,7 +86,6 @@ int drm_lock(struct drm_device *dev, voi
if (drm_lock_take(&master->lock, lock->context)) {
master->lock.file_priv = file_priv;
master->lock.lock_time = jiffies;
@@ -101,7 +95,7 @@ index d752c96d6090..f6452682141b 100644
break; /* Got lock */
}
-@@ -157,8 +156,6 @@ int drm_unlock(struct drm_device *dev, void *data, struct drm_file *file_priv)
+@@ -157,8 +156,6 @@ int drm_unlock(struct drm_device *dev, v
return -EINVAL;
}
@@ -110,11 +104,9 @@ index d752c96d6090..f6452682141b 100644
if (drm_lock_free(&master->lock, lock->context)) {
/* FIXME: Should really bail out here. */
}
-diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c
-index a2becaff63bc..2ae80bf3bf75 100644
--- a/drivers/gpu/drm/drm_stub.c
+++ b/drivers/gpu/drm/drm_stub.c
-@@ -496,15 +496,6 @@ struct drm_device *drm_dev_alloc(struct drm_driver *driver,
+@@ -496,15 +496,6 @@ struct drm_device *drm_dev_alloc(struct
mutex_init(&dev->struct_mutex);
mutex_init(&dev->ctxlist_mutex);
@@ -130,11 +122,9 @@ index a2becaff63bc..2ae80bf3bf75 100644
if (drm_ht_create(&dev->map_hash, 12))
goto err_free;
-diff --git a/drivers/gpu/drm/i810/i810_dma.c b/drivers/gpu/drm/i810/i810_dma.c
-index 7f8b7a469ff8..12bb60132420 100644
--- a/drivers/gpu/drm/i810/i810_dma.c
+++ b/drivers/gpu/drm/i810/i810_dma.c
-@@ -944,8 +944,6 @@ static int i810_dma_vertex(struct drm_device *dev, void *data,
+@@ -944,8 +944,6 @@ static int i810_dma_vertex(struct drm_de
dma->buflist[vertex->idx],
vertex->discard, vertex->used);
@@ -143,7 +133,7 @@ index 7f8b7a469ff8..12bb60132420 100644
sarea_priv->last_enqueue = dev_priv->counter - 1;
sarea_priv->last_dispatch = (int)hw_status[5];
-@@ -1105,8 +1103,6 @@ static int i810_dma_mc(struct drm_device *dev, void *data,
+@@ -1105,8 +1103,6 @@ static int i810_dma_mc(struct drm_device
i810_dma_dispatch_mc(dev, dma->buflist[mc->idx], mc->used,
mc->last_render);
@@ -152,7 +142,7 @@ index 7f8b7a469ff8..12bb60132420 100644
sarea_priv->last_enqueue = dev_priv->counter - 1;
sarea_priv->last_dispatch = (int)hw_status[5];
-@@ -1197,13 +1193,6 @@ static int i810_flip_bufs(struct drm_device *dev, void *data,
+@@ -1197,13 +1193,6 @@ static int i810_flip_bufs(struct drm_dev
int i810_driver_load(struct drm_device *dev, unsigned long flags)
{
@@ -166,11 +156,9 @@ index 7f8b7a469ff8..12bb60132420 100644
pci_set_master(dev->pdev);
return 0;
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index a6b170cc35ea..44b883a4147d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1480,13 +1480,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1488,13 +1488,6 @@ int i915_driver_load(struct drm_device *
if (info->gen >= 6 && !drm_core_check_feature(dev, DRIVER_MODESET))
return -ENODEV;
@@ -184,11 +172,9 @@ index a6b170cc35ea..44b883a4147d 100644
dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL);
if (dev_priv == NULL)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/mga/mga_dma.c b/drivers/gpu/drm/mga/mga_dma.c
-index cc3166dd445a..087db33f6cff 100644
--- a/drivers/gpu/drm/mga/mga_dma.c
+++ b/drivers/gpu/drm/mga/mga_dma.c
-@@ -406,11 +406,6 @@ int mga_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -406,11 +406,6 @@ int mga_driver_load(struct drm_device *d
dev_priv->mmio_base = pci_resource_start(dev->pdev, 1);
dev_priv->mmio_size = pci_resource_len(dev->pdev, 1);
@@ -200,8 +186,6 @@ index cc3166dd445a..087db33f6cff 100644
ret = drm_vblank_init(dev, 1);
if (ret) {
-diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 4dfa1dad9a37..cff006e92449 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -1119,13 +1119,6 @@ struct drm_device {
@@ -218,6 +202,3 @@ index 4dfa1dad9a37..cff006e92449 100644
struct list_head filelist;
/** \name Memory management */
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1045-drm-i915-Prevent-using-uninitialized-MMIO-funcs.patch b/patches.baytrail/1045-drm-i915-Prevent-using-uninitialized-MMIO-funcs.patch
index 7b63b131c8ecf7..82f12029acd961 100644
--- a/patches.baytrail/1045-drm-i915-Prevent-using-uninitialized-MMIO-funcs.patch
+++ b/patches.baytrail/1045-drm-i915-Prevent-using-uninitialized-MMIO-funcs.patch
@@ -22,14 +22,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 78511f2a6fc6960c8917d9655fffb687822a0225)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
+ drivers/gpu/drm/i915/i915_dma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 44b883a4147d..6291dce899e6 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1614,8 +1614,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1622,8 +1622,8 @@ int i915_driver_load(struct drm_device *
intel_irq_init(dev);
intel_pm_init(dev);
@@ -39,6 +37,3 @@ index 44b883a4147d..6291dce899e6 100644
/* Try to make sure MCHBAR is enabled before poking at it */
intel_setup_mchbar(dev);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1046-drm-i915-Move-edram-detection-early_sanitize.patch b/patches.baytrail/1046-drm-i915-Move-edram-detection-early_sanitize.patch
index 7a713de45e8453..4bf6a21a4f8300 100644
--- a/patches.baytrail/1046-drm-i915-Move-edram-detection-early_sanitize.patch
+++ b/patches.baytrail/1046-drm-i915-Move-edram-detection-early_sanitize.patch
@@ -13,15 +13,13 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 18ce39943eb82e457e4c46dc86b1975d79b30aa7)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 10 ----------
- drivers/gpu/drm/i915/intel_uncore.c | 11 +++++++++++
+ drivers/gpu/drm/i915/i915_dma.c | 10 ----------
+ drivers/gpu/drm/i915/intel_uncore.c | 11 +++++++++++
2 files changed, 11 insertions(+), 10 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 6291dce899e6..3e2d9b512a1b 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1542,16 +1542,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1550,16 +1550,6 @@ int i915_driver_load(struct drm_device *
intel_uncore_early_sanitize(dev);
@@ -38,11 +36,9 @@ index 6291dce899e6..3e2d9b512a1b 100644
ret = i915_gem_gtt_init(dev);
if (ret)
goto out_regs;
-diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
-index bfc1a65fcd90..2d16590d5478 100644
--- a/drivers/gpu/drm/i915/intel_uncore.c
+++ b/drivers/gpu/drm/i915/intel_uncore.c
-@@ -222,6 +222,17 @@ void intel_uncore_early_sanitize(struct drm_device *dev)
+@@ -222,6 +222,17 @@ void intel_uncore_early_sanitize(struct
if (HAS_FPGA_DBG_UNCLAIMED(dev))
__raw_i915_write32(dev_priv, FPGA_DBG, FPGA_DBG_RM_NOCLAIM);
@@ -60,6 +56,3 @@ index bfc1a65fcd90..2d16590d5478 100644
}
void intel_uncore_init(struct drm_device *dev)
---
-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 47009515a340d2..06c6a9f9d45f45 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
@@ -17,14 +17,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit c3d685a7a5cd9f18865a717468d2b02092dcefdd)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 10 ++++++----
+ drivers/gpu/drm/i915/i915_dma.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 3e2d9b512a1b..1319816a087b 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1542,6 +1542,11 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1550,6 +1550,11 @@ int i915_driver_load(struct drm_device *
intel_uncore_early_sanitize(dev);
@@ -36,7 +34,7 @@ index 3e2d9b512a1b..1319816a087b 100644
ret = i915_gem_gtt_init(dev);
if (ret)
goto out_regs;
-@@ -1599,12 +1604,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1607,12 +1612,8 @@ int i915_driver_load(struct drm_device *
goto out_mtrrfree;
}
@@ -49,7 +47,7 @@ index 3e2d9b512a1b..1319816a087b 100644
intel_uncore_sanitize(dev);
/* Try to make sure MCHBAR is enabled before poking at it */
-@@ -1689,6 +1690,7 @@ out_gtt:
+@@ -1697,6 +1698,7 @@ out_gtt:
drm_mm_takedown(&dev_priv->gtt.base.mm);
dev_priv->gtt.base.cleanup(&dev_priv->gtt.base);
out_regs:
@@ -57,6 +55,3 @@ index 3e2d9b512a1b..1319816a087b 100644
pci_iounmap(dev->pdev, dev_priv->regs);
put_bridge:
pci_dev_put(dev_priv->bridge_dev);
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1062-drm-i915-tell-the-user-KMS-is-required-for-gen6.patch b/patches.baytrail/1062-drm-i915-tell-the-user-KMS-is-required-for-gen6.patch
index 475b22893f6b19..1318ab1d09f8b2 100644
--- a/patches.baytrail/1062-drm-i915-tell-the-user-KMS-is-required-for-gen6.patch
+++ b/patches.baytrail/1062-drm-i915-tell-the-user-KMS-is-required-for-gen6.patch
@@ -15,14 +15,12 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit e147accbd19f55489dabdcc4dc3551cc3e3f2553)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/i915_dma.c | 5 ++++-
+ drivers/gpu/drm/i915/i915_dma.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 1319816a087b..aa70c8d292d8 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1477,8 +1477,11 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+@@ -1485,8 +1485,11 @@ int i915_driver_load(struct drm_device *
info = (struct intel_device_info *) flags;
/* Refuse to load on gen6+ without kms enabled. */
@@ -35,6 +33,3 @@ index 1319816a087b..aa70c8d292d8 100644
dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL);
if (dev_priv == NULL)
---
-1.8.5.rc3
-
diff --git a/patches.baytrail/1071-drm-i915-Kconfig-option-to-disable-the-legacy-fbdev-.patch b/patches.baytrail/1071-drm-i915-Kconfig-option-to-disable-the-legacy-fbdev-.patch
index 7d2fe202c48201..b488772eeea9c7 100644
--- a/patches.baytrail/1071-drm-i915-Kconfig-option-to-disable-the-legacy-fbdev-.patch
+++ b/patches.baytrail/1071-drm-i915-Kconfig-option-to-disable-the-legacy-fbdev-.patch
@@ -36,19 +36,17 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 4520f53a159fb81b8c27afe52428a0959aff259c)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/Kconfig | 60 +-------------------------------
- drivers/gpu/drm/i915/Kconfig | 67 ++++++++++++++++++++++++++++++++++++
- drivers/gpu/drm/i915/Makefile | 3 +-
- drivers/gpu/drm/i915/i915_debugfs.c | 9 ++---
- drivers/gpu/drm/i915/i915_dma.c | 6 ++++
- drivers/gpu/drm/i915/i915_drv.h | 2 ++
- drivers/gpu/drm/i915/intel_display.c | 10 ++++++
- drivers/gpu/drm/i915/intel_drv.h | 36 +++++++++++++++----
+ drivers/gpu/drm/Kconfig | 60 -------------------------------
+ drivers/gpu/drm/i915/Kconfig | 67 +++++++++++++++++++++++++++++++++++
+ drivers/gpu/drm/i915/Makefile | 3 +
+ drivers/gpu/drm/i915/i915_debugfs.c | 9 ++--
+ drivers/gpu/drm/i915/i915_dma.c | 6 +++
+ drivers/gpu/drm/i915/i915_drv.h | 2 +
+ drivers/gpu/drm/i915/intel_display.c | 10 +++++
+ drivers/gpu/drm/i915/intel_drv.h | 36 +++++++++++++++---
8 files changed, 122 insertions(+), 71 deletions(-)
create mode 100644 drivers/gpu/drm/i915/Kconfig
-diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
-index 8847e1e90533..1b51494b76dd 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -128,65 +128,7 @@ config DRM_I810
@@ -118,9 +116,6 @@ index 8847e1e90533..1b51494b76dd 100644
config DRM_MGA
tristate "Matrox g200/g400"
-diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
-new file mode 100644
-index 000000000000..6199d0b5b958
--- /dev/null
+++ b/drivers/gpu/drm/i915/Kconfig
@@ -0,0 +1,67 @@
@@ -191,11 +186,9 @@ index 000000000000..6199d0b5b958
+ option changes the default for that module option.
+
+ If in doubt, say "N".
-diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
-index 65e60d26891b..45e14a8db2f3 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
-@@ -33,7 +33,6 @@ i915-y := i915_drv.o i915_dma.o i915_irq.o \
+@@ -33,7 +33,6 @@ i915-y := i915_drv.o i915_dma.o i915_irq
intel_panel.o \
intel_pm.o \
intel_i2c.o \
@@ -212,11 +205,9 @@ index 65e60d26891b..45e14a8db2f3 100644
obj-$(CONFIG_DRM_I915) += i915.o
CFLAGS_i915_trace_points.o := -I$(src)
-diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index a569597125db..72d04588eccb 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
-@@ -1403,12 +1403,12 @@ static int i915_gem_framebuffer_info(struct seq_file *m, void *data)
+@@ -1403,12 +1403,12 @@ static int i915_gem_framebuffer_info(str
{
struct drm_info_node *node = (struct drm_info_node *) m->private;
struct drm_device *dev = node->minor->dev;
@@ -233,7 +224,7 @@ index a569597125db..72d04588eccb 100644
if (ret)
return ret;
-@@ -1424,6 +1424,7 @@ static int i915_gem_framebuffer_info(struct seq_file *m, void *data)
+@@ -1424,6 +1424,7 @@ static int i915_gem_framebuffer_info(str
describe_obj(m, fb->obj);
seq_putc(m, '\n');
mutex_unlock(&dev->mode_config.mutex);
@@ -241,11 +232,9 @@ index a569597125db..72d04588eccb 100644
mutex_lock(&dev->mode_config.fb_lock);
list_for_each_entry(fb, &dev->mode_config.fb_list, base.head) {
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index aa70c8d292d8..8294e86744f9 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1416,6 +1416,7 @@ void i915_master_destroy(struct drm_device *dev, struct drm_master *master)
+@@ -1424,6 +1424,7 @@ void i915_master_destroy(struct drm_devi
master->driver_priv = NULL;
}
@@ -253,7 +242,7 @@ index aa70c8d292d8..8294e86744f9 100644
static void i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
{
struct apertures_struct *ap;
-@@ -1436,6 +1437,11 @@ static void i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
+@@ -1444,6 +1445,11 @@ static void i915_kick_out_firmware_fb(st
kfree(ap);
}
@@ -265,8 +254,6 @@ index aa70c8d292d8..8294e86744f9 100644
static void i915_dump_device_info(struct drm_i915_private *dev_priv)
{
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index bdedebed44dd..6ef70e23de9c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1368,8 +1368,10 @@ typedef struct drm_i915_private {
@@ -280,8 +267,6 @@ index bdedebed44dd..6ef70e23de9c 100644
/*
* The console may be contended at resume, but we don't
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 575c154dbd2a..34b1008a41c0 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -7335,6 +7335,7 @@ static struct drm_framebuffer *
@@ -292,7 +277,7 @@ index 575c154dbd2a..34b1008a41c0 100644
struct drm_i915_private *dev_priv = dev->dev_private;
struct drm_i915_gem_object *obj;
struct drm_framebuffer *fb;
-@@ -7355,6 +7356,9 @@ mode_fits_in_fbdev(struct drm_device *dev,
+@@ -7355,6 +7356,9 @@ mode_fits_in_fbdev(struct drm_device *de
return NULL;
return fb;
@@ -302,7 +287,7 @@ index 575c154dbd2a..34b1008a41c0 100644
}
bool intel_get_load_detect_pipe(struct drm_connector *connector,
-@@ -10101,6 +10105,12 @@ intel_user_framebuffer_create(struct drm_device *dev,
+@@ -10101,6 +10105,12 @@ intel_user_framebuffer_create(struct drm
return intel_framebuffer_create(dev, mode_cmd, obj);
}
@@ -315,11 +300,9 @@ index 575c154dbd2a..34b1008a41c0 100644
static const struct drm_mode_config_funcs intel_mode_funcs = {
.fb_create = intel_user_framebuffer_create,
.output_poll_changed = intel_fb_output_poll_changed,
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index b497a96af082..0f8402bc4222 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -713,14 +713,36 @@ bool intel_dsi_init(struct drm_device *dev);
+@@ -713,14 +713,36 @@ bool intel_dsi_init(struct drm_device *d
void intel_dvo_init(struct drm_device *dev);
@@ -363,6 +346,3 @@ index b497a96af082..0f8402bc4222 100644
/* intel_hdmi.c */
void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port);
---
-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 07788fca367ddc..257e021b105a1e 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
@@ -14,16 +14,15 @@ Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 0632fef669912a63c99c8ce4c2ca10c6ea04f0df)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- drivers/gpu/drm/i915/Makefile | 2 +-
- drivers/gpu/drm/i915/i915_dma.c | 2 +-
- drivers/gpu/drm/i915/intel_display.c | 4 ++--
- drivers/gpu/drm/i915/intel_drv.h | 8 ++++----
- drivers/gpu/drm/i915/{intel_fb.c => intel_fbdev.c} | 4 ++--
- 5 files changed, 10 insertions(+), 10 deletions(-)
+ drivers/gpu/drm/i915/Makefile | 2
+ drivers/gpu/drm/i915/i915_dma.c | 2
+ drivers/gpu/drm/i915/intel_display.c | 4
+ drivers/gpu/drm/i915/intel_drv.h | 8
+ drivers/gpu/drm/i915/intel_fb.c | 323 -----------------------------------
+ drivers/gpu/drm/i915/intel_fbdev.c | 323 +++++++++++++++++++++++++++++++++++
+ 6 files changed, 331 insertions(+), 331 deletions(-)
rename drivers/gpu/drm/i915/{intel_fb.c => intel_fbdev.c} (98%)
-diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
-index 45e14a8db2f3..41838eaa799c 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -53,7 +53,7 @@ i915-$(CONFIG_COMPAT) += i915_ioc32.o
@@ -35,11 +34,9 @@ index 45e14a8db2f3..41838eaa799c 100644
obj-$(CONFIG_DRM_I915) += i915.o
-diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index 8294e86744f9..a97f8e1b213d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1853,7 +1853,7 @@ void i915_driver_lastclose(struct drm_device * dev)
+@@ -1861,7 +1861,7 @@ void i915_driver_lastclose(struct drm_de
return;
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
@@ -48,11 +45,9 @@ index 8294e86744f9..a97f8e1b213d 100644
vga_switcheroo_process_delayed_switch();
return;
}
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 34b1008a41c0..548b1c914a1f 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -10106,14 +10106,14 @@ intel_user_framebuffer_create(struct drm_device *dev,
+@@ -10106,14 +10106,14 @@ intel_user_framebuffer_create(struct drm
}
#ifndef CONFIG_DRM_I915_FBDEV
@@ -69,11 +64,9 @@ index 34b1008a41c0..548b1c914a1f 100644
};
/* Set up chip specific display functions */
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 0f8402bc4222..189257df7a0f 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -713,14 +713,14 @@ bool intel_dsi_init(struct drm_device *dev);
+@@ -713,14 +713,14 @@ bool intel_dsi_init(struct drm_device *d
void intel_dvo_init(struct drm_device *dev);
@@ -91,7 +84,7 @@ index 0f8402bc4222..189257df7a0f 100644
#else
static inline int intel_fbdev_init(struct drm_device *dev)
{
-@@ -739,7 +739,7 @@ static inline void intel_fbdev_set_suspend(struct drm_device *dev, int state)
+@@ -739,7 +739,7 @@ static inline void intel_fbdev_set_suspe
{
}
@@ -100,29 +93,655 @@ index 0f8402bc4222..189257df7a0f 100644
{
}
#endif
-diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fbdev.c
-similarity index 98%
-rename from drivers/gpu/drm/i915/intel_fb.c
-rename to drivers/gpu/drm/i915/intel_fbdev.c
-index d883b77b1b78..acc839569c3f 100644
--- a/drivers/gpu/drm/i915/intel_fb.c
-+++ b/drivers/gpu/drm/i915/intel_fbdev.c
-@@ -299,13 +299,13 @@ void intel_fbdev_set_suspend(struct drm_device *dev, int state)
-
- MODULE_LICENSE("GPL and additional rights");
-
++++ /dev/null
+@@ -1,323 +0,0 @@
+-/*
+- * Copyright © 2007 David Airlie
+- *
+- * Permission is hereby granted, free of charge, to any person obtaining a
+- * copy of this software and associated documentation files (the "Software"),
+- * to deal in the Software without restriction, including without limitation
+- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+- * and/or sell copies of the Software, and to permit persons to whom the
+- * Software is furnished to do so, subject to the following conditions:
+- *
+- * The above copyright notice and this permission notice (including the next
+- * paragraph) shall be included in all copies or substantial portions of the
+- * Software.
+- *
+- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+- * DEALINGS IN THE SOFTWARE.
+- *
+- * Authors:
+- * David Airlie
+- */
+-
+-#include <linux/module.h>
+-#include <linux/kernel.h>
+-#include <linux/errno.h>
+-#include <linux/string.h>
+-#include <linux/mm.h>
+-#include <linux/tty.h>
+-#include <linux/sysrq.h>
+-#include <linux/delay.h>
+-#include <linux/fb.h>
+-#include <linux/init.h>
+-#include <linux/vga_switcheroo.h>
+-
+-#include <drm/drmP.h>
+-#include <drm/drm_crtc.h>
+-#include <drm/drm_fb_helper.h>
+-#include "intel_drv.h"
+-#include <drm/i915_drm.h>
+-#include "i915_drv.h"
+-
+-static struct fb_ops intelfb_ops = {
+- .owner = THIS_MODULE,
+- .fb_check_var = drm_fb_helper_check_var,
+- .fb_set_par = drm_fb_helper_set_par,
+- .fb_fillrect = cfb_fillrect,
+- .fb_copyarea = cfb_copyarea,
+- .fb_imageblit = cfb_imageblit,
+- .fb_pan_display = drm_fb_helper_pan_display,
+- .fb_blank = drm_fb_helper_blank,
+- .fb_setcmap = drm_fb_helper_setcmap,
+- .fb_debug_enter = drm_fb_helper_debug_enter,
+- .fb_debug_leave = drm_fb_helper_debug_leave,
+-};
+-
+-static int intelfb_create(struct drm_fb_helper *helper,
+- struct drm_fb_helper_surface_size *sizes)
+-{
+- struct intel_fbdev *ifbdev =
+- container_of(helper, struct intel_fbdev, helper);
+- struct drm_device *dev = helper->dev;
+- struct drm_i915_private *dev_priv = dev->dev_private;
+- struct fb_info *info;
+- struct drm_framebuffer *fb;
+- struct drm_mode_fb_cmd2 mode_cmd = {};
+- struct drm_i915_gem_object *obj;
+- struct device *device = &dev->pdev->dev;
+- int size, ret;
+-
+- /* we don't do packed 24bpp */
+- if (sizes->surface_bpp == 24)
+- sizes->surface_bpp = 32;
+-
+- mode_cmd.width = sizes->surface_width;
+- mode_cmd.height = sizes->surface_height;
+-
+- mode_cmd.pitches[0] = ALIGN(mode_cmd.width * ((sizes->surface_bpp + 7) /
+- 8), 64);
+- mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
+- sizes->surface_depth);
+-
+- size = mode_cmd.pitches[0] * mode_cmd.height;
+- size = ALIGN(size, PAGE_SIZE);
+- obj = i915_gem_object_create_stolen(dev, size);
+- if (obj == NULL)
+- obj = i915_gem_alloc_object(dev, size);
+- if (!obj) {
+- DRM_ERROR("failed to allocate framebuffer\n");
+- ret = -ENOMEM;
+- goto out;
+- }
+-
+- mutex_lock(&dev->struct_mutex);
+-
+- /* Flush everything out, we'll be doing GTT only from now on */
+- ret = intel_pin_and_fence_fb_obj(dev, obj, NULL);
+- if (ret) {
+- DRM_ERROR("failed to pin fb: %d\n", ret);
+- goto out_unref;
+- }
+-
+- info = framebuffer_alloc(0, device);
+- if (!info) {
+- ret = -ENOMEM;
+- goto out_unpin;
+- }
+-
+- info->par = helper;
+-
+- ret = intel_framebuffer_init(dev, &ifbdev->ifb, &mode_cmd, obj);
+- if (ret)
+- goto out_unpin;
+-
+- fb = &ifbdev->ifb.base;
+-
+- ifbdev->helper.fb = fb;
+- ifbdev->helper.fbdev = info;
+-
+- strcpy(info->fix.id, "inteldrmfb");
+-
+- info->flags = FBINFO_DEFAULT | FBINFO_CAN_FORCE_OUTPUT;
+- info->fbops = &intelfb_ops;
+-
+- ret = fb_alloc_cmap(&info->cmap, 256, 0);
+- if (ret) {
+- ret = -ENOMEM;
+- goto out_unpin;
+- }
+- /* setup aperture base/size for vesafb takeover */
+- info->apertures = alloc_apertures(1);
+- if (!info->apertures) {
+- ret = -ENOMEM;
+- goto out_unpin;
+- }
+- info->apertures->ranges[0].base = dev->mode_config.fb_base;
+- info->apertures->ranges[0].size = dev_priv->gtt.mappable_end;
+-
+- info->fix.smem_start = dev->mode_config.fb_base + i915_gem_obj_ggtt_offset(obj);
+- info->fix.smem_len = size;
+-
+- info->screen_base =
+- ioremap_wc(dev_priv->gtt.mappable_base + i915_gem_obj_ggtt_offset(obj),
+- size);
+- if (!info->screen_base) {
+- ret = -ENOSPC;
+- goto out_unpin;
+- }
+- info->screen_size = size;
+-
+- /* This driver doesn't need a VT switch to restore the mode on resume */
+- info->skip_vt_switch = true;
+-
+- drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth);
+- drm_fb_helper_fill_var(info, &ifbdev->helper, sizes->fb_width, sizes->fb_height);
+-
+- /* If the object is shmemfs backed, it will have given us zeroed pages.
+- * If the object is stolen however, it will be full of whatever
+- * garbage was left in there.
+- */
+- if (ifbdev->ifb.obj->stolen)
+- memset_io(info->screen_base, 0, info->screen_size);
+-
+- /* Use default scratch pixmap (info->pixmap.flags = FB_PIXMAP_SYSTEM) */
+-
+- DRM_DEBUG_KMS("allocated %dx%d fb: 0x%08lx, bo %p\n",
+- fb->width, fb->height,
+- i915_gem_obj_ggtt_offset(obj), obj);
+-
+-
+- mutex_unlock(&dev->struct_mutex);
+- vga_switcheroo_client_fb_set(dev->pdev, info);
+- return 0;
+-
+-out_unpin:
+- i915_gem_object_unpin(obj);
+-out_unref:
+- drm_gem_object_unreference(&obj->base);
+- mutex_unlock(&dev->struct_mutex);
+-out:
+- return ret;
+-}
+-
+-/** Sets the color ramps on behalf of RandR */
+-static void intel_crtc_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green,
+- u16 blue, int regno)
+-{
+- struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
+-
+- intel_crtc->lut_r[regno] = red >> 8;
+- intel_crtc->lut_g[regno] = green >> 8;
+- intel_crtc->lut_b[regno] = blue >> 8;
+-}
+-
+-static void intel_crtc_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green,
+- u16 *blue, int regno)
+-{
+- struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
+-
+- *red = intel_crtc->lut_r[regno] << 8;
+- *green = intel_crtc->lut_g[regno] << 8;
+- *blue = intel_crtc->lut_b[regno] << 8;
+-}
+-
+-static struct drm_fb_helper_funcs intel_fb_helper_funcs = {
+- .gamma_set = intel_crtc_fb_gamma_set,
+- .gamma_get = intel_crtc_fb_gamma_get,
+- .fb_probe = intelfb_create,
+-};
+-
+-static void intel_fbdev_destroy(struct drm_device *dev,
+- struct intel_fbdev *ifbdev)
+-{
+- if (ifbdev->helper.fbdev) {
+- struct fb_info *info = ifbdev->helper.fbdev;
+-
+- unregister_framebuffer(info);
+- iounmap(info->screen_base);
+- if (info->cmap.len)
+- fb_dealloc_cmap(&info->cmap);
+-
+- framebuffer_release(info);
+- }
+-
+- drm_fb_helper_fini(&ifbdev->helper);
+-
+- drm_framebuffer_unregister_private(&ifbdev->ifb.base);
+- intel_framebuffer_fini(&ifbdev->ifb);
+-}
+-
+-int intel_fbdev_init(struct drm_device *dev)
+-{
+- struct intel_fbdev *ifbdev;
+- struct drm_i915_private *dev_priv = dev->dev_private;
+- int ret;
+-
+- ifbdev = kzalloc(sizeof(*ifbdev), GFP_KERNEL);
+- if (!ifbdev)
+- return -ENOMEM;
+-
+- dev_priv->fbdev = ifbdev;
+- ifbdev->helper.funcs = &intel_fb_helper_funcs;
+-
+- ret = drm_fb_helper_init(dev, &ifbdev->helper,
+- INTEL_INFO(dev)->num_pipes,
+- 4);
+- if (ret) {
+- kfree(ifbdev);
+- return ret;
+- }
+-
+- drm_fb_helper_single_add_all_connectors(&ifbdev->helper);
+-
+- return 0;
+-}
+-
+-void intel_fbdev_initial_config(struct drm_device *dev)
+-{
+- struct drm_i915_private *dev_priv = dev->dev_private;
+-
+- /* Due to peculiar init order wrt to hpd handling this is separate. */
+- drm_fb_helper_initial_config(&dev_priv->fbdev->helper, 32);
+-}
+-
+-void intel_fbdev_fini(struct drm_device *dev)
+-{
+- struct drm_i915_private *dev_priv = dev->dev_private;
+- if (!dev_priv->fbdev)
+- return;
+-
+- intel_fbdev_destroy(dev, dev_priv->fbdev);
+- kfree(dev_priv->fbdev);
+- dev_priv->fbdev = NULL;
+-}
+-
+-void intel_fbdev_set_suspend(struct drm_device *dev, int state)
+-{
+- struct drm_i915_private *dev_priv = dev->dev_private;
+- struct intel_fbdev *ifbdev = dev_priv->fbdev;
+- struct fb_info *info;
+-
+- if (!ifbdev)
+- return;
+-
+- info = ifbdev->helper.fbdev;
+-
+- /* On resume from hibernation: If the object is shmemfs backed, it has
+- * been restored from swap. If the object is stolen however, it will be
+- * full of whatever garbage was left in there.
+- */
+- if (state == FBINFO_STATE_RUNNING && ifbdev->ifb.obj->stolen)
+- memset_io(info->screen_base, 0, info->screen_size);
+-
+- fb_set_suspend(info, state);
+-}
+-
+-MODULE_LICENSE("GPL and additional rights");
+-
-void intel_fb_output_poll_changed(struct drm_device *dev)
-+void intel_fbdev_output_poll_changed(struct drm_device *dev)
- {
- struct drm_i915_private *dev_priv = dev->dev_private;
- drm_fb_helper_hotplug_event(&dev_priv->fbdev->helper);
- }
-
+-{
+- struct drm_i915_private *dev_priv = dev->dev_private;
+- drm_fb_helper_hotplug_event(&dev_priv->fbdev->helper);
+-}
+-
-void intel_fb_restore_mode(struct drm_device *dev)
+-{
+- int ret;
+- struct drm_i915_private *dev_priv = dev->dev_private;
+-
+- if (INTEL_INFO(dev)->num_pipes == 0)
+- return;
+-
+- drm_modeset_lock_all(dev);
+-
+- ret = drm_fb_helper_restore_fbdev_mode(&dev_priv->fbdev->helper);
+- if (ret)
+- DRM_DEBUG("failed to restore crtc mode\n");
+-
+- drm_modeset_unlock_all(dev);
+-}
+--- /dev/null
++++ b/drivers/gpu/drm/i915/intel_fbdev.c
+@@ -0,0 +1,323 @@
++/*
++ * Copyright © 2007 David Airlie
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the "Software"),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the next
++ * paragraph) shall be included in all copies or substantial portions of the
++ * Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++ * DEALINGS IN THE SOFTWARE.
++ *
++ * Authors:
++ * David Airlie
++ */
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/errno.h>
++#include <linux/string.h>
++#include <linux/mm.h>
++#include <linux/tty.h>
++#include <linux/sysrq.h>
++#include <linux/delay.h>
++#include <linux/fb.h>
++#include <linux/init.h>
++#include <linux/vga_switcheroo.h>
++
++#include <drm/drmP.h>
++#include <drm/drm_crtc.h>
++#include <drm/drm_fb_helper.h>
++#include "intel_drv.h"
++#include <drm/i915_drm.h>
++#include "i915_drv.h"
++
++static struct fb_ops intelfb_ops = {
++ .owner = THIS_MODULE,
++ .fb_check_var = drm_fb_helper_check_var,
++ .fb_set_par = drm_fb_helper_set_par,
++ .fb_fillrect = cfb_fillrect,
++ .fb_copyarea = cfb_copyarea,
++ .fb_imageblit = cfb_imageblit,
++ .fb_pan_display = drm_fb_helper_pan_display,
++ .fb_blank = drm_fb_helper_blank,
++ .fb_setcmap = drm_fb_helper_setcmap,
++ .fb_debug_enter = drm_fb_helper_debug_enter,
++ .fb_debug_leave = drm_fb_helper_debug_leave,
++};
++
++static int intelfb_create(struct drm_fb_helper *helper,
++ struct drm_fb_helper_surface_size *sizes)
++{
++ struct intel_fbdev *ifbdev =
++ container_of(helper, struct intel_fbdev, helper);
++ struct drm_device *dev = helper->dev;
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ struct fb_info *info;
++ struct drm_framebuffer *fb;
++ struct drm_mode_fb_cmd2 mode_cmd = {};
++ struct drm_i915_gem_object *obj;
++ struct device *device = &dev->pdev->dev;
++ int size, ret;
++
++ /* we don't do packed 24bpp */
++ if (sizes->surface_bpp == 24)
++ sizes->surface_bpp = 32;
++
++ mode_cmd.width = sizes->surface_width;
++ mode_cmd.height = sizes->surface_height;
++
++ mode_cmd.pitches[0] = ALIGN(mode_cmd.width * ((sizes->surface_bpp + 7) /
++ 8), 64);
++ mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
++ sizes->surface_depth);
++
++ size = mode_cmd.pitches[0] * mode_cmd.height;
++ size = ALIGN(size, PAGE_SIZE);
++ obj = i915_gem_object_create_stolen(dev, size);
++ if (obj == NULL)
++ obj = i915_gem_alloc_object(dev, size);
++ if (!obj) {
++ DRM_ERROR("failed to allocate framebuffer\n");
++ ret = -ENOMEM;
++ goto out;
++ }
++
++ mutex_lock(&dev->struct_mutex);
++
++ /* Flush everything out, we'll be doing GTT only from now on */
++ ret = intel_pin_and_fence_fb_obj(dev, obj, NULL);
++ if (ret) {
++ DRM_ERROR("failed to pin fb: %d\n", ret);
++ goto out_unref;
++ }
++
++ info = framebuffer_alloc(0, device);
++ if (!info) {
++ ret = -ENOMEM;
++ goto out_unpin;
++ }
++
++ info->par = helper;
++
++ ret = intel_framebuffer_init(dev, &ifbdev->ifb, &mode_cmd, obj);
++ if (ret)
++ goto out_unpin;
++
++ fb = &ifbdev->ifb.base;
++
++ ifbdev->helper.fb = fb;
++ ifbdev->helper.fbdev = info;
++
++ strcpy(info->fix.id, "inteldrmfb");
++
++ info->flags = FBINFO_DEFAULT | FBINFO_CAN_FORCE_OUTPUT;
++ info->fbops = &intelfb_ops;
++
++ ret = fb_alloc_cmap(&info->cmap, 256, 0);
++ if (ret) {
++ ret = -ENOMEM;
++ goto out_unpin;
++ }
++ /* setup aperture base/size for vesafb takeover */
++ info->apertures = alloc_apertures(1);
++ if (!info->apertures) {
++ ret = -ENOMEM;
++ goto out_unpin;
++ }
++ info->apertures->ranges[0].base = dev->mode_config.fb_base;
++ info->apertures->ranges[0].size = dev_priv->gtt.mappable_end;
++
++ info->fix.smem_start = dev->mode_config.fb_base + i915_gem_obj_ggtt_offset(obj);
++ info->fix.smem_len = size;
++
++ info->screen_base =
++ ioremap_wc(dev_priv->gtt.mappable_base + i915_gem_obj_ggtt_offset(obj),
++ size);
++ if (!info->screen_base) {
++ ret = -ENOSPC;
++ goto out_unpin;
++ }
++ info->screen_size = size;
++
++ /* This driver doesn't need a VT switch to restore the mode on resume */
++ info->skip_vt_switch = true;
++
++ drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth);
++ drm_fb_helper_fill_var(info, &ifbdev->helper, sizes->fb_width, sizes->fb_height);
++
++ /* If the object is shmemfs backed, it will have given us zeroed pages.
++ * If the object is stolen however, it will be full of whatever
++ * garbage was left in there.
++ */
++ if (ifbdev->ifb.obj->stolen)
++ memset_io(info->screen_base, 0, info->screen_size);
++
++ /* Use default scratch pixmap (info->pixmap.flags = FB_PIXMAP_SYSTEM) */
++
++ DRM_DEBUG_KMS("allocated %dx%d fb: 0x%08lx, bo %p\n",
++ fb->width, fb->height,
++ i915_gem_obj_ggtt_offset(obj), obj);
++
++
++ mutex_unlock(&dev->struct_mutex);
++ vga_switcheroo_client_fb_set(dev->pdev, info);
++ return 0;
++
++out_unpin:
++ i915_gem_object_unpin(obj);
++out_unref:
++ drm_gem_object_unreference(&obj->base);
++ mutex_unlock(&dev->struct_mutex);
++out:
++ return ret;
++}
++
++/** Sets the color ramps on behalf of RandR */
++static void intel_crtc_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green,
++ u16 blue, int regno)
++{
++ struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
++
++ intel_crtc->lut_r[regno] = red >> 8;
++ intel_crtc->lut_g[regno] = green >> 8;
++ intel_crtc->lut_b[regno] = blue >> 8;
++}
++
++static void intel_crtc_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green,
++ u16 *blue, int regno)
++{
++ struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
++
++ *red = intel_crtc->lut_r[regno] << 8;
++ *green = intel_crtc->lut_g[regno] << 8;
++ *blue = intel_crtc->lut_b[regno] << 8;
++}
++
++static struct drm_fb_helper_funcs intel_fb_helper_funcs = {
++ .gamma_set = intel_crtc_fb_gamma_set,
++ .gamma_get = intel_crtc_fb_gamma_get,
++ .fb_probe = intelfb_create,
++};
++
++static void intel_fbdev_destroy(struct drm_device *dev,
++ struct intel_fbdev *ifbdev)
++{
++ if (ifbdev->helper.fbdev) {
++ struct fb_info *info = ifbdev->helper.fbdev;
++
++ unregister_framebuffer(info);
++ iounmap(info->screen_base);
++ if (info->cmap.len)
++ fb_dealloc_cmap(&info->cmap);
++
++ framebuffer_release(info);
++ }
++
++ drm_fb_helper_fini(&ifbdev->helper);
++
++ drm_framebuffer_unregister_private(&ifbdev->ifb.base);
++ intel_framebuffer_fini(&ifbdev->ifb);
++}
++
++int intel_fbdev_init(struct drm_device *dev)
++{
++ struct intel_fbdev *ifbdev;
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ int ret;
++
++ ifbdev = kzalloc(sizeof(*ifbdev), GFP_KERNEL);
++ if (!ifbdev)
++ return -ENOMEM;
++
++ dev_priv->fbdev = ifbdev;
++ ifbdev->helper.funcs = &intel_fb_helper_funcs;
++
++ ret = drm_fb_helper_init(dev, &ifbdev->helper,
++ INTEL_INFO(dev)->num_pipes,
++ 4);
++ if (ret) {
++ kfree(ifbdev);
++ return ret;
++ }
++
++ drm_fb_helper_single_add_all_connectors(&ifbdev->helper);
++
++ return 0;
++}
++
++void intel_fbdev_initial_config(struct drm_device *dev)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++
++ /* Due to peculiar init order wrt to hpd handling this is separate. */
++ drm_fb_helper_initial_config(&dev_priv->fbdev->helper, 32);
++}
++
++void intel_fbdev_fini(struct drm_device *dev)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ if (!dev_priv->fbdev)
++ return;
++
++ intel_fbdev_destroy(dev, dev_priv->fbdev);
++ kfree(dev_priv->fbdev);
++ dev_priv->fbdev = NULL;
++}
++
++void intel_fbdev_set_suspend(struct drm_device *dev, int state)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ struct intel_fbdev *ifbdev = dev_priv->fbdev;
++ struct fb_info *info;
++
++ if (!ifbdev)
++ return;
++
++ info = ifbdev->helper.fbdev;
++
++ /* On resume from hibernation: If the object is shmemfs backed, it has
++ * been restored from swap. If the object is stolen however, it will be
++ * full of whatever garbage was left in there.
++ */
++ if (state == FBINFO_STATE_RUNNING && ifbdev->ifb.obj->stolen)
++ memset_io(info->screen_base, 0, info->screen_size);
++
++ fb_set_suspend(info, state);
++}
++
++MODULE_LICENSE("GPL and additional rights");
++
++void intel_fbdev_output_poll_changed(struct drm_device *dev)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ drm_fb_helper_hotplug_event(&dev_priv->fbdev->helper);
++}
++
+void intel_fbdev_restore_mode(struct drm_device *dev)
- {
- int ret;
- struct drm_i915_private *dev_priv = dev->dev_private;
---
-1.8.5.rc3
-
++{
++ int ret;
++ struct drm_i915_private *dev_priv = dev->dev_private;
++
++ if (INTEL_INFO(dev)->num_pipes == 0)
++ return;
++
++ drm_modeset_lock_all(dev);
++
++ ret = drm_fb_helper_restore_fbdev_mode(&dev_priv->fbdev->helper);
++ if (ret)
++ DRM_DEBUG("failed to restore crtc mode\n");
++
++ drm_modeset_unlock_all(dev);
++}
diff --git a/patches.baytrail/1111-ALSA-hda-add-PCI-IDs-for-Intel-BayTrail.patch b/patches.baytrail/1111-ALSA-hda-add-PCI-IDs-for-Intel-BayTrail.patch
index 653721aaaa7c25..19b6ab4c99c122 100644
--- a/patches.baytrail/1111-ALSA-hda-add-PCI-IDs-for-Intel-BayTrail.patch
+++ b/patches.baytrail/1111-ALSA-hda-add-PCI-IDs-for-Intel-BayTrail.patch
@@ -11,14 +11,12 @@ Signed-off-by: Takashi Iwai <tiwai@suse.de>
(cherry picked from commit e44007e0f97fdae45b73cf61e9962493ddcc6114)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
- sound/pci/hda/hda_intel.c | 3 +++
+ sound/pci/hda/hda_intel.c | 3 +++
1 file changed, 3 insertions(+)
-diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
-index 624e6c044a44..26338818f2d4 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
-@@ -3879,6 +3879,9 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids) = {
+@@ -3883,6 +3883,9 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids)
/* Oaktrail */
{ PCI_DEVICE(0x8086, 0x080a),
.driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH_NOPM },
@@ -28,6 +26,3 @@ index 624e6c044a44..26338818f2d4 100644
/* ICH */
{ PCI_DEVICE(0x8086, 0x2668),
.driver_data = AZX_DRIVER_ICH | AZX_DCAPS_OLD_SSYNC |
---
-1.8.5.rc3
-
diff --git a/patches.ltsi/ltsi-makefile-addition.patch b/patches.ltsi/ltsi-makefile-addition.patch
index 36b85b8de53ffd..d6a7cc11da5c6c 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 = 25
+ SUBLEVEL = 26
-EXTRAVERSION =
+EXTRAVERSION = -ltsi
NAME = TOSSUG Baby Fish
diff --git a/patches.renesas/0014-clocksource-arch_timer-use-virtual-counters.patch b/patches.renesas/0014-clocksource-arch_timer-use-virtual-counters.patch
deleted file mode 100644
index 733961ba8aefcd..00000000000000
--- a/patches.renesas/0014-clocksource-arch_timer-use-virtual-counters.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From 5e0c108a4ec72c035491aad3e48971daa29886e0 Mon Sep 17 00:00:00 2001
-From: Mark Rutland <mark.rutland@arm.com>
-Date: Wed, 30 Jan 2013 17:51:26 +0000
-Subject: clocksource: arch_timer: use virtual counters
-
-Switching between reading the virtual or physical counters is
-problematic, as some core code wants a view of time before we're fully
-set up. Using a function pointer and switching the source after the
-first read can make time appear to go backwards, and having a check in
-the read function is an unfortunate block on what we want to be a fast
-path.
-
-Instead, this patch makes us always use the virtual counters. If we're a
-guest, or don't have hyp mode, we'll use the virtual timers, and as such
-don't care about CNTVOFF as long as it doesn't change in such a way as
-to make time appear to travel backwards. As the guest will use the
-virtual timers, a (potential) KVM host must use the physical timers
-(which can wake up the host even if they fire while a guest is
-executing), and hence a host must have CNTVOFF set to zero so as to have
-a consistent view of time between the physical timers and virtual
-counters.
-
-Signed-off-by: Mark Rutland <mark.rutland@arm.com>
-Acked-by: Catalin Marinas <catalin.marinas@arm.com>
-Acked-by: Marc Zyngier <marc.zyngier@arm.com>
-Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
-Cc: Rob Herring <rob.herring@calxeda.com>
-(cherry picked from commit 0d651e4e65e96989f72236bf83bd4c6e55eb6ce4)
-Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
----
- arch/arm/include/asm/arch_timer.h | 9 ---------
- arch/arm64/include/asm/arch_timer.h | 10 ----------
- drivers/clocksource/arm_arch_timer.c | 23 +++++------------------
- include/clocksource/arm_arch_timer.h | 2 +-
- 4 files changed, 6 insertions(+), 38 deletions(-)
-
-diff --git a/arch/arm/include/asm/arch_timer.h b/arch/arm/include/asm/arch_timer.h
-index 7c1bfc0a..accefe09 100644
---- a/arch/arm/include/asm/arch_timer.h
-+++ b/arch/arm/include/asm/arch_timer.h
-@@ -80,15 +80,6 @@ static inline u32 arch_timer_get_cntfrq(void)
- return val;
- }
-
--static inline u64 arch_counter_get_cntpct(void)
--{
-- u64 cval;
--
-- isb();
-- asm volatile("mrrc p15, 0, %Q0, %R0, c14" : "=r" (cval));
-- return cval;
--}
--
- static inline u64 arch_counter_get_cntvct(void)
- {
- u64 cval;
-diff --git a/arch/arm64/include/asm/arch_timer.h b/arch/arm64/include/asm/arch_timer.h
-index bf6ab242..d56ed11b 100644
---- a/arch/arm64/include/asm/arch_timer.h
-+++ b/arch/arm64/include/asm/arch_timer.h
-@@ -110,16 +110,6 @@ static inline void __cpuinit arch_counter_set_user_access(void)
- asm volatile("msr cntkctl_el1, %0" : : "r" (cntkctl));
- }
-
--static inline u64 arch_counter_get_cntpct(void)
--{
-- u64 cval;
--
-- isb();
-- asm volatile("mrs %0, cntpct_el0" : "=r" (cval));
--
-- return cval;
--}
--
- static inline u64 arch_counter_get_cntvct(void)
- {
- u64 cval;
-diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
-index a2b25418..053d846a 100644
---- a/drivers/clocksource/arm_arch_timer.c
-+++ b/drivers/clocksource/arm_arch_timer.c
-@@ -186,27 +186,19 @@ u32 arch_timer_get_rate(void)
- return arch_timer_rate;
- }
-
--/*
-- * Some external users of arch_timer_read_counter (e.g. sched_clock) may try to
-- * call it before it has been initialised. Rather than incur a performance
-- * penalty checking for initialisation, provide a default implementation that
-- * won't lead to time appearing to jump backwards.
-- */
--static u64 arch_timer_read_zero(void)
-+u64 arch_timer_read_counter(void)
- {
-- return 0;
-+ return arch_counter_get_cntvct();
- }
-
--u64 (*arch_timer_read_counter)(void) = arch_timer_read_zero;
--
- static cycle_t arch_counter_read(struct clocksource *cs)
- {
-- return arch_timer_read_counter();
-+ return arch_counter_get_cntvct();
- }
-
- static cycle_t arch_counter_read_cc(const struct cyclecounter *cc)
- {
-- return arch_timer_read_counter();
-+ return arch_counter_get_cntvct();
- }
-
- static struct clocksource clocksource_counter = {
-@@ -287,7 +279,7 @@ static int __init arch_timer_register(void)
- cyclecounter.mult = clocksource_counter.mult;
- cyclecounter.shift = clocksource_counter.shift;
- timecounter_init(&timecounter, &cyclecounter,
-- arch_counter_get_cntpct());
-+ arch_counter_get_cntvct());
-
- if (arch_timer_use_virtual) {
- ppi = arch_timer_ppi[VIRT_PPI];
-@@ -376,11 +368,6 @@ static void __init arch_timer_init(struct device_node *np)
- }
- }
-
-- if (arch_timer_use_virtual)
-- arch_timer_read_counter = arch_counter_get_cntvct;
-- else
-- arch_timer_read_counter = arch_counter_get_cntpct;
--
- arch_timer_register();
- arch_timer_arch_init();
- }
-diff --git a/include/clocksource/arm_arch_timer.h b/include/clocksource/arm_arch_timer.h
-index e6c9c4cc..c463ce99 100644
---- a/include/clocksource/arm_arch_timer.h
-+++ b/include/clocksource/arm_arch_timer.h
-@@ -32,7 +32,7 @@
- #ifdef CONFIG_ARM_ARCH_TIMER
-
- extern u32 arch_timer_get_rate(void);
--extern u64 (*arch_timer_read_counter)(void);
-+extern u64 arch_timer_read_counter(void);
- extern struct timecounter *arch_timer_get_timecounter(void);
-
- #else
---
-1.8.4.3.gca3854a
-
diff --git a/patches.workqueues/0001-workqueues-Introduce-new-flag-WQ_POWER_EFFICIENT-for.patch b/patches.workqueues/0001-workqueues-Introduce-new-flag-WQ_POWER_EFFICIENT-for.patch
index a9dc1751a07968..6a1ed1b93eb2fd 100644
--- a/patches.workqueues/0001-workqueues-Introduce-new-flag-WQ_POWER_EFFICIENT-for.patch
+++ b/patches.workqueues/0001-workqueues-Introduce-new-flag-WQ_POWER_EFFICIENT-for.patch
@@ -34,7 +34,7 @@ Signed-off-by: Mark Brown <broonie@linaro.org>
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
-@@ -3341,6 +3341,21 @@ bytes respectively. Such letter suffixes
+@@ -3345,6 +3345,21 @@ bytes respectively. Such letter suffixes
that this also can be controlled per-workqueue for
workqueues visible under /sys/bus/workqueue/.
diff --git a/patches.zynq/0014-arm-zynq-Migrate-platform-to-clock-controller.patch b/patches.zynq/0014-arm-zynq-Migrate-platform-to-clock-controller.patch
index fb6ebca5e6f633..8543de69ac624e 100644
--- a/patches.zynq/0014-arm-zynq-Migrate-platform-to-clock-controller.patch
+++ b/patches.zynq/0014-arm-zynq-Migrate-platform-to-clock-controller.patch
@@ -179,7 +179,7 @@ Signed-off-by: Yoshitake Kobayashi <yoshitake.kobayashi@toshiba.co.jp>
+obj-$(CONFIG_ARCH_ZYNQ) += zynq/
obj-$(CONFIG_ARCH_TEGRA) += tegra/
obj-$(CONFIG_PLAT_SAMSUNG) += samsung/
- obj-$(CONFIG_ARCH_SHMOBILE_MULTI) += shmobile/
+
--- /dev/null
+++ b/drivers/clk/zynq/Makefile
@@ -0,0 +1,3 @@
diff --git a/patches.zynq/0039-clk-add-CLK_SET_RATE_NO_REPARENT-flag.patch b/patches.zynq/0039-clk-add-CLK_SET_RATE_NO_REPARENT-flag.patch
index ec8840b5ca4473..7571adb9547e85 100644
--- a/patches.zynq/0039-clk-add-CLK_SET_RATE_NO_REPARENT-flag.patch
+++ b/patches.zynq/0039-clk-add-CLK_SET_RATE_NO_REPARENT-flag.patch
@@ -234,7 +234,7 @@ Signed-off-by: Yoshitake Kobayashi <yoshitake.kobayashi@toshiba.co.jp>
0, 0, &dbgclk_lock);
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
-@@ -28,6 +28,7 @@
+@@ -27,6 +27,7 @@
#define CLK_IS_ROOT BIT(4) /* root clk, has no parent */
#define CLK_IS_BASIC BIT(5) /* Basic clk, can't do a to_clk_foo() */
#define CLK_GET_RATE_NOCACHE BIT(6) /* do not use the cached clk rate */
diff --git a/patches.zynq/0070-arm-dt-zynq-Add-support-for-the-zc706-platform.patch b/patches.zynq/0070-arm-dt-zynq-Add-support-for-the-zc706-platform.patch
index adaaecadb53c69..0754279e94a359 100644
--- a/patches.zynq/0070-arm-dt-zynq-Add-support-for-the-zc706-platform.patch
+++ b/patches.zynq/0070-arm-dt-zynq-Add-support-for-the-zc706-platform.patch
@@ -20,7 +20,7 @@ Signed-off-by: Yoshitake Kobayashi <yoshitake.kobayashi@toshiba.co.jp>
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
-@@ -219,7 +219,8 @@ dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07
+@@ -216,7 +216,8 @@ dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07
wm8505-ref.dtb \
wm8650-mid.dtb \
wm8850-w70v2.dtb
diff --git a/series b/series
index 934421b9f475fa..225bd504c5c759 100644
--- a/series
+++ b/series
@@ -61,7 +61,6 @@ patches.renesas/0010-drivers-irq-chip-irq-gic-introduce-gic_cpu_if_down.patch
patches.renesas/0011-irqchip-renesas-intc-irqpin-DT-binding-for-sense-bit.patch
patches.renesas/0012-ARM-shmobile-irqpin-add-a-DT-property-to-enable-mask.patch
patches.renesas/0013-irqchip-renesas-irqc-Fix-irqc_probe-error-handling.patch
-patches.renesas/0014-clocksource-arch_timer-use-virtual-counters.patch
patches.renesas/0015-clocksource-arch_timer-Make-register-accessors-less-.patch
patches.renesas/0016-clocksource-arch_timer-Push-the-read-write-wrappers-.patch
patches.renesas/0017-clocksource-em_sti-Convert-to-devm_-managed-helpers.patch