Lines Matching refs:sharp_nt

53 static int sharp_nt_panel_init(struct sharp_nt_panel *sharp_nt)  in sharp_nt_panel_init()  argument
55 struct mipi_dsi_device *dsi = sharp_nt->dsi; in sharp_nt_panel_init()
80 static int sharp_nt_panel_on(struct sharp_nt_panel *sharp_nt) in sharp_nt_panel_on() argument
82 struct mipi_dsi_device *dsi = sharp_nt->dsi; in sharp_nt_panel_on()
94 static int sharp_nt_panel_off(struct sharp_nt_panel *sharp_nt) in sharp_nt_panel_off() argument
96 struct mipi_dsi_device *dsi = sharp_nt->dsi; in sharp_nt_panel_off()
115 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); in sharp_nt_panel_disable() local
117 if (!sharp_nt->enabled) in sharp_nt_panel_disable()
120 backlight_disable(sharp_nt->backlight); in sharp_nt_panel_disable()
122 sharp_nt->enabled = false; in sharp_nt_panel_disable()
129 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); in sharp_nt_panel_unprepare() local
132 if (!sharp_nt->prepared) in sharp_nt_panel_unprepare()
135 ret = sharp_nt_panel_off(sharp_nt); in sharp_nt_panel_unprepare()
141 regulator_disable(sharp_nt->supply); in sharp_nt_panel_unprepare()
142 if (sharp_nt->reset_gpio) in sharp_nt_panel_unprepare()
143 gpiod_set_value(sharp_nt->reset_gpio, 0); in sharp_nt_panel_unprepare()
145 sharp_nt->prepared = false; in sharp_nt_panel_unprepare()
152 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); in sharp_nt_panel_prepare() local
155 if (sharp_nt->prepared) in sharp_nt_panel_prepare()
158 ret = regulator_enable(sharp_nt->supply); in sharp_nt_panel_prepare()
164 if (sharp_nt->reset_gpio) { in sharp_nt_panel_prepare()
165 gpiod_set_value(sharp_nt->reset_gpio, 1); in sharp_nt_panel_prepare()
167 gpiod_set_value(sharp_nt->reset_gpio, 0); in sharp_nt_panel_prepare()
169 gpiod_set_value(sharp_nt->reset_gpio, 1); in sharp_nt_panel_prepare()
173 ret = sharp_nt_panel_init(sharp_nt); in sharp_nt_panel_prepare()
179 ret = sharp_nt_panel_on(sharp_nt); in sharp_nt_panel_prepare()
185 sharp_nt->prepared = true; in sharp_nt_panel_prepare()
190 regulator_disable(sharp_nt->supply); in sharp_nt_panel_prepare()
191 if (sharp_nt->reset_gpio) in sharp_nt_panel_prepare()
192 gpiod_set_value(sharp_nt->reset_gpio, 0); in sharp_nt_panel_prepare()
198 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); in sharp_nt_panel_enable() local
200 if (sharp_nt->enabled) in sharp_nt_panel_enable()
203 backlight_enable(sharp_nt->backlight); in sharp_nt_panel_enable()
205 sharp_nt->enabled = true; in sharp_nt_panel_enable()
253 static int sharp_nt_panel_add(struct sharp_nt_panel *sharp_nt) in sharp_nt_panel_add() argument
255 struct device *dev = &sharp_nt->dsi->dev; in sharp_nt_panel_add()
257 sharp_nt->mode = &default_mode; in sharp_nt_panel_add()
259 sharp_nt->supply = devm_regulator_get(dev, "avdd"); in sharp_nt_panel_add()
260 if (IS_ERR(sharp_nt->supply)) in sharp_nt_panel_add()
261 return PTR_ERR(sharp_nt->supply); in sharp_nt_panel_add()
263 sharp_nt->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW); in sharp_nt_panel_add()
264 if (IS_ERR(sharp_nt->reset_gpio)) { in sharp_nt_panel_add()
266 PTR_ERR(sharp_nt->reset_gpio)); in sharp_nt_panel_add()
267 sharp_nt->reset_gpio = NULL; in sharp_nt_panel_add()
269 gpiod_set_value(sharp_nt->reset_gpio, 0); in sharp_nt_panel_add()
272 sharp_nt->backlight = devm_of_find_backlight(dev); in sharp_nt_panel_add()
274 if (IS_ERR(sharp_nt->backlight)) in sharp_nt_panel_add()
275 return PTR_ERR(sharp_nt->backlight); in sharp_nt_panel_add()
277 drm_panel_init(&sharp_nt->base); in sharp_nt_panel_add()
278 sharp_nt->base.funcs = &sharp_nt_panel_funcs; in sharp_nt_panel_add()
279 sharp_nt->base.dev = &sharp_nt->dsi->dev; in sharp_nt_panel_add()
281 return drm_panel_add(&sharp_nt->base); in sharp_nt_panel_add()
284 static void sharp_nt_panel_del(struct sharp_nt_panel *sharp_nt) in sharp_nt_panel_del() argument
286 if (sharp_nt->base.dev) in sharp_nt_panel_del()
287 drm_panel_remove(&sharp_nt->base); in sharp_nt_panel_del()
292 struct sharp_nt_panel *sharp_nt; in sharp_nt_panel_probe() local
302 sharp_nt = devm_kzalloc(&dsi->dev, sizeof(*sharp_nt), GFP_KERNEL); in sharp_nt_panel_probe()
303 if (!sharp_nt) in sharp_nt_panel_probe()
306 mipi_dsi_set_drvdata(dsi, sharp_nt); in sharp_nt_panel_probe()
308 sharp_nt->dsi = dsi; in sharp_nt_panel_probe()
310 ret = sharp_nt_panel_add(sharp_nt); in sharp_nt_panel_probe()
319 struct sharp_nt_panel *sharp_nt = mipi_dsi_get_drvdata(dsi); in sharp_nt_panel_remove() local
322 ret = sharp_nt_panel_disable(&sharp_nt->base); in sharp_nt_panel_remove()
330 sharp_nt_panel_del(sharp_nt); in sharp_nt_panel_remove()
337 struct sharp_nt_panel *sharp_nt = mipi_dsi_get_drvdata(dsi); in sharp_nt_panel_shutdown() local
339 sharp_nt_panel_disable(&sharp_nt->base); in sharp_nt_panel_shutdown()