aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pwm/sysfs.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-10-12 14:11:05 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-10-12 14:11:05 -0400
commitb67be92feb486f800d80d72c67fd87b47b79b18e (patch)
treefcd22ae553cc094be6fcee8f2d3f99661793d165 /drivers/pwm/sysfs.c
parent2d2474a194652f55c7af51068db3c1b851f16711 (diff)
parentdc8e6e1e8f2d2719dd396708b0f56d8b73c9ea52 (diff)
Merge tag 'pwm/for-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
Pull pwm updates from Thierry Reding: "This set of changes contains support for PWM signal capture in the STi driver as well as support for the PWM controller found on Meson SoCs. There's also support added for the MediaTek MT2701 and SunXi H3 to the existing drivers. Other than that there's a fair set of miscellaneous cleanups and fixes across the board" * tag 'pwm/for-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (24 commits) pwm: meson: Handle unknown ID values pwm: sti: Take the opportunity to conduct a little house keeping pwm: sti: It's now valid for number of PWM channels to be zero pwm: sti: Add PWM capture callback pwm: sti: Add support for PWM capture interrupts pwm: sti: Initialise PWM capture device data pwm: sti: Supply PWM Capture clock handling pwm: sti: Supply PWM capture register addresses and bit locations pwm: sti: Only request clock rate when needed pwm: sti: Reorganise register names in preparation for new functionality pwm: sti: Rename channel => device dt-bindings: pwm: sti: Update DT bindings for capture support pwm: lpc-18xx: use pwm_set_chip_data pwm: sunxi: Add H3 support pwm: Add support for Meson PWM Controller dt-bindings: pwm: Add bindings for Meson PWM Controller pwm: samsung: Fix to use lowest div for large enough modulation bits pwm: pwm-tipwmss: Remove all runtime PM gets/puts pwm: cros-ec: Add __packed to prevent padding pwm: Add MediaTek MT2701 display PWM driver support ...
Diffstat (limited to 'drivers/pwm/sysfs.c')
-rw-r--r--drivers/pwm/sysfs.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/pwm/sysfs.c b/drivers/pwm/sysfs.c
index 18ed725594c3..0296d8178ae2 100644
--- a/drivers/pwm/sysfs.c
+++ b/drivers/pwm/sysfs.c
@@ -409,6 +409,24 @@ void pwmchip_sysfs_unexport(struct pwm_chip *chip)
409 } 409 }
410} 410}
411 411
412void pwmchip_sysfs_unexport_children(struct pwm_chip *chip)
413{
414 struct device *parent;
415 unsigned int i;
416
417 parent = class_find_device(&pwm_class, NULL, chip,
418 pwmchip_sysfs_match);
419 if (!parent)
420 return;
421
422 for (i = 0; i < chip->npwm; i++) {
423 struct pwm_device *pwm = &chip->pwms[i];
424
425 if (test_bit(PWMF_EXPORTED, &pwm->flags))
426 pwm_unexport_child(parent, pwm);
427 }
428}
429
412static int __init pwm_sysfs_init(void) 430static int __init pwm_sysfs_init(void)
413{ 431{
414 return class_register(&pwm_class); 432 return class_register(&pwm_class);