// SPDX-License-Identifier: GPL-2.0 /* * at91-kizbox3.dts - Device Tree Include file for Overkiz Kizbox 3 * family SoC boards * * Copyright (C) 2018 Overkiz SAS * * Authors: Dorian Rocipon <d.rocipon@overkiz.com> * Kevin Carli <k.carli@overkiz.com> * Mickael Gardet <m.gardet@overkiz.com> */ /dts-v1/; #include "sama5d2.dtsi" #include "sama5d2-pinfunc.h" #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/mfd/atmel-flexcom.h> #include <dt-bindings/pinctrl/at91.h> #include <dt-bindings/pwm/pwm.h> / { model = "Overkiz Kizbox3"; compatible = "overkiz,kizbox3", "atmel,sama5d2", "atmel,sama5"; aliases { serial0 = &uart0; serial1 = &uart1; serial2 = &uart2; serial3 = &uart3; serial4 = &uart4; serial5 = &uart5; serial6 = &uart8; }; chosen { bootargs = "ubi.mtd=ubi"; stdout-path = "serial1:115200n8"; }; clocks { slow_xtal { clock-frequency = <32768>; }; main_xtal { clock-frequency = <12000000>; }; }; vdd_adc_vddana: supply_3v3_ana { compatible = "regulator-fixed"; regulator-name = "adc-vddana"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; vdd_adc_vref: supply_3v3_ref { compatible = "regulator-fixed"; regulator-name = "adc-vref"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; led-controller-1 { compatible = "pwm-leds"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm0_pwm_h0 &pinctrl_pwm0_pwm_h1 &pinctrl_pwm0_pwm_h2 &pinctrl_pwm0_pwm_h3>; status = "disabled"; led-1 { label = "pwm:red:user"; pwms = <&pwm0 0 10000000 0>; max-brightness = <255>; linux,default-trigger = "default-on"; status = "disabled"; }; led-2 { label = "pwm:green:user"; pwms = <&pwm0 1 10000000 0>; max-brightness = <255>; linux,default-trigger = "default-on"; status = "disabled"; }; led-3 { label = "pwm:blue:user"; pwms = <&pwm0 2 10000000 0>; max-brightness = <255>; status = "disabled"; }; led-4 { label = "pwm:white:user"; pwms = <&pwm0 3 10000000 0>; max-brightness = <255>; status = "disabled"; }; }; }; &ebi { status = "okay"; }; &nand_controller { status = "okay"; nand@3 { pinctrl-0 = <&pinctrl_ebi_nand_addr>; pinctrl-names = "default"; reg = <0x3 0x0 0x800000>; atmel,rb = <0>; nand-bus-width = <8>; nand-ecc-mode = "hw"; nand-ecc-strength = <4>; nand-ecc-step-size = <512>; nand-on-flash-bbt; label = "atmel_nand"; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; bootstrap@0 { label = "bootstrap"; reg = <0x0 0x20000>; }; u-boot@20000 { label = "u-boot"; reg = <0x20000 0x140000>; }; u-boot-factory@160000 { label = "u-boot-factory"; reg = <0x160000 0x140000>; }; ubi@2A0000 { label = "ubi"; reg = <0x2A0000 0x7D60000>; }; }; }; }; &rtc { status = "okay"; }; &pioA { pinctrl_ebi_nand_addr: ebi-addr-1 { pinmux = <PIN_PA0__D0>, <PIN_PA1__D1>, <PIN_PA2__D2>, <PIN_PA3__D3>, <PIN_PA4__D4>, <PIN_PA5__D5>, <PIN_PA6__D6>, <PIN_PA7__D7>, <PIN_PA8__NWE_NANDWE>, <PIN_PA9__NCS3>, <PIN_PA10__A21_NANDALE>, <PIN_PA11__A22_NANDCLE>, <PIN_PA21__NANDRDY>; bias-disable; }; pinctrl_usart { pinctrl_usart_0: usart0-0 { pinmux = < PIN_PB26__URXD0>, <PIN_PB27__UTXD0>; bias-disable; }; pinctrl_usart_1: usart1-0 { pinmux = < PIN_PD2__URXD1>, <PIN_PD3__UTXD1>; bias-disable; }; pinctrl_usart_2: usart2-0 { pinmux = < PIN_PD4__URXD2>, <PIN_PD5__UTXD2>; bias-disable; }; pinctrl_usart_3: usart3-0 { pinmux = < PIN_PC12__URXD3>, <PIN_PC13__UTXD3>; bias-disable; }; pinctrl_usart_4: usart4-0 { pinmux = < PIN_PB3__URXD4>, <PIN_PB4__UTXD4>; bias-disable; }; pinctrl_flx0_default: flx0_usart_default { pinmux = <PIN_PB28__FLEXCOM0_IO0>, //TX <PIN_PB29__FLEXCOM0_IO1>; //RX bias-disable; }; pinctrl_flx3_default: flx3_usart_default { pinmux = <PIN_PB22__FLEXCOM3_IO1>, //RX <PIN_PB23__FLEXCOM3_IO0>; //TX bias-disable; }; }; pinctrl_flx4_default: flx4_i2c6_default { pinmux = <PIN_PD12__FLEXCOM4_IO0>, //DATA <PIN_PD13__FLEXCOM4_IO1>; //CLK bias-disable; drive-open-drain; }; pinctrl_pwm0 { pinctrl_pwm0_pwm_h0: pwm0_pwm_h0 { pinmux = <PIN_PA30__PWMH0>; bias-disable; }; pinctrl_pwm0_pwm_h1: pwm0_pwmh1 { pinmux = <PIN_PB0__PWMH1>; bias-disable; }; pinctrl_pwm0_pwm_h2: pwm0_pwm_h2 { pinmux = <PIN_PB5__PWMH2>; bias-disable; }; pinctrl_pwm0_pwm_h3: pwm0_pwm_h3 { pinmux = <PIN_PB7__PWMH3>; bias-disable; }; }; pinctrl_adc { pinctrl_adc2: adc2 { pinmux = <PIN_PD21__GPIO>; bias-disable; }; pinctrl_adc3: adc3 { pinmux = <PIN_PD22__GPIO>; bias-disable; }; pinctrl_adc4: adc4 { pinmux = <PIN_PD23__GPIO>; bias-disable; }; pinctrl_adc5: adc5 { pinmux = <PIN_PD24__GPIO>; bias-disable; }; }; }; &uart0 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usart_0>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; /* debug uart */ &uart1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usart_1>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; &uart2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usart_2>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; &uart3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usart_3>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; &uart4 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usart_4>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; &flx0 { atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; status = "disabled"; uart5: serial@200 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx0_default>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; }; &flx3 { atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; status = "disabled"; uart8: serial@200 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx3_default>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; }; &flx4 { atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; status = "disabled"; i2c6: i2c@600 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx4_default>; status = "disabled"; }; }; &pwm0 { status = "okay"; }; &shutdown_controller { debounce-delay-us = <976>; atmel,wakeup-rtc-timer; input@0 { reg = <0>; }; }; &watchdog { status = "okay"; }; &adc { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_adc2 &pinctrl_adc3 &pinctrl_adc4 &pinctrl_adc5>; vddana-supply = <&vdd_adc_vddana>; vref-supply = <&vdd_adc_vref>; status = "disabled"; }; &securam { export; /* export overkiz u-boot mode/version and factory */ uboot@1400 { reg = <0x1400 0x20>; export; }; };