|
@@ -240,44 +240,6 @@ static struct omap_dss_driver lb035q02_ops = {
|
|
|
.get_resolution = omapdss_default_get_resolution,
|
|
|
};
|
|
|
|
|
|
-static int lb035q02_probe_pdata(struct spi_device *spi)
|
|
|
-{
|
|
|
- const struct panel_lb035q02_platform_data *pdata;
|
|
|
- struct panel_drv_data *ddata = dev_get_drvdata(&spi->dev);
|
|
|
- struct omap_dss_device *dssdev, *in;
|
|
|
- int r;
|
|
|
-
|
|
|
- pdata = dev_get_platdata(&spi->dev);
|
|
|
-
|
|
|
- in = omap_dss_find_output(pdata->source);
|
|
|
- if (in == NULL) {
|
|
|
- dev_err(&spi->dev, "failed to find video source '%s'\n",
|
|
|
- pdata->source);
|
|
|
- return -EPROBE_DEFER;
|
|
|
- }
|
|
|
-
|
|
|
- ddata->in = in;
|
|
|
-
|
|
|
- ddata->data_lines = pdata->data_lines;
|
|
|
-
|
|
|
- dssdev = &ddata->dssdev;
|
|
|
- dssdev->name = pdata->name;
|
|
|
-
|
|
|
- r = devm_gpio_request_one(&spi->dev, pdata->enable_gpio,
|
|
|
- GPIOF_OUT_INIT_LOW, "panel enable");
|
|
|
- if (r)
|
|
|
- goto err_gpio;
|
|
|
-
|
|
|
- ddata->enable_gpio = gpio_to_desc(pdata->enable_gpio);
|
|
|
-
|
|
|
- ddata->backlight_gpio = pdata->backlight_gpio;
|
|
|
-
|
|
|
- return 0;
|
|
|
-err_gpio:
|
|
|
- omap_dss_put_device(ddata->in);
|
|
|
- return r;
|
|
|
-}
|
|
|
-
|
|
|
static int lb035q02_probe_of(struct spi_device *spi)
|
|
|
{
|
|
|
struct device_node *node = spi->dev.of_node;
|
|
@@ -320,17 +282,12 @@ static int lb035q02_panel_spi_probe(struct spi_device *spi)
|
|
|
|
|
|
ddata->spi = spi;
|
|
|
|
|
|
- if (dev_get_platdata(&spi->dev)) {
|
|
|
- r = lb035q02_probe_pdata(spi);
|
|
|
- if (r)
|
|
|
- return r;
|
|
|
- } else if (spi->dev.of_node) {
|
|
|
- r = lb035q02_probe_of(spi);
|
|
|
- if (r)
|
|
|
- return r;
|
|
|
- } else {
|
|
|
+ if (!spi->dev.of_node)
|
|
|
return -ENODEV;
|
|
|
- }
|
|
|
+
|
|
|
+ r = lb035q02_probe_of(spi);
|
|
|
+ if (r)
|
|
|
+ return r;
|
|
|
|
|
|
if (gpio_is_valid(ddata->backlight_gpio)) {
|
|
|
r = devm_gpio_request_one(&spi->dev, ddata->backlight_gpio,
|