video: fbdev: atari: Fix ext_setcolreg()
authorGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 11 Jul 2022 15:50:28 +0000 (17:50 +0200)
committerHelge Deller <deller@gmx.de>
Mon, 18 Jul 2022 05:56:18 +0000 (07:56 +0200)
The red, green, and blue color values are 16-bit, while the external
graphics hardware registers are 8-bit.
Add the missing conversion from 16-bit to 8-bit.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Tested-by: Michael Schmitz <schmitzmic@gmail.com>
Signed-off-by: Helge Deller <deller@gmx.de>
drivers/video/fbdev/atafb.c

index 39c3b86..a36cd8f 100644 (file)
@@ -2206,6 +2206,10 @@ static int ext_setcolreg(unsigned int regno, unsigned int red,
        if (regno > 255)
                return 1;
 
+       red >>= 8;
+       green >>= 8;
+       blue >>= 8;
+
        switch (external_card_type) {
        case IS_VGA:
                OUTB(0x3c8, regno);