Files
BPI-CM9-Linux/aml-comp/kernel/aml-6.12/common_drivers/drivers/drm/meson_lcd.h
T
2026-08-24 10:03:24 +08:00

42 lines
1.1 KiB
C

/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
/*
* Copyright (c) 2019 Amlogic, Inc. All rights reserved.
*/
#ifndef __MESON_PANEL_H
#define __MESON_PANEL_H
#include "meson_drv.h"
#include <drm/drm_encoder.h>
#include <drm/amlogic/meson_connector_dev.h>
struct meson_panel {
struct meson_connector base;
struct drm_encoder encoder;
struct drm_device *drm;
struct meson_panel_dev *panel_dev;
struct drm_property *panel_type_prop;
struct drm_property *panel_ready_prop;
int panel_type;
bool panel_ready;
/* vrr related */
int num_vrr_group;
struct drm_vrr_mode_group groups[MAX_VRR_MODE_GROUP];
struct meson_connector_dev *con_dev;
};
#define connector_to_meson_panel(x) \
container_of(connector_to_meson_connector(x), struct meson_panel, base)
#define encoder_to_meson_panel(x) container_of(x, struct meson_panel, encoder)
#define drm_panel_to_meson_panel(x) container_of(x, struct meson_panel, panel)
int meson_panel_dev_bind(struct drm_device *drm,
int type, struct meson_connector_dev *intf);
int meson_panel_dev_unbind(struct drm_device *drm,
int type, struct meson_connector_dev *intf);
#endif