#include <dm.h>
#include <efi_loader.h>
#include <fdt_support.h>
+#include <log.h>
+#include <part.h>
#include <linux/sizes.h>
#include <asm/arch/mem.h>
+#include <asm/global_data.h>
#include <dm/device-internal.h>
#include <dm/uclass-internal.h>
static int meson_vpu_setup_mode(struct udevice *dev, struct udevice *disp)
{
- struct video_uc_platdata *uc_plat = dev_get_uclass_platdata(dev);
+ struct video_uc_plat *uc_plat = dev_get_uclass_plat(dev);
struct video_priv *uc_priv = dev_get_uclass_priv(dev);
struct display_timing timing;
bool is_cvbs = false;
static int meson_vpu_bind(struct udevice *dev)
{
- struct video_uc_platdata *plat = dev_get_uclass_platdata(dev);
+ struct video_uc_plat *plat = dev_get_uclass_plat(dev);
plat->size = VPU_MAX_WIDTH * VPU_MAX_HEIGHT *
(1 << VPU_MAX_LOG2_BPP) / 8;
return;
#if defined(CONFIG_EFI_LOADER)
- efi_add_memory_map(meson_fb.base, meson_fb.fb_size >> EFI_PAGE_SHIFT,
- EFI_RESERVED_MEMORY_TYPE, false);
+ efi_add_memory_map(meson_fb.base, meson_fb.fb_size,
+ EFI_RESERVED_MEMORY_TYPE);
#endif
#if defined(CONFIG_VIDEO_DT_SIMPLEFB)
meson_vpu_setup_simplefb(fdt);
.of_match = meson_vpu_ids,
.probe = meson_vpu_probe,
.bind = meson_vpu_bind,
- .priv_auto_alloc_size = sizeof(struct meson_vpu_priv),
- .flags = DM_FLAG_PRE_RELOC,
+ .priv_auto = sizeof(struct meson_vpu_priv),
+ .flags = DM_FLAG_PRE_RELOC | DM_FLAG_LEAVE_PD_ON,
};