[PATCH] backlight: lcd: add driver for raster-type lcd's with gpio controlled panel reset
Jingoo Han
jg1.han at samsung.com
Thu Jan 5 21:16:06 EST 2012
Hi, Thomas.
> -----Original Message-----
> From: Thomas Abraham [mailto:thomas.abraham at linaro.org]
> Sent: Friday, January 06, 2012 12:42 AM
> Subject: [PATCH] backlight: lcd: add driver for raster-type lcd's with gpio controlled panel reset
>
> Add a lcd panel driver for simple raster-type lcd's which uses a gpio
> controlled panel reset. The driver controls the nRESET line of the panel
> using a gpio connected from the host system. The Vcc supply to the panel
> is (optionally) controlled using a voltage regulator. This driver excludes
> support for lcd panels that use a serial command interface or direct
> memory mapped IO interface.
>
> Suggested-by: Lars-Peter Clausen <lars at metafoo.de>
> Signed-off-by: Thomas Abraham <thomas.abraham at linaro.org>
> ---
> .../devicetree/bindings/lcd/lcd-pwrctrl.txt | 39 ++++
> drivers/video/backlight/Kconfig | 7 +
> drivers/video/backlight/Makefile | 1 +
> drivers/video/backlight/lcd_pwrctrl.c | 231 ++++++++++++++++++++
> include/video/lcd_pwrctrl.h | 30 +++
> 5 files changed, 308 insertions(+), 0 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/lcd/lcd-pwrctrl.txt
> create mode 100644 drivers/video/backlight/lcd_pwrctrl.c
> create mode 100644 include/video/lcd_pwrctrl.h
>
> [...]
> --- a/drivers/video/backlight/Makefile
> +++ b/drivers/video/backlight/Makefile
> @@ -8,6 +8,7 @@ obj-$(CONFIG_LCD_LMS283GF05) += lms283gf05.o
> obj-$(CONFIG_LCD_LTV350QV) += ltv350qv.o
> obj-$(CONFIG_LCD_ILI9320) += ili9320.o
> obj-$(CONFIG_LCD_PLATFORM) += platform_lcd.o
> +obj-$(CONFIG_LCD_PWRCTRL) += lcd_pwrctrl.o
Can you remove unnecessary space?
Please use <tab><space><space><space> instead of <space><tab><space><space><space>
between PWRCTRL) and += lcd_.
> [...]
> +static struct platform_driver lcd_pwrctrl_driver = {
> + .driver = {
> + .name = "lcd-pwrctrl",
> + .owner = THIS_MODULE,
> + .of_match_table = of_match_ptr(lcd_pwrctrl_match),
> + },
> + .probe = lcd_pwrctrl_probe,
> + .remove = lcd_pwrctrl_remove,
> + .suspend = lcd_pwrctrl_suspend,
> + .resume = lcd_pwrctrl_resume,
Please use 'struct dev_pm_ops'.
> +};
> +
> +static int __init lcd_pwrctrl_init(void)
> +{
> + return platform_driver_register(&lcd_pwrctrl_driver);
> +}
> +
> +static void __exit lcd_pwrctrl_cleanup(void)
> +{
> + platform_driver_unregister(&lcd_pwrctrl_driver);
> +}
> +
> +module_init(lcd_pwrctrl_init);
> +module_exit(lcd_pwrctrl_cleanup);
Use module_platform_driver(lcd_pwrctrl_driver).
It can make the code simpler.
> [...]
More information about the linux-arm-kernel
mailing list