board/acmesystems/arietta: new board
PATCH 1/1 board/acmesystems/arietta: new board
This patch adds support to the Arietta board from Acmesystems. This board comes in two memory sizes (128m and 256m) hence the reason for two different configs.
--- board/acmesystems/arietta/acme-arietta.dts | 182 +++++++++++++++++++++++++++++ board/acmesystems/arietta/linux-4.0.config | 99 ++++++++++++++++ board/acmesystems/arietta/readme.txt | 67 +++++++++++ configs/acme-arietta-128m_defconfig | 19 +++ configs/acme-arietta-256m_defconfig | 19 +++ 5 files changed, 386 insertions(+) create mode 100644 board/acmesystems/arietta/acme-arietta.dts create mode 100644 board/acmesystems/arietta/linux-4.0.config create mode 100644 board/acmesystems/arietta/readme.txt create mode 100644 configs/acme-arietta-128m_defconfig create mode 100644 configs/acme-arietta-256m_defconfig
board/acmesystems/arietta/acme-arietta.dts new file +182 -0
@@ -0,0 +1,182 @@ +/* + * acme-arietta.dts - Device Tree file for Arietta G25 + * Copyright (C) 2015 Sergio Tanzilli <[email protected]> + * + * Licensed under GPLv2 or later. + */ +/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 = "mem=128M console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait consoleblank=0"; + }; + + memory { + reg = <0x20000000 0x8000000>; + }; + + clocks { + #address-cells = <1>; + #size-cells = <1>; + ranges; + main_clock: clock at 0 { + compatible = "atmel,osc", "fixed-clock"; + clock-frequency = <12000000>; + }; + + main_xtal { + clock-frequency = <12000000>; + }; + }; + + ahb { + apb { + mmc0: mmc at f0008000 { + pinctrl-0 = < + &pinctrl_mmc0_slot0_clk_cmd_dat0 + &pinctrl_mmc0_slot0_dat1_3>; + status = "okay"; + slot at 0 { + reg = <0>; + bus-width = <4>; + }; + }; + i2c0: i2c at f8010000 { + status ="disabled"; + wm8731: wm8731 at 1b { + compatible = "wm8731"; + reg = <0x1b>; + }; + }; + i2c1: i2c at f8014000 { + status ="disabled"; + }; + usart0: serial at f801c000 { + pinctrl-0 = <&pinctrl_usart0>; + status ="disabled"; + }; + usart1: serial at f8020000 { + pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts &pinctrl_usart1_cts>; + status ="disabled"; + }; + usart2: serial at f8024000 { + pinctrl-0 = <&pinctrl_usart2>; + status ="disabled"; + }; + spi1: spi at f0004000 { + status = "disabled"; + cs-gpios = <&pioA 8 0>, <&pioA 0 0>, <&pioA 31 0>, <&pioA 30 0>; + device at 0 { + compatible = "spidev"; + spi-max-frequency = <50000000>; // 50 MHz + reg = <0>; + }; + device at 1 { + compatible = "spidev"; + spi-max-frequency = <50000000>; // 50 MHz + reg = <1>; + }; + device at 2 { + compatible = "spidev"; + spi-max-frequency = <50000000>; // 50 MHz + reg = <2>; + }; + device at 3 { + compatible = "spidev"; + spi-max-frequency = <50000000>; // 50 MHz + reg = <3>; + }; + }; + + adc0: adc at f804c000 { + status = "disabled"; + 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 at 0 { + trigger-name = "continuous"; + trigger-value = <0x6>; + }; + }; + + pinctrl at fffff400 { + pwm0 { + pinctrl_pwm0: pwm0-0 { + atmel,pins = + < AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE + AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE + AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE + AT91_PIOB 14 AT91_PERIPH_B AT91_PINCTRL_NONE >; + }; + }; + }; + pwm0: pwm at f8034000 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pwm0>; + status = "disabled"; + }; + + ssc0: ssc at f0010000 { + status = "disabled"; + }; + usb2: gadget at f803c000 { + status = "okay"; + }; + dbgu: serial at fffff200 { + status = "okay"; + }; + pinctrl at fffff400 { + }; + rtc at fffffeb0 { + status = "okay"; + }; + }; + usb0: ohci at 00600000 { + status = "okay"; + num-ports = <3>; + }; + usb1: ehci at 00700000 { + status = "okay"; + }; + }; + leds { + compatible = "gpio-leds"; + arietta_led { + label = "arietta_led"; + gpios = <&pioB 8 GPIO_ACTIVE_HIGH>; /* PB8 */ + linux,default-trigger = "heartbeat"; + }; + }; + 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>; + }; + +};
board/acmesystems/arietta/linux-4.0.config new file +99 -0
99 lines not on this page · raw message
board/acmesystems/arietta/readme.txt new file +67 -0
67 lines not on this page · raw message
configs/acme-arietta-128m_defconfig new file +19 -0
@@ -0,0 +1,19 @@ +BR2_arm=y +BR2_ARM_INSTRUCTIONS_THUMB=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TARGET_GENERIC_HOSTNAME="arietta" +BR2_TARGET_GENERIC_ISSUE="Welcome to Arietta by Acmesystems http://www.acmesystems.it!" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_TARGET_GENERIC_ROOT_PASSWD="acmesystems" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/acmesystems/arietta/linux-4.0.config" +BR2_LINUX_KERNEL_ZIMAGE=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_USE_CUSTOM_DTS=y +BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/arietta/acme-arietta.dts" +BR2_TARGET_AT91BOOTSTRAP3=y +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/tanzilli/at91bootstrap" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="acme" +BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="arietta-128m"
configs/acme-arietta-256m_defconfig new file +19 -0
@@ -0,0 +1,19 @@ +BR2_arm=y +BR2_ARM_INSTRUCTIONS_THUMB=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TARGET_GENERIC_HOSTNAME="arietta" +BR2_TARGET_GENERIC_ISSUE="Welcome to Arietta by Acmesystems http://www.acmesystems.it!" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_TARGET_GENERIC_ROOT_PASSWD="acmesystems" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/acmesystems/arietta/linux-4.0.config" +BR2_LINUX_KERNEL_ZIMAGE=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_USE_CUSTOM_DTS=y +BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/arietta/acme-arietta.dts" +BR2_TARGET_AT91BOOTSTRAP3=y +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/tanzilli/at91bootstrap" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="acme" +BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="arietta-256m"
Signature · 1 line
1.9.1
PATCH 1/1 board/acmesystems/arietta: new board
Quoted 5 lines · Angelo Compagnucci
This patch adds support to the Arietta board from Acmesystems. This board comes in two memory sizes (128m and 256m) hence the reason for two different configs.
Signed-off-by Angelo Compagnucci <[email protected]>
Hi Angelo.
A few nits:
Quoted 1 line
board/acmesystems/arietta/linux-4.0.config | 99 ++++++++++++++++
Any particular reason you need a custom config instead of being able to use at91_dt (like on the Aria sample i sent)?
I know the Arietta lacks an ethernet PHY, but the DTS should take care of that.
Quoted 1 line
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="acme"
Also the "acme" tag seems to be the "master" of customization (i.e. a moving target), could you switch to a commit hash? Otherwise it looks OK without having hardware to test and you can have my Acked-by if you address these concerns.
Thanks.
Regards.
PATCH 1/1 board/acmesystems/arietta: new board
Hi Gustavo,
2015-06-30 0:25 GMT+02:00 Gustavo Zacarias <[email protected]>:
Quoted 14 lines · Angelo Compagnucci
Quoted 6 lines
This patch adds support to the Arietta board from Acmesystems. This board comes in two memory sizes (128m and 256m) hence the reason for two different configs.
Signed-off-by Angelo Compagnucci <[email protected]>Hi Angelo.
A few nits:
Quoted 7 lines
Quoted 1 line
board/acmesystems/arietta/linux-4.0.config | 99 ++++++++++++++++Any particular reason you need a custom config instead of being able to use
at91_dt(like on the Aria sample i sent)?
I know the Arietta lacks an ethernet PHY, but the DTS should take care of that.
That configuration is really bloated, it compiles several unneeded modules and it's not really optimized for arietta.
Quoted 5 lines
Quoted 1 line
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="acme"
Also the "acme" tag seems to be the "master" of customization (i.e. a moving target), could you switch to a commit hash?
Right, changing this for the next revision!
Quoted 4 lines
Otherwise it looks OK without having hardware to test and you can have my Acked-by if you address these concerns.
Thanks.
Regards.
Thanks!
Signature · 1 line
Profile: http://it.linkedin.com/in/compagnucciangelo
PATCH 1/1 board/acmesystems/arietta: new board
Quoted 1 line · Angelo Compagnucci
Hi Gustavo,
Hi Angelo.
Quoted 7 lines
Quoted 4 lines
Any particular reason you need a custom config instead of being able to use
at91_dt(like on the Aria sample i sent)?
I know the Arietta lacks an ethernet PHY, but the DTS should take care of that.That configuration is really bloated, it compiles several unneeded modules and it's not really optimized for arietta.
We normally don't try to be too "smart ass" with the config files and try to use the ones shipped with the kernel if they work - after all you can't cover every use scenario out there and we just expect the boards to boot properly (which the default config will probably do). Also since the arietta has at least 128MB RAM and boots from SD (plenty of flash) the bloat scenario isn't severe (many kernel options are built as modules).
Regards.
PATCH 1/1 board/acmesystems/arietta: new board
In reply to Angelo CompagnucciDear Angelo Compagnucci,
Quoted 7 lines · Angelo Compagnucci
Quoted 5 lines
Quoted 1 line
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="acme"
Also the "acme" tag seems to be the "master" of customization (i.e. a moving target), could you switch to a commit hash?
Right, changing this for the next revision!
So, I will mark your patch as Changes Requested in patchwork, waiting for the new version.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com