// 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 * Kevin Carli * Mickael Gardet */ /dts-v1/; #include "sama5d2.dtsi" #include "sama5d2-pinfunc.h" #include #include #include #include / { model = "Overkiz Kizbox3"; compatible = "overkiz,kizbox3", "atmel,sama5d2", "atmel,sama5"; aliases { serial0 = &uart0; serial1 = &uart1; serial2 = &uart2; serial3 = &uart3; serial4 = &uart4; serial5 = &uart5; serial6 = &uart6; }; 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; }; pwm_leds { 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"; red { label = "pwm:red:user"; pwms = <&pwm0 0 10000000 0>; max-brightness = <255>; linux,default-trigger = "default-on"; status = "disabled"; }; green { label = "pwm:green:user"; pwms = <&pwm0 1 10000000 0>; max-brightness = <255>; linux,default-trigger = "default-on"; status = "disabled"; }; blue { label = "pwm:blue:user"; pwms = <&pwm0 2 10000000 0>; max-brightness = <255>; status = "disabled"; }; white { 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 = , , , , , , , , , , , , ; bias-disable; }; pinctrl_usart { pinctrl_usart_0: usart0-0 { pinmux = < PIN_PB26__URXD0>, ; bias-disable; }; pinctrl_usart_1: usart1-0 { pinmux = < PIN_PD2__URXD1>, ; bias-disable; }; pinctrl_usart_2: usart2-0 { pinmux = < PIN_PD4__URXD2>, ; bias-disable; }; pinctrl_usart_3: usart3-0 { pinmux = < PIN_PC12__URXD3>, ; bias-disable; }; pinctrl_usart_4: usart4-0 { pinmux = < PIN_PB3__URXD4>, ; bias-disable; }; pinctrl_flx0_default: flx0_usart_default { pinmux = , //TX ; //RX bias-disable; }; pinctrl_flx3_default: flx3_usart_default { pinmux = , //RX ; //TX bias-disable; }; }; pinctrl_flx4_default: flx4_i2c2_default { pinmux = , //DATA ; //CLK bias-disable; drive-open-drain = <1>; }; pinctrl_pwm0 { pinctrl_pwm0_pwm_h0: pwm0_pwm_h0 { pinmux = ; bias-disable; }; pinctrl_pwm0_pwm_h1: pwm0_pwmh1 { pinmux = ; bias-disable; }; pinctrl_pwm0_pwm_h2: pwm0_pwm_h2 { pinmux = ; bias-disable; }; pinctrl_pwm0_pwm_h3: pwm0_pwm_h3 { pinmux = ; bias-disable; }; }; pinctrl_adc { pinctrl_adc2: adc2 { pinmux = ; bias-disable; }; pinctrl_adc3: adc3 { pinmux = ; bias-disable; }; pinctrl_adc4: adc4 { pinmux = ; bias-disable; }; pinctrl_adc5: adc5 { pinmux = ; 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 = ; status = "disabled"; uart5: serial@200 { compatible = "atmel,at91sam9260-usart"; reg = <0x200 0x400>; interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>; dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(11))>, <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(12))>; dma-names = "tx", "rx"; clocks = <&pmc PMC_TYPE_PERIPHERAL 19>; clock-names = "usart"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx0_default>; atmel,fifo-size = <32>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; }; &flx3 { atmel,flexcom-mode = ; status = "disabled"; uart6: serial@200 { compatible = "atmel,at91sam9260-usart"; reg = <0x200 0x400>; interrupts = <22 IRQ_TYPE_LEVEL_HIGH 7>; dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(17))>, <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(18))>; dma-names = "tx", "rx"; clocks = <&pmc PMC_TYPE_PERIPHERAL 22>; clock-names = "usart"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx3_default>; atmel,fifo-size = <32>; atmel,use-dma-rx; atmel,use-dma-tx; status = "disabled"; }; }; &flx4 { atmel,flexcom-mode = ; status = "disabled"; i2c2: i2c@600 { compatible = "atmel,sama5d2-i2c"; reg = <0x600 0x200>; interrupts = <23 IRQ_TYPE_LEVEL_HIGH 7>; dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(19))>, <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(20))>; dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 23>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx4_default>; atmel,fifo-size = <16>; status = "disabled"; }; }; &pwm0 { status = "okay"; }; &shutdown_controller { atmel,shdwc-debouncer = <976>; atmel,wakeup-rtc-timer; input@0 { reg = <0>; atmel,wakeup-type = "low"; }; }; &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; }; };