Rob Herring <robh@xxxxxxxxxx> writes: > On Sun, Oct 4, 2015 at 5:31 AM, Robert Jarzmik <robert.jarzmik@xxxxxxx> wrote: >> Add documentation for the PXA frambuffer devicetree binding. > > Strictly speaking this is a binding for PXA display controller, not a > Linux FB driver. There are lots of "framebuffer" and "DRM" bindings > which I'm trying to curb. Yes, that's very true. That deserves a new commit message and a new file name (marvell,pxa2xx-lcd). >> .../devicetree/bindings/video/marvell,pxafb.txt | 80 ++++++++++++++++++++++ > > Please put in bindings/display/ as I'm consolidating all the display > related bindings there[1]. Of course, for v3. >> +++ b/Documentation/devicetree/bindings/video/marvell,pxafb.txt >> @@ -0,0 +1,80 @@ >> +PXA LCDC Framebuffer >> +-------------------- >> + >> +Required properties: >> + - compatible : >> + "marvell,pxa2xx-lcdc", > > No differences in h/w for any of the chips? All pxa25x, pxa27x and pxa3xx are compatible. AFAIK, pxa3xx has an IP with additional registers. But : - these (this) register(s) is not necessary for the display controller to work (it's more a control to shift red/green/blue values, and energy management) - all the registers in pxa2{5,7}x are the same in pxa3xx The pxafb driver acts today on the subset of registers which are the same across all pxaXXX variants. This is what made me think only one compatible property was required. If I'm wrong, I could add "marvell,pxa3xx-lcdc", is that what you think I should do ? > >> + - reg : Should contain 1 register ranges(address and length). >> + Can contain an additional register range(address and length) >> + for fixed framebuffer memory. Useful for dedicated memories. > > This is memory that can't be used for anything else? We already have > reserved-memory for this if it is just RAM. There's also a binding for > on-chip SRAM which should probably be used if the memory is usable for > other things. That is a wrong copy paste I made. I was more thinking of having only 1 register range, and no video memory reservation ... >> +PXA LCDC Display > > This should not be specific to PXA, but for this panel. This should be > in bindings/display/panel/. Sure, for v3. >> +---------------- >> +Required properties (as per of_videomode_helper): >> + - lcd-type: either "mono-stn", "mono-dstn", "color-stn", "color-dstn", >> + "color-tft", "smart-panel" >> + >> +Optional properties (as per of_videomode_helper): >> + - power-supply: power supply regulator to the LCD to power it on or off >> + (see regulator.txt) >> + - backlight: backlight control (see backlight.txt) >> + >> +Required nodes: >> + - port: connection to the LCD controller >> + - display-timings: panel timings (see display-timing.txt) > > If lcd-type is smart-panel, then this node would not make sense. Ah I see, so this could be optional maybe ? Actually when I'll move the panel definition to bindings/display/panel, is this what I should do : - create a file marvell,pxa2xx-panel - input all these properties into this file And then, when a board maintainer will create a devicetree description, he will write something like : compatible = "toshiba,ltm0305a776"; compatible = "marvell,pxa2xx-panel"; lcd-type = "color-tft"; ... If that's the case, I wonder how to "enforce" that a panel used with marvell,pxa2xx-lcdc (through the of_graph 'port' node) be compatible with marvell,pxa2xx-panel ? Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html