]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 8 Jun 2014 01:50:09 +0000 (18:50 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 8 Jun 2014 01:50:09 +0000 (18:50 -0700)
added patches:
documentation-fix-docbooks-...-building.patch
drm-gf119-disp-fix-nasty-bug-which-can-clobber-sor0-s-clock-setup.patch
drm-radeon-also-try-gart-for-cpu-accessed-buffers.patch
drm-radeon-handle-non-vga-class-pci-devices-with-atrm.patch
hwmon-ntc_thermistor-fix-dependencies.patch
hwmon-ntc_thermistor-fix-of-device-id-mapping.patch

queue-3.10/documentation-fix-docbooks-...-building.patch [new file with mode: 0644]
queue-3.10/drm-gf119-disp-fix-nasty-bug-which-can-clobber-sor0-s-clock-setup.patch [new file with mode: 0644]
queue-3.10/drm-radeon-also-try-gart-for-cpu-accessed-buffers.patch [new file with mode: 0644]
queue-3.10/drm-radeon-handle-non-vga-class-pci-devices-with-atrm.patch [new file with mode: 0644]
queue-3.10/hwmon-ntc_thermistor-fix-dependencies.patch [new file with mode: 0644]
queue-3.10/hwmon-ntc_thermistor-fix-of-device-id-mapping.patch [new file with mode: 0644]
queue-3.10/series

diff --git a/queue-3.10/documentation-fix-docbooks-...-building.patch b/queue-3.10/documentation-fix-docbooks-...-building.patch
new file mode 100644 (file)
index 0000000..a35137b
--- /dev/null
@@ -0,0 +1,44 @@
+From e60cbeedc48d80689c249ab5dcc3c31ad0452dea Mon Sep 17 00:00:00 2001
+From: Johannes Berg <johannes.berg@intel.com>
+Date: Thu, 22 May 2014 11:54:23 -0700
+Subject: Documentation: fix DOCBOOKS=... building
+
+From: Johannes Berg <johannes.berg@intel.com>
+
+commit e60cbeedc48d80689c249ab5dcc3c31ad0452dea upstream.
+
+Prior to commit 4266129964b8 ("[media] DocBook: Move all media docbook
+stuff into its own directory") it was possible to build only a single
+(or more) book(s) by calling, for example
+
+    make htmldocs DOCBOOKS=80211.xml
+
+This now fails:
+
+    cp: target `.../Documentation/DocBook//media_api' is not a directory
+
+Ignore errors from that copy to make this possible again.
+
+Fixes: 4266129964b8 ("[media] DocBook: Move all media docbook stuff into its own directory")
+Signed-off-by: Johannes Berg <johannes.berg@intel.com>
+Acked-by: Randy Dunlap <rdunlap@xenotime.net>
+Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ Documentation/DocBook/media/Makefile |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/Documentation/DocBook/media/Makefile
++++ b/Documentation/DocBook/media/Makefile
+@@ -195,7 +195,7 @@ DVB_DOCUMENTED = \
+ #
+ install_media_images = \
+-      $(Q)cp $(OBJIMGFILES) $(MEDIA_SRC_DIR)/v4l/*.svg $(MEDIA_OBJ_DIR)/media_api
++      $(Q)-cp $(OBJIMGFILES) $(MEDIA_SRC_DIR)/v4l/*.svg $(MEDIA_OBJ_DIR)/media_api
+ $(MEDIA_OBJ_DIR)/%: $(MEDIA_SRC_DIR)/%.b64
+       $(Q)base64 -d $< >$@
diff --git a/queue-3.10/drm-gf119-disp-fix-nasty-bug-which-can-clobber-sor0-s-clock-setup.patch b/queue-3.10/drm-gf119-disp-fix-nasty-bug-which-can-clobber-sor0-s-clock-setup.patch
new file mode 100644 (file)
index 0000000..d0d24af
--- /dev/null
@@ -0,0 +1,30 @@
+From 0f1d360b2ee3a2a0f510d3f1bcd3f5ebe5d41265 Mon Sep 17 00:00:00 2001
+From: Ben Skeggs <bskeggs@redhat.com>
+Date: Tue, 20 May 2014 16:13:54 +1000
+Subject: drm/gf119-/disp: fix nasty bug which can clobber SOR0's clock setup
+
+From: Ben Skeggs <bskeggs@redhat.com>
+
+commit 0f1d360b2ee3a2a0f510d3f1bcd3f5ebe5d41265 upstream.
+
+Fixes a LVDS bleed issue on Lenovo W530 that can occur under a
+number of circumstances.
+
+Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/nouveau/core/engine/disp/nvd0.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/nouveau/core/engine/disp/nvd0.c
++++ b/drivers/gpu/drm/nouveau/core/engine/disp/nvd0.c
+@@ -679,7 +679,7 @@ exec_clkcmp(struct nv50_disp_priv *priv,
+       }
+       if (outp == 8)
+-              return false;
++              return conf;
+       data = exec_lookup(priv, head, outp, ctrl, dcb, &ver, &hdr, &cnt, &len, &info1);
+       if (data == 0x0000)
diff --git a/queue-3.10/drm-radeon-also-try-gart-for-cpu-accessed-buffers.patch b/queue-3.10/drm-radeon-also-try-gart-for-cpu-accessed-buffers.patch
new file mode 100644 (file)
index 0000000..899f364
--- /dev/null
@@ -0,0 +1,72 @@
+From 544092596e8ac269f70e70961b5e9381909c9b1e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
+Date: Mon, 5 May 2014 18:40:12 +0200
+Subject: drm/radeon: also try GART for CPU accessed buffers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
+
+commit 544092596e8ac269f70e70961b5e9381909c9b1e upstream.
+
+Placing them exclusively into VRAM might not work all the time.
+
+Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=78297
+
+Signed-off-by: Christian König <christian.koenig@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/radeon/radeon_object.c |   38 +++++++++++++++++++--------------
+ 1 file changed, 23 insertions(+), 15 deletions(-)
+
+--- a/drivers/gpu/drm/radeon/radeon_object.c
++++ b/drivers/gpu/drm/radeon/radeon_object.c
+@@ -582,22 +582,30 @@ int radeon_bo_fault_reserve_notify(struc
+       rbo = container_of(bo, struct radeon_bo, tbo);
+       radeon_bo_check_tiling(rbo, 0, 0);
+       rdev = rbo->rdev;
+-      if (bo->mem.mem_type == TTM_PL_VRAM) {
+-              size = bo->mem.num_pages << PAGE_SHIFT;
+-              offset = bo->mem.start << PAGE_SHIFT;
+-              if ((offset + size) > rdev->mc.visible_vram_size) {
+-                      /* hurrah the memory is not visible ! */
+-                      radeon_ttm_placement_from_domain(rbo, RADEON_GEM_DOMAIN_VRAM);
+-                      rbo->placement.lpfn = rdev->mc.visible_vram_size >> PAGE_SHIFT;
+-                      r = ttm_bo_validate(bo, &rbo->placement, false, false);
+-                      if (unlikely(r != 0))
+-                              return r;
+-                      offset = bo->mem.start << PAGE_SHIFT;
+-                      /* this should not happen */
+-                      if ((offset + size) > rdev->mc.visible_vram_size)
+-                              return -EINVAL;
+-              }
++      if (bo->mem.mem_type != TTM_PL_VRAM)
++              return 0;
++
++      size = bo->mem.num_pages << PAGE_SHIFT;
++      offset = bo->mem.start << PAGE_SHIFT;
++      if ((offset + size) <= rdev->mc.visible_vram_size)
++              return 0;
++
++      /* hurrah the memory is not visible ! */
++      radeon_ttm_placement_from_domain(rbo, RADEON_GEM_DOMAIN_VRAM);
++      rbo->placement.lpfn = rdev->mc.visible_vram_size >> PAGE_SHIFT;
++      r = ttm_bo_validate(bo, &rbo->placement, false, false);
++      if (unlikely(r == -ENOMEM)) {
++              radeon_ttm_placement_from_domain(rbo, RADEON_GEM_DOMAIN_GTT);
++              return ttm_bo_validate(bo, &rbo->placement, false, false);
++      } else if (unlikely(r != 0)) {
++              return r;
+       }
++
++      offset = bo->mem.start << PAGE_SHIFT;
++      /* this should never happen */
++      if ((offset + size) > rdev->mc.visible_vram_size)
++              return -EINVAL;
++
+       return 0;
+ }
diff --git a/queue-3.10/drm-radeon-handle-non-vga-class-pci-devices-with-atrm.patch b/queue-3.10/drm-radeon-handle-non-vga-class-pci-devices-with-atrm.patch
new file mode 100644 (file)
index 0000000..a5bd907
--- /dev/null
@@ -0,0 +1,49 @@
+From d8ade3526b2aa0505132c404c05a38b73ea15490 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexdeucher@gmail.com>
+Date: Thu, 8 May 2014 20:04:03 -0400
+Subject: drm/radeon: handle non-VGA class pci devices with ATRM
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Alex Deucher <alexdeucher@gmail.com>
+
+commit d8ade3526b2aa0505132c404c05a38b73ea15490 upstream.
+
+Newer PX systems have non-VGA pci class dGPUs.  Update
+the ATRM fetch method to handle those cases.
+
+bug:
+https://bugzilla.kernel.org/show_bug.cgi?id=75401
+
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Christian König <christian.koenig@amd.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/radeon/radeon_bios.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+--- a/drivers/gpu/drm/radeon/radeon_bios.c
++++ b/drivers/gpu/drm/radeon/radeon_bios.c
+@@ -196,6 +196,20 @@ static bool radeon_atrm_get_bios(struct
+               }
+       }
++      if (!found) {
++              while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_OTHER << 8, pdev)) != NULL) {
++                      dhandle = ACPI_HANDLE(&pdev->dev);
++                      if (!dhandle)
++                              continue;
++
++                      status = acpi_get_handle(dhandle, "ATRM", &atrm_handle);
++                      if (!ACPI_FAILURE(status)) {
++                              found = true;
++                              break;
++                      }
++              }
++      }
++
+       if (!found)
+               return false;
diff --git a/queue-3.10/hwmon-ntc_thermistor-fix-dependencies.patch b/queue-3.10/hwmon-ntc_thermistor-fix-dependencies.patch
new file mode 100644 (file)
index 0000000..4ea0345
--- /dev/null
@@ -0,0 +1,66 @@
+From 59cf4243e557aa64ab2ef51280454aa1f3828e14 Mon Sep 17 00:00:00 2001
+From: Jean Delvare <jdelvare@suse.de>
+Date: Sun, 25 May 2014 17:23:08 +0200
+Subject: hwmon: (ntc_thermistor) Fix dependencies
+
+From: Jean Delvare <jdelvare@suse.de>
+
+commit 59cf4243e557aa64ab2ef51280454aa1f3828e14 upstream.
+
+In commit 9e8269de, support was added for ntc_thermistor devices being
+declared in the device tree and implemented on top of IIO. With that
+change, a dependency was added to the ntc_thermistor driver:
+
+       depends on (!OF && !IIO) || (OF && IIO)
+
+This construct has the drawback that the driver can no longer be
+selected when OF is set and IIO isn't, nor when IIO is set and OF is
+not. This is a regression for the original users of the driver.
+
+As the new code depends on IIO and is useless without OF, include it
+only if both are enabled, and set the dependencies accordingly. This
+is clearer, more simple and more correct.
+
+Signed-off-by: Jean Delvare <jdelvare@suse.de>
+Fixes: 9e8269de hwmon: (ntc_thermistor) Add DT with IIO support to NTC thermistor driver
+Reviewed-by: Guenter Roeck <linux@roeck-us.net>
+Cc: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
+Cc: Doug Anderson <dianders@chromium.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hwmon/Kconfig          |    2 +-
+ drivers/hwmon/ntc_thermistor.c |    4 +++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+--- a/drivers/hwmon/Kconfig
++++ b/drivers/hwmon/Kconfig
+@@ -944,7 +944,7 @@ config SENSORS_NCT6775
+ config SENSORS_NTC_THERMISTOR
+       tristate "NTC thermistor support"
+-      depends on (!OF && !IIO) || (OF && IIO)
++      depends on !OF || IIO=n || IIO
+       help
+         This driver supports NTC thermistors sensor reading and its
+         interpretation. The driver can also monitor the temperature and
+--- a/drivers/hwmon/ntc_thermistor.c
++++ b/drivers/hwmon/ntc_thermistor.c
+@@ -141,7 +141,7 @@ struct ntc_data {
+       char name[PLATFORM_NAME_SIZE];
+ };
+-#ifdef CONFIG_OF
++#if defined(CONFIG_OF) && IS_ENABLED(CONFIG_IIO)
+ static int ntc_adc_iio_read(struct ntc_thermistor_platform_data *pdata)
+ {
+       struct iio_channel *channel = pdata->chan;
+@@ -223,6 +223,8 @@ ntc_thermistor_parse_dt(struct platform_
+       return NULL;
+ }
++#define ntc_match     NULL
++
+ static void ntc_iio_channel_release(struct ntc_thermistor_platform_data *pdata)
+ { }
+ #endif
diff --git a/queue-3.10/hwmon-ntc_thermistor-fix-of-device-id-mapping.patch b/queue-3.10/hwmon-ntc_thermistor-fix-of-device-id-mapping.patch
new file mode 100644 (file)
index 0000000..a3059b1
--- /dev/null
@@ -0,0 +1,63 @@
+From ead82d6792ef5c600d535bca6ec50a4da14ff7c7 Mon Sep 17 00:00:00 2001
+From: Jean Delvare <jdelvare@suse.de>
+Date: Sun, 25 May 2014 17:23:08 +0200
+Subject: hwmon: (ntc_thermistor) Fix OF device ID mapping
+
+From: Jean Delvare <jdelvare@suse.de>
+
+commit ead82d6792ef5c600d535bca6ec50a4da14ff7c7 upstream.
+
+The mapping from OF device IDs to platform device IDs is wrong.
+TYPE_NCPXXWB473 is 0, TYPE_NCPXXWL333 is 1, so
+ntc_thermistor_id[TYPE_NCPXXWB473] is { "ncp15wb473", TYPE_NCPXXWB473 }
+while
+ntc_thermistor_id[TYPE_NCPXXWL333] is { "ncp18wb473", TYPE_NCPXXWB473 }.
+
+So the name is wrong for all but the "ntc,ncp15wb473" entry, and the
+type is wrong for the "ntc,ncp15wl333" entry.
+
+So map the entries by index, it is neither elegant nor robust but at
+least it is correct.
+
+Signed-off-by: Jean Delvare <jdelvare@suse.de>
+Fixes: 9e8269de hwmon: (ntc_thermistor) Add DT with IIO support to NTC thermistor driver
+Reviewed-by: Guenter Roeck <linux@roeck-us.net>
+Cc: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
+Cc: Doug Anderson <dianders@chromium.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hwmon/ntc_thermistor.c |   11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+--- a/drivers/hwmon/ntc_thermistor.c
++++ b/drivers/hwmon/ntc_thermistor.c
+@@ -44,6 +44,7 @@ struct ntc_compensation {
+       unsigned int    ohm;
+ };
++/* Order matters, ntc_match references the entries by index */
+ static const struct platform_device_id ntc_thermistor_id[] = {
+       { "ncp15wb473", TYPE_NCPXXWB473 },
+       { "ncp18wb473", TYPE_NCPXXWB473 },
+@@ -163,15 +164,15 @@ static int ntc_adc_iio_read(struct ntc_t
+ static const struct of_device_id ntc_match[] = {
+       { .compatible = "ntc,ncp15wb473",
+-              .data = &ntc_thermistor_id[TYPE_NCPXXWB473] },
++              .data = &ntc_thermistor_id[0] },
+       { .compatible = "ntc,ncp18wb473",
+-              .data = &ntc_thermistor_id[TYPE_NCPXXWB473] },
++              .data = &ntc_thermistor_id[1] },
+       { .compatible = "ntc,ncp21wb473",
+-              .data = &ntc_thermistor_id[TYPE_NCPXXWB473] },
++              .data = &ntc_thermistor_id[2] },
+       { .compatible = "ntc,ncp03wb473",
+-              .data = &ntc_thermistor_id[TYPE_NCPXXWB473] },
++              .data = &ntc_thermistor_id[3] },
+       { .compatible = "ntc,ncp15wl333",
+-              .data = &ntc_thermistor_id[TYPE_NCPXXWL333] },
++              .data = &ntc_thermistor_id[4] },
+       { },
+ };
+ MODULE_DEVICE_TABLE(of, ntc_match);
index afdbce7fcb74c35147626b7e2a88a318440e780f..141d25bfd7aef2543ee4581828e4c519aca29926 100644 (file)
@@ -5,3 +5,9 @@ perf-limit-perf_event_attr-sample_period-to-63-bits.patch
 perf-fix-race-in-removing-an-event.patch
 perf-evsel-fix-printing-of-perf_event_paranoid-message.patch
 mm-memory-failure.c-fix-memory-leak-by-race-between-poison-and-unpoison.patch
+documentation-fix-docbooks-...-building.patch
+hwmon-ntc_thermistor-fix-dependencies.patch
+hwmon-ntc_thermistor-fix-of-device-id-mapping.patch
+drm-gf119-disp-fix-nasty-bug-which-can-clobber-sor0-s-clock-setup.patch
+drm-radeon-also-try-gart-for-cpu-accessed-buffers.patch
+drm-radeon-handle-non-vga-class-pci-devices-with-atrm.patch