RE: [PATCH 2/2] Add LCD support for the LogicPD OMAP3530 DevKits

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2012-05-09 at 10:38 -0500, Ashwin Bihari wrote:
> > -----Original Message-----
> > From: Tomi Valkeinen [mailto:tomi.valkeinen@xxxxxx]
> > Sent: Wednesday, May 09, 2012 3:16 AM
> > To: Ashwin Bihari
> > Cc: linux-omap; Tony Lindgren
> > Subject: Re: [PATCH 2/2] Add LCD support for the LogicPD OMAP3530 DevKits
> 
> <snip>
>  
> > > +static int omap3logic_panel_enable_lcd(struct omap_dss_device
> > > +*dssdev) {
> > > +	gpio_set_value(LCD_PANEL_PWR, 1);
> > > +	if (machine_is_omap3530_lv_som())
> > > +		gpio_set_value(OMAP3530_LV_SOM_BACKLIGHT_PWR, 1);
> > > +	else if (machine_is_omap3_torpedo()) {
> > > +		gpio_set_value(OMAP3530_TORPEDO_BACKLIGHT_PWR, 1);
> > > +
> > > +		gpio_set_value(OMAP3530_TORPEDO_MDISP, 1);
> > > +	}
> > > +
> > > +	return 0;
> > > +}
> > > +
> > > +static int omap3logic_panel_disable_lcd(struct omap_dss_device
> > > +*dssdev) {
> > > +	gpio_set_value(LCD_PANEL_PWR, 0);
> > > +	if (machine_is_omap3530_lv_som())
> > > +		gpio_set_value(OMAP3530_LV_SOM_BACKLIGHT_PWR, 0);
> > > +	else if (machine_is_omap3_torpedo()) {
> > > +		gpio_set_value(OMAP3530_TORPEDO_BACKLIGHT_PWR, 0);
> > > +
> > > +		gpio_set_value(OMAP3530_TORPEDO_MDISP, 0);
> > > +	}
> > > +
> > > +	return 0;
> > > +}
> > 
> > This doesn't play well with device-tree. We can't do such callbacks when we
> > move to DT.
> > 
> > I know we have similar code for other boards, and this can't be properly fixed
> > right now, but I'm still a bit hesitant to add more such code because I'm the
> > one that has to clean it up later for DT =).
> > 
> > I can handle the LCD_PANEL_PWR gpio, but the backlight is something that
> > should be removed from the panel enable callbacks. You could look at
> > drivers/video/backlight/ and see if there's something there that could be
> > used for your board. Or implement a new BL driver, if nothing fits.
> > 
> >  Tomi
> 
> Tomi,
> 
> Let me take a look at your linux-omap-dss2 tree and learn a bit more about DT and figure out how to modify the LCD support so it better aligns with your work and I'll re-submit that patch again..

I haven't published any DT stuff yet. But there's the DT cleanup series
I have posted, which tries to re-structure stuff for some displays to be
more DT compatible.

The basic idea is that with DT there are no board files, and all device
specific configuration values are in the DT data. So GPIO numbers etc.
are defined in the DT data, and the device driver will read them and use
them.

But DT support is not working yet, and we anyway need to support both DT
and the old way for some time, so the board files should be changed to
this direction. What this means for dss is that the panel specific GPIOs
etc. need to be defined in a device specific struct, which is passed to
the panel driver.

For example, see my cleanup series, and
include/video/omap-panel-tfp410.h,
drivers/video/omap2/displays/panel-tfp410.c and the board files using
that.

All this is still a bit alive and changing, so you could also choose to
wait a bit until things stabilize =).

 Tomi

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux