drm/mgag200: Constify LUT for programming bpp

Declare constant LUT for bpp programming as static const. Removes mutable
data from device structure.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20210702075642.27834-5-tzimmermann@suse.de
This commit is contained in:
Thomas Zimmermann 2021-07-02 09:56:42 +02:00
parent 02d4b387cb
commit d9cc564bf3
2 changed files with 6 additions and 12 deletions

View File

@ -166,8 +166,6 @@ struct mga_device {
enum mga_type type;
int bpp_shifts[4];
int fb_mtrr;
union {

View File

@ -1137,10 +1137,11 @@ static void mgag200_set_mode_regs(struct mga_device *mdev,
WREG8(MGA_MISC_OUT, misc);
}
static u8 mgag200_get_bpp_shift(struct mga_device *mdev,
const struct drm_format_info *format)
static u8 mgag200_get_bpp_shift(const struct drm_format_info *format)
{
return mdev->bpp_shifts[format->cpp[0] - 1];
static const u8 bpp_shift[] = {0, 1, 0, 2};
return bpp_shift[format->cpp[0] - 1];
}
/*
@ -1152,7 +1153,7 @@ static u32 mgag200_calculate_offset(struct mga_device *mdev,
const struct drm_framebuffer *fb)
{
u32 offset = fb->pitches[0] / fb->format->cpp[0];
u8 bppshift = mgag200_get_bpp_shift(mdev, fb->format);
u8 bppshift = mgag200_get_bpp_shift(fb->format);
if (fb->format->cpp[0] * 8 == 24)
offset = (offset * 3) >> (4 - bppshift);
@ -1189,7 +1190,7 @@ static void mgag200_set_format_regs(struct mga_device *mdev,
bpp = format->cpp[0] * 8;
bppshift = mgag200_get_bpp_shift(mdev, format);
bppshift = mgag200_get_bpp_shift(format);
switch (bpp) {
case 24:
scale = ((1 << bppshift) * 3) - 1;
@ -1699,11 +1700,6 @@ int mgag200_modeset_init(struct mga_device *mdev)
size_t format_count = ARRAY_SIZE(mgag200_simple_display_pipe_formats);
int ret;
mdev->bpp_shifts[0] = 0;
mdev->bpp_shifts[1] = 1;
mdev->bpp_shifts[2] = 0;
mdev->bpp_shifts[3] = 2;
mgag200_init_regs(mdev);
ret = drmm_mode_config_init(dev);