PKGBUILDs/core/linux-armv5-rc/0002-at91-arietta-g25-support.patch
2016-05-09 00:18:43 +00:00

380 lines
9.1 KiB
Diff

From 515ca42e8a6eb3c12a73875ae221e56b226c0cdc Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Sat, 13 Jun 2015 13:46:30 -0600
Subject: [PATCH 2/3] at91: arietta-g25 support
Signed-off-by: Kevin Mihelich <kevin@archlinuxarm.org>
---
arch/arm/boot/dts/Makefile | 2 +
arch/arm/boot/dts/at91-arietta128.dts | 169 ++++++++++++++++++++++++++++++++++
arch/arm/boot/dts/at91-arietta256.dts | 169 ++++++++++++++++++++++++++++++++++
3 files changed, 340 insertions(+)
create mode 100644 arch/arm/boot/dts/at91-arietta128.dts
create mode 100644 arch/arm/boot/dts/at91-arietta256.dts
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 95c1923..96010d9 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -33,6 +33,8 @@ dtb-$(CONFIG_SOC_SAM_V4_V5) += \
at91sam9n12ek.dtb \
at91sam9rlek.dtb \
at91-ariag25.dtb \
+ at91-arietta128.dtb \
+ at91-arietta256.dtb \
at91-ariettag25.dtb \
at91-cosino_mega2560.dtb \
at91-kizboxmini.dtb \
diff --git a/arch/arm/boot/dts/at91-arietta128.dts b/arch/arm/boot/dts/at91-arietta128.dts
new file mode 100644
index 0000000..e43533d
--- /dev/null
+++ b/arch/arm/boot/dts/at91-arietta128.dts
@@ -0,0 +1,169 @@
+/*
+ * acme-arietta.dts - Device Tree file for Arietta G25
+ * Generated by http://dts.acmesystems.it/arietta
+ */
+/dts-v1/;
+#include "at91sam9g25.dtsi"
+/ {
+ model = "Acme Systems Arietta G25";
+ compatible = "acme,ariettag25", "atmel,at91sam9x5ek","atmel,at91sam9x5", "atmel,at91sam9";
+ aliases {
+ serial0 = &dbgu;
+ serial1 = &usart0;
+ serial2 = &usart1;
+ serial3 = &usart2;
+ serial4 = &usart3;
+ serial5 = &uart0;
+ serial6 = &uart1;
+ };
+ chosen {
+ bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait";
+ };
+ memory {
+ reg = <0x20000000 0x8000000>;
+ };
+ clocks {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ main_clock: clock@0 {
+ compatible = "atmel,osc", "fixed-clock";
+ clock-frequency = <12000000>;
+ };
+
+ main_xtal {
+ clock-frequency = <12000000>;
+ };
+ };
+ ahb {
+ apb {
+ mmc0: mmc@f0008000 {
+ pinctrl-0 = <
+ &pinctrl_mmc0_slot0_clk_cmd_dat0
+ &pinctrl_mmc0_slot0_dat1_3>;
+ status = "okay";
+ slot@0 {
+ reg = <0>;
+ bus-width = <4>;
+ };
+ };
+ i2c0: i2c@f8010000 {
+ status ="okay";
+ wm8731: wm8731@1b {
+ compatible = "wm8731";
+ reg = <0x1b>;
+ };
+ };
+ i2c1: i2c@f8014000 {
+ status ="okay";
+ };
+ usart0: serial@f801c000 {
+ pinctrl-0 = <&pinctrl_usart0>;
+ status ="okay";
+ };
+ spi1: spi@f0004000 {
+ status = "okay";
+ cs-gpios = <&pioA 8 0>, <&pioA 0 0>, <&pioA 31 0>, <&pioA 30 0>;
+ device@0 {
+ compatible = "spidev";
+ spi-max-frequency = <5000000>; // 5 MHz
+ reg = <0>;
+ };
+ };
+
+ pinctrl@fffff400 {
+ adc0 {
+ pinctrl_adc0_ad0: adc0_ad0 {
+ atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad1: adc0_ad1 {
+ atmel,pins = <AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad2: adc0_ad2 {
+ atmel,pins = <AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad3: adc0_ad3 {
+ atmel,pins = <AT91_PIOB 14 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ };
+ };
+
+ adc0: adc@f804c000 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_adc0_ad0 &pinctrl_adc0_ad1 &pinctrl_adc0_ad2 &pinctrl_adc0_ad3>;
+ atmel,adc-channels-used = <0xf>;
+ atmel,adc-num-channels = <4>;
+ compatible = "atmel,at91sam9x5-adc";
+ atmel,adc-startup-time = <40>;
+ atmel,adc-status-register = <0x1c>;
+ atmel,adc-trigger-register = <0x08>;
+ atmel,adc-use-external;
+ atmel,adc-vref = <3250>;
+ atmel,adc-res = <8 10>;
+ atmel,adc-res-names = "lowres", "highres";
+ atmel,adc-use-res = "highres";
+ trigger@0 {
+ trigger-name = "continuous";
+ trigger-value = <0x6>;
+ };
+ };
+
+ ssc0: ssc@f0010000 {
+ status = "okay";
+ };
+ usb2: gadget@f803c000 {
+ status = "okay";
+ };
+ dbgu: serial@fffff200 {
+ status = "okay";
+ };
+ pinctrl@fffff400 {
+ w1_0 {
+ pinctrl_w1_0: w1_0-0 {
+ /* pull up on */
+ atmel,pins = <2 31 0x0 0x1>;
+ };
+ };
+
+ };
+ rtc@fffffeb0 {
+ status = "okay";
+ };
+ };
+ usb0: ohci@00600000 {
+ status = "okay";
+ num-ports = <3>;
+ };
+ usb1: ehci@00700000 {
+ status = "okay";
+ };
+ };
+ leds {
+ compatible = "gpio-leds";
+ arietta_led {
+ label = "arietta_led";
+ gpios = <&pioB 8 GPIO_ACTIVE_HIGH>; /* PB8 */
+ linux,default-trigger = "heartbeat";
+ };
+ };
+ onewire@0 {
+ compatible = "w1-gpio";
+ gpios = <&pioC 31 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_w1_0>;
+ };
+
+ sound {
+ compatible = "atmel,sam9x5-wm8731-audio";
+ atmel,model = "wm8731 @ AT91SAM9X5EK";
+ atmel,audio-routing =
+ "Headphone Jack", "RHPOUT",
+ "Headphone Jack", "LHPOUT",
+ "LLINEIN", "Line In Jack",
+ "RLINEIN", "Line In Jack";
+ atmel,ssc-controller = <&ssc0>;
+ atmel,audio-codec = <&wm8731>;
+ };
+
+};
diff --git a/arch/arm/boot/dts/at91-arietta256.dts b/arch/arm/boot/dts/at91-arietta256.dts
new file mode 100644
index 0000000..cbae789
--- /dev/null
+++ b/arch/arm/boot/dts/at91-arietta256.dts
@@ -0,0 +1,169 @@
+/*
+ * acme-arietta.dts - Device Tree file for Arietta G25
+ * Generated by http://dts.acmesystems.it/arietta
+ */
+/dts-v1/;
+#include "at91sam9g25.dtsi"
+/ {
+ model = "Acme Systems Arietta G25";
+ compatible = "acme,ariettag25", "atmel,at91sam9x5ek","atmel,at91sam9x5", "atmel,at91sam9";
+ aliases {
+ serial0 = &dbgu;
+ serial1 = &usart0;
+ serial2 = &usart1;
+ serial3 = &usart2;
+ serial4 = &usart3;
+ serial5 = &uart0;
+ serial6 = &uart1;
+ };
+ chosen {
+ bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait";
+ };
+ memory {
+ reg = <0x20000000 0x10000000>;
+ };
+ clocks {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ main_clock: clock@0 {
+ compatible = "atmel,osc", "fixed-clock";
+ clock-frequency = <12000000>;
+ };
+
+ main_xtal {
+ clock-frequency = <12000000>;
+ };
+ };
+ ahb {
+ apb {
+ mmc0: mmc@f0008000 {
+ pinctrl-0 = <
+ &pinctrl_mmc0_slot0_clk_cmd_dat0
+ &pinctrl_mmc0_slot0_dat1_3>;
+ status = "okay";
+ slot@0 {
+ reg = <0>;
+ bus-width = <4>;
+ };
+ };
+ i2c0: i2c@f8010000 {
+ status ="okay";
+ wm8731: wm8731@1b {
+ compatible = "wm8731";
+ reg = <0x1b>;
+ };
+ };
+ i2c1: i2c@f8014000 {
+ status ="okay";
+ };
+ usart0: serial@f801c000 {
+ pinctrl-0 = <&pinctrl_usart0>;
+ status ="okay";
+ };
+ spi1: spi@f0004000 {
+ status = "okay";
+ cs-gpios = <&pioA 8 0>, <&pioA 0 0>, <&pioA 31 0>, <&pioA 30 0>;
+ device@0 {
+ compatible = "spidev";
+ spi-max-frequency = <5000000>; // 5 MHz
+ reg = <0>;
+ };
+ };
+
+ pinctrl@fffff400 {
+ adc0 {
+ pinctrl_adc0_ad0: adc0_ad0 {
+ atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad1: adc0_ad1 {
+ atmel,pins = <AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad2: adc0_ad2 {
+ atmel,pins = <AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ pinctrl_adc0_ad3: adc0_ad3 {
+ atmel,pins = <AT91_PIOB 14 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
+ };
+ };
+ };
+
+ adc0: adc@f804c000 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_adc0_ad0 &pinctrl_adc0_ad1 &pinctrl_adc0_ad2 &pinctrl_adc0_ad3>;
+ atmel,adc-channels-used = <0xf>;
+ atmel,adc-num-channels = <4>;
+ compatible = "atmel,at91sam9x5-adc";
+ atmel,adc-startup-time = <40>;
+ atmel,adc-status-register = <0x1c>;
+ atmel,adc-trigger-register = <0x08>;
+ atmel,adc-use-external;
+ atmel,adc-vref = <3250>;
+ atmel,adc-res = <8 10>;
+ atmel,adc-res-names = "lowres", "highres";
+ atmel,adc-use-res = "highres";
+ trigger@0 {
+ trigger-name = "continuous";
+ trigger-value = <0x6>;
+ };
+ };
+
+ ssc0: ssc@f0010000 {
+ status = "okay";
+ };
+ usb2: gadget@f803c000 {
+ status = "okay";
+ };
+ dbgu: serial@fffff200 {
+ status = "okay";
+ };
+ pinctrl@fffff400 {
+ w1_0 {
+ pinctrl_w1_0: w1_0-0 {
+ /* pull up on */
+ atmel,pins = <2 31 0x0 0x1>;
+ };
+ };
+
+ };
+ rtc@fffffeb0 {
+ status = "okay";
+ };
+ };
+ usb0: ohci@00600000 {
+ status = "okay";
+ num-ports = <3>;
+ };
+ usb1: ehci@00700000 {
+ status = "okay";
+ };
+ };
+ leds {
+ compatible = "gpio-leds";
+ arietta_led {
+ label = "arietta_led";
+ gpios = <&pioB 8 GPIO_ACTIVE_HIGH>; /* PB8 */
+ linux,default-trigger = "heartbeat";
+ };
+ };
+ onewire@0 {
+ compatible = "w1-gpio";
+ gpios = <&pioC 31 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_w1_0>;
+ };
+
+ sound {
+ compatible = "atmel,sam9x5-wm8731-audio";
+ atmel,model = "wm8731 @ AT91SAM9X5EK";
+ atmel,audio-routing =
+ "Headphone Jack", "RHPOUT",
+ "Headphone Jack", "LHPOUT",
+ "LLINEIN", "Line In Jack",
+ "RLINEIN", "Line In Jack";
+ atmel,ssc-controller = <&ssc0>;
+ atmel,audio-codec = <&wm8731>;
+ };
+
+};
--
2.8.2