linux/drivers/pwm
Sean Wang 360cc03656 pwm: mediatek: Fix up PWM4 and PWM5 malfunction on MT7623
Since the offset for both registers, PWMDWIDTH and PWMTHRES, used to
control PWM4 or PWM5 are distinct from the other PWMs, whose wrong
programming on PWM hardware causes waveform cannot be output as expected.
Thus, the patch adds the extra condition for fixing up the weird case to
let PWM4 or PWM5 able to work on MT7623.

v1 -> v2: use pwm45_fixup naming instead of pwm45_quirk
v2 -> v3: add more tags for Reviewed-by, Fixes, and Cc stable

Cc: stable@vger.kernel.org
Fixes: caf065f8fd ("pwm: Add MediaTek PWM support")
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Zhi Mao <zhi.mao@mediatek.com>
Cc: John Crispin <john@phrozen.org>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
2018-03-28 00:29:58 +02:00
..
core.c pwm: Silently error out on EPROBE_DEFER 2017-07-06 08:29:16 +02:00
Kconfig pwm: jz4740: Enable for all Ingenic SoCs 2018-03-28 00:23:57 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pwm-ab8500.c pwm: drop owner assignment from platform_drivers 2014-10-20 16:21:28 +02:00
pwm-atmel-hlcdc.c pwm: atmel-hlcdc: Implement the suspend/resume hooks 2017-04-06 17:45:02 +02:00
pwm-atmel-tcb.c pwm: atmel-tcb: Delete an error message for a failed memory allocation 2018-03-27 23:28:53 +02:00
pwm-atmel.c pwm: atmel: Enable PWM on sama5d2 2017-04-06 17:45:03 +02:00
pwm-bcm2835.c pwm: bcm2835: Support for polarity setting via DT 2017-08-21 07:27:58 +02:00
pwm-bcm-iproc.c pwm: Add support for Broadcom iProc PWM controller 2016-07-11 12:49:25 +02:00
pwm-bcm-kona.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-berlin.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-bfin.c pwm: bfin: Remove unneeded error message 2017-07-06 07:56:54 +02:00
pwm-brcmstb.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-clps711x.c pwm: clps711x: Changing the compatibility string to match with the smallest supported chip 2016-07-06 17:38:17 +02:00
pwm-crc.c pwm: Use pwm_get/set_xxx() helpers where appropriate 2016-05-17 14:44:59 +02:00
pwm-cros-ec.c pwm: cros-ec: Fix transposed param settings 2017-07-06 17:16:37 +02:00
pwm-ep93xx.c pwm: Add the pwm_is_enabled() helper 2015-07-20 09:46:06 +02:00
pwm-fsl-ftm.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-hibvt.c pwm: hibvt: Explicitly request exclusive reset control 2017-08-21 08:52:40 +02:00
pwm-img.c pwm: img: Add runtime PM 2017-11-15 10:38:37 +01:00
pwm-imx.c pwm: imx: Let PWM be active during suspend 2018-03-28 00:17:36 +02:00
pwm-jz4740.c pwm: jz4740: Add support for devicetree 2018-03-28 00:23:56 +02:00
pwm-lp3943.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-lpc18xx-sct.c pwm: lpc-18xx: use pwm_set_chip_data 2016-09-08 10:55:05 +02:00
pwm-lpc32xx.c pwm: lpc32xx: Set PWM_PIN_LEVEL bit to default value 2016-07-11 12:49:29 +02:00
pwm-lpss-pci.c pwm: lpss: Set enable-bit before waiting for update-bit to go low 2017-04-06 14:48:14 +02:00
pwm-lpss-platform.c pwm: lpss: Set enable-bit before waiting for update-bit to go low 2017-04-06 14:48:14 +02:00
pwm-lpss.c pwm: lpss: Set enable-bit before waiting for update-bit to go low 2017-04-06 14:48:14 +02:00
pwm-lpss.h pwm: lpss: Set enable-bit before waiting for update-bit to go low 2017-04-06 14:48:14 +02:00
pwm-mediatek.c pwm: mediatek: Fix up PWM4 and PWM5 malfunction on MT7623 2018-03-28 00:29:58 +02:00
pwm-meson.c pwm: meson: Add clock source configuration for Meson-AXG 2017-12-05 09:51:36 +01:00
pwm-mtk-disp.c pwm: Add MediaTek MT2701 display PWM driver support 2016-09-06 10:48:53 +02:00
pwm-mxs.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-omap-dmtimer.c pwm: omap-dmtimer: Allow for setting dmtimer clock source 2016-06-29 21:54:00 -07:00
pwm-pca9685.c pwm: pca9685: clarify pca9685_set_sleep_mode() interface. 2017-07-25 13:41:59 +02:00
pwm-puv3.c pwm: puv3: Delete an error message for a failed memory allocation 2018-03-27 23:27:05 +02:00
pwm-pxa.c pwm: constify pwm_ops structures 2017-01-19 00:38:17 +01:00
pwm-rcar.c pwm: rcar: Make use of pwm_is_enabled() 2016-05-17 14:44:57 +02:00
pwm-renesas-tpu.c pwm: renesas-tpu: Remove support for SH7372 2017-08-18 17:27:14 +02:00
pwm-rockchip.c pwm: rockchip: Add rk3328 support 2017-08-18 17:44:34 +02:00
pwm-samsung.c pwm: pwm-samsung: fix suspend/resume support 2017-08-21 10:39:12 +02:00
pwm-spear.c pwm: drop owner assignment from platform_drivers 2014-10-20 16:21:28 +02:00
pwm-sti.c pwm: Remove .can_sleep from struct pwm_chip 2017-01-04 09:40:54 +01:00
pwm-stm32-lp.c pwm: stm32: Adopt SPDX identifier 2018-03-27 23:22:31 +02:00
pwm-stm32.c pwm: stm32: Adopt SPDX identifier 2018-03-27 23:22:31 +02:00
pwm-stmpe.c pwm: stmpe: Fix wrong register offset for hwpwm=2 case 2017-12-05 09:33:05 +01:00
pwm-sun4i.c pwm: sunxi: Use of_device_get_match_data() 2017-11-15 10:56:55 +01:00
pwm-tegra.c pwm: tegra: Explicitly request exclusive reset control 2017-08-21 08:53:07 +02:00
pwm-tiecap.c pwm: tiecap: Set driver data before runtime PM enable 2017-08-21 08:31:37 +02:00
pwm-tiehrpwm.c pwm: tiehrpwm: Set driver data before runtime PM enable 2017-08-21 08:42:56 +02:00
pwm-tipwmss.c pwm: pwm-tipwmss: Remove all runtime PM gets/puts 2016-09-06 10:48:54 +02:00
pwm-twl-led.c mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
pwm-twl.c mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
pwm-vt8500.c pwm: vt8500: Undo preparation of a clock source. 2017-07-25 13:43:28 +02:00
pwm-zx.c pwm: Add ZTE ZX PWM device driver 2017-08-21 08:11:24 +02:00
sysfs.c pwm: Set class for exported channels in sysfs 2017-12-05 09:24:58 +01:00