Lines Matching refs:panel

3  * Novatek NT39016 TFT LCD panel driver
65 static inline struct nt39016 *to_nt39016(struct drm_panel *panel)
67 return container_of(panel, struct nt39016, drm_panel);
120 struct nt39016 *panel = to_nt39016(drm_panel);
123 err = regulator_enable(panel->supply);
135 gpiod_set_value_cansleep(panel->reset_gpio, 1);
137 gpiod_set_value_cansleep(panel->reset_gpio, 0);
141 err = regmap_multi_reg_write(panel->map, nt39016_panel_regs,
151 regulator_disable(panel->supply);
157 struct nt39016 *panel = to_nt39016(drm_panel);
159 gpiod_set_value_cansleep(panel->reset_gpio, 1);
161 regulator_disable(panel->supply);
168 struct nt39016 *panel = to_nt39016(drm_panel);
171 ret = regmap_write(panel->map, NT39016_REG_SYSTEM,
174 dev_err(drm_panel->dev, "Unable to enable panel: %d\n", ret);
188 struct nt39016 *panel = to_nt39016(drm_panel);
191 err = regmap_write(panel->map, NT39016_REG_SYSTEM,
194 dev_err(drm_panel->dev, "Unable to disable panel: %d\n", err);
204 struct nt39016 *panel = to_nt39016(drm_panel);
205 const struct nt39016_panel_info *panel_info = panel->panel_info;
246 struct nt39016 *panel;
249 panel = devm_kzalloc(dev, sizeof(*panel), GFP_KERNEL);
250 if (!panel)
253 spi_set_drvdata(spi, panel);
255 panel->panel_info = of_device_get_match_data(dev);
256 if (!panel->panel_info)
259 panel->supply = devm_regulator_get(dev, "power");
260 if (IS_ERR(panel->supply))
261 return dev_err_probe(dev, PTR_ERR(panel->supply),
264 panel->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
265 if (IS_ERR(panel->reset_gpio))
266 return dev_err_probe(dev, PTR_ERR(panel->reset_gpio), "Failed to get reset GPIO\n");
276 panel->map = devm_regmap_init_spi(spi, &nt39016_regmap_config);
277 if (IS_ERR(panel->map)) {
279 return PTR_ERR(panel->map);
282 drm_panel_init(&panel->drm_panel, dev, &nt39016_funcs,
285 err = drm_panel_of_backlight(&panel->drm_panel);
289 drm_panel_add(&panel->drm_panel);
296 struct nt39016 *panel = spi_get_drvdata(spi);
298 drm_panel_remove(&panel->drm_panel);
300 nt39016_disable(&panel->drm_panel);
301 nt39016_unprepare(&panel->drm_panel);