@ -20,7 +20,6 @@
# include <linux/of_gpio.h>
# include <video/omapdss.h>
# include <video/omap-panel-data.h>
# define TPO_R02_MODE(x) ((x) & 7)
# define TPO_R02_MODE_800x480 7
@ -465,32 +464,6 @@ static struct omap_dss_driver tpo_td043_ops = {
} ;
static int tpo_td043_probe_pdata ( struct spi_device * spi )
{
const struct panel_tpo_td043mtea1_platform_data * pdata ;
struct panel_drv_data * ddata = dev_get_drvdata ( & spi - > dev ) ;
struct omap_dss_device * dssdev , * in ;
pdata = dev_get_platdata ( & spi - > dev ) ;
ddata - > nreset_gpio = pdata - > nreset_gpio ;
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 ;
return 0 ;
}
static int tpo_td043_probe_of ( struct spi_device * spi )
{
struct device_node * node = spi - > dev . of_node ;
@ -524,6 +497,9 @@ static int tpo_td043_probe(struct spi_device *spi)
dev_dbg ( & spi - > dev , " %s \n " , __func__ ) ;
if ( ! spi - > dev . of_node )
return - ENODEV ;
spi - > bits_per_word = 16 ;
spi - > mode = SPI_MODE_0 ;
@ -541,17 +517,9 @@ static int tpo_td043_probe(struct spi_device *spi)
ddata - > spi = spi ;
if ( dev_get_platdata ( & spi - > dev ) ) {
r = tpo_td043_probe_pdata ( spi ) ;
if ( r )
return r ;
} else if ( spi - > dev . of_node ) {
r = tpo_td043_probe_of ( spi ) ;
if ( r )
return r ;
} else {
return - ENODEV ;
}
r = tpo_td043_probe_of ( spi ) ;
if ( r )
return r ;
ddata - > mode = TPO_R02_MODE_800x480 ;
memcpy ( ddata - > gamma , tpo_td043_def_gamma , sizeof ( ddata - > gamma ) ) ;