Hi David, On Friday 04 Aug 2017 10:51:37 David Lechner wrote: > On 08/04/2017 09:54 AM, Laurent Pinchart wrote: > > On Thursday 03 Aug 2017 17:33:47 David Lechner wrote: > >> This adds a new binding for Sitronix ST7586 display panels. > >> > >> Using lego as the vendor prefix in the compatible string because the > >> display panel I am working with is an integral part of the LEGO > >> MINDSTORMS EV3. > >> > >> Signed-off-by: David Lechner <david@xxxxxxxxxxxxxx> > >> --- > >> > >> .../bindings/display/sitronix,st7586.txt | 26 > >> +++++++++++++++++++ > >> 1 file changed, 26 insertions(+) > >> create mode 100644 > >> > >> Documentation/devicetree/bindings/display/sitronix,st7586.txt > >> > >> diff --git > >> a/Documentation/devicetree/bindings/display/sitronix,st7586.txt > >> b/Documentation/devicetree/bindings/display/sitronix,st7586.txt new file > >> mode 100644 > >> index 0000000..dfb0b7b > >> --- /dev/null > >> +++ b/Documentation/devicetree/bindings/display/sitronix,st7586.txt > >> @@ -0,0 +1,26 @@ > >> +Sitronix ST7586 display panel > >> + > >> +Required properties: > >> +- compatible: "lego,ev3-lcd". > >> + > >> +The node for this driver must be a child node of a SPI controller, hence > >> +all mandatory properties described in ../spi/spi-bus.txt must be > >> specified. + > >> +Optional properties: > >> +- dc-gpios: D/C pin. The presence/absence of this GPIO determines > >> + the panel interface operation mode (IF[3:1] pins): > >> + - present: IF=011 4-wire 8-bit data serial interface > >> + - absent: IF=010 3-wire 9-bit data serial interface > > > > How does this work ? Do you have a single GPIO on your system connected to > > IF[1], with IF[3:2] hardwired to 01 ? > > LEGO has not made the internals of the display publicly available, so I > cannot say for sure. But I assume that IF[3:1] is hardwired to 011. This > causes pin D1 to assigned to the signal A0, which is what we are calling > the dc gpio here. > > If IF[3:1] were hardwired to 010, then pin D1 would be not not used and > there would be no A0 signal. > > So, basically, we can infer the state of IF[3:1] by the fact that we > have a dc pin or not. OK, now I understand what you mean. Maybe you should phrase it a bit differently to make it clearer ? How about dc-gpios: Specified or the GPIO connected to the panel's D/C pin (also called A0). The property is required when the panel operates in 4-wire mode (IF[3:1] = 011) and prohibited when the panel operates in 3-wire mode (IF[3:1] = 010). By the way, if the signal is named A0, why don't you call the property a0- gpios ? > >> +- reset-gpios: Reset pin > >> +- power-supply: A regulator node for the supply voltage. > >> +- backlight: phandle of the backlight device attached to the panel > >> +- rotation: panel rotation in degrees counter clockwise (0,90,180,270) > > > > Please use the OF graph DT bindings (a.k.a. ports) to describe the > > connection between the panel and its source. > > I am afraid that I do not understand this request. What would the source > of the panel be? There is nothing like a SoC LCD controller that is > driving this panel. My bad, I should have read the panel datasheet before replying :-S Please ignore this comment. > >> +Example: > >> + display@0{ > >> + compatible = "lego,ev3-lcd"; > >> + reg = <0>; > >> + spi-max-frequency = <10000000>; > >> + dc-gpios = <&gpio 43 GPIO_ACTIVE_HIGH>; > >> + reset-gpios = <&gpio 80 GPIO_ACTIVE_HIGH>; > >> + }; -- Regards, Laurent Pinchart -- 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