162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Original all-in-one devicetree: 462306a36Sopenharmony_ci * Copyright (C) 2021-2022 - Wolfgang Grandegger <wg@aries-embedded.de> 562306a36Sopenharmony_ci * Rewritten to use includes: 662306a36Sopenharmony_ci * Copyright (C) 2022 - Conor Dooley <conor.dooley@microchip.com> 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci/dts-v1/; 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include "mpfs.dtsi" 1162306a36Sopenharmony_ci#include "mpfs-m100pfs-fabric.dtsi" 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/* Clock frequency (in Hz) of the rtcclk */ 1462306a36Sopenharmony_ci#define MTIMER_FREQ 1000000 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci/ { 1762306a36Sopenharmony_ci model = "Aries Embedded M100PFEVPS"; 1862306a36Sopenharmony_ci compatible = "aries,m100pfsevp", "microchip,mpfs"; 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci aliases { 2162306a36Sopenharmony_ci ethernet0 = &mac0; 2262306a36Sopenharmony_ci ethernet1 = &mac1; 2362306a36Sopenharmony_ci serial0 = &mmuart0; 2462306a36Sopenharmony_ci serial1 = &mmuart1; 2562306a36Sopenharmony_ci serial2 = &mmuart2; 2662306a36Sopenharmony_ci serial3 = &mmuart3; 2762306a36Sopenharmony_ci serial4 = &mmuart4; 2862306a36Sopenharmony_ci gpio0 = &gpio0; 2962306a36Sopenharmony_ci gpio1 = &gpio2; 3062306a36Sopenharmony_ci }; 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci chosen { 3362306a36Sopenharmony_ci stdout-path = "serial1:115200n8"; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci cpus { 3762306a36Sopenharmony_ci timebase-frequency = <MTIMER_FREQ>; 3862306a36Sopenharmony_ci }; 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci ddrc_cache_lo: memory@80000000 { 4162306a36Sopenharmony_ci device_type = "memory"; 4262306a36Sopenharmony_ci reg = <0x0 0x80000000 0x0 0x40000000>; 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci ddrc_cache_hi: memory@1040000000 { 4562306a36Sopenharmony_ci device_type = "memory"; 4662306a36Sopenharmony_ci reg = <0x10 0x40000000 0x0 0x40000000>; 4762306a36Sopenharmony_ci }; 4862306a36Sopenharmony_ci}; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci&can0 { 5162306a36Sopenharmony_ci status = "okay"; 5262306a36Sopenharmony_ci}; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci&i2c0 { 5562306a36Sopenharmony_ci status = "okay"; 5662306a36Sopenharmony_ci}; 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci&i2c1 { 5962306a36Sopenharmony_ci status = "okay"; 6062306a36Sopenharmony_ci}; 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci&gpio0 { 6362306a36Sopenharmony_ci interrupts = <13>, <14>, <15>, <16>, 6462306a36Sopenharmony_ci <17>, <18>, <19>, <20>, 6562306a36Sopenharmony_ci <21>, <22>, <23>, <24>, 6662306a36Sopenharmony_ci <25>, <26>; 6762306a36Sopenharmony_ci ngpios = <14>; 6862306a36Sopenharmony_ci status = "okay"; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci pmic-irq-hog { 7162306a36Sopenharmony_ci gpio-hog; 7262306a36Sopenharmony_ci gpios = <13 0>; 7362306a36Sopenharmony_ci input; 7462306a36Sopenharmony_ci }; 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci /* Set to low for eMMC, high for SD-card */ 7762306a36Sopenharmony_ci mmc-sel-hog { 7862306a36Sopenharmony_ci gpio-hog; 7962306a36Sopenharmony_ci gpios = <12 0>; 8062306a36Sopenharmony_ci output-high; 8162306a36Sopenharmony_ci }; 8262306a36Sopenharmony_ci}; 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci&gpio2 { 8562306a36Sopenharmony_ci interrupts = <13>, <14>, <15>, <16>, 8662306a36Sopenharmony_ci <17>, <18>, <19>, <20>, 8762306a36Sopenharmony_ci <21>, <22>, <23>, <24>, 8862306a36Sopenharmony_ci <25>, <26>, <27>, <28>, 8962306a36Sopenharmony_ci <29>, <30>, <31>, <32>, 9062306a36Sopenharmony_ci <33>, <34>, <35>, <36>, 9162306a36Sopenharmony_ci <37>, <38>, <39>, <40>, 9262306a36Sopenharmony_ci <41>, <42>, <43>, <44>; 9362306a36Sopenharmony_ci status = "okay"; 9462306a36Sopenharmony_ci}; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci&mac0 { 9762306a36Sopenharmony_ci status = "okay"; 9862306a36Sopenharmony_ci phy-mode = "gmii"; 9962306a36Sopenharmony_ci phy-handle = <&phy0>; 10062306a36Sopenharmony_ci phy0: ethernet-phy@0 { 10162306a36Sopenharmony_ci reg = <0>; 10262306a36Sopenharmony_ci }; 10362306a36Sopenharmony_ci}; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci&mac1 { 10662306a36Sopenharmony_ci status = "okay"; 10762306a36Sopenharmony_ci phy-mode = "gmii"; 10862306a36Sopenharmony_ci phy-handle = <&phy1>; 10962306a36Sopenharmony_ci phy1: ethernet-phy@0 { 11062306a36Sopenharmony_ci reg = <0>; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci}; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci&mbox { 11562306a36Sopenharmony_ci status = "okay"; 11662306a36Sopenharmony_ci}; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci&mmc { 11962306a36Sopenharmony_ci max-frequency = <50000000>; 12062306a36Sopenharmony_ci bus-width = <4>; 12162306a36Sopenharmony_ci cap-mmc-highspeed; 12262306a36Sopenharmony_ci cap-sd-highspeed; 12362306a36Sopenharmony_ci no-1-8-v; 12462306a36Sopenharmony_ci sd-uhs-sdr12; 12562306a36Sopenharmony_ci sd-uhs-sdr25; 12662306a36Sopenharmony_ci sd-uhs-sdr50; 12762306a36Sopenharmony_ci sd-uhs-sdr104; 12862306a36Sopenharmony_ci disable-wp; 12962306a36Sopenharmony_ci status = "okay"; 13062306a36Sopenharmony_ci}; 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci&mmuart1 { 13362306a36Sopenharmony_ci status = "okay"; 13462306a36Sopenharmony_ci}; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci&mmuart2 { 13762306a36Sopenharmony_ci status = "okay"; 13862306a36Sopenharmony_ci}; 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci&mmuart3 { 14162306a36Sopenharmony_ci status = "okay"; 14262306a36Sopenharmony_ci}; 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci&mmuart4 { 14562306a36Sopenharmony_ci status = "okay"; 14662306a36Sopenharmony_ci}; 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci&pcie { 14962306a36Sopenharmony_ci status = "okay"; 15062306a36Sopenharmony_ci}; 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci&qspi { 15362306a36Sopenharmony_ci status = "okay"; 15462306a36Sopenharmony_ci}; 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci&refclk { 15762306a36Sopenharmony_ci clock-frequency = <125000000>; 15862306a36Sopenharmony_ci}; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci&rtc { 16162306a36Sopenharmony_ci status = "okay"; 16262306a36Sopenharmony_ci}; 16362306a36Sopenharmony_ci 16462306a36Sopenharmony_ci&spi0 { 16562306a36Sopenharmony_ci status = "okay"; 16662306a36Sopenharmony_ci}; 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ci&spi1 { 16962306a36Sopenharmony_ci status = "okay"; 17062306a36Sopenharmony_ci}; 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci&syscontroller { 17362306a36Sopenharmony_ci status = "okay"; 17462306a36Sopenharmony_ci}; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci&usb { 17762306a36Sopenharmony_ci status = "okay"; 17862306a36Sopenharmony_ci dr_mode = "host"; 17962306a36Sopenharmony_ci}; 180