7#if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_DRM_PANEL_BRIDGE)
12struct component_master_ops;
13struct component_match;
37 struct device_node *port);
39 struct device_node *port);
41 struct component_match **matchptr,
43 struct device_node *
node);
44int drm_of_component_probe(
struct device *
dev,
45 int (*compare_of)(
struct device *,
void *),
46 const struct component_master_ops *m_ops);
47int drm_of_encoder_active_endpoint(
struct device_node *
node,
50int drm_of_find_panel_or_bridge(
const struct device_node *np,
54int drm_of_lvds_get_dual_link_pixel_order(
const struct device_node *port1,
55 const struct device_node *port2);
56int drm_of_lvds_get_dual_link_pixel_order_sink(
struct device_node *port1,
57 struct device_node *port2);
58int drm_of_lvds_get_data_mapping(
const struct device_node *port);
59int drm_of_get_data_lanes_count(
const struct device_node *
endpoint,
60 const unsigned int min,
const unsigned int max);
61int drm_of_get_data_lanes_count_ep(
const struct device_node *port,
62 int port_reg,
int reg,
63 const unsigned int min,
64 const unsigned int max);
65int drm_of_get_data_lanes_count_remote(
const struct device_node *port,
66 int port_reg,
int reg,
67 const unsigned int min,
68 const unsigned int max);
71 struct device_node *port)
77 struct device_node *port)
84 struct component_match **matchptr,
86 struct device_node *
node)
92 int (*compare_of)(
struct device *,
void *),
93 const struct component_master_ops *m_ops)
98static inline int drm_of_encoder_active_endpoint(
struct device_node *
node,
104static inline int drm_of_find_panel_or_bridge(
const struct device_node *np,
113drm_of_lvds_get_dual_link_pixel_order(
const struct device_node *port1,
114 const struct device_node *port2)
120drm_of_lvds_get_dual_link_pixel_order_sink(
struct device_node *port1,
121 struct device_node *port2)
127drm_of_lvds_get_data_mapping(
const struct device_node *port)
133drm_of_get_data_lanes_count(
const struct device_node *
endpoint,
134 const unsigned int min,
const unsigned int max)
140drm_of_get_data_lanes_count_ep(
const struct device_node *port,
141 int port_reg,
int reg,
142 const unsigned int min,
143 const unsigned int max)
149drm_of_get_data_lanes_count_remote(
const struct device_node *port,
150 int port_reg,
int reg,
151 const unsigned int min,
152 const unsigned int max)
158#if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_DRM_MIPI_DSI)
176static inline int drm_of_panel_bridge_remove(
const struct device_node *np,
179#if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_DRM_PANEL_BRIDGE)
181 struct device_node *remote;
183 remote = of_graph_get_remote_node(np, port,
endpoint);
187 bridge = of_drm_find_and_get_bridge(remote);
188 drm_panel_bridge_remove(bridge);
199static inline int drm_of_encoder_active_endpoint_id(
struct device_node *
node,
203 int ret = drm_of_encoder_active_endpoint(
node,
encoder,
209static inline int drm_of_encoder_active_port_id(
struct device_node *
node,
213 int ret = drm_of_encoder_active_endpoint(
node,
encoder,
void * endpoint
Definition main.cpp:149
#define EINVAL
Definition acclib.h:198
#define ENODEV
Definition acclib.h:197
unsigned int uint32_t
Definition acefiex.h:163
void drm_bridge_put(struct drm_bridge *bridge)
struct drm_encoder * encoder
Definition drm_encoder.h:211
drm_lvds_dual_link_pixels
Definition drm_of.h:30
@ DRM_LVDS_DUAL_LINK_EVEN_ODD_PIXELS
Definition drm_of.h:31
@ DRM_LVDS_DUAL_LINK_ODD_EVEN_PIXELS
Definition drm_of.h:32
const struct device * dev
Definition drm_print.h:519
#define ERR_PTR(err)
Definition err.h:51
struct i915_engine_class_instance master
Definition i915_drm.h:2
void int node
Definition kthread.h:31
#define min(a, b)
Definition minmax.h:24
#define max(a, b)
Definition minmax.h:28
int compare(const void *a, const void *b)
Definition search.cpp:85
Definition drm_bridge.h:1100
Definition drm_device.h:75
Definition drm_encoder.h:106
Definition drm_panel.h:205
Definition drm_mipi_dsi.h:161
Definition drm_mipi_dsi.h:105