Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9058be43 authored by Antonino A. Daplas's avatar Antonino A. Daplas Committed by Linus Torvalds
Browse files

gbefb: the pseudo_palette is only 16 elements long



The pseudo_palette is only 16 elements long.

Signed-off-by: default avatarAntonino Daplas <adaplas@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent c771eba1
Loading
Loading
Loading
Loading
+21 −20
Original line number Diff line number Diff line
@@ -86,7 +86,7 @@ static int gbe_revision;

static int ypan, ywrap;

static uint32_t pseudo_palette[256];
static uint32_t pseudo_palette[16];

static char *mode_option __initdata = NULL;

@@ -854,8 +854,7 @@ static int gbefb_setcolreg(unsigned regno, unsigned red, unsigned green,
	green >>= 8;
	blue >>= 8;

	switch (info->var.bits_per_pixel) {
	case 8:
	if (info->var.bits_per_pixel <= 8) {
		/* wait for the color map FIFO to have a free entry */
		for (i = 0; i < 1000 && gbe->cm_fifo >= 63; i++)
			udelay(10);
@@ -864,7 +863,8 @@ static int gbefb_setcolreg(unsigned regno, unsigned red, unsigned green,
			return 1;
		}
		gbe->cmap[regno] = (red << 24) | (green << 16) | (blue << 8);
		break;
	} else if (regno < 16) {
		switch (info->var.bits_per_pixel) {
		case 15:
		case 16:
			red >>= 3;
@@ -882,6 +882,7 @@ static int gbefb_setcolreg(unsigned regno, unsigned red, unsigned green,
				(blue << info->var.blue.offset);
			break;
		}
	}

	return 0;
}