// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (C) 2019 Jagan Teki <jagan@amarulasolutions.com>
 */
#define USB_CLASS_HUB			9

#include "rockchip-u-boot.dtsi"

/ {
	aliases {
		mmc0 = &sdhci;
		mmc1 = &sdmmc;
		pci0 = &pcie0;
		spi1 = &spi1;
	};

	cic: syscon@ff620000 {
		u-boot,dm-pre-reloc;
		compatible = "rockchip,rk3399-cic", "syscon";
		reg = <0x0 0xff620000 0x0 0x100>;
	};

	dfi: dfi@ff630000 {
		u-boot,dm-pre-reloc;
		reg = <0x00 0xff630000 0x00 0x4000>;
		compatible = "rockchip,rk3399-dfi";
		rockchip,pmu = <&pmugrf>;
		clocks = <&cru PCLK_DDR_MON>;
		clock-names = "pclk_ddr_mon";
	};

	rng: rng@ff8b8000 {
		compatible = "rockchip,cryptov1-rng";
		reg = <0x0 0xff8b8000 0x0 0x1000>;
		status = "okay";
	};

	dmc: dmc {
		u-boot,dm-pre-reloc;
		compatible = "rockchip,rk3399-dmc";
		devfreq-events = <&dfi>;
		interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH 0>;
		clocks = <&cru SCLK_DDRCLK>;
		clock-names = "dmc_clk";
		reg = <0x0 0xffa80000 0x0 0x0800
		       0x0 0xffa80800 0x0 0x1800
		       0x0 0xffa82000 0x0 0x2000
		       0x0 0xffa84000 0x0 0x1000
		       0x0 0xffa88000 0x0 0x0800
		       0x0 0xffa88800 0x0 0x1800
		       0x0 0xffa8a000 0x0 0x2000
		       0x0 0xffa8c000 0x0 0x1000>;
	};

	pmusgrf: syscon@ff330000 {
		u-boot,dm-pre-reloc;
		compatible = "rockchip,rk3399-pmusgrf", "syscon";
		reg = <0x0 0xff330000 0x0 0xe3d4>;
	};

};

#if defined(CONFIG_ROCKCHIP_SPI_IMAGE) && defined(CONFIG_HAS_ROM)
&binman {
	rom {
		filename = "u-boot.rom";
		size = <0x400000>;
		pad-byte = <0xff>;

		mkimage {
			args = "-n rk3399 -T rkspi";
			u-boot-spl {
			};
		};
		u-boot-img {
			offset = <0x40000>;
		};
		u-boot {
			offset = <0x300000>;
		};
		fdtmap {
		};
	};
};
#endif

&cru {
	u-boot,dm-pre-reloc;
};

&emmc_phy {
	u-boot,dm-pre-reloc;
};

&grf {
	u-boot,dm-pre-reloc;
};

&pinctrl {
	u-boot,dm-pre-reloc;
};

&pmu {
	u-boot,dm-pre-reloc;
};

&pmugrf {
	u-boot,dm-pre-reloc;
};

&pmu {
	u-boot,dm-pre-reloc;
};

&pmucru {
	u-boot,dm-pre-reloc;
};

&sdhci {
	max-frequency = <200000000>;
	u-boot,dm-pre-reloc;
};

&sdmmc {
	u-boot,dm-pre-reloc;

	/* mmc to sram can't do dma, prevent aborts transferring TF-A parts */
	u-boot,spl-fifo-mode;
};

&spi1 {
	u-boot,dm-pre-reloc;
};

&uart0 {
	u-boot,dm-pre-reloc;
};

&uart2 {
	u-boot,dm-pre-reloc;
};

&vopb {
	u-boot,dm-pre-reloc;
};

&vopl {
	u-boot,dm-pre-reloc;
};
