linux-kernel-test/drivers/pwm
Mike Dunn 1e185c7aaf pwm: pxa: Use module_platform_driver
Commit 76abbdde2d

    pwm: Add sysfs interface

causes a kernel oops due to a null pointer dereference on PXA platforms.
This happens because the class added by the patch is registered in a
subsys_initcall (initcall4), but the pxa pwm driver is registered in
arch_initcall (initcall3). If the class is not registered before the
driver probe function runs, the oops occurs in device_add() when the
uninitialized pointers in struct class are dereferenced.  I don't see a
reason that the driver must be an arch_initcall, so this patch makes it
a regular module_platform_driver (initcall6), preventing the oops.

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
2013-09-03 13:09:17 +02:00
..
core.c pwm: Use the DT macro directly when parsing PWM DT flags 2013-09-03 13:08:10 +02:00
Kconfig pwm: Add Renesas TPU PWM driver 2013-06-21 11:33:28 +02:00
Makefile pwm: Add Renesas TPU PWM driver 2013-06-21 11:33:28 +02:00
pwm-ab8500.c pwm: ab8500: Add .owner to struct pwm_ops 2013-04-02 11:29:11 +02:00
pwm-atmel-tcb.c pwm: Fill in missing .owner fields 2013-06-12 13:18:29 +02:00
pwm-bfin.c pwm: Fill in missing .owner fields 2013-06-12 13:18:29 +02:00
pwm-imx.c pwm: Fill in missing .owner fields 2013-06-12 13:18:29 +02:00
pwm-jz4740.c pwm: remove use of __devexit 2012-11-28 12:23:41 -08:00
pwm-lpc32xx.c pwm: simplify use of devm_ioremap_resource 2013-09-03 13:09:16 +02:00
pwm-mxs.c pwm: mxs: Check the return value from stmp_reset_block() 2013-09-03 13:07:51 +02:00
pwm-pca9685.c pwm: pca9685: Fix wrong argument to set MODE1_SLEEP bit 2013-06-26 23:23:54 +02:00
pwm-puv3.c pwm: Fill in missing .owner fields 2013-06-12 13:18:29 +02:00
pwm-pxa.c pwm: pxa: Use module_platform_driver 2013-09-03 13:09:17 +02:00
pwm-renesas-tpu.c pwm: simplify use of devm_ioremap_resource 2013-09-03 13:09:16 +02:00
pwm-samsung.c pwm: samsung: convert s3c_pwm to dev_pm_ops 2013-03-08 08:30:55 +01:00
pwm-spear.c pwm: simplify use of devm_ioremap_resource 2013-09-03 13:09:16 +02:00
pwm-tegra.c pwm: Fill in missing .owner fields 2013-06-12 13:18:29 +02:00
pwm-tiecap.c pwm: tiecap: add CONFIG_PM_SLEEP to ecap_pwm_{save,restore}_context() 2013-09-03 13:09:16 +02:00
pwm-tiehrpwm.c pwm: tiehrpwm: add missing __iomem annotation 2013-09-03 13:09:16 +02:00
pwm-tipwmss.c drivers/pwm: don't check resource with devm_ioremap_resource 2013-05-18 11:55:58 +02:00
pwm-tipwmss.h pwm: davinci: Add Kconfig support for ECAP & EHRPWM devices 2013-03-22 11:35:20 +01:00
pwm-twl-led.c pwm: Constify OF match tables 2013-04-23 07:42:20 +02:00
pwm-twl.c pwm: Constify OF match tables 2013-04-23 07:42:20 +02:00
pwm-vt8500.c drivers/pwm: don't check resource with devm_ioremap_resource 2013-05-18 11:55:58 +02:00
sysfs.c pwm: convert class code to use dev_groups 2013-07-29 09:08:33 +02:00