summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--baseconfig/x86/CONFIG_DRM_VBOXVIDEO1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_R8188EU1
-rw-r--r--config_generation4
-rw-r--r--gitrev2
-rw-r--r--iio-race-fix.patch83
-rw-r--r--kernel-aarch64-debug.config2
-rw-r--r--kernel-armv7hl-debug.config2
-rw-r--r--kernel-armv7hl-lpae-debug.config2
-rw-r--r--kernel-i686-PAE.config2
-rw-r--r--kernel-i686-PAEdebug.config2
-rw-r--r--kernel-i686-debug.config2
-rw-r--r--kernel-i686.config2
-rw-r--r--kernel-x86_64-debug.config4
-rw-r--r--kernel-x86_64.config4
-rw-r--r--kernel.spec15
-rw-r--r--sources2
16 files changed, 114 insertions, 16 deletions
diff --git a/baseconfig/x86/CONFIG_DRM_VBOXVIDEO b/baseconfig/x86/CONFIG_DRM_VBOXVIDEO
new file mode 100644
index 000000000..8597a5dbb
--- /dev/null
+++ b/baseconfig/x86/CONFIG_DRM_VBOXVIDEO
@@ -0,0 +1 @@
+CONFIG_DRM_VBOXVIDEO=m
diff --git a/baseconfig/x86/x86_64/CONFIG_R8188EU b/baseconfig/x86/x86_64/CONFIG_R8188EU
new file mode 100644
index 000000000..ed7c3546e
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_R8188EU
@@ -0,0 +1 @@
+CONFIG_R8188EU=m
diff --git a/config_generation b/config_generation
index e5dde85cf..0a234f27e 100644
--- a/config_generation
+++ b/config_generation
@@ -32,6 +32,6 @@ aarch64-debug=baseconfig:baseconfig-arm:baseconfig-arm-arm64:debugconfig:debugco
# arm
armv7hl=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-armv7
-armv7hl-debug=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-armv7:debugconfig:debugconfig-arm:debugconfig-arm-armv7
+armv7hl-debug=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-armv7:debugconfig:debugconfig-arm
armv7hl-lpae=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-lpae
-armv7hl-lpae-debug=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-lpae:debugconfig:debugconfig-arm:debugconfig-arm-armv7
+armv7hl-lpae-debug=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-lpae:debugconfig:debugconfig-arm
diff --git a/gitrev b/gitrev
index bebce1e8a..7e75b5c48 100644
--- a/gitrev
+++ b/gitrev
@@ -1 +1 @@
-fcd07350007bdcc0aab506fb9b5703fad48a6521
+510c8a899caf095cb13d09d203573deef15db2fe
diff --git a/iio-race-fix.patch b/iio-race-fix.patch
new file mode 100644
index 000000000..2661fa535
--- /dev/null
+++ b/iio-race-fix.patch
@@ -0,0 +1,83 @@
+From eafad73ed3851707fa6e3124a255fc049ff9545d Mon Sep 17 00:00:00 2001
+From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
+Date: Sat, 12 Aug 2017 09:09:21 -0700
+Subject: iio: hid-sensor-trigger: Fix the race with user space powering up
+ sensors
+
+It has been reported for a while that with iio-sensor-proxy service the
+rotation only works after one suspend/resume cycle. This required a wait
+in the systemd unit file to avoid race. I found a Yoga 900 where I could
+reproduce this.
+
+The problem scenerio is:
+- During sensor driver init, enable run time PM and also set a
+ auto-suspend for 3 seconds.
+ This result in one runtime resume. But there is a check to avoid
+a powerup in this sequence, but rpm is active
+- User space iio-sensor-proxy tries to power up the sensor. Since rpm is
+ active it will simply return. But sensors were not actually
+powered up in the prior sequence, so actaully the sensors will not work
+- After 3 seconds the auto suspend kicks
+
+If we add a wait in systemd service file to fire iio-sensor-proxy after
+3 seconds, then now everything will work as the runtime resume will
+actually powerup the sensor as this is a user request.
+
+To avoid this:
+- Remove the check to match user requested state, this will cause a
+ brief powerup, but if the iio-sensor-proxy starts immediately it will
+still work as the sensors are ON.
+- Also move the autosuspend delay to place when user requested turn off
+ of sensors, like after user finished raw read or buffer disable
+
+Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
+Tested-by: Bastien Nocera <hadess@hadess.net>
+Cc: <Stable@vger.kernel.org>
+Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
+---
+ drivers/iio/common/hid-sensors/hid-sensor-trigger.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
+index 16ade0a..0e4b379 100644
+--- a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
++++ b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
+@@ -111,8 +111,6 @@ static int _hid_sensor_power_state(struct hid_sensor_common *st, bool state)
+ s32 poll_value = 0;
+
+ if (state) {
+- if (!atomic_read(&st->user_requested_state))
+- return 0;
+ if (sensor_hub_device_open(st->hsdev))
+ return -EIO;
+
+@@ -161,6 +159,9 @@ static int _hid_sensor_power_state(struct hid_sensor_common *st, bool state)
+ &report_val);
+ }
+
++ pr_debug("HID_SENSOR %s set power_state %d report_state %d\n",
++ st->pdev->name, state_val, report_val);
++
+ sensor_hub_get_feature(st->hsdev, st->power_state.report_id,
+ st->power_state.index,
+ sizeof(state_val), &state_val);
+@@ -182,6 +183,7 @@ int hid_sensor_power_state(struct hid_sensor_common *st, bool state)
+ ret = pm_runtime_get_sync(&st->pdev->dev);
+ else {
+ pm_runtime_mark_last_busy(&st->pdev->dev);
++ pm_runtime_use_autosuspend(&st->pdev->dev);
+ ret = pm_runtime_put_autosuspend(&st->pdev->dev);
+ }
+ if (ret < 0) {
+@@ -285,8 +287,6 @@ int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name,
+ /* Default to 3 seconds, but can be changed from sysfs */
+ pm_runtime_set_autosuspend_delay(&attrb->pdev->dev,
+ 3000);
+- pm_runtime_use_autosuspend(&attrb->pdev->dev);
+-
+ return ret;
+ error_unreg_trigger:
+ iio_trigger_unregister(trig);
+--
+cgit v1.1
+
diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config
index c1cd3f2d8..525cce29d 100644
--- a/kernel-aarch64-debug.config
+++ b/kernel-aarch64-debug.config
@@ -1181,7 +1181,7 @@ CONFIG_DL2K=m
CONFIG_DLM_DEBUG=y
CONFIG_DLM=m
CONFIG_DM9102=m
-# CONFIG_DMA_API_DEBUG is not set
+CONFIG_DMA_API_DEBUG=y
CONFIG_DMA_BCM2835=m
CONFIG_DMA_CMA=y
# CONFIG_DMADEVICES_DEBUG is not set
diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config
index 3384fb812..4bfa3935a 100644
--- a/kernel-armv7hl-debug.config
+++ b/kernel-armv7hl-debug.config
@@ -1243,7 +1243,7 @@ CONFIG_DLM_DEBUG=y
CONFIG_DLM=m
# CONFIG_DM9000 is not set
CONFIG_DM9102=m
-# CONFIG_DMA_API_DEBUG is not set
+CONFIG_DMA_API_DEBUG=y
CONFIG_DMA_BCM2835=m
# CONFIG_DMA_CACHE_RWFO is not set
CONFIG_DMA_CMA=y
diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config
index ec766c062..da3311cdb 100644
--- a/kernel-armv7hl-lpae-debug.config
+++ b/kernel-armv7hl-lpae-debug.config
@@ -1191,7 +1191,7 @@ CONFIG_DLM_DEBUG=y
CONFIG_DLM=m
# CONFIG_DM9000 is not set
CONFIG_DM9102=m
-# CONFIG_DMA_API_DEBUG is not set
+CONFIG_DMA_API_DEBUG=y
CONFIG_DMA_BCM2835=m
# CONFIG_DMA_CACHE_RWFO is not set
CONFIG_DMA_CMA=y
diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config
index 26685d2db..cc31234c3 100644
--- a/kernel-i686-PAE.config
+++ b/kernel-i686-PAE.config
@@ -1167,7 +1167,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config
index 279602f9d..c896b6ab1 100644
--- a/kernel-i686-PAEdebug.config
+++ b/kernel-i686-PAEdebug.config
@@ -1178,7 +1178,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config
index c32b00dad..8541ed4cb 100644
--- a/kernel-i686-debug.config
+++ b/kernel-i686-debug.config
@@ -1178,7 +1178,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
diff --git a/kernel-i686.config b/kernel-i686.config
index 25f1d5c42..ced2e266a 100644
--- a/kernel-i686.config
+++ b/kernel-i686.config
@@ -1167,7 +1167,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config
index 02fc94229..5b46187aa 100644
--- a/kernel-x86_64-debug.config
+++ b/kernel-x86_64-debug.config
@@ -1218,7 +1218,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
@@ -4089,7 +4089,7 @@ CONFIG_QUOTA=y
CONFIG_R3964=m
CONFIG_R6040=m
CONFIG_R8169=m
-# CONFIG_R8188EU is not set
+CONFIG_R8188EU=m
CONFIG_R8712U=m
CONFIG_R8723AU=m # Jes Sorensen maintains this (rhbz 1100162)
CONFIG_RADIO_ADAPTERS=y
diff --git a/kernel-x86_64.config b/kernel-x86_64.config
index 37220c151..67b01320c 100644
--- a/kernel-x86_64.config
+++ b/kernel-x86_64.config
@@ -1207,7 +1207,7 @@ CONFIG_DRM_SIL_SII8620=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TOSHIBA_TC358767 is not set
CONFIG_DRM_UDL=m
-# CONFIG_DRM_VBOXVIDEO is not set
+CONFIG_DRM_VBOXVIDEO=m
CONFIG_DRM_VGEM=m
CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
@@ -4068,7 +4068,7 @@ CONFIG_QUOTA=y
CONFIG_R3964=m
CONFIG_R6040=m
CONFIG_R8169=m
-# CONFIG_R8188EU is not set
+CONFIG_R8188EU=m
CONFIG_R8712U=m
CONFIG_R8723AU=m # Jes Sorensen maintains this (rhbz 1100162)
CONFIG_RADIO_ADAPTERS=y
diff --git a/kernel.spec b/kernel.spec
index bcb5d2a8c..e17052253 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -77,7 +77,7 @@ Summary: The Linux kernel
# The rc snapshot level
%global rcrev 5
# The git snapshot level
-%define gitrev 1
+%define gitrev 2
# Set rpm version accordingly
%define rpmversion 4.%{upstream_sublevel}.0
%endif
@@ -663,6 +663,9 @@ Patch616: 0016-Input-silead-Do-not-try-to-directly-access-the-GPIO-.patch
# rhbz 1476467
Patch617: Fix-for-module-sig-verification.patch
+# request for bug fix
+Patch618: iio-race-fix.patch
+
# END OF PATCH DEFINITIONS
%endif
@@ -2219,6 +2222,16 @@ fi
#
#
%changelog
+* Wed Aug 16 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.0-0.rc5.git2.1
+- Linux v4.13-rc5-67-g510c8a899caf
+
+* Wed Aug 16 2017 Laura Abbott <labbott@redhat.com>
+- Fix for iio race
+
+* Wed Aug 16 2017 Hans de Goede <jwrdegoede@fedoraproject.org>
+- Enable CONFIG_DRM_VBOXVIDEO=m on x86
+- Enable CONFIG_R8188EU=m on x86_64, some Cherry Trail devices use this
+
* Tue Aug 15 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.0-0.rc5.git1.1
- Linux v4.13-rc5-9-gfcd07350007b
diff --git a/sources b/sources
index ae78f5995..cc62dee57 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
SHA512 (perf-man-4.12.tar.gz) = 4d3bbda1f520dba0007c351af46f45085fe4842074eb2e01aee736fd369df595f8f72ed6c1192715f1120bf3353279777f9dca1178fe93bffe5be2de700d409c
SHA512 (linux-4.12.tar.xz) = 8e81b41b253e63233e92948941f44c6482acb52aa3a3fd172f03a38a86f2c35b2ad4fd407acd1bc3964673eba344fe104d3a03e3ff4bf9cd1f22bd44263bd728
SHA512 (patch-4.13-rc5.xz) = eebba5b56aa93aaea8ff450febbd13bb5ffef9a8331666dc6ac44a73b355e8ec36d9d27da1aaec07e45844669bd31e9d8fadd278aa6d04356af2aa90387d65ac
-SHA512 (patch-4.13-rc5-git1.xz) = 920988269b545acab3f42634ef2bcea8881403d3f5a399428d493ded941c34b2783c2c0ad5c9502303643f729ed835ab887aa2165a419ee1ba03fc269a0577b0
+SHA512 (patch-4.13-rc5-git2.xz) = 7905147a287ca2dc2eec2315a1bce0da34406799d98af796fadd79a55c8d82d7254a4348c42da786c5fadf8bdbfc8f1de993705e2ac369fe397ba9853f831690