blob: 501ed3ada826fd6ebfcf57b098b9908d117c75e8 [file] [log] [blame]
Philipp Tomsich147fd3a2017-05-31 17:59:33 +02001/*
2 * Copyright (c) 2017 Theobroma Systems Design und Consulting GmbH
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __RK_HDMI_H__
8#define __RK_HDMI_H__
9
10struct rkhdmi_driverdata {
11 /* configuration */
12 u8 i2c_clk_high;
13 u8 i2c_clk_low;
14 const char * const *regulator_names;
15 u32 regulator_names_cnt;
16 /* setters/getters */
17 int (*set_input_vop)(struct udevice *dev);
18 int (*clk_config)(struct udevice *dev);
19};
20
21struct rk_hdmi_priv {
22 struct dw_hdmi hdmi;
23 void *grf;
24};
25
26int rk_hdmi_read_edid(struct udevice *dev, u8 *buf, int buf_size);
27void rk_hdmi_probe_regulators(struct udevice *dev,
28 const char * const *names, int cnt);
29int rk_hdmi_ofdata_to_platdata(struct udevice *dev);
30int rk_hdmi_probe(struct udevice *dev);
31
32#endif