Commit 8f027442b86664f915f2e33f81b3c8ff70ed6f21
Committed by
Afzal Mohammed
1 parent
6d3c8b17e4
Exists in
master
video: da8xx-fb: Add 24bpp support
Patch adds 24bpp support and configures LCDC in 24bpp packed mode. Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com>
Showing 1 changed file with 14 additions and 2 deletions Side-by-side Diff
drivers/video/da8xx-fb.c
... | ... | @@ -542,7 +542,9 @@ |
542 | 542 | if (raster_order) |
543 | 543 | reg |= LCD_RASTER_ORDER; |
544 | 544 | |
545 | - if (bpp == 32) | |
545 | + if (bpp == 24) | |
546 | + reg |= (LCD_TFT_MODE | LCD_V2_TFT_24BPP_MODE); | |
547 | + else if (bpp == 32) | |
546 | 548 | reg |= (LCD_TFT_MODE | LCD_V2_TFT_24BPP_MODE |
547 | 549 | | LCD_V2_TFT_24BPP_UNPACK); |
548 | 550 | |
... | ... | @@ -553,6 +555,7 @@ |
553 | 555 | case 2: |
554 | 556 | case 4: |
555 | 557 | case 16: |
558 | + case 24: | |
556 | 559 | case 32: |
557 | 560 | par->palette_sz = 16 * 2; |
558 | 561 | break; |
... | ... | @@ -612,7 +615,8 @@ |
612 | 615 | update_hw = 1; |
613 | 616 | palette[0] = 0x4000; |
614 | 617 | } |
615 | - } else if ((info->var.bits_per_pixel == 32) && regno < 32) { | |
618 | + } else if (((info->var.bits_per_pixel == 32) && regno < 32) || | |
619 | + ((info->var.bits_per_pixel == 24) && regno < 24)) { | |
616 | 620 | red >>= (24 - info->var.red.length); |
617 | 621 | red <<= info->var.red.offset; |
618 | 622 | |
... | ... | @@ -912,6 +916,14 @@ |
912 | 916 | var->blue.length = 5; |
913 | 917 | var->transp.offset = 0; |
914 | 918 | var->transp.length = 0; |
919 | + break; | |
920 | + case 24: | |
921 | + var->red.offset = 16; | |
922 | + var->red.length = 8; | |
923 | + var->green.offset = 8; | |
924 | + var->green.length = 8; | |
925 | + var->blue.offset = 0; | |
926 | + var->blue.length = 8; | |
915 | 927 | break; |
916 | 928 | case 32: |
917 | 929 | var->transp.offset = 24; |