video: Drop the uclass colour map

We don't need this anymore since we use the BMP palette directly. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2021-11-19 13:23:56 -07:00 committed by Anatolij Gustschin
parent 646e169aa0
commit ecb8b4f8f3
3 changed files with 0 additions and 47 deletions

View File

@ -319,27 +319,6 @@ int video_sync_copy_all(struct udevice *dev)
#endif
/* Set up the colour map */
static int video_pre_probe(struct udevice *dev)
{
struct video_priv *priv = dev_get_uclass_priv(dev);
priv->cmap = calloc(256, sizeof(ushort));
if (!priv->cmap)
return -ENOMEM;
return 0;
}
static int video_pre_remove(struct udevice *dev)
{
struct video_priv *priv = dev_get_uclass_priv(dev);
free(priv->cmap);
return 0;
}
/* Set up the display ready for use */
static int video_post_probe(struct udevice *dev)
{
@ -447,9 +426,7 @@ UCLASS_DRIVER(video) = {
.name = "video",
.flags = DM_UC_FLAG_SEQ_ALIAS,
.post_bind = video_post_bind,
.pre_probe = video_pre_probe,
.post_probe = video_post_probe,
.pre_remove = video_pre_remove,
.priv_auto = sizeof(struct video_uc_priv),
.per_device_auto = sizeof(struct video_priv),
.per_device_plat_auto = sizeof(struct video_uc_plat),

View File

@ -214,28 +214,10 @@ static void video_splash_align_axis(int *axis, unsigned long panel_size,
*axis = max(0, (int)axis_alignment);
}
static void video_set_cmap(struct udevice *dev,
struct bmp_color_table_entry *cte, unsigned colours)
{
struct video_priv *priv = dev_get_uclass_priv(dev);
int i;
ushort *cmap = priv->cmap;
debug("%s: colours=%d\n", __func__, colours);
for (i = 0; i < colours; ++i) {
*cmap = ((cte->red << 8) & 0xf800) |
((cte->green << 3) & 0x07e0) |
((cte->blue >> 3) & 0x001f);
cmap++;
cte++;
}
}
int video_bmp_display(struct udevice *dev, ulong bmp_image, int x, int y,
bool align)
{
struct video_priv *priv = dev_get_uclass_priv(dev);
ushort *cmap_base = NULL;
int i, j;
uchar *start, *fb;
struct bmp_image *bmp = map_sysmem(bmp_image, 0);
@ -291,9 +273,6 @@ int video_bmp_display(struct udevice *dev, ulong bmp_image, int x, int y,
debug("Display-bmp: %d x %d with %d colours, display %d\n",
(int)width, (int)height, (int)colours, 1 << bpix);
if (bmp_bpix == 8)
video_set_cmap(dev, palette, colours);
padded_width = (width & 0x3 ? (width & ~0x3) + 4 : width);
if (align) {
@ -316,7 +295,6 @@ int video_bmp_display(struct udevice *dev, ulong bmp_image, int x, int y,
switch (bmp_bpix) {
case 1:
case 8: {
cmap_base = priv->cmap;
#ifdef CONFIG_VIDEO_BMP_RLE8
u32 compression = get_unaligned_le32(&bmp->header.compression);
debug("compressed %d %d\n", compression, BMP_BI_RLE8);

View File

@ -93,7 +93,6 @@ enum video_format {
* @colour_bg: Background colour (pixel value)
* @flush_dcache: true to enable flushing of the data cache after
* the LCD is updated
* @cmap: Colour map for 8-bit-per-pixel displays
* @fg_col_idx: Foreground color code (bit 3 = bold, bit 0-2 = color)
* @bg_col_idx: Background color code (bit 3 = bold, bit 0-2 = color)
*/
@ -118,7 +117,6 @@ struct video_priv {
u32 colour_fg;
u32 colour_bg;
bool flush_dcache;
ushort *cmap;
u8 fg_col_idx;
u8 bg_col_idx;
};