Loading drivers/video/msm/mdss/mdss_fb.c +36 −22 Original line number Diff line number Diff line Loading @@ -997,16 +997,16 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) fix->xpanstep = 1; fix->ypanstep = 1; var->vmode = FB_VMODE_NONINTERLACED; var->blue.offset = 0; var->green.offset = 8; var->red.offset = 16; var->blue.offset = 24; var->green.offset = 16; var->red.offset = 8; var->blue.length = 8; var->green.length = 8; var->red.length = 8; var->blue.msb_right = 0; var->green.msb_right = 0; var->red.msb_right = 0; var->transp.offset = 24; var->transp.offset = 0; var->transp.length = 8; bpp = 4; break; Loading @@ -1016,16 +1016,16 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) fix->xpanstep = 1; fix->ypanstep = 1; var->vmode = FB_VMODE_NONINTERLACED; var->blue.offset = 8; var->green.offset = 16; var->red.offset = 24; var->blue.offset = 16; var->green.offset = 8; var->red.offset = 0; var->blue.length = 8; var->green.length = 8; var->red.length = 8; var->blue.msb_right = 0; var->green.msb_right = 0; var->red.msb_right = 0; var->transp.offset = 0; var->transp.offset = 24; var->transp.length = 8; bpp = 4; break; Loading Loading @@ -1532,20 +1532,21 @@ static int mdss_fb_check_var(struct fb_var_screeninfo *var, break; case 32: /* Figure out if the user meant RGBA or ARGB /* Check user specified color format BGRA/ARGB/RGBA and verify the position of the RGB components */ if (var->transp.offset == 24) { if ((var->blue.offset != 0) || (var->green.offset != 8) || (var->red.offset != 16)) return -EINVAL; } else if (var->transp.offset == 0) { if ((var->blue.offset != 8) || (var->green.offset != 16) || (var->red.offset != 24)) return -EINVAL; } else if (!((var->transp.offset == 24) && (var->blue.offset == 0) && (var->green.offset == 8) && (var->red.offset == 16)) && !((var->transp.offset == 0) && (var->blue.offset == 24) && (var->green.offset == 16) && (var->red.offset == 8)) && !((var->transp.offset == 24) && (var->blue.offset == 16) && (var->green.offset == 8) && (var->red.offset == 0))) return -EINVAL; /* Check the common values for both RGBA and ARGB */ Loading Loading @@ -1627,7 +1628,20 @@ static int mdss_fb_set_par(struct fb_info *info) break; case 32: if (var->transp.offset == 24) if ((var->red.offset == 0) && (var->green.offset == 8) && (var->blue.offset == 16) && (var->transp.offset == 24)) mfd->fb_imgType = MDP_RGBA_8888; else if ((var->red.offset == 16) && (var->green.offset == 8) && (var->blue.offset == 0) && (var->transp.offset == 24)) mfd->fb_imgType = MDP_BGRA_8888; else if ((var->red.offset == 8) && (var->green.offset == 16) && (var->blue.offset == 24) && (var->transp.offset == 0)) mfd->fb_imgType = MDP_ARGB_8888; else mfd->fb_imgType = MDP_RGBA_8888; Loading Loading
drivers/video/msm/mdss/mdss_fb.c +36 −22 Original line number Diff line number Diff line Loading @@ -997,16 +997,16 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) fix->xpanstep = 1; fix->ypanstep = 1; var->vmode = FB_VMODE_NONINTERLACED; var->blue.offset = 0; var->green.offset = 8; var->red.offset = 16; var->blue.offset = 24; var->green.offset = 16; var->red.offset = 8; var->blue.length = 8; var->green.length = 8; var->red.length = 8; var->blue.msb_right = 0; var->green.msb_right = 0; var->red.msb_right = 0; var->transp.offset = 24; var->transp.offset = 0; var->transp.length = 8; bpp = 4; break; Loading @@ -1016,16 +1016,16 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd) fix->xpanstep = 1; fix->ypanstep = 1; var->vmode = FB_VMODE_NONINTERLACED; var->blue.offset = 8; var->green.offset = 16; var->red.offset = 24; var->blue.offset = 16; var->green.offset = 8; var->red.offset = 0; var->blue.length = 8; var->green.length = 8; var->red.length = 8; var->blue.msb_right = 0; var->green.msb_right = 0; var->red.msb_right = 0; var->transp.offset = 0; var->transp.offset = 24; var->transp.length = 8; bpp = 4; break; Loading Loading @@ -1532,20 +1532,21 @@ static int mdss_fb_check_var(struct fb_var_screeninfo *var, break; case 32: /* Figure out if the user meant RGBA or ARGB /* Check user specified color format BGRA/ARGB/RGBA and verify the position of the RGB components */ if (var->transp.offset == 24) { if ((var->blue.offset != 0) || (var->green.offset != 8) || (var->red.offset != 16)) return -EINVAL; } else if (var->transp.offset == 0) { if ((var->blue.offset != 8) || (var->green.offset != 16) || (var->red.offset != 24)) return -EINVAL; } else if (!((var->transp.offset == 24) && (var->blue.offset == 0) && (var->green.offset == 8) && (var->red.offset == 16)) && !((var->transp.offset == 0) && (var->blue.offset == 24) && (var->green.offset == 16) && (var->red.offset == 8)) && !((var->transp.offset == 24) && (var->blue.offset == 16) && (var->green.offset == 8) && (var->red.offset == 0))) return -EINVAL; /* Check the common values for both RGBA and ARGB */ Loading Loading @@ -1627,7 +1628,20 @@ static int mdss_fb_set_par(struct fb_info *info) break; case 32: if (var->transp.offset == 24) if ((var->red.offset == 0) && (var->green.offset == 8) && (var->blue.offset == 16) && (var->transp.offset == 24)) mfd->fb_imgType = MDP_RGBA_8888; else if ((var->red.offset == 16) && (var->green.offset == 8) && (var->blue.offset == 0) && (var->transp.offset == 24)) mfd->fb_imgType = MDP_BGRA_8888; else if ((var->red.offset == 8) && (var->green.offset == 16) && (var->blue.offset == 24) && (var->transp.offset == 0)) mfd->fb_imgType = MDP_ARGB_8888; else mfd->fb_imgType = MDP_RGBA_8888; Loading