0001
0002
0003
0004
0005
0006
0007 #ifndef __MESON_OSD_AFBCD_H
0008 #define __MESON_OSD_AFBCD_H
0009
0010 #include "meson_drv.h"
0011
0012
0013 #define MESON_G12A_AFBCD_OUT_ADDR 0x1000000
0014
0015 struct meson_afbcd_ops {
0016 int (*init)(struct meson_drm *priv);
0017 void (*exit)(struct meson_drm *priv);
0018 int (*reset)(struct meson_drm *priv);
0019 int (*enable)(struct meson_drm *priv);
0020 int (*disable)(struct meson_drm *priv);
0021 int (*setup)(struct meson_drm *priv);
0022 int (*fmt_to_blk_mode)(u64 modifier, uint32_t format);
0023 bool (*supported_fmt)(u64 modifier, uint32_t format);
0024 };
0025
0026 extern struct meson_afbcd_ops meson_afbcd_gxm_ops;
0027 extern struct meson_afbcd_ops meson_afbcd_g12a_ops;
0028
0029 #endif