rk fb: fix bmp logo support
authoryxj <yxj@rock-chips.com>
Wed, 20 Mar 2013 08:42:28 +0000 (16:42 +0800)
committeryxj <yxj@rock-chips.com>
Wed, 20 Mar 2013 08:43:14 +0000 (16:43 +0800)
drivers/video/logo/Kconfig
drivers/video/logo/Makefile
drivers/video/logo/logo.c
drivers/video/logo/logo_android_bmp.bmp [new file with mode: 0644]
drivers/video/logo/logo_bmp.bmp [deleted file]
drivers/video/rockchip/rk_fb.c
include/linux/linux_logo.h

index 552155bbcc3b9a428bfed6104ab152f30c8f4761..5a88ce8dd371de7d0cbf3cbd971f48324a80e019 100644 (file)
@@ -98,16 +98,21 @@ config LOGO_LINUX_800x480_CLUT224
         bool "Standard 224-color 800x480 Linux logo "
         default n
 
+config LOGO_LOWERPOWER_WARNING
+        bool "warning: lowerpower when poweron"
+        default n
+
 menuconfig LOGO_LINUX_BMP
         bool "Bmp logo support"
        default n
 
-config LOGO_LOWERPOWER_WARNING
-       bool "warning: lowerpower when poweron"
-       default n
-
 config LOGO_LINUX_BMP_SUNSET
        bool "Bmp logo sunset"
        depends on  LOGO_LINUX_BMP
        default n
+
+config LOGO_LINUX_BMP_ANDROID
+        bool "Bmp logo android"
+        depends on  LOGO_LINUX_BMP
+        default n
 endif # LOGO
index c7396a480c20758b5cd2a49fe2c92e7a3c73d7ae..ccae7cc38f3dac96547b6c361be0dca18dc194b9 100644 (file)
@@ -19,6 +19,7 @@ obj-$(CONFIG_LOGO_M32R_CLUT224)               += logo_m32r_clut224.o
 obj-$(CONFIG_LOGO_G3_CLUT224)          += logo_g3_clut224.o
 obj-$(CONFIG_LOGO_LINUX_800x480_CLUT224)        += logo_linux_800x480_clut224.o
 obj-$(CONFIG_LOGO_LINUX_BMP_SUNSET)    += logo_sunset_bmp.o
+obj-$(CONFIG_LOGO_LINUX_BMP_ANDROID)     += logo_android_bmp.o
 obj-$(CONFIG_LOGO_LOWERPOWER_WARNING)   += logo_linux_lowerpower_clut224.o
 
 obj-$(CONFIG_LOGO_CHARGER_CLUT224)         += logo_charger00_clut224.o logo_charger01_clut224.o logo_charger02_clut224.o logo_charger03_clut224.o logo_charger04_clut224.o logo_charger05_clut224.o logo_charger06_clut224.o logo_charger07_clut224.o logo_charger08_clut224.o 
index 141080a6da65c3b1159e0a828f311693d0fad893..a39da141aa028e99d1d434900f4ddc3fe448a0d4 100644 (file)
@@ -141,9 +141,14 @@ const struct linux_logo * __init_refok fb_find_logo(int depth)
                if (depth >= 24)
                {
                        #ifdef  CONFIG_LOGO_LINUX_BMP
-                       #ifdef CONFIG_LOGO_LINUX_BMP
+                       #ifdef CONFIG_LOGO_LINUX_BMP_SUNSET
                        logo = &logo_sunset_bmp;
                        #endif
+                       
+                       #ifdef CONFIG_LOGO_LINUX_BMP_ANDROID
+                       logo = &logo_android_bmp;
+                       #endif
+                       
                        #endif  
                }
                else
diff --git a/drivers/video/logo/logo_android_bmp.bmp b/drivers/video/logo/logo_android_bmp.bmp
new file mode 100644 (file)
index 0000000..0af3b87
Binary files /dev/null and b/drivers/video/logo/logo_android_bmp.bmp differ
diff --git a/drivers/video/logo/logo_bmp.bmp b/drivers/video/logo/logo_bmp.bmp
deleted file mode 100644 (file)
index 0af3b87..0000000
Binary files a/drivers/video/logo/logo_bmp.bmp and /dev/null differ
index 0297472fce6bdc9a2e1f31e6e2adf34bb5dfed9d..81db1f735bce84a4c896b9bb83a8b2ae9610c94d 100644 (file)
@@ -669,19 +669,23 @@ static struct fb_ops fb_ops = {
 
 
 static struct fb_var_screeninfo def_var = {
-       .red    = {11,5,0},//default set to rgb565,the boot logo is rgb565
-       .green  = {5,6,0},
-       .blue   = {0,5,0},
-       .transp = {0,0,0},      
 #ifdef  CONFIG_LOGO_LINUX_BMP
-       .nonstd      = HAL_PIXEL_FORMAT_RGBA_8888,
+       .red            = {16,8,0},
+       .green          = {8,8,0},
+       .blue           = {0,8,0},
+       .transp         = {0,0,0},
+       .nonstd         = HAL_PIXEL_FORMAT_BGRA_8888,
 #else
-       .nonstd      = HAL_PIXEL_FORMAT_RGB_565,   //(ypos<<20+xpos<<8+format) format
+       .red            = {11,5,0},
+       .green          = {5,6,0},
+       .blue           = {0,5,0},
+       .transp         = {0,0,0},
+       .nonstd         = HAL_PIXEL_FORMAT_RGB_565,   //(ypos<<20+xpos<<8+format) format
 #endif
-       .grayscale   = 0,  //(ysize<<20+xsize<<8)
-       .activate    = FB_ACTIVATE_NOW,
-       .accel_flags = 0,
-       .vmode       = FB_VMODE_NONINTERLACED,
+       .grayscale      = 0,  //(ysize<<20+xsize<<8)
+       .activate       = FB_ACTIVATE_NOW,
+       .accel_flags    = 0,
+       .vmode          = FB_VMODE_NONINTERLACED,
 };
 
 static struct fb_fix_screeninfo def_fix = {
index 49892ff0c4828f0bfee31ef7ceebc0cf34d91afd..31126eb86cd460457f9e7cda587e48b567b3c820 100644 (file)
@@ -54,6 +54,7 @@ extern const struct linux_logo logo_m32r_clut224;
 extern const struct linux_logo logo_spe_clut224;
 extern const struct linux_logo logo_g3_clut224;
 extern const struct linux_logo logo_sunset_bmp;
+extern const struct linux_logo logo_android_bmp;
 extern const struct linux_logo logo_linux_800x480_clut224;
 
 extern const struct linux_logo *fb_find_logo(int depth);