mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
LCD: support another s6e8ax0 panel type
s6e8ax0 panel has many panel of types. This patch support another panel on TIZEN lunchbox board(HWREVISION 2). This panel has reversed panel display type. So, I had added necessary command. Signed-off-by: Donghwa Lee <dh09.lee@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Anatolij Gustschin <agust@denx.de>
This commit is contained in:
parent
8ecb4c6473
commit
3d02408665
3 changed files with 25 additions and 1 deletions
|
@ -329,6 +329,7 @@ struct mipi_dsim_lcd_device {
|
|||
char *name;
|
||||
int id;
|
||||
int bus_id;
|
||||
int reverse_panel;
|
||||
|
||||
struct mipi_dsim_device *master;
|
||||
void *platform_data;
|
||||
|
|
|
@ -53,6 +53,11 @@ u32 get_board_rev(void)
|
|||
|
||||
static void check_hw_revision(void);
|
||||
|
||||
static int hwrevision(int rev)
|
||||
{
|
||||
return (board_rev & 0xf) == rev;
|
||||
}
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100;
|
||||
|
@ -492,6 +497,9 @@ void init_panel_info(vidinfo_t *vid)
|
|||
vid->interface_mode = FIMD_RGB_INTERFACE;
|
||||
vid->mipi_enabled = 1;
|
||||
|
||||
if (hwrevision(2))
|
||||
mipi_lcd_device.reverse_panel = 1;
|
||||
|
||||
strcpy(s6e8ax0_platform_data.lcd_panel_name, mipi_lcd_device.name);
|
||||
s6e8ax0_platform_data.lcd_power = lcd_power;
|
||||
s6e8ax0_platform_data.mipi_power = mipi_power;
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
static void s6e8ax0_panel_cond(struct mipi_dsim_device *dsim_dev)
|
||||
{
|
||||
struct mipi_dsim_master_ops *ops = dsim_dev->master_ops;
|
||||
int reverse = dsim_dev->dsim_lcd_dev->reverse_panel;
|
||||
const unsigned char data_to_send[] = {
|
||||
0xf8, 0x3d, 0x35, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x4c,
|
||||
0x6e, 0x10, 0x27, 0x7d, 0x3f, 0x10, 0x00, 0x00, 0x20,
|
||||
|
@ -36,8 +37,22 @@ static void s6e8ax0_panel_cond(struct mipi_dsim_device *dsim_dev)
|
|||
0xff, 0xff, 0xc8
|
||||
};
|
||||
|
||||
ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
|
||||
const unsigned char data_to_send_reverse[] = {
|
||||
0xf8, 0x19, 0x35, 0x00, 0x00, 0x00, 0x93, 0x00, 0x3c,
|
||||
0x7d, 0x08, 0x27, 0x7d, 0x3f, 0x00, 0x00, 0x00, 0x20,
|
||||
0x04, 0x08, 0x6e, 0x00, 0x00, 0x00, 0x02, 0x08, 0x08,
|
||||
0x23, 0x23, 0xc0, 0xc1, 0x01, 0x41, 0xc1, 0x00, 0xc1,
|
||||
0xf6, 0xf6, 0xc1
|
||||
};
|
||||
|
||||
if (reverse) {
|
||||
ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
|
||||
(unsigned int)data_to_send_reverse,
|
||||
ARRAY_SIZE(data_to_send_reverse));
|
||||
} else {
|
||||
ops->cmd_write(dsim_dev, MIPI_DSI_DCS_LONG_WRITE,
|
||||
(unsigned int)data_to_send, ARRAY_SIZE(data_to_send));
|
||||
}
|
||||
}
|
||||
|
||||
static void s6e8ax0_display_cond(struct mipi_dsim_device *dsim_dev)
|
||||
|
|
Loading…
Add table
Reference in a new issue