Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c8add4c authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

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 4.6 #2" from Nicolas Ferre:

Second 4.6 DT series, all patches for sama5d2 and its Xplained board:
- addition of the NAND flash node
- addition of the dma properties for UART/USART nodes
- one update of the sama5d2 Xplained phy node
- addition of USB pinmux, button and leds

* tag 'at91-dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
  ARM: dts: at91: sama5d2 Xplained: add leds node
  ARM: dts: at91: sama5d2 Xplained: add user push button
  ARM: dts: at91: sama5d2 Xplained: set pin muxing for usb gadget and usb host
  ARM: dts: at91: sama5d2: add nand0 and nfc0 nodes
  ARM: dts: at91: sama5d2: add dma properties to UART nodes
  ARM: dts: at91: sama5d2 Xplained: Correct the macb irq pinctrl node
parents e3c739e1 ed0f4b3f
Loading
Loading
Loading
Loading
+70 −0
Original line number Original line Diff line number Diff line
@@ -46,6 +46,7 @@
#include "sama5d2.dtsi"
#include "sama5d2.dtsi"
#include "sama5d2-pinfunc.h"
#include "sama5d2-pinfunc.h"
#include <dt-bindings/mfd/atmel-flexcom.h>
#include <dt-bindings/mfd/atmel-flexcom.h>
#include <dt-bindings/gpio/gpio.h>


/ {
/ {
	model = "Atmel SAMA5D2 Xplained";
	model = "Atmel SAMA5D2 Xplained";
@@ -71,11 +72,20 @@


	ahb {
	ahb {
		usb0: gadget@00300000 {
		usb0: gadget@00300000 {
			atmel,vbus-gpio = <&pioA 31 GPIO_ACTIVE_HIGH>;
			pinctrl-names = "default";
			pinctrl-0 = <&pinctrl_usba_vbus>;
			status = "okay";
			status = "okay";
		};
		};


		usb1: ohci@00400000 {
		usb1: ohci@00400000 {
			num-ports = <3>;
			num-ports = <3>;
			atmel,vbus-gpio = <0 /* &pioA 41 GPIO_ACTIVE_HIGH */
					   &pioA 42 GPIO_ACTIVE_HIGH
					   0
					  >;
			pinctrl-names = "default";
			pinctrl-0 = <&pinctrl_usb_default>;
			status = "okay";
			status = "okay";
		};
		};


@@ -314,6 +324,18 @@
					bias-disable;
					bias-disable;
				};
				};


				pinctrl_key_gpio_default: key_gpio_default {
					pinmux = <PIN_PB9__GPIO>;
					bias-pull-up;
				};

				pinctrl_led_gpio_default: led_gpio_default {
					pinmux = <PIN_PB0__GPIO>,
						 <PIN_PB5__GPIO>,
						 <PIN_PB6__GPIO>;
					bias-pull-up;
				};

				pinctrl_macb0_default: macb0_default {
				pinctrl_macb0_default: macb0_default {
					pinmux = <PIN_PB14__GTXCK>,
					pinmux = <PIN_PB14__GTXCK>,
						 <PIN_PB15__GTXEN>,
						 <PIN_PB15__GTXEN>,
@@ -330,6 +352,7 @@


				pinctrl_macb0_phy_irq: macb0_phy_irq {
				pinctrl_macb0_phy_irq: macb0_phy_irq {
					pinmux = <PIN_PC9__GPIO>;
					pinmux = <PIN_PC9__GPIO>;
					bias-disable;
				};
				};


				pinctrl_pdmic_default: pdmic_default {
				pinctrl_pdmic_default: pdmic_default {
@@ -397,7 +420,54 @@
						 <PIN_PB12__UTXD3>;
						 <PIN_PB12__UTXD3>;
					bias-disable;
					bias-disable;
				};
				};

				pinctrl_usb_default: usb_default {
					pinmux = <PIN_PB10__GPIO>;
					bias-disable;
				};

				pinctrl_usba_vbus: usba_vbus {
					pinmux = <PIN_PA31__GPIO>;
					bias-disable;
				};

			};
		};
	};

	gpio_keys {
		compatible = "gpio-keys";

		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_key_gpio_default>;

		bp1 {
			label = "PB_USER";
			gpios = <&pioA 41 GPIO_ACTIVE_LOW>;
			linux,code = <0x104>;
		};
	};
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_led_gpio_default>;
		status = "okay";

		red {
			label = "red";
			gpios = <&pioA 38 GPIO_ACTIVE_LOW>;
		};

		green {
			label = "green";
			gpios = <&pioA 37 GPIO_ACTIVE_LOW>;
		};

		blue {
			label = "blue";
			gpios = <&pioA 32 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "heartbeat";
		};
		};
	};
	};
};
};
+73 −0
Original line number Original line Diff line number Diff line
@@ -257,6 +257,44 @@
			cache-level = <2>;
			cache-level = <2>;
		};
		};


		nand0: nand@80000000 {
			compatible = "atmel,sama5d2-nand";
			#address-cells = <1>;
			#size-cells = <1>;
			ranges;
			reg = < /* EBI CS3 */
				0x80000000 0x08000000
				/* SMC PMECC regs */
				0xf8014070 0x00000490
				/* SMC PMECC Error Location regs */
				0xf8014500 0x00000200
				/* ROM Galois tables */
				0x00040000 0x00018000
				>;
			interrupts = <17 IRQ_TYPE_LEVEL_HIGH 6>;
			atmel,nand-addr-offset = <21>;
			atmel,nand-cmd-offset = <22>;
			atmel,nand-has-dma;
			atmel,has-pmecc;
			atmel,pmecc-lookup-table-offset = <0x0 0x8000>;
			status = "disabled";

			nfc@c0000000 {
				compatible = "atmel,sama5d4-nfc";
				#address-cells = <1>;
				#size-cells = <1>;
				reg = < /* NFC Command Registers */
					0xc0000000 0x08000000
					/* NFC HSMC regs */
					0xf8014000 0x00000070
					/* NFC SRAM banks */
					0x00100000 0x00100000
					>;
				clocks = <&hsmc_clk>;
				atmel,write-by-sram;
			};
		};

		sdmmc0: sdio-host@a0000000 {
		sdmmc0: sdio-host@a0000000 {
			compatible = "atmel,sama5d2-sdhci";
			compatible = "atmel,sama5d2-sdhci";
			reg = <0xa0000000 0x300>;
			reg = <0xa0000000 0x300>;
@@ -874,6 +912,13 @@
				compatible = "atmel,at91sam9260-usart";
				compatible = "atmel,at91sam9260-usart";
				reg = <0xf801c000 0x100>;
				reg = <0xf801c000 0x100>;
				interrupts = <24 IRQ_TYPE_LEVEL_HIGH 7>;
				interrupts = <24 IRQ_TYPE_LEVEL_HIGH 7>;
				dmas = <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(35))>,
				       <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(36))>;
				dma-names = "tx", "rx";
				clocks = <&uart0_clk>;
				clocks = <&uart0_clk>;
				clock-names = "usart";
				clock-names = "usart";
				status = "disabled";
				status = "disabled";
@@ -883,6 +928,13 @@
				compatible = "atmel,at91sam9260-usart";
				compatible = "atmel,at91sam9260-usart";
				reg = <0xf8020000 0x100>;
				reg = <0xf8020000 0x100>;
				interrupts = <25 IRQ_TYPE_LEVEL_HIGH 7>;
				interrupts = <25 IRQ_TYPE_LEVEL_HIGH 7>;
				dmas = <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(37))>,
				       <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(38))>;
				dma-names = "tx", "rx";
				clocks = <&uart1_clk>;
				clocks = <&uart1_clk>;
				clock-names = "usart";
				clock-names = "usart";
				status = "disabled";
				status = "disabled";
@@ -892,6 +944,13 @@
				compatible = "atmel,at91sam9260-usart";
				compatible = "atmel,at91sam9260-usart";
				reg = <0xf8024000 0x100>;
				reg = <0xf8024000 0x100>;
				interrupts = <26 IRQ_TYPE_LEVEL_HIGH 7>;
				interrupts = <26 IRQ_TYPE_LEVEL_HIGH 7>;
				dmas = <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(39))>,
				       <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(40))>;
				dma-names = "tx", "rx";
				clocks = <&uart2_clk>;
				clocks = <&uart2_clk>;
				clock-names = "usart";
				clock-names = "usart";
				status = "disabled";
				status = "disabled";
@@ -1010,6 +1069,13 @@
				compatible = "atmel,at91sam9260-usart";
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfc008000 0x100>;
				reg = <0xfc008000 0x100>;
				interrupts = <27 IRQ_TYPE_LEVEL_HIGH 7>;
				interrupts = <27 IRQ_TYPE_LEVEL_HIGH 7>;
				dmas = <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(41))>,
				       <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(42))>;
				dma-names = "tx", "rx";
				clocks = <&uart3_clk>;
				clocks = <&uart3_clk>;
				clock-names = "usart";
				clock-names = "usart";
				status = "disabled";
				status = "disabled";
@@ -1018,6 +1084,13 @@
			uart4: serial@fc00c000 {
			uart4: serial@fc00c000 {
				compatible = "atmel,at91sam9260-usart";
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfc00c000 0x100>;
				reg = <0xfc00c000 0x100>;
				dmas = <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(43))>,
				       <&dma0
					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
					 AT91_XDMAC_DT_PERID(44))>;
				dma-names = "tx", "rx";
				interrupts = <28 IRQ_TYPE_LEVEL_HIGH 7>;
				interrupts = <28 IRQ_TYPE_LEVEL_HIGH 7>;
				clocks = <&uart4_clk>;
				clocks = <&uart4_clk>;
				clock-names = "usart";
				clock-names = "usart";