1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * Copyright (c) 2025 Rockchip Electronics Co., Ltd. 4 */ 5 6 #ifndef __INNO_HDMI__ 7 #define __INNO_HDMI__ 8 9 #include <linux/types.h> 10 11 struct device; 12 struct drm_encoder; 13 struct drm_display_mode; 14 struct inno_hdmi; 15 16 struct inno_hdmi_plat_ops { 17 void (*enable)(struct device *pdev, struct drm_display_mode *mode); 18 }; 19 20 struct inno_hdmi_phy_config { 21 unsigned long pixelclock; 22 u8 pre_emphasis; 23 u8 voltage_level_control; 24 }; 25 26 struct inno_hdmi_plat_data { 27 const struct inno_hdmi_plat_ops *ops; 28 struct inno_hdmi_phy_config *phy_configs; 29 struct inno_hdmi_phy_config *default_phy_config; 30 }; 31 32 struct inno_hdmi *inno_hdmi_bind(struct device *pdev, 33 struct drm_encoder *encoder, 34 const struct inno_hdmi_plat_data *plat_data); 35 #endif /* __INNO_HDMI__ */ 36