dm: video: Add driver-model support to lcd_simplefb

Allow this to work with CONFIG_DM_VIDEO enabled.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Anatolij Gustschin <agust@denx.de>
master
Simon Glass 7 years ago committed by Tom Rini
parent 452614556c
commit d08e42a8cb
  1. 18
      common/lcd_simplefb.c

@ -8,9 +8,11 @@
*/
#include <common.h>
#include <dm.h>
#include <lcd.h>
#include <fdt_support.h>
#include <libfdt.h>
#include <video.h>
DECLARE_GLOBAL_DATA_PTR;
@ -20,11 +22,27 @@ static int lcd_dt_simplefb_configure_node(void *blob, int off)
int bpix; /* log2 of bits per pixel */
const char *name;
ulong fb_base;
#ifdef CONFIG_DM_VIDEO
struct video_uc_platdata *plat;
struct video_priv *uc_priv;
struct udevice *dev;
int ret;
ret = uclass_first_device_err(UCLASS_VIDEO, &dev);
if (ret)
return ret;
uc_priv = dev_get_uclass_priv(dev);
plat = dev_get_uclass_platdata(dev);
xsize = uc_priv->xsize;
ysize = uc_priv->ysize;
bpix = uc_priv->bpix;
fb_base = plat->base;
#else
xsize = lcd_get_pixel_width();
ysize = lcd_get_pixel_height();
bpix = LCD_BPP;
fb_base = gd->fb_base;
#endif
switch (bpix) {
case 4: /* VIDEO_BPP16 */
name = "r5g6b5";

Loading…
Cancel
Save