On Thu, Jul 12, 2012 at 10:21:01AM +0200, Simon Glass wrote: > Hi Thierry, > > On Wed, Jul 11, 2012 at 7:48 AM, Thierry Reding > wrote: > > On Wed, Jul 11, 2012 at 06:44:10AM +0200, Simon Glass wrote: > >> Hi Stephen, > >> > >> On Fri, Jun 15, 2012 at 1:32 AM, Stephen Warren wrote: > >> > >> > On 06/13/2012 10:19 AM, Simon Glass wrote: > >> > > Add LCD definitions and also a proposed binding for LCD displays. > >> > > > >> > > The PWFM is in progress on the device-tree-discuss list, so only a > >> > > very basic binding is offered here. > >> > > >> > I believe we have settled on a final representation, it just hasn't been > >> > added into linux-next yet. See: > >> > > >> > > >> > http://gitorious.org/linux-pwm/linux-pwm/commit/d3ce73e5dc86646a6302f2b0f7dd40e8c552fa04 > >> > >> > >> Thanks for the pointer. I suppose this doesn't address clocks as yet, but > >> that's fine. > > > > I was waiting for the common clock framework and DT bindings to get > > ready. This should happen RSN for Tegra so I will probably look at > > adding support for it in. > > OK, are you looking at adding it in U-Boot? No. I don't have much time to spend on U-Boot right now. [...] > I also need a place to put the pwm and GPIOs for the panel itself. > Something like this: > > nvidia,pwm = <&pwm 2 0>; > nvidia,backlight-enable-gpios = <&gpio 28 0>; /* PD4 */ > nvidia,lvds-shutdown-gpios = <&gpio 10 0>; /* PB2 */ > nvidia,backlight-vdd-gpios = <&gpio 176 0>; /* PW0 */ > nvidia,panel-vdd-gpios = <&gpio 22 0>; /* PC6 */ > nvidia,panel-timings = <4 203 17 15>; (number of ms before turning > on the next gpio) > nvidia,bits-per-pixel = <16>; (er, TBD) > > I am thinking of something like a phandle in your rgb node: > > host1x { > dc@54200000 { > rgb { > nvidia-panel = <&lcd_panel>; > ... > > lcd_panel: panel { > nvidia,pwm = <&pwm 2 0>; > ... > } > > Or have you already solved this problem another way? Linux has a generic PWM backlight driver. This is currently solved by using this in the DT: backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 5000000>; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <6>; }; Alex Courbot (Cc'd) has been working on adding a generic way to add GPIO and regulator support to that. I don't know exactly what the lvds-shutdown-gpios and panel-vdd-gpios properties do. If they control hardware connected behind the display controller I suppose they could go into the rgb node. The panel alternative that you propose sounds interesting as well. Maybe the panel should itself contain either a phandle or a subnode for the backlight and collect the properties that you listed above. Thierry