Skip to content

Commit

Permalink
Merge tag 'at91-dt2' of git://github.com/at91linux/linux-at91 into ne…
Browse files Browse the repository at this point in the history
…xt/dt

Merge "at91: DT for 3.16 #2" from Nicolas Ferre:

3.16: second DT series:
- at91sam9rl and at91sam9261 fixes about PLL ranges
- at91sam9261 more comprehensive support for SSC
- sama5d3 Xplained: addition of pull-ups, PWM and PMIC (regulator)

* tag 'at91-dt2' of git://github.com/at91linux/linux-at91:
  ARM: at91/dt: at91-sama5d3_xplained: add the regulator device node
  ARM: at91: add 2 PWM outputs to SAMA5D3 Xplained
  ARM: at91: add PWM pinctrl to SAMA5D3
  ARM: at91: add pull-up to i2c[02] on SAMA5D3 Xplained
  ARM: at91/dt: sam9rl: Fix PLL output range and mck divisors
  ARM: at91/dt: sam9261: Add ssc2, SSC clocks and pcks
  ARM: at91/dt: sam9261: Fix PLL output ranges and other clocks divisors

Signed-off-by: Olof Johansson <olof@lixom.net>
  • Loading branch information
olofj committed May 20, 2014
2 parents 4831ddf + a93f9c8 commit 5669aab
Show file tree
Hide file tree
Showing 4 changed files with 253 additions and 8 deletions.
62 changes: 62 additions & 0 deletions arch/arm/boot/dts/at91-sama5d3_xplained.dts
Original file line number Diff line number Diff line change
Expand Up @@ -43,18 +43,67 @@
};

i2c0: i2c@f0014000 {
pinctrl-0 = <&pinctrl_i2c0_pu>;
status = "okay";
};

i2c1: i2c@f0018000 {
status = "okay";

pmic: act8865@5b {
compatible = "active-semi,act8865";
reg = <0x5b>;
status = "okay";

regulators {
vcc_1v8_reg: DCDC_REG1 {
regulator-name = "VCC_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};

vcc_1v2_reg: DCDC_REG2 {
regulator-name = "VCC_1V2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
};

vcc_3v3_reg: DCDC_REG3 {
regulator-name = "VCC_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};

vddfuse_reg: LDO_REG1 {
regulator-name = "FUSE_2V5";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>;
};

vddana_reg: LDO_REG2 {
regulator-name = "VDDANA";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};
};
};

macb0: ethernet@f0028000 {
phy-mode = "rgmii";
status = "okay";
};

pwm0: pwm@f002c000 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>;
status = "okay";
};

usart0: serial@f001c000 {
status = "okay";
};
Expand Down Expand Up @@ -102,6 +151,7 @@

i2c2: i2c@f801c000 {
dmas = <0>, <0>; /* Do not use DMA for i2c2 */
pinctrl-0 = <&pinctrl_i2c2_pu>;
status = "okay";
};

Expand All @@ -116,6 +166,18 @@

pinctrl@fffff200 {
board {
pinctrl_i2c0_pu: i2c0_pu {
atmel,pins =
<AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
<AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
};

pinctrl_i2c2_pu: i2c2_pu {
atmel,pins =
<AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
<AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
};

pinctrl_mmc0_cd: mmc0_cd {
atmel,pins =
<AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
Expand Down
114 changes: 109 additions & 5 deletions arch/arm/boot/dts/at91sam9261.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
i2c0 = &i2c0;
ssc0 = &ssc0;
ssc1 = &ssc1;
ssc2 = &ssc2;
};

cpus {
Expand Down Expand Up @@ -182,6 +183,8 @@
interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
clocks = <&ssc0_clk>;
clock-names = "pclk";
status = "disabled";
};

Expand All @@ -191,6 +194,19 @@
interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
clocks = <&ssc1_clk>;
clock-names = "pclk";
status = "disabled";
};

ssc2: ssc@fffc4000 {
compatible = "atmel,at91rm9200-ssc";
reg = <0xfffc4000 0x4000>;
interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ssc2_tx &pinctrl_ssc2_rx>;
clocks = <&ssc2_clk>;
clock-names = "pclk";
status = "disabled";
};

Expand Down Expand Up @@ -385,6 +401,22 @@
};
};

ssc2 {
pinctrl_ssc2_tx: ssc2_tx-0 {
atmel,pins =
<AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE>,
<AT91_PIOC 26 AT91_PERIPH_B AT91_PINCTRL_NONE>,
<AT91_PIOC 27 AT91_PERIPH_B AT91_PINCTRL_NONE>;
};

pinctrl_ssc2_rx: ssc2_rx-0 {
atmel,pins =
<AT91_PIOC 28 AT91_PERIPH_B AT91_PINCTRL_NONE>,
<AT91_PIOC 29 AT91_PERIPH_B AT91_PINCTRL_NONE>,
<AT91_PIOC 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;
};
};

spi0 {
pinctrl_spi0: spi0-0 {
atmel,pins =
Expand Down Expand Up @@ -545,7 +577,8 @@
reg = <0>;
atmel,clk-input-range = <1000000 32000000>;
#atmel,pll-clk-output-range-cells = <4>;
atmel,pll-clk-output-ranges = <80000000 200000000 190000000 240000000>;
atmel,pll-clk-output-ranges = <80000000 200000000 0 1>,
<190000000 240000000 2 1>;
};

pllb: pllbck {
Expand All @@ -554,9 +587,9 @@
interrupts-extended = <&pmc AT91_PMC_LOCKB>;
clocks = <&main>;
reg = <1>;
atmel,clk-input-range = <1000000 32000000>;
atmel,clk-input-range = <1000000 5000000>;
#atmel,pll-clk-output-range-cells = <4>;
atmel,pll-clk-output-ranges = <80000000 200000000 190000000 240000000>;
atmel,pll-clk-output-ranges = <70000000 130000000 1 1>;
};

mck: masterck {
Expand All @@ -565,16 +598,48 @@
interrupts-extended = <&pmc AT91_PMC_MCKRDY>;
clocks = <&clk32k>, <&main>, <&plla>, <&pllb>;
atmel,clk-output-range = <0 94000000>;
atmel,clk-divisors = <1 2 4 3>;
atmel,clk-divisors = <1 2 4 0>;
};

usb: usbck {
compatible = "atmel,at91rm9200-clk-usb";
#clock-cells = <0>;
atmel,clk-divisors = <1 2 4 3>;
atmel,clk-divisors = <1 2 4 0>;
clocks = <&pllb>;
};

prog: progck {
compatible = "atmel,at91rm9200-clk-programmable";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&pmc>;
clocks = <&clk32k>, <&main>, <&plla>, <&pllb>;

prog0: prog0 {
#clock-cells = <0>;
reg = <0>;
interrupts = <AT91_PMC_PCKRDY(0)>;
};

prog1: prog1 {
#clock-cells = <0>;
reg = <1>;
interrupts = <AT91_PMC_PCKRDY(1)>;
};

prog2: prog2 {
#clock-cells = <0>;
reg = <2>;
interrupts = <AT91_PMC_PCKRDY(2)>;
};

prog3: prog3 {
#clock-cells = <0>;
reg = <3>;
interrupts = <AT91_PMC_PCKRDY(3)>;
};
};

systemck {
compatible = "atmel,at91rm9200-clk-system";
#address-cells = <1>;
Expand All @@ -592,6 +657,30 @@
clocks = <&usb>;
};

pck0: pck0 {
#clock-cells = <0>;
reg = <8>;
clocks = <&prog0>;
};

pck1: pck1 {
#clock-cells = <0>;
reg = <9>;
clocks = <&prog1>;
};

pck2: pck2 {
#clock-cells = <0>;
reg = <10>;
clocks = <&prog2>;
};

pck3: pck3 {
#clock-cells = <0>;
reg = <11>;
clocks = <&prog3>;
};

hclk0: hclk0 {
#clock-cells = <0>;
reg = <16>;
Expand Down Expand Up @@ -666,6 +755,21 @@
reg = <13>;
};

ssc0_clk: ssc0_clk {
#clock-cells = <0>;
reg = <14>;
};

ssc1_clk: ssc1_clk {
#clock-cells = <0>;
reg = <15>;
};

ssc2_clk: ssc2_clk {
#clock-cells = <0>;
reg = <16>;
};

tc0_clk: tc0_clk {
#clock-cells = <0>;
reg = <17>;
Expand Down
7 changes: 4 additions & 3 deletions arch/arm/boot/dts/at91sam9rl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -815,8 +815,9 @@
clocks = <&main>;
reg = <0>;
atmel,clk-input-range = <1000000 32000000>;
#atmel,pll-clk-output-range-cells = <4>;
atmel,pll-clk-output-ranges = <80000000 200000000 190000000 240000000>;
#atmel,pll-clk-output-range-cells = <3>;
atmel,pll-clk-output-ranges = <80000000 200000000 0>,
<190000000 240000000 2>;
};

utmi: utmick {
Expand All @@ -833,7 +834,7 @@
interrupts-extended = <&pmc AT91_PMC_MCKRDY>;
clocks = <&clk32k>, <&main>, <&plla>, <&utmi>;
atmel,clk-output-range = <0 94000000>;
atmel,clk-divisors = <1 2 4 3>;
atmel,clk-divisors = <1 2 4 0>;
};

prog: progck {
Expand Down
78 changes: 78 additions & 0 deletions arch/arm/boot/dts/sama5d3.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -583,6 +583,84 @@
};
};

pwm0 {
pinctrl_pwm0_pwmh0_0: pwm0_pwmh0-0 {
atmel,pins =
<AT91_PIOA 20 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D4 and LCDDAT20 */
};
pinctrl_pwm0_pwmh0_1: pwm0_pwmh0-1 {
atmel,pins =
<AT91_PIOB 0 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTX0 */
};
pinctrl_pwm0_pwml0_0: pwm0_pwml0-0 {
atmel,pins =
<AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D5 and LCDDAT21 */
};
pinctrl_pwm0_pwml0_1: pwm0_pwml0-1 {
atmel,pins =
<AT91_PIOB 1 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTX1 */
};

pinctrl_pwm0_pwmh1_0: pwm0_pwmh1-0 {
atmel,pins =
<AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D6 and LCDDAT22 */
};
pinctrl_pwm0_pwmh1_1: pwm0_pwmh1-1 {
atmel,pins =
<AT91_PIOB 4 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRX0 */
};
pinctrl_pwm0_pwmh1_2: pwm0_pwmh1-2 {
atmel,pins =
<AT91_PIOB 27 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with G125CKO and RTS1 */
};
pinctrl_pwm0_pwml1_0: pwm0_pwml1-0 {
atmel,pins =
<AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D7 and LCDDAT23 */
};
pinctrl_pwm0_pwml1_1: pwm0_pwml1-1 {
atmel,pins =
<AT91_PIOB 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRX1 */
};
pinctrl_pwm0_pwml1_2: pwm0_pwml1-2 {
atmel,pins =
<AT91_PIOE 31 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with IRQ */
};

pinctrl_pwm0_pwmh2_0: pwm0_pwmh2-0 {
atmel,pins =
<AT91_PIOB 8 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTXCK */
};
pinctrl_pwm0_pwmh2_1: pwm0_pwmh2-1 {
atmel,pins =
<AT91_PIOD 5 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA4 and TIOA0 */
};
pinctrl_pwm0_pwml2_0: pwm0_pwml2-0 {
atmel,pins =
<AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTXEN */
};
pinctrl_pwm0_pwml2_1: pwm0_pwml2-1 {
atmel,pins =
<AT91_PIOD 6 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA5 and TIOB0 */
};

pinctrl_pwm0_pwmh3_0: pwm0_pwmh3-0 {
atmel,pins =
<AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRXDV */
};
pinctrl_pwm0_pwmh3_1: pwm0_pwmh3-1 {
atmel,pins =
<AT91_PIOD 7 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA6 and TCLK0 */
};
pinctrl_pwm0_pwml3_0: pwm0_pwml3-0 {
atmel,pins =
<AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRXER */
};
pinctrl_pwm0_pwml3_1: pwm0_pwml3-1 {
atmel,pins =
<AT91_PIOD 8 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA7 */
};
};

spi0 {
pinctrl_spi0: spi0-0 {
atmel,pins =
Expand Down

0 comments on commit 5669aab

Please sign in to comment.