Lines Matching refs:conn

40 	struct display_connector *conn = to_display_connector(bridge);
42 if (conn->hpd_gpio) {
43 if (gpiod_get_value_cansleep(conn->hpd_gpio))
49 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc))
52 switch (conn->bridge.type) {
82 struct display_connector *conn = to_display_connector(bridge);
84 return drm_get_edid(connector, conn->bridge.ddc);
95 struct display_connector *conn = arg;
96 struct drm_bridge *bridge = &conn->bridge;
105 struct display_connector *conn;
110 conn = devm_kzalloc(&pdev->dev, sizeof(*conn), GFP_KERNEL);
111 if (!conn)
114 platform_set_drvdata(pdev, conn);
126 conn->bridge.type = DRM_MODE_CONNECTOR_DVIA;
128 conn->bridge.type = DRM_MODE_CONNECTOR_DVID;
130 conn->bridge.type = DRM_MODE_CONNECTOR_DVII;
150 conn->bridge.type = DRM_MODE_CONNECTOR_HDMIA;
152 conn->bridge.type = DRM_MODE_CONNECTOR_HDMIB;
164 conn->bridge.type = type;
169 conn->bridge.interlace_allowed = true;
180 conn->hpd_gpio = devm_gpiod_get_optional(&pdev->dev, "hpd",
182 if (IS_ERR(conn->hpd_gpio)) {
183 if (PTR_ERR(conn->hpd_gpio) != -EPROBE_DEFER)
186 return PTR_ERR(conn->hpd_gpio);
189 conn->hpd_irq = gpiod_to_irq(conn->hpd_gpio);
191 conn->hpd_irq = -EINVAL;
194 if (conn->hpd_irq >= 0) {
195 ret = devm_request_threaded_irq(&pdev->dev, conn->hpd_irq,
200 "HPD", conn);
204 conn->hpd_irq = -EINVAL;
216 conn->bridge.ddc = of_get_i2c_adapter_by_node(phandle);
218 if (!conn->bridge.ddc)
226 conn->bridge.funcs = &display_connector_bridge_funcs;
227 conn->bridge.of_node = pdev->dev.of_node;
229 if (conn->bridge.ddc)
230 conn->bridge.ops |= DRM_BRIDGE_OP_EDID
232 if (conn->hpd_gpio)
233 conn->bridge.ops |= DRM_BRIDGE_OP_DETECT;
234 if (conn->hpd_irq >= 0)
235 conn->bridge.ops |= DRM_BRIDGE_OP_HPD;
239 drm_get_connector_type_name(conn->bridge.type),
241 conn->bridge.ddc ? "with" : "without",
242 conn->hpd_gpio ? "with" : "without",
243 conn->bridge.ops);
245 drm_bridge_add(&conn->bridge);
252 struct display_connector *conn = platform_get_drvdata(pdev);
254 drm_bridge_remove(&conn->bridge);
256 if (!IS_ERR(conn->bridge.ddc))
257 i2c_put_adapter(conn->bridge.ddc);