1/*
2 * Copyright (c) 2023 Schlumberger
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#include <mem.h>
8#include <infineon/cat3/xmc/xmc4xxx.dtsi>
9
10/ {
11	psram1: memory@1ffe8000 {
12		compatible = "mmio-sram";
13		reg = <0x1ffe8000 DT_SIZE_K(96)>;
14	};
15
16	dsram_joined: memory@20000000 {
17		compatible = "mmio-sram";
18		reg = <0x20000000 DT_SIZE_K(256)>;
19	};
20};
21
22&flash0 {
23	reg = <0xc000000 DT_SIZE_M(2)>;
24	pages_layout: pages_layout {
25		pages_layout_16k: pages_layout_16k {
26			pages-count = <8>;
27			pages-size = <DT_SIZE_K(16)>;
28		};
29		pages_layout_128k: pages_layout_128k {
30			pages-count = <1>;
31			pages-size = <DT_SIZE_K(128)>;
32		};
33		pages_layout_256k: pages_layout_256k {
34			pages-count = <7>;
35			pages-size = <DT_SIZE_K(256)>;
36		};
37	};
38};
39
40&gpio0 {
41	ngpios = <16>;
42};
43
44&gpio1 {
45	ngpios = <16>;
46};
47
48&gpio2 {
49	ngpios = <16>;
50};
51
52&gpio14 {
53	ngpios = <16>;
54	gpio-reserved-ranges = <10 2>;
55};
56
57&gpio15 {
58	ngpios = <16>;
59	gpio-reserved-ranges = <0 2>, <10 2>;
60};
61
62&pinctrl {
63	gpio3: gpio@48028300 {
64		compatible = "infineon,xmc4xxx-gpio";
65		gpio-controller;
66		#gpio-cells = <2>;
67		reg = <0x48028300 0x100>;
68		ngpios = <16>;
69		status = "disabled";
70	};
71
72	gpio4: gpio@48028400 {
73		compatible = "infineon,xmc4xxx-gpio";
74		gpio-controller;
75		#gpio-cells = <2>;
76		reg = <0x48028400 0x100>;
77		ngpios = <8>;
78		status = "disabled";
79	};
80
81	gpio5: gpio@48028500 {
82		compatible = "infineon,xmc4xxx-gpio";
83		gpio-controller;
84		#gpio-cells = <2>;
85		reg = <0x48028500 0x100>;
86		ngpios = <12>;
87		status = "disabled";
88	};
89
90	gpio6: gpio@48028600 {
91		compatible = "infineon,xmc4xxx-gpio";
92		gpio-controller;
93		#gpio-cells = <2>;
94		reg = <0x48028600 0x100>;
95		ngpios = <7>;
96		status = "disabled";
97	};
98};
99
100&can {
101	message-objects = <256>;
102	can_node3: can_node3@48014500 {
103		compatible = "infineon,xmc4xxx-can-node";
104		reg = <0x48014500 0x100>;
105		interrupts = <79 1>;
106		status = "disabled";
107	};
108
109	can_node4: can_node4@48014600 {
110		compatible = "infineon,xmc4xxx-can-node";
111		reg = <0x48014600 0x100>;
112		interrupts = <80 1>;
113		status = "disabled";
114	};
115
116	can_node5: can_node5@48014700 {
117		compatible = "infineon,xmc4xxx-can-node";
118		reg = <0x48014700 0x100>;
119		interrupts = <81 1>;
120		status = "disabled";
121	};
122};
123