162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Device Tree Source for AM625 SoC Family MCU Domain peripherals 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2020-2022 Texas Instruments Incorporated - https://www.ti.com/ 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci&cbass_mcu { 962306a36Sopenharmony_ci mcu_pmx0: pinctrl@4084000 { 1062306a36Sopenharmony_ci compatible = "pinctrl-single"; 1162306a36Sopenharmony_ci reg = <0x00 0x04084000 0x00 0x88>; 1262306a36Sopenharmony_ci #pinctrl-cells = <1>; 1362306a36Sopenharmony_ci pinctrl-single,register-width = <32>; 1462306a36Sopenharmony_ci pinctrl-single,function-mask = <0xffffffff>; 1562306a36Sopenharmony_ci status = "disabled"; 1662306a36Sopenharmony_ci }; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci /* 1962306a36Sopenharmony_ci * The MCU domain timer interrupts are routed only to the ESM module, 2062306a36Sopenharmony_ci * and not currently available for Linux. The MCU domain timers are 2162306a36Sopenharmony_ci * of limited use without interrupts, and likely reserved by the ESM. 2262306a36Sopenharmony_ci */ 2362306a36Sopenharmony_ci mcu_timer0: timer@4800000 { 2462306a36Sopenharmony_ci compatible = "ti,am654-timer"; 2562306a36Sopenharmony_ci reg = <0x00 0x4800000 0x00 0x400>; 2662306a36Sopenharmony_ci clocks = <&k3_clks 35 2>; 2762306a36Sopenharmony_ci clock-names = "fck"; 2862306a36Sopenharmony_ci power-domains = <&k3_pds 35 TI_SCI_PD_EXCLUSIVE>; 2962306a36Sopenharmony_ci ti,timer-pwm; 3062306a36Sopenharmony_ci status = "reserved"; 3162306a36Sopenharmony_ci }; 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci mcu_timer1: timer@4810000 { 3462306a36Sopenharmony_ci compatible = "ti,am654-timer"; 3562306a36Sopenharmony_ci reg = <0x00 0x4810000 0x00 0x400>; 3662306a36Sopenharmony_ci clocks = <&k3_clks 48 2>; 3762306a36Sopenharmony_ci clock-names = "fck"; 3862306a36Sopenharmony_ci power-domains = <&k3_pds 48 TI_SCI_PD_EXCLUSIVE>; 3962306a36Sopenharmony_ci ti,timer-pwm; 4062306a36Sopenharmony_ci status = "reserved"; 4162306a36Sopenharmony_ci }; 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci mcu_timer2: timer@4820000 { 4462306a36Sopenharmony_ci compatible = "ti,am654-timer"; 4562306a36Sopenharmony_ci reg = <0x00 0x4820000 0x00 0x400>; 4662306a36Sopenharmony_ci clocks = <&k3_clks 49 2>; 4762306a36Sopenharmony_ci clock-names = "fck"; 4862306a36Sopenharmony_ci power-domains = <&k3_pds 49 TI_SCI_PD_EXCLUSIVE>; 4962306a36Sopenharmony_ci ti,timer-pwm; 5062306a36Sopenharmony_ci status = "reserved"; 5162306a36Sopenharmony_ci }; 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ci mcu_timer3: timer@4830000 { 5462306a36Sopenharmony_ci compatible = "ti,am654-timer"; 5562306a36Sopenharmony_ci reg = <0x00 0x4830000 0x00 0x400>; 5662306a36Sopenharmony_ci clocks = <&k3_clks 50 2>; 5762306a36Sopenharmony_ci clock-names = "fck"; 5862306a36Sopenharmony_ci power-domains = <&k3_pds 50 TI_SCI_PD_EXCLUSIVE>; 5962306a36Sopenharmony_ci ti,timer-pwm; 6062306a36Sopenharmony_ci status = "reserved"; 6162306a36Sopenharmony_ci }; 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci mcu_uart0: serial@4a00000 { 6462306a36Sopenharmony_ci compatible = "ti,am64-uart", "ti,am654-uart"; 6562306a36Sopenharmony_ci reg = <0x00 0x04a00000 0x00 0x100>; 6662306a36Sopenharmony_ci interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; 6762306a36Sopenharmony_ci power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>; 6862306a36Sopenharmony_ci clocks = <&k3_clks 149 0>; 6962306a36Sopenharmony_ci clock-names = "fclk"; 7062306a36Sopenharmony_ci status = "disabled"; 7162306a36Sopenharmony_ci }; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci mcu_i2c0: i2c@4900000 { 7462306a36Sopenharmony_ci compatible = "ti,am64-i2c", "ti,omap4-i2c"; 7562306a36Sopenharmony_ci reg = <0x00 0x04900000 0x00 0x100>; 7662306a36Sopenharmony_ci interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 7762306a36Sopenharmony_ci #address-cells = <1>; 7862306a36Sopenharmony_ci #size-cells = <0>; 7962306a36Sopenharmony_ci power-domains = <&k3_pds 106 TI_SCI_PD_EXCLUSIVE>; 8062306a36Sopenharmony_ci clocks = <&k3_clks 106 2>; 8162306a36Sopenharmony_ci clock-names = "fck"; 8262306a36Sopenharmony_ci status = "disabled"; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci mcu_spi0: spi@4b00000 { 8662306a36Sopenharmony_ci compatible = "ti,am654-mcspi", "ti,omap4-mcspi"; 8762306a36Sopenharmony_ci reg = <0x00 0x04b00000 0x00 0x400>; 8862306a36Sopenharmony_ci interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; 8962306a36Sopenharmony_ci #address-cells = <1>; 9062306a36Sopenharmony_ci #size-cells = <0>; 9162306a36Sopenharmony_ci power-domains = <&k3_pds 147 TI_SCI_PD_EXCLUSIVE>; 9262306a36Sopenharmony_ci clocks = <&k3_clks 147 0>; 9362306a36Sopenharmony_ci status = "disabled"; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci mcu_spi1: spi@4b10000 { 9762306a36Sopenharmony_ci compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 9862306a36Sopenharmony_ci reg = <0x00 0x04b10000 0x00 0x400>; 9962306a36Sopenharmony_ci interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 10062306a36Sopenharmony_ci #address-cells = <1>; 10162306a36Sopenharmony_ci #size-cells = <0>; 10262306a36Sopenharmony_ci power-domains = <&k3_pds 148 TI_SCI_PD_EXCLUSIVE>; 10362306a36Sopenharmony_ci clocks = <&k3_clks 148 0>; 10462306a36Sopenharmony_ci status = "disabled"; 10562306a36Sopenharmony_ci }; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci mcu_gpio_intr: interrupt-controller@4210000 { 10862306a36Sopenharmony_ci compatible = "ti,sci-intr"; 10962306a36Sopenharmony_ci reg = <0x00 0x04210000 0x00 0x200>; 11062306a36Sopenharmony_ci ti,intr-trigger-type = <1>; 11162306a36Sopenharmony_ci interrupt-controller; 11262306a36Sopenharmony_ci interrupt-parent = <&gic500>; 11362306a36Sopenharmony_ci #interrupt-cells = <1>; 11462306a36Sopenharmony_ci ti,sci = <&dmsc>; 11562306a36Sopenharmony_ci ti,sci-dev-id = <5>; 11662306a36Sopenharmony_ci ti,interrupt-ranges = <0 104 4>; 11762306a36Sopenharmony_ci }; 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci mcu_gpio0: gpio@4201000 { 12062306a36Sopenharmony_ci compatible = "ti,am64-gpio", "ti,keystone-gpio"; 12162306a36Sopenharmony_ci reg = <0x00 0x04201000 0x00 0x100>; 12262306a36Sopenharmony_ci gpio-controller; 12362306a36Sopenharmony_ci #gpio-cells = <2>; 12462306a36Sopenharmony_ci interrupt-parent = <&mcu_gpio_intr>; 12562306a36Sopenharmony_ci interrupts = <30>, <31>; 12662306a36Sopenharmony_ci interrupt-controller; 12762306a36Sopenharmony_ci #interrupt-cells = <2>; 12862306a36Sopenharmony_ci ti,ngpio = <24>; 12962306a36Sopenharmony_ci ti,davinci-gpio-unbanked = <0>; 13062306a36Sopenharmony_ci power-domains = <&k3_pds 79 TI_SCI_PD_EXCLUSIVE>; 13162306a36Sopenharmony_ci clocks = <&k3_clks 79 0>; 13262306a36Sopenharmony_ci clock-names = "gpio"; 13362306a36Sopenharmony_ci status = "disabled"; 13462306a36Sopenharmony_ci }; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci mcu_rti0: watchdog@4880000 { 13762306a36Sopenharmony_ci compatible = "ti,j7-rti-wdt"; 13862306a36Sopenharmony_ci reg = <0x00 0x04880000 0x00 0x100>; 13962306a36Sopenharmony_ci clocks = <&k3_clks 131 0>; 14062306a36Sopenharmony_ci power-domains = <&k3_pds 131 TI_SCI_PD_EXCLUSIVE>; 14162306a36Sopenharmony_ci assigned-clocks = <&k3_clks 131 0>; 14262306a36Sopenharmony_ci assigned-clock-parents = <&k3_clks 131 2>; 14362306a36Sopenharmony_ci /* Tightly coupled to M4F */ 14462306a36Sopenharmony_ci status = "reserved"; 14562306a36Sopenharmony_ci }; 14662306a36Sopenharmony_ci 14762306a36Sopenharmony_ci mcu_mcan0: can@4e08000 { 14862306a36Sopenharmony_ci compatible = "bosch,m_can"; 14962306a36Sopenharmony_ci reg = <0x00 0x4e08000 0x00 0x200>, 15062306a36Sopenharmony_ci <0x00 0x4e00000 0x00 0x8000>; 15162306a36Sopenharmony_ci reg-names = "m_can", "message_ram"; 15262306a36Sopenharmony_ci power-domains = <&k3_pds 188 TI_SCI_PD_EXCLUSIVE>; 15362306a36Sopenharmony_ci clocks = <&k3_clks 188 6>, <&k3_clks 188 1>; 15462306a36Sopenharmony_ci clock-names = "hclk", "cclk"; 15562306a36Sopenharmony_ci bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>; 15662306a36Sopenharmony_ci status = "disabled"; 15762306a36Sopenharmony_ci }; 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_ci mcu_mcan1: can@4e18000 { 16062306a36Sopenharmony_ci compatible = "bosch,m_can"; 16162306a36Sopenharmony_ci reg = <0x00 0x4e18000 0x00 0x200>, 16262306a36Sopenharmony_ci <0x00 0x4e10000 0x00 0x8000>; 16362306a36Sopenharmony_ci reg-names = "m_can", "message_ram"; 16462306a36Sopenharmony_ci power-domains = <&k3_pds 189 TI_SCI_PD_EXCLUSIVE>; 16562306a36Sopenharmony_ci clocks = <&k3_clks 189 6>, <&k3_clks 189 1>; 16662306a36Sopenharmony_ci clock-names = "hclk", "cclk"; 16762306a36Sopenharmony_ci bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>; 16862306a36Sopenharmony_ci status = "disabled"; 16962306a36Sopenharmony_ci }; 17062306a36Sopenharmony_ci}; 171