BSP: NT36672A panel driver files is added
authorlijilai <lijilai@huaqin.com>
Tue, 10 Jul 2018 03:29:57 +0000 (11:29 +0800)
committerCosmin Tanislav <demonsingur@gmail.com>
Mon, 22 Apr 2024 17:23:41 +0000 (20:23 +0300)
[9609][WING] fbdev: dpu: NT36672A panel files is added

Bug:HQ00000000

Workaround:no

Change-Id: I021459610d5f805e74aeed72ddc3c2d1496075b4
Signed-off-by: hwangjae lee <hj-yo.lee@samsung.com>
Signed-off-by: lijilai <lijilai@huaqin.com>
drivers/video/fbdev/exynos/dpu20/dsim_drv.c
drivers/video/fbdev/exynos/dpu20/panels/Kconfig
drivers/video/fbdev/exynos/dpu20/panels/Makefile

index 0514dbe3f8682b636a7c58e011895432e2568619..f3ff2151bd43e1fa0ca15e42afd00492f74c09a0 100644 (file)
@@ -627,6 +627,10 @@ int dsim_reset_panel(struct dsim_device *dsim)
                return -EINVAL;
        }
 
+       usleep_range(5000, 6000);
+       gpio_set_value(res->lcd_reset, 0);
+       usleep_range(5000, 6000);
+       gpio_set_value(res->lcd_reset, 1);
        usleep_range(5000, 6000);
        gpio_set_value(res->lcd_reset, 0);
        usleep_range(5000, 6000);
@@ -670,6 +674,7 @@ int dsim_set_panel_power(struct dsim_device *dsim, bool on)
                        gpio_free(res->lcd_power[1]);
                        usleep_range(10000, 11000);
                }
+
                if (res->lcd_power[2] > 0) {
                        ret = gpio_request_one(res->lcd_power[2],
                                        GPIOF_OUT_INIT_HIGH, "lcd_power2");
@@ -680,6 +685,7 @@ int dsim_set_panel_power(struct dsim_device *dsim, bool on)
                        gpio_free(res->lcd_power[2]);
                        usleep_range(10000, 11000);
                }
+
                if (res->regulator_1p8v > 0) {
                        ret = regulator_enable(res->regulator_1p8v);
                        if (ret) {
@@ -726,6 +732,7 @@ int dsim_set_panel_power(struct dsim_device *dsim, bool on)
                        gpio_free(res->lcd_power[1]);
                        usleep_range(5000, 6000);
                }
+
                if (res->lcd_power[2] > 0) {
                        ret = gpio_request_one(res->lcd_power[2],
                                        GPIOF_OUT_INIT_LOW, "lcd_power2");
@@ -736,6 +743,7 @@ int dsim_set_panel_power(struct dsim_device *dsim, bool on)
                        gpio_free(res->lcd_power[2]);
                        usleep_range(5000, 6000);
                }
+
                if (res->regulator_1p8v > 0) {
                        ret = regulator_disable(res->regulator_1p8v);
                        if (ret) {
index 62c4193dd5742c6b62fc72fbbee40ddb0ab34d90..f987588b7111259014dac9fe3572ca0d8e7bab48 100644 (file)
@@ -39,6 +39,11 @@ config EXYNOS_DECON_LCD_S6E3FA7
        tristate "S6E3FA7 AMOLED FHD LCD driver(1080 x 2220)"
        default n
 
+config EXYNOS_DECON_LCD_NT36672A
+       depends on EXYNOS_DECON_LCD && EXYNOS_MIPI_DSIM
+       tristate "NT3667A TFT FHD+ LCD driver(1080 x 2246)"
+       default n
+
 config EXYNOS_DECON_LCD_EMUL_DISP
        depends on EXYNOS_DECON_LCD && EXYNOS_MIPI_DSIM
        tristate "Virtual LCD driver for emulator(800 x 1280)"
index a7f90570ff058b033ed43e6da5b6939191c13978..56f166b663dd20beb33044a8deeb986f5e3c30eb 100644 (file)
@@ -7,4 +7,5 @@ obj-$(CONFIG_EXYNOS_DECON_LCD_S6E3HA8)  += s6e3ha8_mipi_lcd.o s6e3ha8_lcd_ctrl.o
 obj-$(CONFIG_EXYNOS_DECON_LCD_S6E3AA2) += s6e3aa2_mipi_lcd.o s6e3aa2_lcd_ctrl.o
 obj-$(CONFIG_EXYNOS_DECON_LCD_S6E3FA0) += s6e3fa0_mipi_lcd.o s6e3fa0_lcd_ctrl.o
 obj-$(CONFIG_EXYNOS_DECON_LCD_S6E3FA7) += s6e3fa7_mipi_lcd.o s6e3fa7_lcd_ctrl.o
+obj-$(CONFIG_EXYNOS_DECON_LCD_NT36672A)        += nt36672a_mipi_lcd.o nt36672a_lcd_ctrl.o
 obj-$(CONFIG_EXYNOS_DECON_LCD_EMUL_DISP) += emul_disp_mipi_lcd.o emul_disp_lcd_ctrl.o