Commit d02fd93e authored by Thierry Reding's avatar Thierry Reding

drm/panel: simple - Disable panel on shutdown

When a device is shut down, disable the panel to make sure the display
backlight doesn't stay lit.
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent 26ab0065
...@@ -262,6 +262,13 @@ static int panel_simple_remove(struct device *dev) ...@@ -262,6 +262,13 @@ static int panel_simple_remove(struct device *dev)
return 0; return 0;
} }
static void panel_simple_shutdown(struct device *dev)
{
struct panel_simple *panel = dev_get_drvdata(dev);
panel_simple_disable(&panel->base);
}
static const struct drm_display_mode auo_b101aw03_mode = { static const struct drm_display_mode auo_b101aw03_mode = {
.clock = 51450, .clock = 51450,
.hdisplay = 1024, .hdisplay = 1024,
...@@ -467,6 +474,11 @@ static int panel_simple_platform_remove(struct platform_device *pdev) ...@@ -467,6 +474,11 @@ static int panel_simple_platform_remove(struct platform_device *pdev)
return panel_simple_remove(&pdev->dev); return panel_simple_remove(&pdev->dev);
} }
static void panel_simple_platform_shutdown(struct platform_device *pdev)
{
panel_simple_shutdown(&pdev->dev);
}
static struct platform_driver panel_simple_platform_driver = { static struct platform_driver panel_simple_platform_driver = {
.driver = { .driver = {
.name = "panel-simple", .name = "panel-simple",
...@@ -475,6 +487,7 @@ static struct platform_driver panel_simple_platform_driver = { ...@@ -475,6 +487,7 @@ static struct platform_driver panel_simple_platform_driver = {
}, },
.probe = panel_simple_platform_probe, .probe = panel_simple_platform_probe,
.remove = panel_simple_platform_remove, .remove = panel_simple_platform_remove,
.shutdown = panel_simple_platform_shutdown,
}; };
struct panel_desc_dsi { struct panel_desc_dsi {
...@@ -616,6 +629,11 @@ static int panel_simple_dsi_remove(struct mipi_dsi_device *dsi) ...@@ -616,6 +629,11 @@ static int panel_simple_dsi_remove(struct mipi_dsi_device *dsi)
return panel_simple_remove(&dsi->dev); return panel_simple_remove(&dsi->dev);
} }
static void panel_simple_dsi_shutdown(struct mipi_dsi_device *dsi)
{
panel_simple_shutdown(&dsi->dev);
}
static struct mipi_dsi_driver panel_simple_dsi_driver = { static struct mipi_dsi_driver panel_simple_dsi_driver = {
.driver = { .driver = {
.name = "panel-simple-dsi", .name = "panel-simple-dsi",
...@@ -624,6 +642,7 @@ static struct mipi_dsi_driver panel_simple_dsi_driver = { ...@@ -624,6 +642,7 @@ static struct mipi_dsi_driver panel_simple_dsi_driver = {
}, },
.probe = panel_simple_dsi_probe, .probe = panel_simple_dsi_probe,
.remove = panel_simple_dsi_remove, .remove = panel_simple_dsi_remove,
.shutdown = panel_simple_dsi_shutdown,
}; };
static int __init panel_simple_init(void) static int __init panel_simple_init(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment