diff options
author | Jason Chen <b02280@freescale.com> | 2011-08-30 16:35:46 +0800 |
---|---|---|
committer | Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> | 2011-09-09 20:52:01 +0159 |
commit | 0ac2a0298a905a4fed1110dc7714d49b4fa9543c (patch) | |
tree | 46851421999665a0cf6f5913fe902b127a1e8e98 | |
parent | 92bbd23273598fd5930a08d82674f74cf8fb1710 (diff) | |
download | imx53-0ac2a0298a905a4fed1110dc7714d49b4fa9543c.tar.gz |
ARM: mx53/loco: add pwm backlight device
Signed-off-by: Jason Chen <b02280@freescale.com>
-rw-r--r-- | arch/arm/mach-mx5/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-mx5/board-mx53_loco.c | 11 | ||||
-rw-r--r-- | arch/arm/mach-mx5/devices-imx53.h | 4 |
3 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/mach-mx5/Kconfig b/arch/arm/mach-mx5/Kconfig index 0f278429495..2b06ba3df47 100644 --- a/arch/arm/mach-mx5/Kconfig +++ b/arch/arm/mach-mx5/Kconfig @@ -206,6 +206,7 @@ config MACH_MX53_LOCO select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_SRTC select IMX_HAVE_PLATFORM_IMX_UART + select IMX_HAVE_PLATFORM_MXC_PWM select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_GPIO_KEYS help diff --git a/arch/arm/mach-mx5/board-mx53_loco.c b/arch/arm/mach-mx5/board-mx53_loco.c index ae5b84f5aab..50934451ef0 100644 --- a/arch/arm/mach-mx5/board-mx53_loco.c +++ b/arch/arm/mach-mx5/board-mx53_loco.c @@ -24,6 +24,7 @@ #include <linux/gpio.h> #include <linux/fsl_devices.h> #include <linux/ipu.h> +#include <linux/pwm_backlight.h> #include <mach/common.h> #include <mach/hardware.h> @@ -362,6 +363,13 @@ static struct mxc_pm_platform_data loco_pm_data = { extern int __init mx53_loco_init_da9052(void); extern void da9053_power_off(void); +static struct platform_pwm_backlight_data loco_pwm_backlight_data = { + .pwm_id = 1, + .max_brightness = 255, + .dft_brightness = 128, + .pwm_period_ns = 50000, +}; + static void __init mx53_loco_io_init(void) { int ret; @@ -432,6 +440,9 @@ static void __init mx53_loco_board_init(void) mxc_register_device(&mxc_pm_device, &loco_pm_data); mx53_loco_init_da9052(); pm_power_off = da9053_power_off; + + imx53_add_mxc_pwm(1); + imx53_add_mxc_pwm_backlight(0, &loco_pwm_backlight_data); } static void __init mx53_loco_timer_init(void) diff --git a/arch/arm/mach-mx5/devices-imx53.h b/arch/arm/mach-mx5/devices-imx53.h index fba4d23056d..c4b889faf57 100644 --- a/arch/arm/mach-mx5/devices-imx53.h +++ b/arch/arm/mach-mx5/devices-imx53.h @@ -68,3 +68,7 @@ extern const struct imx_ldb_data imx53_ldb_data __initconst; extern const struct imx_mxc_pwm_data imx53_mxc_pwm_data[] __initconst; #define imx53_add_mxc_pwm(id) \ imx_add_mxc_pwm(&imx53_mxc_pwm_data[id]) + +#define imx53_add_mxc_pwm_backlight(id, pdata) \ + platform_device_register_resndata(NULL, "pwm-backlight",\ + id, NULL, 0, pdata, sizeof(*pdata)); |