Message ID | 1331096428-6317-5-git-send-email-sjg@chromium.org |
---|---|
State | Not Applicable, archived |
Headers | show |
On 03/06/2012 10:00 PM, Simon Glass wrote: > Add U-Boot's peripheral clock information to the Tegra20 device tree file. > > Signed-off-by: Simon Glass <sjg@chromium.org> ... > diff --git a/doc/device-tree-bindings/i2c/tegra20-i2c.txt b/doc/device-tree-bindings/i2c/tegra20-i2c.txt ... > +Required properties: > + - clocks : Two clocks must be given, each as a phandle to the Tegra's > + CAR node and the clock number as a parameter: I'd rather rely on the common clock binding documentation for the format of the clock specifiers than duplicate the information here. True, that document isn't in U-Boot (nor is it final). I.e.: Two clocks must be specified: But I think this is fine for now (I might care more if submitting a doc file for the kernel tree), so Acked-by: Stephen Warren <swarren@wwwdotorg.org> > + - the I2C clock to use for the peripheral > + - the pll_p_out3 clock, which can be used for fast operation. This > + does not change and is the same for all I2C nodes. > + > +Example: > +(TODO: merge with existing example): > + > + i2c@7000c400 { > + #address-cells = <1>; > + #size-cells = <0>; > + compatible = "nvidia,tegra20-i2c"; > + reg = <0x7000C400 0x100>; > + interrupts = < 116 >; > + /* PERIPH_ID_I2C2, PLL_P_OUT3 */ > + clocks = <&tegra_car 54>, <&tegra_car 124>; > + }; -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Stephen, On Wed, Mar 7, 2012 at 12:39 PM, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 03/06/2012 10:00 PM, Simon Glass wrote: >> Add U-Boot's peripheral clock information to the Tegra20 device tree file. >> >> Signed-off-by: Simon Glass <sjg@chromium.org> > ... >> diff --git a/doc/device-tree-bindings/i2c/tegra20-i2c.txt b/doc/device-tree-bindings/i2c/tegra20-i2c.txt > ... >> +Required properties: >> + - clocks : Two clocks must be given, each as a phandle to the Tegra's >> + CAR node and the clock number as a parameter: > > I'd rather rely on the common clock binding documentation for the format > of the clock specifiers than duplicate the information here. True, that > document isn't in U-Boot (nor is it final). I.e.: > > Two clocks must be specified: > > But I think this is fine for now (I might care more if submitting a doc > file for the kernel tree), so > > Acked-by: Stephen Warren <swarren@wwwdotorg.org> Thanks. Good to get this in. Regards, Simon > >> + - the I2C clock to use for the peripheral >> + - the pll_p_out3 clock, which can be used for fast operation. This >> + does not change and is the same for all I2C nodes. >> + >> +Example: >> +(TODO: merge with existing example): >> + >> + i2c@7000c400 { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + compatible = "nvidia,tegra20-i2c"; >> + reg = <0x7000C400 0x100>; >> + interrupts = < 116 >; >> + /* PERIPH_ID_I2C2, PLL_P_OUT3 */ >> + clocks = <&tegra_car 54>, <&tegra_car 124>; >> + }; -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/dts/tegra20.dtsi b/arch/arm/dts/tegra20.dtsi index d6bc9f1..d5ca02c 100644 --- a/arch/arm/dts/tegra20.dtsi +++ b/arch/arm/dts/tegra20.dtsi @@ -34,6 +34,8 @@ compatible = "nvidia,tegra20-i2c"; reg = <0x7000C000 0x100>; interrupts = < 70 >; + /* PERIPH_ID_I2C1, PLL_P_OUT3 */ + clocks = <&tegra_car 12>, <&tegra_car 124>; }; i2c@7000c400 { @@ -42,6 +44,8 @@ compatible = "nvidia,tegra20-i2c"; reg = <0x7000C400 0x100>; interrupts = < 116 >; + /* PERIPH_ID_I2C2, PLL_P_OUT3 */ + clocks = <&tegra_car 54>, <&tegra_car 124>; }; i2c@7000c500 { @@ -50,14 +54,18 @@ compatible = "nvidia,tegra20-i2c"; reg = <0x7000C500 0x100>; interrupts = < 124 >; + /* PERIPH_ID_I2C3, PLL_P_OUT3 */ + clocks = <&tegra_car 67>, <&tegra_car 124>; }; i2c@7000d000 { #address-cells = <1>; #size-cells = <0>; - compatible = "nvidia,tegra20-i2c"; + compatible = "nvidia,tegra20-i2c-dvc"; reg = <0x7000D000 0x200>; interrupts = < 85 >; + /* PERIPH_ID_DVC_I2C, PLL_P_OUT3 */ + clocks = <&tegra_car 47>, <&tegra_car 124>; }; i2s@70002800 { diff --git a/doc/device-tree-bindings/i2c/tegra20-i2c.txt b/doc/device-tree-bindings/i2c/tegra20-i2c.txt new file mode 100644 index 0000000..d601c17 --- /dev/null +++ b/doc/device-tree-bindings/i2c/tegra20-i2c.txt @@ -0,0 +1,23 @@ +(Placeholder note while we locate the kernel Tegra20 bindings) + +Added in U-Boot: + +Required properties: + - clocks : Two clocks must be given, each as a phandle to the Tegra's + CAR node and the clock number as a parameter: + - the I2C clock to use for the peripheral + - the pll_p_out3 clock, which can be used for fast operation. This + does not change and is the same for all I2C nodes. + +Example: +(TODO: merge with existing example): + + i2c@7000c400 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "nvidia,tegra20-i2c"; + reg = <0x7000C400 0x100>; + interrupts = < 116 >; + /* PERIPH_ID_I2C2, PLL_P_OUT3 */ + clocks = <&tegra_car 54>, <&tegra_car 124>; + };
Add U-Boot's peripheral clock information to the Tegra20 device tree file. Signed-off-by: Simon Glass <sjg@chromium.org> --- Changes in v2: - Adjust definitions to fit new peripheral clock bindings - Change 'speed' to 'clock-frequency' - Remove u-boot,pinmux binding (sadly) Changes in v3: - Move speed setting from tegra20.dtsi to board .dts file Changes in v4: - Update to use new tegra2 clock and reset binding Changes in v5: - Add clock binding file which lists our additions to the Linux binding - Add pll_p_out3 to clock binding definition arch/arm/dts/tegra20.dtsi | 10 +++++++++- doc/device-tree-bindings/i2c/tegra20-i2c.txt | 23 +++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletions(-) create mode 100644 doc/device-tree-bindings/i2c/tegra20-i2c.txt