linux/drivers/pwm
Stefan Agner ad06fdeeef pwm: fsl-ftm: Use flat regmap cache
Use flat regmap cache to avoid lockdep warning at probe:

[    0.697285] WARNING: CPU: 0 PID: 1 at kernel/locking/lockdep.c:2755 lockdep_trace_alloc+0x15c/0x160()
[    0.697449] DEBUG_LOCKS_WARN_ON(irqs_disabled_flags(flags))

The RB-tree regmap cache needs to allocate new space on first writes.
However, allocations in an atomic context (e.g. when a spinlock is held)
are not allowed. The function regmap_write calls map->lock, which
acquires a spinlock in the fast_io case. Since the pwm-fsl-ftm driver
uses MMIO, the regmap bus of type regmap_mmio is being used which has
fast_io set to true.

The MMIO space of the pwm-fsl-ftm driver is reasonable condense, hence
using the much faster flat regmap cache is anyway the better choice.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
2016-04-14 16:54:00 +02:00
..
Kconfig pwm: rcar: Depend on ARCH_RENESAS instead of ARCH_SHMOBILE 2016-03-23 17:11:44 +01:00
Makefile pwm: Add PWM driver for OMAP using dual-mode timers 2015-12-16 17:25:37 +01:00
core.c pwm: Mark all devices as "might sleep" 2016-01-21 15:04:59 +01:00
pwm-ab8500.c
pwm-atmel-hlcdc.c pwm: atmel-hlcdc: add sama5d2 SoC support. 2015-10-06 16:07:28 +02:00
pwm-atmel-tcb.c misc: atmel_tclib: get and use slow clock 2015-10-06 12:33:14 +02:00
pwm-atmel.c
pwm-bcm-kona.c
pwm-bcm2835.c pwm: bcm2835: Fix email address specification 2015-12-16 16:45:32 +01:00
pwm-berlin.c pwm: Add support for the Berlin PWM controller 2015-10-06 09:40:44 +02:00
pwm-bfin.c
pwm-brcmstb.c pwm: brcmstb: Fix check of devm_ioremap_resource() return code 2016-03-23 17:11:45 +01:00
pwm-clps711x.c
pwm-crc.c
pwm-ep93xx.c
pwm-fsl-ftm.c pwm: fsl-ftm: Use flat regmap cache 2016-04-14 16:54:00 +02:00
pwm-img.c pwm: img: Test clock rate to avoid division by 0 2016-03-23 17:11:02 +01:00
pwm-imx.c
pwm-jz4740.c
pwm-lp3943.c
pwm-lpc18xx-sct.c pwm: lpc18xx-sct: Test clock rate to avoid division by 0 2016-03-23 17:11:29 +01:00
pwm-lpc32xx.c pwm: lpc32xx: return ERANGE, if requested period is not supported 2015-12-16 17:01:06 +01:00
pwm-lpss-pci.c pwm: lpss: Add support for runtime PM 2015-11-06 14:34:13 +01:00
pwm-lpss-platform.c pwm: lpss: Add support for runtime PM 2015-11-06 14:34:13 +01:00
pwm-lpss.c pwm: lpss: Rework the sequence of programming PWM_SW_UPDATE 2015-12-16 16:52:09 +01:00
pwm-lpss.h pwm: lpss: Update PWM setting for Broxton 2015-12-16 16:45:38 +01:00
pwm-mtk-disp.c pwm: Add MediaTek display PWM driver support 2015-10-06 16:07:30 +02:00
pwm-mxs.c
pwm-omap-dmtimer.c pwm: omap-dmtimer: Add debug message for effective period and duty cycle 2016-03-23 17:11:48 +01:00
pwm-pca9685.c pwm-pca9685: enable ACPI device found on Galileo Gen2 2015-11-06 14:14:19 +01:00
pwm-puv3.c
pwm-pxa.c
pwm-rcar.c pwm: rcar: Improve accuracy of frequency division setting 2015-12-16 17:02:14 +01:00
pwm-renesas-tpu.c
pwm-rockchip.c
pwm-samsung.c
pwm-spear.c
pwm-sti.c
pwm-sun4i.c pwm: sunxi: Fix whitespace issue 2015-11-10 13:06:47 +01:00
pwm-tegra.c
pwm-tiecap.c
pwm-tiehrpwm.c
pwm-tipwmss.c
pwm-tipwmss.h
pwm-twl-led.c
pwm-twl.c
pwm-vt8500.c
sysfs.c pwm: sysfs: Make use of the DEVICE_ATTR_[RW][WO] macro's 2015-11-10 13:06:46 +01:00