178 lines
4.1 KiB
Plaintext
178 lines
4.1 KiB
Plaintext
/*
|
|
* Copyright 2022,2024 NXP
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <mem.h>
|
|
#include <freq.h>
|
|
#include <arm64/armv8-a.dtsi>
|
|
#include <zephyr/dt-bindings/clock/imx_ccm.h>
|
|
#include <zephyr/dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include <zephyr/dt-bindings/rdc/imx_rdc.h>
|
|
|
|
/ {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
chosen {
|
|
zephyr,console = &uart2;
|
|
zephyr,shell-uart = &uart2;
|
|
};
|
|
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
cpu@0 {
|
|
device_type = "cpu";
|
|
compatible = "arm,cortex-a53";
|
|
reg = <0>;
|
|
};
|
|
|
|
cpu@1 {
|
|
device_type = "cpu";
|
|
compatible = "arm,cortex-a53";
|
|
reg = <1>;
|
|
};
|
|
|
|
cpu@2 {
|
|
device_type = "cpu";
|
|
compatible = "arm,cortex-a53";
|
|
reg = <2>;
|
|
};
|
|
|
|
cpu@3 {
|
|
device_type = "cpu";
|
|
compatible = "arm,cortex-a53";
|
|
reg = <3>;
|
|
};
|
|
|
|
};
|
|
|
|
arch_timer: timer {
|
|
compatible = "arm,armv8-timer";
|
|
interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>,
|
|
<GIC_PPI 14 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>,
|
|
<GIC_PPI 11 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>,
|
|
<GIC_PPI 10 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>;
|
|
interrupt-parent = <&gic>;
|
|
};
|
|
|
|
gic: interrupt-controller@38800000 {
|
|
compatible = "arm,gic-v3", "arm,gic";
|
|
reg = <0x38800000 0x10000>, /* GIC Dist */
|
|
<0x38880000 0xc0000>; /* GICR (RD_base + SGI_base) */
|
|
interrupt-controller;
|
|
#interrupt-cells = <4>;
|
|
status = "okay";
|
|
};
|
|
|
|
gpt1: gpt@302d0000 {
|
|
compatible = "nxp,imx-gpt";
|
|
reg = <0x302d0000 DT_SIZE_K(64)>;
|
|
interrupt-parent = <&gic>;
|
|
interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>;
|
|
gptfreq = <24000000>;
|
|
clocks = <&ccm IMX_CCM_GPT_IPG_CLK 0x6C 20>;
|
|
status = "disabled";
|
|
};
|
|
|
|
gpt2: gpt@302e0000 {
|
|
compatible = "nxp,imx-gpt";
|
|
reg = <0x302e0000 DT_SIZE_K(64)>;
|
|
interrupt-parent = <&gic>;
|
|
interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL
|
|
IRQ_DEFAULT_PRIORITY>;
|
|
gptfreq = <24000000>;
|
|
clocks = <&ccm IMX_CCM_GPT_IPG_CLK 0x68 24>;
|
|
status = "disabled";
|
|
};
|
|
|
|
iomuxc: iomuxc@30330000 {
|
|
compatible = "nxp,imx-iomuxc";
|
|
reg = <0x30330000 DT_SIZE_K(64)>;
|
|
status = "okay";
|
|
pinctrl: pinctrl {
|
|
status = "okay";
|
|
compatible = "nxp,imx8mp-pinctrl";
|
|
};
|
|
};
|
|
|
|
ana_pll: ana_pll@30360000 {
|
|
compatible = "nxp,imx-ana";
|
|
reg = <0x30360000 DT_SIZE_K(64)>;
|
|
};
|
|
|
|
ccm: ccm@30380000 {
|
|
compatible = "nxp,imx-ccm";
|
|
reg = <0x30380000 DT_SIZE_K(64)>;
|
|
#clock-cells = <3>;
|
|
};
|
|
|
|
uart2: serial@30890000 {
|
|
compatible = "nxp,imx-iuart";
|
|
reg = <0x30890000 DT_SIZE_K(64)>;
|
|
interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL IRQ_DEFAULT_PRIORITY>;
|
|
interrupt-names = "irq_0";
|
|
interrupt-parent = <&gic>;
|
|
clocks = <&ccm IMX_CCM_UART2_CLK 0x6c 24>;
|
|
rdc = <(RDC_DOMAIN_PERM(A53_DOMAIN_ID, RDC_DOMAIN_PERM_RW)|\
|
|
RDC_DOMAIN_PERM(M7_DOMAIN_ID, RDC_DOMAIN_PERM_RW))>;
|
|
status = "disabled";
|
|
};
|
|
|
|
uart4: serial@30a60000 {
|
|
compatible = "nxp,imx-iuart";
|
|
reg = <0x30a60000 DT_SIZE_K(64)>;
|
|
interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL IRQ_DEFAULT_PRIORITY>;
|
|
interrupt-names = "irq_0";
|
|
interrupt-parent = <&gic>;
|
|
clocks = <&ccm IMX_CCM_UART4_CLK 0x6c 24>;
|
|
rdc = <(RDC_DOMAIN_PERM(A53_DOMAIN_ID, RDC_DOMAIN_PERM_RW)|\
|
|
RDC_DOMAIN_PERM(M7_DOMAIN_ID, RDC_DOMAIN_PERM_RW))>;
|
|
status = "disabled";
|
|
};
|
|
|
|
rdc: rdc@303d0000 {
|
|
compatible = "nxp,rdc";
|
|
reg = <0x303d0000 DT_SIZE_K(64)>;
|
|
};
|
|
|
|
enet: enet@30be0000 {
|
|
compatible = "nxp,enet1g";
|
|
reg = <0x30be0000 DT_SIZE_K(64)>;
|
|
clocks = <&ccm IMX_CCM_ENET_CLK 0 0>;
|
|
rdc = <RDC_DOMAIN_PERM(A53_DOMAIN_ID, RDC_DOMAIN_PERM_RW)>;
|
|
status = "disabled";
|
|
|
|
enet_mac: ethernet {
|
|
compatible = "nxp,enet-mac";
|
|
interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL IRQ_DEFAULT_PRIORITY>;
|
|
interrupt-names = "COMMON";
|
|
interrupt-parent = <&gic>;
|
|
nxp,mdio = <&enet_mdio>;
|
|
nxp,ptp-clock = <&enet_ptp_clock>;
|
|
status = "disabled";
|
|
};
|
|
enet_mdio: mdio {
|
|
compatible = "nxp,enet-mdio";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "disabled";
|
|
};
|
|
enet_ptp_clock: ptp_clock {
|
|
compatible = "nxp,enet-ptp-clock";
|
|
interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL IRQ_DEFAULT_PRIORITY>;
|
|
interrupt-parent = <&gic>;
|
|
clocks = <&ccm IMX_CCM_ENET_PLL 0 0>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
};
|