提交 920c74f0 编写于 作者: A Arnd Bergmann

Merge tag 'at91-ab-dt2' of...

Merge tag 'at91-ab-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt

Merge "Second batch of DT changes for 4.4" from Alexandre Belloni:

- some DT fixes: pullups, disabled property
- the PMC is now a syscon
- great improvement of sama5d2 support

* tag 'at91-ab-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  ARM: at91/dt: sama5d2: add missing devices
  ARM: at91/dt: sama5d4: add the macb1 node
  ARM: at91/dt: add pullup on mmc2 data signals
  ARM: at91/dt: sama5d2_xplained: add regulator nodes
  ARM: at91/dt: fix "disabled" property on at91rm9200
  ARM: at91/dt: use syscon for PMC
...@@ -122,6 +122,63 @@ ...@@ -122,6 +122,63 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c0_default>; pinctrl-0 = <&pinctrl_i2c0_default>;
status = "okay"; status = "okay";
pmic: act8865@5b {
compatible = "active-semi,act8865";
reg = <0x5b>;
active-semi,vsel-high;
status = "okay";
regulators {
vdd_1v35_reg: DCDC_REG1 {
regulator-name = "VDD_1V35";
regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>;
regulator-always-on;
};
vdd_1v2_reg: DCDC_REG2 {
regulator-name = "VDD_1V2";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1300000>;
regulator-always-on;
};
vdd_3v3_reg: DCDC_REG3 {
regulator-name = "VDD_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_fuse_reg: LDO_REG1 {
regulator-name = "VDD_FUSE";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>;
regulator-always-on;
};
vdd_3v3_lp_reg: LDO_REG2 {
regulator-name = "VDD_3V3_LP";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_led_reg: LDO_REG3 {
regulator-name = "VDD_LED";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_sdhc_1v8_reg: LDO_REG4 {
regulator-name = "VDD_SDHC_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
};
};
}; };
uart3: serial@fc008000 { uart3: serial@fc008000 {
......
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91rm9200-pmc"; compatible = "atmel,at91rm9200-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
...@@ -426,7 +426,7 @@ ...@@ -426,7 +426,7 @@
pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
clocks = <&ssc0_clk>; clocks = <&ssc0_clk>;
clock-names = "pclk"; clock-names = "pclk";
status = "disable"; status = "disabled";
}; };
ssc1: ssc@fffd4000 { ssc1: ssc@fffd4000 {
...@@ -437,7 +437,7 @@ ...@@ -437,7 +437,7 @@
pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>; pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
clocks = <&ssc1_clk>; clocks = <&ssc1_clk>;
clock-names = "pclk"; clock-names = "pclk";
status = "disable"; status = "disabled";
}; };
ssc2: ssc@fffd8000 { ssc2: ssc@fffd8000 {
...@@ -448,7 +448,7 @@ ...@@ -448,7 +448,7 @@
pinctrl-0 = <&pinctrl_ssc2_tx &pinctrl_ssc2_rx>; pinctrl-0 = <&pinctrl_ssc2_tx &pinctrl_ssc2_rx>;
clocks = <&ssc2_clk>; clocks = <&ssc2_clk>;
clock-names = "pclk"; clock-names = "pclk";
status = "disable"; status = "disabled";
}; };
macb0: ethernet@fffbc000 { macb0: ethernet@fffbc000 {
......
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91sam9260-pmc"; compatible = "atmel,at91sam9260-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -568,7 +568,7 @@ ...@@ -568,7 +568,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91rm9200-pmc"; compatible = "atmel,at91rm9200-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91rm9200-pmc"; compatible = "atmel,at91rm9200-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91sam9g45-pmc"; compatible = "atmel,at91sam9g45-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91sam9n12-pmc"; compatible = "atmel,at91sam9n12-pmc", "syscon";
reg = <0xfffffc00 0x200>; reg = <0xfffffc00 0x200>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -814,7 +814,7 @@ ...@@ -814,7 +814,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91sam9g45-pmc"; compatible = "atmel,at91sam9g45-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,at91sam9x5-pmc"; compatible = "atmel,at91sam9x5-pmc", "syscon";
reg = <0xfffffc00 0x100>; reg = <0xfffffc00 0x100>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -263,6 +263,24 @@ ...@@ -263,6 +263,24 @@
cache-level = <2>; cache-level = <2>;
}; };
sdmmc0: sdio-host@a0000000 {
compatible = "atmel,sama5d2-sdhci";
reg = <0xa0000000 0x300>;
interrupts = <31 IRQ_TYPE_LEVEL_HIGH 0>;
clocks = <&sdmmc0_hclk>, <&sdmmc0_gclk>, <&main>;
clock-names = "hclock", "multclk", "baseclk";
status = "disabled";
};
sdmmc1: sdio-host@b0000000 {
compatible = "atmel,sama5d2-sdhci";
reg = <0xb0000000 0x300>;
interrupts = <32 IRQ_TYPE_LEVEL_HIGH 0>;
clocks = <&sdmmc1_hclk>, <&sdmmc1_gclk>, <&main>;
clock-names = "hclock", "multclk", "baseclk";
status = "disabled";
};
apb { apb {
compatible = "simple-bus"; compatible = "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -286,7 +304,7 @@ ...@@ -286,7 +304,7 @@
}; };
pmc: pmc@f0014000 { pmc: pmc@f0014000 {
compatible = "atmel,sama5d2-pmc"; compatible = "atmel,sama5d2-pmc", "syscon";
reg = <0xf0014000 0x160>; reg = <0xf0014000 0x160>;
interrupts = <74 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <74 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
...@@ -619,6 +637,18 @@ ...@@ -619,6 +637,18 @@
atmel,clk-output-range = <0 83000000>; atmel,clk-output-range = <0 83000000>;
}; };
i2s0_clk: i2s0_clk {
#clock-cells = <0>;
reg = <54>;
atmel,clk-output-range = <0 83000000>;
};
i2s1_clk: i2s1_clk {
#clock-cells = <0>;
reg = <55>;
atmel,clk-output-range = <0 83000000>;
};
classd_clk: classd_clk { classd_clk: classd_clk {
#clock-cells = <0>; #clock-cells = <0>;
reg = <59>; reg = <59>;
...@@ -697,6 +727,52 @@ ...@@ -697,6 +727,52 @@
reg = <53>; reg = <53>;
}; };
}; };
gck {
compatible = "atmel,sama5d2-clk-generated";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&pmc>;
clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>, <&mck>;
sdmmc0_gclk: sdmmc0_gclk {
#clock-cells = <0>;
reg = <31>;
};
sdmmc1_gclk: sdmmc1_gclk {
#clock-cells = <0>;
reg = <32>;
};
tcb0_gclk: tcb0_gclk {
#clock-cells = <0>;
reg = <35>;
atmel,clk-output-range = <0 83000000>;
};
tcb1_gclk: tcb1_gclk {
#clock-cells = <0>;
reg = <36>;
atmel,clk-output-range = <0 83000000>;
};
pwm_gclk: pwm_gclk {
#clock-cells = <0>;
reg = <38>;
atmel,clk-output-range = <0 83000000>;
};
i2s0_gclk: i2s0_gclk {
#clock-cells = <0>;
reg = <54>;
};
i2s1_gclk: i2s1_gclk {
#clock-cells = <0>;
reg = <55>;
};
};
}; };
sha@f0028000 { sha@f0028000 {
...@@ -709,7 +785,7 @@ ...@@ -709,7 +785,7 @@
dma-names = "tx"; dma-names = "tx";
clocks = <&sha_clk>; clocks = <&sha_clk>;
clock-names = "sha_clk"; clock-names = "sha_clk";
status = "disabled"; status = "okay";
}; };
aes@f002c000 { aes@f002c000 {
...@@ -725,7 +801,7 @@ ...@@ -725,7 +801,7 @@
dma-names = "tx", "rx"; dma-names = "tx", "rx";
clocks = <&aes_clk>; clocks = <&aes_clk>;
clock-names = "aes_clk"; clock-names = "aes_clk";
status = "disabled"; status = "okay";
}; };
spi0: spi@f8000000 { spi0: spi@f8000000 {
...@@ -820,6 +896,32 @@ ...@@ -820,6 +896,32 @@
status = "disabled"; status = "disabled";
}; };
flx0: flexcom@f8034000 {
compatible = "atmel,sama5d2-flexcom";
reg = <0xf8034000 0x200>;
clocks = <&flx0_clk>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xf8034000 0x800>;
status = "disabled";
};
flx1: flexcom@f8038000 {
compatible = "atmel,sama5d2-flexcom";
reg = <0xf8038000 0x200>;
clocks = <&flx1_clk>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xf8038000 0x800>;
status = "disabled";
};
rstc@f8048000 {
compatible = "atmel,sama5d3-rstc";
reg = <0xf8048000 0x10>;
clocks = <&clk32k>;
};
pit: timer@f8048030 { pit: timer@f8048030 {
compatible = "atmel,at91sam9260-pit"; compatible = "atmel,at91sam9260-pit";
reg = <0xf8048030 0x10>; reg = <0xf8048030 0x10>;
...@@ -897,6 +999,36 @@ ...@@ -897,6 +999,36 @@
status = "disabled"; status = "disabled";
}; };
flx2: flexcom@fc010000 {
compatible = "atmel,sama5d2-flexcom";
reg = <0xfc010000 0x200>;
clocks = <&flx2_clk>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xfc010000 0x800>;
status = "disabled";
};
flx3: flexcom@fc014000 {
compatible = "atmel,sama5d2-flexcom";
reg = <0xfc014000 0x200>;
clocks = <&flx3_clk>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xfc014000 0x800>;
status = "disabled";
};
flx4: flexcom@fc018000 {
compatible = "atmel,sama5d2-flexcom";
reg = <0xfc018000 0x200>;
clocks = <&flx4_clk>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0xfc018000 0x800>;
status = "disabled";
};
aic: interrupt-controller@fc020000 { aic: interrupt-controller@fc020000 {
#interrupt-cells = <3>; #interrupt-cells = <3>;
compatible = "atmel,sama5d2-aic"; compatible = "atmel,sama5d2-aic";
...@@ -921,6 +1053,22 @@ ...@@ -921,6 +1053,22 @@
clocks = <&twi1_clk>; clocks = <&twi1_clk>;
status = "disabled"; status = "disabled";
}; };
tdes@fc044000 {
compatible = "atmel,at91sam9g46-tdes";
reg = <0xfc044000 0x100>;
interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>;
dmas = <&dma0
(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
AT91_XDMAC_DT_PERID(28))>,
<&dma0
(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
AT91_XDMAC_DT_PERID(29))>;
dma-names = "tx", "rx";
clocks = <&tdes_clk>;
clock-names = "tdes_clk";
status = "okay";
};
}; };
}; };
}; };
...@@ -907,7 +907,7 @@ ...@@ -907,7 +907,7 @@
}; };
pmc: pmc@fffffc00 { pmc: pmc@fffffc00 {
compatible = "atmel,sama5d3-pmc"; compatible = "atmel,sama5d3-pmc", "syscon";
reg = <0xfffffc00 0x120>; reg = <0xfffffc00 0x120>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
......
...@@ -24,9 +24,9 @@ ...@@ -24,9 +24,9 @@
}; };
pinctrl_mmc2_dat1_3: mmc2_dat1_3 { pinctrl_mmc2_dat1_3: mmc2_dat1_3 {
atmel,pins = atmel,pins =
<AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC12 periph A MCI2_DA1 with pullup, conflicts with TIOA1 */ <AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PC12 periph A MCI2_DA1 with pullup, conflicts with TIOA1 */
AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC13 periph A MCI2_DA2 with pullup, conflicts with TIOB1 */ AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PC13 periph A MCI2_DA2 with pullup, conflicts with TIOB1 */
AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PC14 periph A MCI2_DA3 with pullup, conflicts with TCLK1 */ AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PC14 periph A MCI2_DA3 with pullup, conflicts with TCLK1 */
}; };
}; };
}; };
......
...@@ -386,7 +386,7 @@ ...@@ -386,7 +386,7 @@
}; };
pmc: pmc@f0018000 { pmc: pmc@f0018000 {
compatible = "atmel,sama5d3-pmc"; compatible = "atmel,sama5d3-pmc", "syscon";
reg = <0xf0018000 0x120>; reg = <0xf0018000 0x120>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
interrupt-controller; interrupt-controller;
...@@ -1189,6 +1189,19 @@ ...@@ -1189,6 +1189,19 @@
clock-names = "t0_clk", "slow_clk"; clock-names = "t0_clk", "slow_clk";
}; };
macb1: ethernet@fc028000 {
compatible = "atmel,sama5d4-gem";
reg = <0xfc028000 0x100>;
interrupts = <55 IRQ_TYPE_LEVEL_HIGH 3>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_macb1_rmii>;
#address-cells = <1>;
#size-cells = <0>;
clocks = <&macb1_clk>, <&macb1_clk>;
clock-names = "hclk", "pclk";
status = "disabled";
};
adc0: adc@fc034000 { adc0: adc@fc034000 {
compatible = "atmel,at91sam9x5-adc"; compatible = "atmel,at91sam9x5-adc";
reg = <0xfc034000 0x100>; reg = <0xfc034000 0x100>;
...@@ -1635,6 +1648,23 @@ ...@@ -1635,6 +1648,23 @@
}; };
}; };
macb1 {
pinctrl_macb1_rmii: macb1_rmii-0 {
atmel,pins =
<AT91_PIOA 14 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_TX0 */
AT91_PIOA 15 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_TX1 */
AT91_PIOA 12 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_RX0 */
AT91_PIOA 13 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_RX1 */
AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_RXDV */
AT91_PIOA 11 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_RXER */
AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_TXEN */
AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_TXCK */
AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_MDC */
AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE /* G1_MDIO */
>;
};
};
mmc0 { mmc0 {
pinctrl_mmc0_clk_cmd_dat0: mmc0_clk_cmd_dat0 { pinctrl_mmc0_clk_cmd_dat0: mmc0_clk_cmd_dat0 {
atmel,pins = atmel,pins =
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册