// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * at91-sama7g54_curiosity.dts - Device Tree file for SAMA7G54 CURIOSITY board * * Copyright (C) 2024 Microchip Technology Inc. and its subsidiaries * * Author: Mihai Sain * */ /dts-v1/; #include "sama7g5-pinfunc.h" #include "sama7g5.dtsi" #include #include #include / { model = "Microchip SAMA7G54 Curiosity"; compatible = "microchip,sama7g54-curiosity", "microchip,sama7g5", "microchip,sama7"; aliases { serial0 = &uart3; i2c0 = &i2c10; }; chosen { bootargs = "console=ttyS0,115200 root=/dev/mmcblk1p2 rw rootwait"; stdout-path = "serial0:115200n8"; }; clocks { slow_xtal { clock-frequency = <32768>; }; main_xtal { clock-frequency = <24000000>; }; }; leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_led_gpio_default>; led-red { label = "red"; gpios = <&pioA PIN_PD13 GPIO_ACTIVE_HIGH>; default-state = "off"; }; led-green { label = "green"; gpios = <&pioA PIN_PD14 GPIO_ACTIVE_HIGH>; default-state = "off"; }; led-blue { label = "blue"; gpios = <&pioA PIN_PB15 GPIO_ACTIVE_HIGH>; default-state = "on"; }; }; memory { device_type = "memory"; reg = <0x60000000 0x10000000>; // 256 MiB DDR3L-1066 16-bit }; }; &ebi { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_nand_default>; status = "okay"; nand_controller: nand-controller { status = "okay"; nand@3 { reg = <0x3 0x0 0x800000>; atmel,rb = <0>; nand-bus-width = <8>; nand-ecc-mode = "hw"; nand-ecc-strength = <8>; nand-ecc-step-size = <512>; nand-on-flash-bbt; }; }; }; &flx3 { atmel,flexcom-mode = ; status = "okay"; uart3: serial@200 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx3_default>; status = "okay"; }; }; &flx10 { atmel,flexcom-mode = ; status = "okay"; i2c10: i2c@600 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_flx10_default>; i2c-analog-filter; i2c-digital-filter; i2c-digital-filter-width-ns = <35>; status = "okay"; adc@1f { compatible = "microchip,pac1934"; reg = <0x1f>; }; eeprom@51 { compatible = "atmel,24c02"; reg = <0x51>; pagesize = <16>; size = <256>; }; pmic@5b { compatible = "microchip,mcp16502"; reg = <0x5b>; }; }; }; &pioA { pinctrl_flx3_default: flx3-default { pinmux = , ; bias-pull-up; }; pinctrl_flx10_default: flx10-default { pinmux = , ; bias-pull-up; }; pinctrl_led_gpio_default: led-gpio-default { pinmux = , , ; bias-pull-up; }; pinctrl_nand_default: nand-default { pinmux = , , , , , , , , , , , , , ; bias-disable; slew-rate = <0>; }; pinctrl_qspi1_default: qspi1-default { pinmux = , , , , , ; bias-pull-up; slew-rate = <0>; }; pinctrl_sdmmc0_default: sdmmc0-default { pinmux = , , , , , , ; bias-pull-up; slew-rate = <0>; }; pinctrl_sdmmc1_default: sdmmc1-default { pinmux = , , , , , , ; bias-pull-up; slew-rate = <0>; }; }; &qspi1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_qspi1_default>; status = "okay"; flash@0 { compatible = "jedec,spi-nor"; reg = <0x0>; spi-max-frequency = <100000000>; spi-tx-bus-width = <4>; spi-rx-bus-width = <4>; m25p,fast-read; }; }; // M.2 slot for wireless card &sdmmc0 { bus-width = <4>; cd-gpios = <&pioA 31 GPIO_ACTIVE_LOW>; disable-wp; max-frequency = <50000000>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sdmmc0_default>; status = "okay"; }; // micro SD socket &sdmmc1 { bus-width = <4>; disable-wp; max-frequency = <50000000>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sdmmc1_default>; status = "okay"; };