From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Sat, 20 Jul 2013 21:20:52 -0600 Subject: [U-Boot] [Ac100] [PATCH 3/3] ARM: tegra: paz00: enable nveckeyboard support In-Reply-To: <3638195.7GdG5goTgS@ax5200p> References: <1374223663-8576-1-git-send-email-danindrey@mail.ru> <1374223663-8576-4-git-send-email-danindrey@mail.ru> <51E99005.1090008@wwwdotorg.org> <3638195.7GdG5goTgS@ax5200p> Message-ID: <51EB5394.3090401@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 07/20/2013 03:12 AM, Marc Dietrich wrote: > On Friday 19 July 2013 13:14:13 Stephen Warren wrote: ... > Let's skip how this may actually look like in software. Given the discussions > we had in the past, I propose the following binding: > > i2c-slave at 7000c500 { > compatible = "nvidia,tegra20-i2c-slave"; > reg = <0x7000c500 0x100>; > interrupts = <0 92 0x04>; > #address-cells = <1>; > #size-cells = <0>; > clock-frequency = <80000>; > slave-addr = <138>; Hex would be more common, but that's a minor issue. > clocks = <&tegra_car 67>, <&tegra_car 124>; > clock-names = "div-clk", "fast-clk"; > > nvec { Above, it says #address-cells=<1>, which means this node needs a reg property. Perhaps slave-addr should be part of the child nodes (and the Tegra I2C controller binding would limit itself to supporting only a single node), so that the same binding style could be applicable to I2C slave devices that support multiple slave addresses. > compatible = "nvidia,nvec", "simple-bus"; > protocol = "smbus-request-gpio"; What is that property for; doesn't compatible="nvidia,nvec" already imply this, or does the NVEC spec define multiple different protocols? > request-gpios = <&gpio 170 0>; /* gpio PV2 */ We should use the C pre-processor to provide named constants there, although I guess U-Boot isn't set up for that yet. The kernel is once this is ported there, and once the 2013.07 release is out, U-Boot should be able to support this very soon too. > keyboard { Simple-bus might require a reg property; I forget. Does the NVEC protocol include any form of "virtual device address" that it would make sense to put into a reg property? > compatible = "nvidia,nvec-keyboard"; > }; > }; > }; > > Does this looks better? Yes, overall much better. New DT bindings should be sent to devicetree at vger.kernel.org for review. Note that's a branch new list (it moved from a different server), so it might be best to wait a few days for people to subscribe before sending mail to it.