Commit 9a5074ff authored by Olof Johansson's avatar Olof Johansson

Merge tag 'at91-dt2' of...

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

Merge "at91: dt for 3.20 #2" from Nicolas Ferre:

Second DT batch for 3.20:
- correct some pin configuration for at91sam9x5ek
- add pioD on sama5d4 following a modification of pinctrl driver
- add more precise nand compatibility string for sama5d4
- audio modifications for wm8904 or ac97

* tag 'at91-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
  ARM: at91/dt: sam9263: Add ac97 device node
  dt: atmel_ac97c: Add device tree documentation
  ARM: at91: at91sam9n12ek/dt: use dt ids for wm8904
  ARM: at91: sama5d3xek/dt: use dt ids for wm8904
  ARM: at91: sama5d4: dts: change the nand compatible string
  ARM: at91/dt: sama5d4: add pioD controller
  ARM: at91/dt: disable pull-up on vbus-gpio (PB16) to reduce power consumption
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 8749f9f3 c7f85be1
* Atmel AC97 controller
Required properties:
- compatible: "atmel,at91sam9263-ac97c"
- reg: Address and length of the register set for the device
- interrupts: Should contain AC97 interrupt
- ac97-gpios: Please refer to soc-ac97link.txt, only ac97-reset is used
Optional properties:
- pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt
Example:
sound@fffa0000 {
compatible = "atmel,at91sam9263-ac97c";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ac97>;
reg = <0xfffa0000 0x4000>;
interrupts = <18 IRQ_TYPE_LEVEL_HIGH 5>;
ac97-gpios = <&pioB 0 0 &pioB 2 0 &pioC 29 GPIO_ACTIVE_LOW>;
};
...@@ -695,6 +695,16 @@ pinctrl_can_rx_tx: can_rx_tx { ...@@ -695,6 +695,16 @@ pinctrl_can_rx_tx: can_rx_tx {
}; };
}; };
ac97 {
pinctrl_ac97: ac97-0 {
atmel,pins =
<AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB12 periph A AC97FS pin */
AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB13 periph A AC97CK pin */
AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB14 periph A AC97TX pin */
AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB14 periph A AC97RX pin */
};
};
pioA: gpio@fffff200 { pioA: gpio@fffff200 {
compatible = "atmel,at91rm9200-gpio"; compatible = "atmel,at91rm9200-gpio";
reg = <0xfffff200 0x200>; reg = <0xfffff200 0x200>;
...@@ -823,6 +833,17 @@ ssc1: ssc@fff9c000 { ...@@ -823,6 +833,17 @@ ssc1: ssc@fff9c000 {
status = "disabled"; status = "disabled";
}; };
ac97: sound@fffa0000 {
compatible = "atmel,at91sam9263-ac97c";
reg = <0xfffa0000 0x4000>;
interrupts = <18 IRQ_TYPE_LEVEL_HIGH 5>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ac97>;
clocks = <&ac97_clk>;
clock-names = "ac97_clk";
status = "disabled";
};
macb0: ethernet@fffbc000 { macb0: ethernet@fffbc000 {
compatible = "cdns,at32ap7000-macb", "cdns,macb"; compatible = "cdns,at32ap7000-macb", "cdns,macb";
reg = <0xfffbc000 0x100>; reg = <0xfffbc000 0x100>;
......
...@@ -54,7 +54,7 @@ i2c0: i2c@f8010000 { ...@@ -54,7 +54,7 @@ i2c0: i2c@f8010000 {
status = "okay"; status = "okay";
wm8904: codec@1a { wm8904: codec@1a {
compatible = "wm8904"; compatible = "wlf,wm8904";
reg = <0x1a>; reg = <0x1a>;
clocks = <&pck0>; clocks = <&pck0>;
clock-names = "mclk"; clock-names = "mclk";
......
...@@ -53,6 +53,8 @@ usart0: serial@f801c000 { ...@@ -53,6 +53,8 @@ usart0: serial@f801c000 {
}; };
usb2: gadget@f803c000 { usb2: gadget@f803c000 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_board_usb2>;
atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
}; };
...@@ -80,6 +82,13 @@ pinctrl_board_mmc1: mmc1-board { ...@@ -80,6 +82,13 @@ pinctrl_board_mmc1: mmc1-board {
<AT91_PIOD 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PD14 gpio CD pin pull up and deglitch */ <AT91_PIOD 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PD14 gpio CD pin pull up and deglitch */
}; };
}; };
usb2 {
pinctrl_board_usb2: usb2-board {
atmel,pins =
<AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PB16 gpio vbus sense, deglitch */
};
};
}; };
spi0: spi@f0000000 { spi0: spi@f0000000 {
......
...@@ -45,7 +45,7 @@ ssc0: ssc@f0008000 { ...@@ -45,7 +45,7 @@ ssc0: ssc@f0008000 {
*/ */
i2c0: i2c@f0014000 { i2c0: i2c@f0014000 {
wm8904: wm8904@1a { wm8904: wm8904@1a {
compatible = "wm8904"; compatible = "wlf,wm8904";
reg = <0x1a>; reg = <0x1a>;
clocks = <&pck0>; clocks = <&pck0>;
clock-names = "mclk"; clock-names = "mclk";
......
...@@ -62,6 +62,7 @@ aliases { ...@@ -62,6 +62,7 @@ aliases {
gpio0 = &pioA; gpio0 = &pioA;
gpio1 = &pioB; gpio1 = &pioB;
gpio2 = &pioC; gpio2 = &pioC;
gpio3 = &pioD;
gpio4 = &pioE; gpio4 = &pioE;
tcb0 = &tcb0; tcb0 = &tcb0;
tcb1 = &tcb1; tcb1 = &tcb1;
...@@ -272,7 +273,7 @@ L2: cache-controller@00a00000 { ...@@ -272,7 +273,7 @@ L2: cache-controller@00a00000 {
}; };
nand0: nand@80000000 { nand0: nand@80000000 {
compatible = "atmel,at91rm9200-nand"; compatible = "atmel,sama5d4-nand", "atmel,at91rm9200-nand";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
ranges; ranges;
...@@ -1121,6 +1122,18 @@ pioC: gpio@fc06c000 { ...@@ -1121,6 +1122,18 @@ pioC: gpio@fc06c000 {
clocks = <&pioC_clk>; clocks = <&pioC_clk>;
}; };
pioD: gpio@fc068000 {
compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
reg = <0xfc068000 0x100>;
interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>;
#gpio-cells = <2>;
gpio-controller;
interrupt-controller;
#interrupt-cells = <2>;
clocks = <&pioD_clk>;
status = "disabled";
};
pioE: gpio@fc06d000 { pioE: gpio@fc06d000 {
compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
reg = <0xfc06d000 0x100>; reg = <0xfc06d000 0x100>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment