Lines Matching refs:sbridge
53 struct simple_bridge *sbridge = drm_connector_to_simple_bridge(connector);
57 if (sbridge->next_bridge->ops & DRM_BRIDGE_OP_EDID) {
58 edid = drm_bridge_get_edid(sbridge->next_bridge, connector);
90 struct simple_bridge *sbridge = drm_connector_to_simple_bridge(connector);
92 return drm_bridge_detect(sbridge->next_bridge);
107 struct simple_bridge *sbridge = drm_bridge_to_simple_bridge(bridge);
110 ret = drm_bridge_attach(bridge->encoder, sbridge->next_bridge, bridge,
123 drm_connector_helper_add(&sbridge->connector,
125 ret = drm_connector_init_with_ddc(bridge->dev, &sbridge->connector,
127 sbridge->info->connector_type,
128 sbridge->next_bridge->ddc);
134 drm_connector_attach_encoder(&sbridge->connector, bridge->encoder);
141 struct simple_bridge *sbridge = drm_bridge_to_simple_bridge(bridge);
144 if (sbridge->vdd) {
145 ret = regulator_enable(sbridge->vdd);
150 gpiod_set_value_cansleep(sbridge->enable, 1);
155 struct simple_bridge *sbridge = drm_bridge_to_simple_bridge(bridge);
157 gpiod_set_value_cansleep(sbridge->enable, 0);
159 if (sbridge->vdd)
160 regulator_disable(sbridge->vdd);
171 struct simple_bridge *sbridge;
174 sbridge = devm_kzalloc(&pdev->dev, sizeof(*sbridge), GFP_KERNEL);
175 if (!sbridge)
177 platform_set_drvdata(pdev, sbridge);
179 sbridge->info = of_device_get_match_data(&pdev->dev);
186 sbridge->next_bridge = of_drm_find_bridge(remote);
189 if (!sbridge->next_bridge) {
195 sbridge->vdd = devm_regulator_get_optional(&pdev->dev, "vdd");
196 if (IS_ERR(sbridge->vdd)) {
197 int ret = PTR_ERR(sbridge->vdd);
200 sbridge->vdd = NULL;
204 sbridge->enable = devm_gpiod_get_optional(&pdev->dev, "enable",
206 if (IS_ERR(sbridge->enable))
207 return dev_err_probe(&pdev->dev, PTR_ERR(sbridge->enable),
211 sbridge->bridge.funcs = &simple_bridge_bridge_funcs;
212 sbridge->bridge.of_node = pdev->dev.of_node;
213 sbridge->bridge.timings = sbridge->info->timings;
215 drm_bridge_add(&sbridge->bridge);
222 struct simple_bridge *sbridge = platform_get_drvdata(pdev);
224 drm_bridge_remove(&sbridge->bridge);