blob: b204e8e0f536e064bd999ae8cafe818c4498c8c3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
From dd5e8c9945f3f9a9bd9b307087c2881d8399c87b Mon Sep 17 00:00:00 2001
From: Gottfried Haider <gottfried.haider@gmail.com>
Date: Tue, 26 Sep 2017 11:59:51 +0000
Subject: [PATCH 137/454] pwm: Set class for exported channels in sysfs
[ Upstream commit 7e5d1fd75c3dde9fc10c4472b9368089d1b81d00 ]
Notifications for devices without bus or class set get dropped by
dev_uevent_filter(). Adding the class to the exported child matches
what the GPIO subsystem is doing.
With this change exporting a channel triggers a udev event, which
gives userspace a chance to fixup permissions and makes it possible
for non-root users to make use of the PWM subsystem.
Signed-off-by: Gottfried Haider <gottfried.haider@gmail.com>
CC: Thierry Reding <thierry.reding@gmail.com>
CC: H Hartley Sweeten <hsweeten@visionengravers.com>
CC: linux-pwm@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-rpi-kernel@lists.infradead.org
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
---
drivers/pwm/sysfs.c | 1 +
1 file changed, 1 insertion(+)
--- a/drivers/pwm/sysfs.c
+++ b/drivers/pwm/sysfs.c
@@ -263,6 +263,7 @@ static int pwm_export_child(struct devic
export->pwm = pwm;
mutex_init(&export->lock);
+ export->child.class = parent->class;
export->child.release = pwm_export_release;
export->child.parent = parent;
export->child.devt = MKDEV(0, 0);
|