/* SPDX-License-Identifier: Apache-2.0 */

#include <arm/armv7-m.dtsi>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/i2c/i2c.h>
#include "gpio_gecko.h"

/ {
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu0: cpu@0 {
			compatible = "arm,cortex-m4f";
			reg = <0>;
		};
	};

	sram0: memory@20000000 {
		compatible = "mmio-sram";
	};

	soc {
		flash-controller@400c0000 {
			compatible = "silabs,gecko-flash-controller";
			label = "FLASH_CTRL";
			reg = <0x400c0000 0x78>;
			interrupts = <35 0>;

			#address-cells = <1>;
			#size-cells = <1>;

			flash0: flash@0 {
				compatible = "soc-nv-flash";
				label = "FLASH_0";
				write-block-size = <4>;
				erase-block-size = <2048>;
			};
		};

		usart0: usart@4000c000 { /* USART0 */
			compatible = "silabs,gecko-usart";
			reg = <0x4000c000 0x400>;
			interrupts = <3 0>, <4 0>;
			interrupt-names = "rx", "tx";
			peripheral-id = <0>;
			status = "disabled";
			label = "UART_0";
		};

		usart1: usart@4000c400 { /* USART1 */
			compatible = "silabs,gecko-usart";
			reg = <0x4000c400 0x400>;
			interrupts = <15 0>, <16 0>;
			interrupt-names = "rx", "tx";
			peripheral-id = <1>;
			status = "disabled";
			label = "UART_1";
		};

		usart2: usart@4000c800 { /* USART2 */
			compatible = "silabs,gecko-usart";
			reg = <0x4000c800 0x400>;
			interrupts = <18 0>, <19 0>;
			interrupt-names = "rx", "tx";
			peripheral-id = <2>;
			status = "disabled";
			label = "UART_2";
		};

		uart0: uart@4000e000 { /* UART0 */
			compatible = "silabs,gecko-uart";
			reg = <0x4000e000 0x400>;
			interrupts = <20 0>, <21 0>;
			interrupt-names = "rx", "tx";
			peripheral-id = <0>;
			status = "disabled";
			label = "UART_3";
		};

		uart1: uart@4000e400 { /* UART1 */
			compatible = "silabs,gecko-uart";
			reg = <0x4000e400 0x400>;
			interrupts = <22 0>, <23 0>;
			interrupt-names = "rx", "tx";
			peripheral-id = <1>;
			status = "disabled";
			label = "UART_4";
		};

		leuart0: leuart@40084000 { /* LEUART0 */
			compatible = "silabs,gecko-leuart";
			reg = <0x40084000 0x400>;
			interrupts = <24 0>;
			peripheral-id = <0>;
			status = "disabled";
			label = "LEUART_0";
		};

		leuart1: leuart@40084400 { /* LEUART1 */
			compatible = "silabs,gecko-leuart";
			reg = <0x40084400 0x400>;
			interrupts = <25 0>;
			peripheral-id = <1>;
			status = "disabled";
			label = "LEUART_1";
		};

		i2c0: i2c@4000a000 {
			compatible = "silabs,gecko-i2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x4000a000 0x400>;
			interrupts = <9 0>;
			label = "I2C_0";
			status = "disabled";
		};

		i2c1: i2c@4000a400 {
			compatible = "silabs,gecko-i2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x4000a400 0x400>;
			interrupts = <10 0>;
			label = "I2C_1";
			status = "disabled";
		};

		gpio@40006100 {
			compatible = "silabs,efm32-gpio";
			reg = <0x40006100 0xf00>;
			interrupts = <1 2 11 2>;
			interrupt-names = "GPIO_EVEN", "GPIO_ODD";
			label = "GPIO";

			ranges;
			#address-cells = <1>;
			#size-cells = <1>;

			gpioa: gpio@40006000 {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x40006000 0x24>;
				label = "GPIO_A";
				gpio-controller;
				#gpio-cells = <2>;
			};

			gpiob: gpio@40006024 {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x40006024 0x24>;
				label = "GPIO_B";
				gpio-controller;
				#gpio-cells = <2>;
			};

			gpioc: gpio@40006048 {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x40006048 0x24>;
				label = "GPIO_C";
				gpio-controller;
				#gpio-cells = <2>;
			};

			gpiod: gpio@4000606c {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x4000606c 0x24>;
				label = "GPIO_D";
				gpio-controller;
				#gpio-cells = <2>;
			};

			gpioe: gpio@40006090 {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x40006090 0x24>;
				label = "GPIO_E";
				gpio-controller;
				#gpio-cells = <2>;
			};

			gpiof: gpio@400060b4 {
				compatible = "silabs,efm32-gpio-port";
				reg = <0x400060b4 0x24>;
				label = "GPIO_F";
				gpio-controller;
				#gpio-cells = <2>;
			};
		};
	};
};

&nvic {
	arm,num-irq-priority-bits = <3>;
};
