안녕하세요? 

다름이 아니라 현재 u-boot에서 16bit bitmap 이미지를 띠울려고 합니다. 프로세서는 pxa255이구요.

3.5인치 LTS350Q1-PE1 LCD chip을 사용하고 있구요 아래와 같은 설정으로 사용할려구 합니다.
============================
1. Active mode 사용
2. 16bit per pixel 사용
3. 240 * 320
============================

u-boot소스 common/lcd.c 파일안의 lcd_display_bitmap()함수의 내용중 앞부분을 발췌한 부분중 빨간색 글씨부분을 보면
1과8bit bitmap만을 지원한다고 합니다.

================================================================================================
int lcd_display_bitmap(ulong bmp_image, int x, int y)
{
 ushort i, j;
 uchar *fb;
 bmp_image_t *bmp=(bmp_image_t *)bmp_image;
 uchar *bmap;
 ushort padded_line;
 unsigned long width, height;
 unsigned long pwidth = panel_info.vl_col;
 unsigned colors,bpix;
 unsigned long compression;

 if (!((bmp->header.signature[0]=='B') &&
  (bmp->header.signature[1]=='M'))) {
  printf ("Error: no valid bmp image at %lx\n", bmp_image);
  return 1;
}

 width = le32_to_cpu (bmp->header.width);
 height = le32_to_cpu (bmp->header.height);
 colors = 1<<le16_to_cpu (bmp->header.bit_count);
 compression = le32_to_cpu (bmp->header.compression);

 bpix = NBITS(panel_info.vl_bpix);

 if ((bpix != 1) && (bpix != 8)) {
  printf ("Error: %d bit/pixel mode not supported by U-Boot\n",
   bpix);
  return 1;
 }

 if (bpix != le16_to_cpu(bmp->header.bit_count)) {
  printf ("Error: %d bit/pixel mode, but BMP has %d bit/pixel\n",
   bpix,
   le16_to_cpu(bmp->header.bit_count));
  return 1;
 }

 debug ("Display-bmp: %d x %d  with %d colors\n",
  (int)width, (int)height, (int)colors);
================================================================================================

첨에 저기 빨간 부분에 'bpix != 16'부분을 추가시켜서 체크를 통과하게 해봤는데 실제로 이미지가 엉켜서 제대로 나오지 않았습니다.
여기서 16bit를 지원하기 위해서는 코드를 추가로 만들어줘야 하는것 같은데 능력상 힘들것 같고
다른 레퍼런스 소스나 아니면 u-boot상에서 16bit 이상의 bitmap파일을 보여주는 방법이
있으면 도움 부탁드립니다.

즐거운 월요일 시작하시기 바랍니다.