162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2016 Marvell Technology Group Ltd. 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Device Tree file for Marvell Armada CP11x. 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/mvebu-icu.h> 962306a36Sopenharmony_ci#include <dt-bindings/thermal/thermal.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#include "armada-common.dtsi" 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#define CP11X_PCIEx_CONF_BASE(iface) (CP11X_PCIEx_MEM_BASE(iface) + CP11X_PCIEx_MEM_SIZE(iface)) 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci/ { 1662306a36Sopenharmony_ci /* 1762306a36Sopenharmony_ci * The contents of the node are defined below, in order to 1862306a36Sopenharmony_ci * save one indentation level 1962306a36Sopenharmony_ci */ 2062306a36Sopenharmony_ci CP11X_NAME: CP11X_NAME { }; 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci /* 2362306a36Sopenharmony_ci * CPs only have one sensor in the thermal IC. 2462306a36Sopenharmony_ci * 2562306a36Sopenharmony_ci * The cooling maps are empty as there are no cooling devices. 2662306a36Sopenharmony_ci */ 2762306a36Sopenharmony_ci thermal-zones { 2862306a36Sopenharmony_ci CP11X_LABEL(thermal_ic): CP11X_NODE_NAME(ic-thermal) { 2962306a36Sopenharmony_ci polling-delay-passive = <0>; /* Interrupt driven */ 3062306a36Sopenharmony_ci polling-delay = <0>; /* Interrupt driven */ 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci thermal-sensors = <&CP11X_LABEL(thermal) 0>; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci trips { 3562306a36Sopenharmony_ci CP11X_LABEL(crit): crit { 3662306a36Sopenharmony_ci temperature = <100000>; /* mC degrees */ 3762306a36Sopenharmony_ci hysteresis = <2000>; /* mC degrees */ 3862306a36Sopenharmony_ci type = "critical"; 3962306a36Sopenharmony_ci }; 4062306a36Sopenharmony_ci }; 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci cooling-maps { }; 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci }; 4562306a36Sopenharmony_ci}; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci&CP11X_NAME { 4862306a36Sopenharmony_ci #address-cells = <2>; 4962306a36Sopenharmony_ci #size-cells = <2>; 5062306a36Sopenharmony_ci compatible = "simple-bus"; 5162306a36Sopenharmony_ci interrupt-parent = <&CP11X_LABEL(icu_nsr)>; 5262306a36Sopenharmony_ci ranges; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci config-space@CP11X_BASE { 5562306a36Sopenharmony_ci #address-cells = <1>; 5662306a36Sopenharmony_ci #size-cells = <1>; 5762306a36Sopenharmony_ci compatible = "simple-bus"; 5862306a36Sopenharmony_ci ranges = <0x0 0x0 ADDRESSIFY(CP11X_BASE) 0x2000000>; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci CP11X_LABEL(ethernet): ethernet@0 { 6162306a36Sopenharmony_ci #address-cells = <1>; 6262306a36Sopenharmony_ci #size-cells = <0>; 6362306a36Sopenharmony_ci compatible = "marvell,armada-7k-pp22"; 6462306a36Sopenharmony_ci reg = <0x0 0x100000>, <0x129000 0xb000>, <0x220000 0x800>; 6562306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 3>, <&CP11X_LABEL(clk) 1 9>, 6662306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 5>, <&CP11X_LABEL(clk) 1 6>, 6762306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 18>; 6862306a36Sopenharmony_ci clock-names = "pp_clk", "gop_clk", 6962306a36Sopenharmony_ci "mg_clk", "mg_core_clk", "axi_clk"; 7062306a36Sopenharmony_ci marvell,system-controller = <&CP11X_LABEL(syscon0)>; 7162306a36Sopenharmony_ci status = "disabled"; 7262306a36Sopenharmony_ci dma-coherent; 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci CP11X_LABEL(eth0): ethernet-port@0 { 7562306a36Sopenharmony_ci interrupts = <39 IRQ_TYPE_LEVEL_HIGH>, 7662306a36Sopenharmony_ci <43 IRQ_TYPE_LEVEL_HIGH>, 7762306a36Sopenharmony_ci <47 IRQ_TYPE_LEVEL_HIGH>, 7862306a36Sopenharmony_ci <51 IRQ_TYPE_LEVEL_HIGH>, 7962306a36Sopenharmony_ci <55 IRQ_TYPE_LEVEL_HIGH>, 8062306a36Sopenharmony_ci <59 IRQ_TYPE_LEVEL_HIGH>, 8162306a36Sopenharmony_ci <63 IRQ_TYPE_LEVEL_HIGH>, 8262306a36Sopenharmony_ci <67 IRQ_TYPE_LEVEL_HIGH>, 8362306a36Sopenharmony_ci <71 IRQ_TYPE_LEVEL_HIGH>, 8462306a36Sopenharmony_ci <129 IRQ_TYPE_LEVEL_HIGH>; 8562306a36Sopenharmony_ci interrupt-names = "hif0", "hif1", "hif2", 8662306a36Sopenharmony_ci "hif3", "hif4", "hif5", "hif6", "hif7", 8762306a36Sopenharmony_ci "hif8", "link"; 8862306a36Sopenharmony_ci reg = <0>; 8962306a36Sopenharmony_ci port-id = <0>; /* For backward compatibility. */ 9062306a36Sopenharmony_ci gop-port-id = <0>; 9162306a36Sopenharmony_ci status = "disabled"; 9262306a36Sopenharmony_ci }; 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci CP11X_LABEL(eth1): ethernet-port@1 { 9562306a36Sopenharmony_ci interrupts = <40 IRQ_TYPE_LEVEL_HIGH>, 9662306a36Sopenharmony_ci <44 IRQ_TYPE_LEVEL_HIGH>, 9762306a36Sopenharmony_ci <48 IRQ_TYPE_LEVEL_HIGH>, 9862306a36Sopenharmony_ci <52 IRQ_TYPE_LEVEL_HIGH>, 9962306a36Sopenharmony_ci <56 IRQ_TYPE_LEVEL_HIGH>, 10062306a36Sopenharmony_ci <60 IRQ_TYPE_LEVEL_HIGH>, 10162306a36Sopenharmony_ci <64 IRQ_TYPE_LEVEL_HIGH>, 10262306a36Sopenharmony_ci <68 IRQ_TYPE_LEVEL_HIGH>, 10362306a36Sopenharmony_ci <72 IRQ_TYPE_LEVEL_HIGH>, 10462306a36Sopenharmony_ci <128 IRQ_TYPE_LEVEL_HIGH>; 10562306a36Sopenharmony_ci interrupt-names = "hif0", "hif1", "hif2", 10662306a36Sopenharmony_ci "hif3", "hif4", "hif5", "hif6", "hif7", 10762306a36Sopenharmony_ci "hif8", "link"; 10862306a36Sopenharmony_ci reg = <1>; 10962306a36Sopenharmony_ci port-id = <1>; /* For backward compatibility. */ 11062306a36Sopenharmony_ci gop-port-id = <2>; 11162306a36Sopenharmony_ci status = "disabled"; 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci CP11X_LABEL(eth2): ethernet-port@2 { 11562306a36Sopenharmony_ci interrupts = <41 IRQ_TYPE_LEVEL_HIGH>, 11662306a36Sopenharmony_ci <45 IRQ_TYPE_LEVEL_HIGH>, 11762306a36Sopenharmony_ci <49 IRQ_TYPE_LEVEL_HIGH>, 11862306a36Sopenharmony_ci <53 IRQ_TYPE_LEVEL_HIGH>, 11962306a36Sopenharmony_ci <57 IRQ_TYPE_LEVEL_HIGH>, 12062306a36Sopenharmony_ci <61 IRQ_TYPE_LEVEL_HIGH>, 12162306a36Sopenharmony_ci <65 IRQ_TYPE_LEVEL_HIGH>, 12262306a36Sopenharmony_ci <69 IRQ_TYPE_LEVEL_HIGH>, 12362306a36Sopenharmony_ci <73 IRQ_TYPE_LEVEL_HIGH>, 12462306a36Sopenharmony_ci <127 IRQ_TYPE_LEVEL_HIGH>; 12562306a36Sopenharmony_ci interrupt-names = "hif0", "hif1", "hif2", 12662306a36Sopenharmony_ci "hif3", "hif4", "hif5", "hif6", "hif7", 12762306a36Sopenharmony_ci "hif8", "link"; 12862306a36Sopenharmony_ci reg = <2>; 12962306a36Sopenharmony_ci port-id = <2>; /* For backward compatibility. */ 13062306a36Sopenharmony_ci gop-port-id = <3>; 13162306a36Sopenharmony_ci status = "disabled"; 13262306a36Sopenharmony_ci }; 13362306a36Sopenharmony_ci }; 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci CP11X_LABEL(comphy): phy@120000 { 13662306a36Sopenharmony_ci compatible = "marvell,comphy-cp110"; 13762306a36Sopenharmony_ci reg = <0x120000 0x6000>; 13862306a36Sopenharmony_ci marvell,system-controller = <&CP11X_LABEL(syscon0)>; 13962306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 5>, <&CP11X_LABEL(clk) 1 6>, 14062306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 18>; 14162306a36Sopenharmony_ci clock-names = "mg_clk", "mg_core_clk", "axi_clk"; 14262306a36Sopenharmony_ci #address-cells = <1>; 14362306a36Sopenharmony_ci #size-cells = <0>; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci CP11X_LABEL(comphy0): phy@0 { 14662306a36Sopenharmony_ci reg = <0>; 14762306a36Sopenharmony_ci #phy-cells = <1>; 14862306a36Sopenharmony_ci }; 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci CP11X_LABEL(comphy1): phy@1 { 15162306a36Sopenharmony_ci reg = <1>; 15262306a36Sopenharmony_ci #phy-cells = <1>; 15362306a36Sopenharmony_ci }; 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ci CP11X_LABEL(comphy2): phy@2 { 15662306a36Sopenharmony_ci reg = <2>; 15762306a36Sopenharmony_ci #phy-cells = <1>; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci CP11X_LABEL(comphy3): phy@3 { 16162306a36Sopenharmony_ci reg = <3>; 16262306a36Sopenharmony_ci #phy-cells = <1>; 16362306a36Sopenharmony_ci }; 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci CP11X_LABEL(comphy4): phy@4 { 16662306a36Sopenharmony_ci reg = <4>; 16762306a36Sopenharmony_ci #phy-cells = <1>; 16862306a36Sopenharmony_ci }; 16962306a36Sopenharmony_ci 17062306a36Sopenharmony_ci CP11X_LABEL(comphy5): phy@5 { 17162306a36Sopenharmony_ci reg = <5>; 17262306a36Sopenharmony_ci #phy-cells = <1>; 17362306a36Sopenharmony_ci }; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci CP11X_LABEL(mdio): mdio@12a200 { 17762306a36Sopenharmony_ci #address-cells = <1>; 17862306a36Sopenharmony_ci #size-cells = <0>; 17962306a36Sopenharmony_ci compatible = "marvell,orion-mdio"; 18062306a36Sopenharmony_ci reg = <0x12a200 0x10>; 18162306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 9>, <&CP11X_LABEL(clk) 1 5>, 18262306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 6>, <&CP11X_LABEL(clk) 1 18>; 18362306a36Sopenharmony_ci status = "disabled"; 18462306a36Sopenharmony_ci }; 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci CP11X_LABEL(xmdio): mdio@12a600 { 18762306a36Sopenharmony_ci #address-cells = <1>; 18862306a36Sopenharmony_ci #size-cells = <0>; 18962306a36Sopenharmony_ci compatible = "marvell,xmdio"; 19062306a36Sopenharmony_ci reg = <0x12a600 0x10>; 19162306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 5>, 19262306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 6>, <&CP11X_LABEL(clk) 1 18>; 19362306a36Sopenharmony_ci status = "disabled"; 19462306a36Sopenharmony_ci }; 19562306a36Sopenharmony_ci 19662306a36Sopenharmony_ci CP11X_LABEL(icu): interrupt-controller@1e0000 { 19762306a36Sopenharmony_ci compatible = "marvell,cp110-icu"; 19862306a36Sopenharmony_ci reg = <0x1e0000 0x440>; 19962306a36Sopenharmony_ci #address-cells = <1>; 20062306a36Sopenharmony_ci #size-cells = <1>; 20162306a36Sopenharmony_ci 20262306a36Sopenharmony_ci CP11X_LABEL(icu_nsr): interrupt-controller@10 { 20362306a36Sopenharmony_ci compatible = "marvell,cp110-icu-nsr"; 20462306a36Sopenharmony_ci reg = <0x10 0x20>; 20562306a36Sopenharmony_ci #interrupt-cells = <2>; 20662306a36Sopenharmony_ci interrupt-controller; 20762306a36Sopenharmony_ci msi-parent = <&gicp>; 20862306a36Sopenharmony_ci }; 20962306a36Sopenharmony_ci 21062306a36Sopenharmony_ci CP11X_LABEL(icu_sei): interrupt-controller@50 { 21162306a36Sopenharmony_ci compatible = "marvell,cp110-icu-sei"; 21262306a36Sopenharmony_ci reg = <0x50 0x10>; 21362306a36Sopenharmony_ci #interrupt-cells = <2>; 21462306a36Sopenharmony_ci interrupt-controller; 21562306a36Sopenharmony_ci msi-parent = <&sei>; 21662306a36Sopenharmony_ci }; 21762306a36Sopenharmony_ci }; 21862306a36Sopenharmony_ci 21962306a36Sopenharmony_ci CP11X_LABEL(rtc): rtc@284000 { 22062306a36Sopenharmony_ci compatible = "marvell,armada-8k-rtc"; 22162306a36Sopenharmony_ci reg = <0x284000 0x20>, <0x284080 0x24>; 22262306a36Sopenharmony_ci reg-names = "rtc", "rtc-soc"; 22362306a36Sopenharmony_ci interrupts = <77 IRQ_TYPE_LEVEL_HIGH>; 22462306a36Sopenharmony_ci }; 22562306a36Sopenharmony_ci 22662306a36Sopenharmony_ci CP11X_LABEL(syscon0): system-controller@440000 { 22762306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 22862306a36Sopenharmony_ci reg = <0x440000 0x2000>; 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci CP11X_LABEL(clk): clock { 23162306a36Sopenharmony_ci compatible = "marvell,cp110-clock"; 23262306a36Sopenharmony_ci #clock-cells = <2>; 23362306a36Sopenharmony_ci }; 23462306a36Sopenharmony_ci 23562306a36Sopenharmony_ci CP11X_LABEL(gpio1): gpio@100 { 23662306a36Sopenharmony_ci compatible = "marvell,armada-8k-gpio"; 23762306a36Sopenharmony_ci offset = <0x100>; 23862306a36Sopenharmony_ci ngpios = <32>; 23962306a36Sopenharmony_ci gpio-controller; 24062306a36Sopenharmony_ci #gpio-cells = <2>; 24162306a36Sopenharmony_ci gpio-ranges = <&CP11X_LABEL(pinctrl) 0 0 32>; 24262306a36Sopenharmony_ci marvell,pwm-offset = <0x1f0>; 24362306a36Sopenharmony_ci #pwm-cells = <2>; 24462306a36Sopenharmony_ci interrupt-controller; 24562306a36Sopenharmony_ci interrupts = <86 IRQ_TYPE_LEVEL_HIGH>, 24662306a36Sopenharmony_ci <85 IRQ_TYPE_LEVEL_HIGH>, 24762306a36Sopenharmony_ci <84 IRQ_TYPE_LEVEL_HIGH>, 24862306a36Sopenharmony_ci <83 IRQ_TYPE_LEVEL_HIGH>; 24962306a36Sopenharmony_ci #interrupt-cells = <2>; 25062306a36Sopenharmony_ci clock-names = "core", "axi"; 25162306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 25262306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 25362306a36Sopenharmony_ci status = "disabled"; 25462306a36Sopenharmony_ci }; 25562306a36Sopenharmony_ci 25662306a36Sopenharmony_ci CP11X_LABEL(gpio2): gpio@140 { 25762306a36Sopenharmony_ci compatible = "marvell,armada-8k-gpio"; 25862306a36Sopenharmony_ci offset = <0x140>; 25962306a36Sopenharmony_ci ngpios = <31>; 26062306a36Sopenharmony_ci gpio-controller; 26162306a36Sopenharmony_ci #gpio-cells = <2>; 26262306a36Sopenharmony_ci gpio-ranges = <&CP11X_LABEL(pinctrl) 0 32 31>; 26362306a36Sopenharmony_ci marvell,pwm-offset = <0x1f0>; 26462306a36Sopenharmony_ci #pwm-cells = <2>; 26562306a36Sopenharmony_ci interrupt-controller; 26662306a36Sopenharmony_ci interrupts = <82 IRQ_TYPE_LEVEL_HIGH>, 26762306a36Sopenharmony_ci <81 IRQ_TYPE_LEVEL_HIGH>, 26862306a36Sopenharmony_ci <80 IRQ_TYPE_LEVEL_HIGH>, 26962306a36Sopenharmony_ci <79 IRQ_TYPE_LEVEL_HIGH>; 27062306a36Sopenharmony_ci #interrupt-cells = <2>; 27162306a36Sopenharmony_ci clock-names = "core", "axi"; 27262306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 27362306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 27462306a36Sopenharmony_ci status = "disabled"; 27562306a36Sopenharmony_ci }; 27662306a36Sopenharmony_ci }; 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_ci CP11X_LABEL(syscon1): system-controller@400000 { 27962306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 28062306a36Sopenharmony_ci reg = <0x400000 0x1000>; 28162306a36Sopenharmony_ci #address-cells = <1>; 28262306a36Sopenharmony_ci #size-cells = <1>; 28362306a36Sopenharmony_ci 28462306a36Sopenharmony_ci CP11X_LABEL(thermal): thermal-sensor@70 { 28562306a36Sopenharmony_ci compatible = "marvell,armada-cp110-thermal"; 28662306a36Sopenharmony_ci reg = <0x70 0x10>; 28762306a36Sopenharmony_ci interrupts-extended = 28862306a36Sopenharmony_ci <&CP11X_LABEL(icu_sei) 116 IRQ_TYPE_LEVEL_HIGH>; 28962306a36Sopenharmony_ci #thermal-sensor-cells = <1>; 29062306a36Sopenharmony_ci }; 29162306a36Sopenharmony_ci }; 29262306a36Sopenharmony_ci 29362306a36Sopenharmony_ci CP11X_LABEL(utmi): utmi@580000 { 29462306a36Sopenharmony_ci compatible = "marvell,cp110-utmi-phy"; 29562306a36Sopenharmony_ci reg = <0x580000 0x2000>; 29662306a36Sopenharmony_ci marvell,system-controller = <&CP11X_LABEL(syscon0)>; 29762306a36Sopenharmony_ci #address-cells = <1>; 29862306a36Sopenharmony_ci #size-cells = <0>; 29962306a36Sopenharmony_ci status = "disabled"; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ci CP11X_LABEL(utmi0): usb-phy@0 { 30262306a36Sopenharmony_ci reg = <0>; 30362306a36Sopenharmony_ci #phy-cells = <0>; 30462306a36Sopenharmony_ci }; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_ci CP11X_LABEL(utmi1): usb-phy@1 { 30762306a36Sopenharmony_ci reg = <1>; 30862306a36Sopenharmony_ci #phy-cells = <0>; 30962306a36Sopenharmony_ci }; 31062306a36Sopenharmony_ci }; 31162306a36Sopenharmony_ci 31262306a36Sopenharmony_ci CP11X_LABEL(usb3_0): usb@500000 { 31362306a36Sopenharmony_ci compatible = "marvell,armada-8k-xhci", 31462306a36Sopenharmony_ci "generic-xhci"; 31562306a36Sopenharmony_ci reg = <0x500000 0x4000>; 31662306a36Sopenharmony_ci dma-coherent; 31762306a36Sopenharmony_ci interrupts = <106 IRQ_TYPE_LEVEL_HIGH>; 31862306a36Sopenharmony_ci clock-names = "core", "reg"; 31962306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 22>, 32062306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 16>; 32162306a36Sopenharmony_ci status = "disabled"; 32262306a36Sopenharmony_ci }; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci CP11X_LABEL(usb3_1): usb@510000 { 32562306a36Sopenharmony_ci compatible = "marvell,armada-8k-xhci", 32662306a36Sopenharmony_ci "generic-xhci"; 32762306a36Sopenharmony_ci reg = <0x510000 0x4000>; 32862306a36Sopenharmony_ci dma-coherent; 32962306a36Sopenharmony_ci interrupts = <105 IRQ_TYPE_LEVEL_HIGH>; 33062306a36Sopenharmony_ci clock-names = "core", "reg"; 33162306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 23>, 33262306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 16>; 33362306a36Sopenharmony_ci status = "disabled"; 33462306a36Sopenharmony_ci }; 33562306a36Sopenharmony_ci 33662306a36Sopenharmony_ci CP11X_LABEL(sata0): sata@540000 { 33762306a36Sopenharmony_ci compatible = "marvell,armada-8k-ahci", 33862306a36Sopenharmony_ci "generic-ahci"; 33962306a36Sopenharmony_ci reg = <0x540000 0x30000>; 34062306a36Sopenharmony_ci dma-coherent; 34162306a36Sopenharmony_ci interrupts = <107 IRQ_TYPE_LEVEL_HIGH>; 34262306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 15>, 34362306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 16>; 34462306a36Sopenharmony_ci #address-cells = <1>; 34562306a36Sopenharmony_ci #size-cells = <0>; 34662306a36Sopenharmony_ci status = "disabled"; 34762306a36Sopenharmony_ci 34862306a36Sopenharmony_ci sata-port@0 { 34962306a36Sopenharmony_ci reg = <0>; 35062306a36Sopenharmony_ci }; 35162306a36Sopenharmony_ci 35262306a36Sopenharmony_ci sata-port@1 { 35362306a36Sopenharmony_ci reg = <1>; 35462306a36Sopenharmony_ci }; 35562306a36Sopenharmony_ci }; 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ci CP11X_LABEL(xor0): xor@6a0000 { 35862306a36Sopenharmony_ci compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 35962306a36Sopenharmony_ci reg = <0x6a0000 0x1000>, <0x6b0000 0x1000>; 36062306a36Sopenharmony_ci dma-coherent; 36162306a36Sopenharmony_ci msi-parent = <&gic_v2m0>; 36262306a36Sopenharmony_ci clock-names = "core", "reg"; 36362306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 8>, 36462306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 14>; 36562306a36Sopenharmony_ci }; 36662306a36Sopenharmony_ci 36762306a36Sopenharmony_ci CP11X_LABEL(xor1): xor@6c0000 { 36862306a36Sopenharmony_ci compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 36962306a36Sopenharmony_ci reg = <0x6c0000 0x1000>, <0x6d0000 0x1000>; 37062306a36Sopenharmony_ci dma-coherent; 37162306a36Sopenharmony_ci msi-parent = <&gic_v2m0>; 37262306a36Sopenharmony_ci clock-names = "core", "reg"; 37362306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 7>, 37462306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 14>; 37562306a36Sopenharmony_ci }; 37662306a36Sopenharmony_ci 37762306a36Sopenharmony_ci CP11X_LABEL(spi0): spi@700600 { 37862306a36Sopenharmony_ci compatible = "marvell,armada-380-spi"; 37962306a36Sopenharmony_ci reg = <0x700600 0x50>; 38062306a36Sopenharmony_ci #address-cells = <0x1>; 38162306a36Sopenharmony_ci #size-cells = <0x0>; 38262306a36Sopenharmony_ci clock-names = "core", "axi"; 38362306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 38462306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 38562306a36Sopenharmony_ci status = "disabled"; 38662306a36Sopenharmony_ci }; 38762306a36Sopenharmony_ci 38862306a36Sopenharmony_ci CP11X_LABEL(spi1): spi@700680 { 38962306a36Sopenharmony_ci compatible = "marvell,armada-380-spi"; 39062306a36Sopenharmony_ci reg = <0x700680 0x50>; 39162306a36Sopenharmony_ci #address-cells = <1>; 39262306a36Sopenharmony_ci #size-cells = <0>; 39362306a36Sopenharmony_ci clock-names = "core", "axi"; 39462306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 39562306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 39662306a36Sopenharmony_ci status = "disabled"; 39762306a36Sopenharmony_ci }; 39862306a36Sopenharmony_ci 39962306a36Sopenharmony_ci CP11X_LABEL(i2c0): i2c@701000 { 40062306a36Sopenharmony_ci compatible = "marvell,mv78230-i2c"; 40162306a36Sopenharmony_ci reg = <0x701000 0x20>; 40262306a36Sopenharmony_ci #address-cells = <1>; 40362306a36Sopenharmony_ci #size-cells = <0>; 40462306a36Sopenharmony_ci interrupts = <120 IRQ_TYPE_LEVEL_HIGH>; 40562306a36Sopenharmony_ci clock-names = "core", "reg"; 40662306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 40762306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 40862306a36Sopenharmony_ci status = "disabled"; 40962306a36Sopenharmony_ci }; 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci CP11X_LABEL(i2c1): i2c@701100 { 41262306a36Sopenharmony_ci compatible = "marvell,mv78230-i2c"; 41362306a36Sopenharmony_ci reg = <0x701100 0x20>; 41462306a36Sopenharmony_ci #address-cells = <1>; 41562306a36Sopenharmony_ci #size-cells = <0>; 41662306a36Sopenharmony_ci interrupts = <121 IRQ_TYPE_LEVEL_HIGH>; 41762306a36Sopenharmony_ci clock-names = "core", "reg"; 41862306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 41962306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 42062306a36Sopenharmony_ci status = "disabled"; 42162306a36Sopenharmony_ci }; 42262306a36Sopenharmony_ci 42362306a36Sopenharmony_ci CP11X_LABEL(uart0): serial@702000 { 42462306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 42562306a36Sopenharmony_ci reg = <0x702000 0x100>; 42662306a36Sopenharmony_ci reg-shift = <2>; 42762306a36Sopenharmony_ci interrupts = <122 IRQ_TYPE_LEVEL_HIGH>; 42862306a36Sopenharmony_ci reg-io-width = <1>; 42962306a36Sopenharmony_ci clock-names = "baudclk", "apb_pclk"; 43062306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 43162306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 43262306a36Sopenharmony_ci status = "disabled"; 43362306a36Sopenharmony_ci }; 43462306a36Sopenharmony_ci 43562306a36Sopenharmony_ci CP11X_LABEL(uart1): serial@702100 { 43662306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 43762306a36Sopenharmony_ci reg = <0x702100 0x100>; 43862306a36Sopenharmony_ci reg-shift = <2>; 43962306a36Sopenharmony_ci interrupts = <123 IRQ_TYPE_LEVEL_HIGH>; 44062306a36Sopenharmony_ci reg-io-width = <1>; 44162306a36Sopenharmony_ci clock-names = "baudclk", "apb_pclk"; 44262306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 44362306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 44462306a36Sopenharmony_ci status = "disabled"; 44562306a36Sopenharmony_ci }; 44662306a36Sopenharmony_ci 44762306a36Sopenharmony_ci CP11X_LABEL(uart2): serial@702200 { 44862306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 44962306a36Sopenharmony_ci reg = <0x702200 0x100>; 45062306a36Sopenharmony_ci reg-shift = <2>; 45162306a36Sopenharmony_ci interrupts = <124 IRQ_TYPE_LEVEL_HIGH>; 45262306a36Sopenharmony_ci reg-io-width = <1>; 45362306a36Sopenharmony_ci clock-names = "baudclk", "apb_pclk"; 45462306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 45562306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 45662306a36Sopenharmony_ci status = "disabled"; 45762306a36Sopenharmony_ci }; 45862306a36Sopenharmony_ci 45962306a36Sopenharmony_ci CP11X_LABEL(uart3): serial@702300 { 46062306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 46162306a36Sopenharmony_ci reg = <0x702300 0x100>; 46262306a36Sopenharmony_ci reg-shift = <2>; 46362306a36Sopenharmony_ci interrupts = <125 IRQ_TYPE_LEVEL_HIGH>; 46462306a36Sopenharmony_ci reg-io-width = <1>; 46562306a36Sopenharmony_ci clock-names = "baudclk", "apb_pclk"; 46662306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 21>, 46762306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 46862306a36Sopenharmony_ci status = "disabled"; 46962306a36Sopenharmony_ci }; 47062306a36Sopenharmony_ci 47162306a36Sopenharmony_ci CP11X_LABEL(nand_controller): nand-controller@720000 { 47262306a36Sopenharmony_ci /* 47362306a36Sopenharmony_ci * Due to the limitation of the pins available 47462306a36Sopenharmony_ci * this controller is only usable on the CPM 47562306a36Sopenharmony_ci * for A7K and on the CPS for A8K. 47662306a36Sopenharmony_ci */ 47762306a36Sopenharmony_ci compatible = "marvell,armada-8k-nand-controller", 47862306a36Sopenharmony_ci "marvell,armada370-nand-controller"; 47962306a36Sopenharmony_ci reg = <0x720000 0x54>; 48062306a36Sopenharmony_ci #address-cells = <1>; 48162306a36Sopenharmony_ci #size-cells = <0>; 48262306a36Sopenharmony_ci interrupts = <115 IRQ_TYPE_LEVEL_HIGH>; 48362306a36Sopenharmony_ci clock-names = "core", "reg"; 48462306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 2>, 48562306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 48662306a36Sopenharmony_ci marvell,system-controller = <&CP11X_LABEL(syscon0)>; 48762306a36Sopenharmony_ci status = "disabled"; 48862306a36Sopenharmony_ci }; 48962306a36Sopenharmony_ci 49062306a36Sopenharmony_ci CP11X_LABEL(trng): trng@760000 { 49162306a36Sopenharmony_ci compatible = "marvell,armada-8k-rng", 49262306a36Sopenharmony_ci "inside-secure,safexcel-eip76"; 49362306a36Sopenharmony_ci reg = <0x760000 0x7d>; 49462306a36Sopenharmony_ci interrupts = <95 IRQ_TYPE_LEVEL_HIGH>; 49562306a36Sopenharmony_ci clock-names = "core", "reg"; 49662306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 25>, 49762306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 49862306a36Sopenharmony_ci status = "okay"; 49962306a36Sopenharmony_ci }; 50062306a36Sopenharmony_ci 50162306a36Sopenharmony_ci CP11X_LABEL(sdhci0): mmc@780000 { 50262306a36Sopenharmony_ci compatible = "marvell,armada-cp110-sdhci"; 50362306a36Sopenharmony_ci reg = <0x780000 0x300>; 50462306a36Sopenharmony_ci interrupts = <27 IRQ_TYPE_LEVEL_HIGH>; 50562306a36Sopenharmony_ci clock-names = "core", "axi"; 50662306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 4>, <&CP11X_LABEL(clk) 1 18>; 50762306a36Sopenharmony_ci dma-coherent; 50862306a36Sopenharmony_ci status = "disabled"; 50962306a36Sopenharmony_ci }; 51062306a36Sopenharmony_ci 51162306a36Sopenharmony_ci CP11X_LABEL(crypto): crypto@800000 { 51262306a36Sopenharmony_ci compatible = "inside-secure,safexcel-eip197b"; 51362306a36Sopenharmony_ci reg = <0x800000 0x200000>; 51462306a36Sopenharmony_ci interrupts = <88 IRQ_TYPE_LEVEL_HIGH>, 51562306a36Sopenharmony_ci <89 IRQ_TYPE_LEVEL_HIGH>, 51662306a36Sopenharmony_ci <90 IRQ_TYPE_LEVEL_HIGH>, 51762306a36Sopenharmony_ci <91 IRQ_TYPE_LEVEL_HIGH>, 51862306a36Sopenharmony_ci <92 IRQ_TYPE_LEVEL_HIGH>, 51962306a36Sopenharmony_ci <87 IRQ_TYPE_LEVEL_HIGH>; 52062306a36Sopenharmony_ci interrupt-names = "ring0", "ring1", "ring2", "ring3", 52162306a36Sopenharmony_ci "eip", "mem"; 52262306a36Sopenharmony_ci clock-names = "core", "reg"; 52362306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 26>, 52462306a36Sopenharmony_ci <&CP11X_LABEL(clk) 1 17>; 52562306a36Sopenharmony_ci dma-coherent; 52662306a36Sopenharmony_ci }; 52762306a36Sopenharmony_ci }; 52862306a36Sopenharmony_ci 52962306a36Sopenharmony_ci CP11X_LABEL(pcie0): pcie@CP11X_PCIE0_BASE { 53062306a36Sopenharmony_ci compatible = "marvell,armada8k-pcie", "snps,dw-pcie"; 53162306a36Sopenharmony_ci reg = <0 ADDRESSIFY(CP11X_PCIE0_BASE) 0 0x10000>, 53262306a36Sopenharmony_ci <0 CP11X_PCIEx_CONF_BASE(0) 0 0x80000>; 53362306a36Sopenharmony_ci reg-names = "ctrl", "config"; 53462306a36Sopenharmony_ci #address-cells = <3>; 53562306a36Sopenharmony_ci #size-cells = <2>; 53662306a36Sopenharmony_ci #interrupt-cells = <1>; 53762306a36Sopenharmony_ci device_type = "pci"; 53862306a36Sopenharmony_ci dma-coherent; 53962306a36Sopenharmony_ci msi-parent = <&gic_v2m0>; 54062306a36Sopenharmony_ci 54162306a36Sopenharmony_ci bus-range = <0 0xff>; 54262306a36Sopenharmony_ci /* non-prefetchable memory */ 54362306a36Sopenharmony_ci ranges = <0x82000000 0 CP11X_PCIEx_MEM_BASE(0) 0 CP11X_PCIEx_MEM_BASE(0) 0 CP11X_PCIEx_MEM_SIZE(0)>; 54462306a36Sopenharmony_ci interrupt-map-mask = <0 0 0 0>; 54562306a36Sopenharmony_ci interrupt-map = <0 0 0 0 &CP11X_LABEL(icu_nsr) 22 IRQ_TYPE_LEVEL_HIGH>; 54662306a36Sopenharmony_ci interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; 54762306a36Sopenharmony_ci num-lanes = <1>; 54862306a36Sopenharmony_ci clock-names = "core", "reg"; 54962306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 13>, <&CP11X_LABEL(clk) 1 14>; 55062306a36Sopenharmony_ci status = "disabled"; 55162306a36Sopenharmony_ci }; 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ci CP11X_LABEL(pcie1): pcie@CP11X_PCIE1_BASE { 55462306a36Sopenharmony_ci compatible = "marvell,armada8k-pcie", "snps,dw-pcie"; 55562306a36Sopenharmony_ci reg = <0 ADDRESSIFY(CP11X_PCIE1_BASE) 0 0x10000>, 55662306a36Sopenharmony_ci <0 CP11X_PCIEx_CONF_BASE(1) 0 0x80000>; 55762306a36Sopenharmony_ci reg-names = "ctrl", "config"; 55862306a36Sopenharmony_ci #address-cells = <3>; 55962306a36Sopenharmony_ci #size-cells = <2>; 56062306a36Sopenharmony_ci #interrupt-cells = <1>; 56162306a36Sopenharmony_ci device_type = "pci"; 56262306a36Sopenharmony_ci dma-coherent; 56362306a36Sopenharmony_ci msi-parent = <&gic_v2m0>; 56462306a36Sopenharmony_ci 56562306a36Sopenharmony_ci bus-range = <0 0xff>; 56662306a36Sopenharmony_ci /* non-prefetchable memory */ 56762306a36Sopenharmony_ci ranges = <0x82000000 0 CP11X_PCIEx_MEM_BASE(1) 0 CP11X_PCIEx_MEM_BASE(1) 0 CP11X_PCIEx_MEM_SIZE(1)>; 56862306a36Sopenharmony_ci interrupt-map-mask = <0 0 0 0>; 56962306a36Sopenharmony_ci interrupt-map = <0 0 0 0 &CP11X_LABEL(icu_nsr) 24 IRQ_TYPE_LEVEL_HIGH>; 57062306a36Sopenharmony_ci interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; 57162306a36Sopenharmony_ci 57262306a36Sopenharmony_ci num-lanes = <1>; 57362306a36Sopenharmony_ci clock-names = "core", "reg"; 57462306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 11>, <&CP11X_LABEL(clk) 1 14>; 57562306a36Sopenharmony_ci status = "disabled"; 57662306a36Sopenharmony_ci }; 57762306a36Sopenharmony_ci 57862306a36Sopenharmony_ci CP11X_LABEL(pcie2): pcie@CP11X_PCIE2_BASE { 57962306a36Sopenharmony_ci compatible = "marvell,armada8k-pcie", "snps,dw-pcie"; 58062306a36Sopenharmony_ci reg = <0 ADDRESSIFY(CP11X_PCIE2_BASE) 0 0x10000>, 58162306a36Sopenharmony_ci <0 CP11X_PCIEx_CONF_BASE(2) 0 0x80000>; 58262306a36Sopenharmony_ci reg-names = "ctrl", "config"; 58362306a36Sopenharmony_ci #address-cells = <3>; 58462306a36Sopenharmony_ci #size-cells = <2>; 58562306a36Sopenharmony_ci #interrupt-cells = <1>; 58662306a36Sopenharmony_ci device_type = "pci"; 58762306a36Sopenharmony_ci dma-coherent; 58862306a36Sopenharmony_ci msi-parent = <&gic_v2m0>; 58962306a36Sopenharmony_ci 59062306a36Sopenharmony_ci bus-range = <0 0xff>; 59162306a36Sopenharmony_ci /* non-prefetchable memory */ 59262306a36Sopenharmony_ci ranges = <0x82000000 0 CP11X_PCIEx_MEM_BASE(2) 0 CP11X_PCIEx_MEM_BASE(2) 0 CP11X_PCIEx_MEM_SIZE(2)>; 59362306a36Sopenharmony_ci interrupt-map-mask = <0 0 0 0>; 59462306a36Sopenharmony_ci interrupt-map = <0 0 0 0 &CP11X_LABEL(icu_nsr) 23 IRQ_TYPE_LEVEL_HIGH>; 59562306a36Sopenharmony_ci interrupts = <23 IRQ_TYPE_LEVEL_HIGH>; 59662306a36Sopenharmony_ci 59762306a36Sopenharmony_ci num-lanes = <1>; 59862306a36Sopenharmony_ci clock-names = "core", "reg"; 59962306a36Sopenharmony_ci clocks = <&CP11X_LABEL(clk) 1 12>, <&CP11X_LABEL(clk) 1 14>; 60062306a36Sopenharmony_ci status = "disabled"; 60162306a36Sopenharmony_ci }; 60262306a36Sopenharmony_ci}; 603