1/*
2 * SPDX-License-Identifier: Apache-2.0
3 * Copyright (C) 2021, Intel Corporation
4 * Description:
5 * Main Device Tree source of the Cyclone V SoC DevKit
6 * this file is based on the GSRD DTS for Linux
7 */
8
9#include "intel_socfpga_std/socfpga_cyclonev.dtsi"
10#include <zephyr/dt-bindings/gpio/gpio.h>
11
12/ {
13	model = "Altera SOCFPGA Cyclone V SoC Development Kit";
14	compatible = "altr,socfpga-cyclonev-socdk", "altr,socfpga-cyclonev", "altr,socfpga";
15
16	ddr0: memory@0 {
17		name = "memory";
18		device_type = "memory";
19		reg = <0x0 0x40000000>; /* 1GB */
20	};
21
22	aliases {
23	/* Giving different names to the LEDs connected to the HPS side of the chip */
24		led0 = &hps0;
25		led1 = &hps1;
26		led2 = &hps2;
27		led3 = &hps3;
28		eeprom-0 = &eeprom;
29	};
30
31	leds {
32		compatible = "gpio-leds";
33		hps3: hps_led_3 {
34			gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
35		};
36		hps2: hps_led_2 {
37			gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
38		};
39		hps1: hps_led_1 {
40			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
41		};
42		hps0: hps_led_0 {
43			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
44		};
45	};
46
47	soc {
48		gmac1: ethernet@ff702000  {
49			status = "okay";
50			local-mac-address = [e6 88 2d 82 1f d4];
51		};
52		gpio0: gpio@ff708000 {
53			status = "okay";
54		};
55		gpio1: gpio@ff709000 {
56			status = "okay";
57		};
58		gpio2: gpio@ff70a000 {
59			status = "okay";
60		};
61
62		i2c0: i2c@ffc04000 {
63			status = "okay";
64
65			eeprom: eeprom@51 {
66				compatible = "microchip,at24lc32a", "atmel,at24";
67				status = "okay";
68				reg = <0x51>;
69				size = <4096>;
70				address-width = <8>;
71				timeout = <25>;
72				pagesize = <32>;
73			};
74
75			ds3231: rtc@68 {
76				compatible = "maxim,ds3231";
77				reg = <0x68>;
78			};
79		};
80	};
81
82	/* Configuring Zephyr mandatory devices */
83	chosen {
84		zephyr,sram	   = &ddr0;
85		/*zephyr,flash	= &flash0;*/
86		zephyr,console	= &uart0;
87		zephyr,shell-uart = &uart0;
88		zephyr,ocm		= &ocram;
89	};
90};
91
92zephyr_udc0: &usb1 {
93	compatible = "snps,dwc2";
94	status = "okay";
95};
96