blob: 0d78353739c2bf22ccfa446cc92e5faa7b96f40f [file] [log] [blame]
struct fb_cmap {
unsigned int start;
unsigned int len;
unsigned short *red;
unsigned short *green;
unsigned short *blue;
unsigned short *transp;
};
typedef struct {
int r;
int g;
int b;
int a;
} rgba_t;
static unsigned int cmap_len;
extern unsigned int red_len, green_len, blue_len, alpha_len;
extern struct fb_cmap fb_cmap;
extern rgba_t *clut;
extern int fb_set_cmap(void);
void directcolor_update_cmap(void)
{
unsigned int i;
for (i = 0; i < cmap_len; i++) {
if (i < red_len)
fb_cmap.red[i] = clut[i].r;
if (i < green_len)
fb_cmap.green[i] = clut[i].g;
if (i < blue_len)
fb_cmap.blue[i] = clut[i].b;
if (fb_cmap.transp && i < alpha_len)
fb_cmap.transp[i] = clut[i].a;
}
}