]>
Commit | Line | Data |
---|---|---|
23f965a4 YF |
1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* | |
3 | * Copyright (C) 2019 STMicroelectronics - All Rights Reserved | |
4 | * Author(s): Yannick Fertre <[email protected]> for STMicroelectronics. | |
5 | * | |
6 | */ | |
7 | ||
8 | #ifndef _DSI_HOST_H | |
9 | #define _DSI_HOST_H | |
10 | ||
11 | #include <mipi_dsi.h> | |
12 | ||
13 | struct dsi_host_ops { | |
14 | /** | |
15 | * init() - initialized the dsi_host | |
16 | * | |
17 | * @dev: dsi host device | |
18 | * @device: DSI peripheral device | |
19 | * @timing: Display timings | |
20 | * @max_data_lanes: maximum number of data lines | |
21 | * @phy_ops: set of function pointers for performing physical operations | |
22 | * @return 0 if OK, -ve on error | |
23 | */ | |
24 | int (*init)(struct udevice *dev, | |
25 | struct mipi_dsi_device *device, | |
26 | struct display_timing *timings, | |
27 | unsigned int max_data_lanes, | |
28 | const struct mipi_dsi_phy_ops *phy_ops); | |
29 | ||
30 | /** | |
31 | * enable() - Enable the dsi_host | |
32 | * | |
33 | * @dev: dsi host device | |
34 | * @return 0 if OK, -ve on error | |
35 | */ | |
36 | int (*enable)(struct udevice *dev); | |
37 | ||
38 | /** | |
39 | * disable() - Disable the dsi_host | |
40 | * | |
41 | * @dev: dsi host device | |
42 | * @return 0 if OK, -ve on error | |
43 | */ | |
44 | int (*disable)(struct udevice *dev); | |
45 | }; | |
46 | ||
47 | #define dsi_host_get_ops(dev) ((struct dsi_host_ops *)(dev)->driver->ops) | |
48 | ||
49 | /** | |
50 | * dsi_host_init | |
51 | * | |
52 | * @dev: dsi host device | |
53 | * @device: DSI peripheral device | |
54 | * @timing: Display timings | |
55 | * @max_data_lanes: maximum number of data lines | |
56 | * @phy_ops: set of function pointers for performing physical operations | |
57 | * @return 0 if OK, -ve on error | |
58 | */ | |
59 | int dsi_host_init(struct udevice *dev, | |
60 | struct mipi_dsi_device *device, | |
61 | struct display_timing *timings, | |
62 | unsigned int max_data_lanes, | |
63 | const struct mipi_dsi_phy_ops *phy_ops); | |
64 | ||
65 | /** | |
66 | * dsi_host_enable | |
67 | * | |
68 | * @dev: dsi host device | |
69 | * @return 0 if OK, -ve on error | |
70 | */ | |
71 | int dsi_host_enable(struct udevice *dev); | |
72 | ||
73 | #endif |