mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
drm: psuedocolor support for ARGB modes
If there is an alpha channel, need to mask in 1's in the alpha channel to prevent the fb from being completely transparent. Signed-off-by: Rob Clark <rob@ti.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
a250b9fdc5
commit
9da12b6aeb
1 changed files with 5 additions and 0 deletions
|
@ -627,6 +627,11 @@ static int setcolreg(struct drm_crtc *crtc, u16 red, u16 green,
|
||||||
value = (red << info->var.red.offset) |
|
value = (red << info->var.red.offset) |
|
||||||
(green << info->var.green.offset) |
|
(green << info->var.green.offset) |
|
||||||
(blue << info->var.blue.offset);
|
(blue << info->var.blue.offset);
|
||||||
|
if (info->var.transp.length > 0) {
|
||||||
|
u32 mask = (1 << info->var.transp.length) - 1;
|
||||||
|
mask <<= info->var.transp.offset;
|
||||||
|
value |= mask;
|
||||||
|
}
|
||||||
palette[regno] = value;
|
palette[regno] = value;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue