xref: /linux/arch/arm64/boot/dts/socionext/uniphier-ld20-akebi96.dts (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
17d5620d3SMasami Hiramatsu// SPDX-License-Identifier: GPL-2.0+ OR MIT
27d5620d3SMasami Hiramatsu//
37d5620d3SMasami Hiramatsu// Device Tree Source for Akebi96 Development Board
47d5620d3SMasami Hiramatsu//
57d5620d3SMasami Hiramatsu// Derived from uniphier-ld20-global.dts.
67d5620d3SMasami Hiramatsu//
77d5620d3SMasami Hiramatsu// Copyright (C) 2015-2017 Socionext Inc.
87d5620d3SMasami Hiramatsu// Copyright (C) 2019-2020 Linaro Ltd.
97d5620d3SMasami Hiramatsu
107d5620d3SMasami Hiramatsu/dts-v1/;
117d5620d3SMasami Hiramatsu#include <dt-bindings/gpio/uniphier-gpio.h>
127d5620d3SMasami Hiramatsu#include "uniphier-ld20.dtsi"
137d5620d3SMasami Hiramatsu
147d5620d3SMasami Hiramatsu/ {
157d5620d3SMasami Hiramatsu	model = "Akebi96";
167d5620d3SMasami Hiramatsu	compatible = "socionext,uniphier-ld20-akebi96",
177d5620d3SMasami Hiramatsu		     "socionext,uniphier-ld20";
187d5620d3SMasami Hiramatsu
197d5620d3SMasami Hiramatsu	chosen {
207d5620d3SMasami Hiramatsu		stdout-path = "serial0:115200n8";
217d5620d3SMasami Hiramatsu	};
227d5620d3SMasami Hiramatsu
237d5620d3SMasami Hiramatsu	aliases {
247d5620d3SMasami Hiramatsu		serial0 = &serial0;
257d5620d3SMasami Hiramatsu		serial1 = &serial1;
267d5620d3SMasami Hiramatsu		serial2 = &serial2;
277d5620d3SMasami Hiramatsu		serial3 = &serial3;
287d5620d3SMasami Hiramatsu		i2c0 = &i2c0;
297d5620d3SMasami Hiramatsu		i2c1 = &i2c1;
307d5620d3SMasami Hiramatsu		i2c2 = &i2c2;
317d5620d3SMasami Hiramatsu		i2c3 = &i2c3;
327d5620d3SMasami Hiramatsu		i2c4 = &i2c4;
337d5620d3SMasami Hiramatsu		i2c5 = &i2c5;
347d5620d3SMasami Hiramatsu		spi0 = &spi0;
357d5620d3SMasami Hiramatsu		spi1 = &spi1;
367d5620d3SMasami Hiramatsu		spi2 = &spi2;
377d5620d3SMasami Hiramatsu		spi3 = &spi3;
387d5620d3SMasami Hiramatsu		ethernet0 = &eth;
397d5620d3SMasami Hiramatsu	};
407d5620d3SMasami Hiramatsu
417d5620d3SMasami Hiramatsu	memory@80000000 {
427d5620d3SMasami Hiramatsu		device_type = "memory";
437d5620d3SMasami Hiramatsu		reg = <0 0x80000000 0 0xc0000000>;
447d5620d3SMasami Hiramatsu	};
457d5620d3SMasami Hiramatsu
467d5620d3SMasami Hiramatsu	framebuffer@c0000000 {
477d5620d3SMasami Hiramatsu		compatible = "simple-framebuffer";
487d5620d3SMasami Hiramatsu		reg = <0 0xc0000000 0 0x02000000>;
497d5620d3SMasami Hiramatsu		width = <1920>;
507d5620d3SMasami Hiramatsu		height = <1080>;
517d5620d3SMasami Hiramatsu		stride = <7680>;
527d5620d3SMasami Hiramatsu		format = "a8r8g8b8";
537d5620d3SMasami Hiramatsu	};
547d5620d3SMasami Hiramatsu
557d5620d3SMasami Hiramatsu	reserved-memory {
567d5620d3SMasami Hiramatsu		#address-cells = <2>;
577d5620d3SMasami Hiramatsu		#size-cells = <2>;
587d5620d3SMasami Hiramatsu		ranges;
597d5620d3SMasami Hiramatsu
607d5620d3SMasami Hiramatsu		memory@c0000000 {
617d5620d3SMasami Hiramatsu			reg = <0 0xc0000000 0 0x02000000>;
627d5620d3SMasami Hiramatsu			no-map;
637d5620d3SMasami Hiramatsu		};
647d5620d3SMasami Hiramatsu	};
657d5620d3SMasami Hiramatsu
667d5620d3SMasami Hiramatsu	sound {
677d5620d3SMasami Hiramatsu		compatible = "audio-graph-card";
687d5620d3SMasami Hiramatsu		label = "UniPhier LD20";
697d5620d3SMasami Hiramatsu		dais = <&spdif_port0
707d5620d3SMasami Hiramatsu			&comp_spdif_port0>;
717d5620d3SMasami Hiramatsu	};
727d5620d3SMasami Hiramatsu
737d5620d3SMasami Hiramatsu	spdif-out {
747d5620d3SMasami Hiramatsu		compatible = "linux,spdif-dit";
757d5620d3SMasami Hiramatsu		#sound-dai-cells = <0>;
767d5620d3SMasami Hiramatsu
777d5620d3SMasami Hiramatsu		port@0 {
787d5620d3SMasami Hiramatsu			spdif_tx: endpoint {
797d5620d3SMasami Hiramatsu				remote-endpoint = <&spdif_hiecout1>;
807d5620d3SMasami Hiramatsu			};
817d5620d3SMasami Hiramatsu		};
827d5620d3SMasami Hiramatsu	};
837d5620d3SMasami Hiramatsu
847d5620d3SMasami Hiramatsu	comp-spdif-out {
857d5620d3SMasami Hiramatsu		compatible = "linux,spdif-dit";
867d5620d3SMasami Hiramatsu		#sound-dai-cells = <0>;
877d5620d3SMasami Hiramatsu
887d5620d3SMasami Hiramatsu		port@0 {
897d5620d3SMasami Hiramatsu			comp_spdif_tx: endpoint {
907d5620d3SMasami Hiramatsu				remote-endpoint = <&comp_spdif_hiecout1>;
917d5620d3SMasami Hiramatsu			};
927d5620d3SMasami Hiramatsu		};
937d5620d3SMasami Hiramatsu	};
947d5620d3SMasami Hiramatsu
957d5620d3SMasami Hiramatsu	firmware {
967d5620d3SMasami Hiramatsu		optee {
977d5620d3SMasami Hiramatsu			compatible = "linaro,optee-tz";
987d5620d3SMasami Hiramatsu			method = "smc";
997d5620d3SMasami Hiramatsu		};
1007d5620d3SMasami Hiramatsu	};
1017d5620d3SMasami Hiramatsu};
1027d5620d3SMasami Hiramatsu
1037d5620d3SMasami Hiramatsu&spi3 {
1047d5620d3SMasami Hiramatsu	status = "okay";
1057d5620d3SMasami Hiramatsu	#address-cells = <1>;
1067d5620d3SMasami Hiramatsu	#size-cells = <0>;
1077d5620d3SMasami Hiramatsu	usb-over-spi@0 {
1087d5620d3SMasami Hiramatsu		compatible = "maxim,max3421-udc";
1097d5620d3SMasami Hiramatsu		reg = <0>;
1107d5620d3SMasami Hiramatsu		spi-max-frequency = <12500000>;
1117d5620d3SMasami Hiramatsu		interrupt-parent = <&gpio>;
1127d5620d3SMasami Hiramatsu		interrupt-names = "udc";
113*5ba95e8eSKunihiko Hayashi		interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
1147d5620d3SMasami Hiramatsu	};
1157d5620d3SMasami Hiramatsu};
1167d5620d3SMasami Hiramatsu
1177d5620d3SMasami Hiramatsu&serial0 {
1187d5620d3SMasami Hiramatsu	/* Onboard USB-UART */
1197d5620d3SMasami Hiramatsu	status = "okay";
1207d5620d3SMasami Hiramatsu};
1217d5620d3SMasami Hiramatsu
1227d5620d3SMasami Hiramatsu&serial2 {
1237d5620d3SMasami Hiramatsu	/* LS connector UART1 */
1247d5620d3SMasami Hiramatsu	status = "okay";
1257d5620d3SMasami Hiramatsu};
1267d5620d3SMasami Hiramatsu
1277d5620d3SMasami Hiramatsu&serial3 {
1287d5620d3SMasami Hiramatsu	/* LS connector UART0 */
1297d5620d3SMasami Hiramatsu	status = "okay";
1307d5620d3SMasami Hiramatsu};
1317d5620d3SMasami Hiramatsu
1327d5620d3SMasami Hiramatsu&spdif_hiecout1 {
1337d5620d3SMasami Hiramatsu	remote-endpoint = <&spdif_tx>;
1347d5620d3SMasami Hiramatsu};
1357d5620d3SMasami Hiramatsu
1367d5620d3SMasami Hiramatsu&comp_spdif_hiecout1 {
1377d5620d3SMasami Hiramatsu	remote-endpoint = <&comp_spdif_tx>;
1387d5620d3SMasami Hiramatsu};
1397d5620d3SMasami Hiramatsu
1407d5620d3SMasami Hiramatsu&i2c0 {
1417d5620d3SMasami Hiramatsu	/* LS connector I2C0 */
1427d5620d3SMasami Hiramatsu	status = "okay";
1437d5620d3SMasami Hiramatsu};
1447d5620d3SMasami Hiramatsu
1457d5620d3SMasami Hiramatsu&i2c1 {
1467d5620d3SMasami Hiramatsu	/* LS connector I2C1 */
1477d5620d3SMasami Hiramatsu	status = "okay";
1487d5620d3SMasami Hiramatsu};
1497d5620d3SMasami Hiramatsu
1507d5620d3SMasami Hiramatsu&eth {
1517d5620d3SMasami Hiramatsu	status = "okay";
1527d5620d3SMasami Hiramatsu	phy-handle = <&ethphy>;
1537d5620d3SMasami Hiramatsu};
1547d5620d3SMasami Hiramatsu
1557d5620d3SMasami Hiramatsu&mdio {
156dcd54fa8SKunihiko Hayashi	ethphy: ethernet-phy@0 {
1577d5620d3SMasami Hiramatsu		reg = <0>;
1587d5620d3SMasami Hiramatsu	};
1597d5620d3SMasami Hiramatsu};
1607d5620d3SMasami Hiramatsu
1617d5620d3SMasami Hiramatsu&usb {
1627d5620d3SMasami Hiramatsu	status = "okay";
1637d5620d3SMasami Hiramatsu};
1647d5620d3SMasami Hiramatsu
1657d5620d3SMasami Hiramatsu&pcie {
1667d5620d3SMasami Hiramatsu	status = "okay";
1677d5620d3SMasami Hiramatsu};
1687d5620d3SMasami Hiramatsu
1697d5620d3SMasami Hiramatsu&gpio {
1707d5620d3SMasami Hiramatsu	/* IRQs for Max3421 */
171173b9b8eSKunihiko Hayashi	xirq0-hog {
1727d5620d3SMasami Hiramatsu		gpio-hog;
1737d5620d3SMasami Hiramatsu		gpios = <UNIPHIER_GPIO_IRQ(0) 1>;
1747d5620d3SMasami Hiramatsu		input;
1757d5620d3SMasami Hiramatsu	};
176173b9b8eSKunihiko Hayashi	xirq10-hog {
1777d5620d3SMasami Hiramatsu		gpio-hog;
1787d5620d3SMasami Hiramatsu		gpios = <UNIPHIER_GPIO_IRQ(10) 1>;
1797d5620d3SMasami Hiramatsu		input;
1807d5620d3SMasami Hiramatsu	};
1817d5620d3SMasami Hiramatsu};
1827d5620d3SMasami Hiramatsu
1837d5620d3SMasami Hiramatsu&pinctrl_aout1 {
1847d5620d3SMasami Hiramatsu	groups = "aout1b";
1857d5620d3SMasami Hiramatsu};
1867d5620d3SMasami Hiramatsu
1877d5620d3SMasami Hiramatsu&pinctrl_uart3 {
1887d5620d3SMasami Hiramatsu	groups = "uart3", "uart3_ctsrts";
1897d5620d3SMasami Hiramatsu};
190