You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
2.7 KiB
148 lines
2.7 KiB
/* |
|
* Copyright (c) 2024 GARDENA GmbH |
|
* |
|
* SPDX-License-Identifier: Apache-2.0 |
|
*/ |
|
|
|
#include <arm/armv7-m.dtsi> |
|
#include <dt-bindings/gpio/gpio.h> |
|
#include <freq.h> |
|
|
|
/ { |
|
chosen { |
|
zephyr,flash-controller = &flash; |
|
}; |
|
|
|
cpus { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
cpu0: cpu@0 { |
|
compatible = "arm,cortex-m3"; |
|
device_type = "cpu"; |
|
clock-frequency = <20000000>; |
|
reg = <0>; |
|
}; |
|
}; |
|
|
|
sram0: memory@20000000 { |
|
compatible = "mmio-sram"; |
|
}; |
|
|
|
pinctrl: pinctrl { |
|
compatible = "silabs,si32-pinctrl"; |
|
status = "okay"; |
|
}; |
|
|
|
clocks { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
pll0: pll0@4003b000 { |
|
compatible = "silabs,si32-pll"; |
|
#clock-cells = <0>; |
|
reg = <0x4003b000>; |
|
status = "disabled"; |
|
}; |
|
|
|
clk_ahb: clk-ahb { |
|
compatible = "silabs,si32-ahb"; |
|
#clock-cells = <0>; |
|
status = "disabled"; |
|
}; |
|
|
|
clk_apb: clk-apb { |
|
compatible = "silabs,si32-apb"; |
|
#clock-cells = <0>; |
|
divider = <1>; |
|
clocks = <&clk_ahb>; |
|
status = "disabled"; |
|
}; |
|
}; |
|
|
|
soc { |
|
dma: dma-controller@40036000 { |
|
compatible = "silabs,si32-dma"; |
|
reg = <0x40036000 0x1000>; |
|
interrupts = <4 0>, <5 0>, <6 0>, <7 0>, |
|
<8 0>, <9 0>, <10 0>, <11 0>, |
|
<12 0>, <13 0>, <14 0>, <15 0>, |
|
<16 0>, <17 0>, <18 0>, <19 0>; |
|
dma-channels = <16>; |
|
#dma-cells = <3>; |
|
status = "disabled"; |
|
}; |
|
|
|
crypto: crypto@40027000 { |
|
compatible = "silabs,si32-aes"; |
|
reg = <0x40027000 0x1000>; |
|
interrupts = <42 0>; |
|
dmas = <&dma 5 0 0>, |
|
<&dma 6 0 0>, |
|
<&dma 7 0 0>; |
|
dma-names = "tx", "rx", "xor"; |
|
status = "disabled"; |
|
}; |
|
|
|
flash: flash-controller@4002e000 { |
|
compatible = "silabs,si32-flash-controller"; |
|
reg = <0x4002e000 0x1000>; |
|
|
|
#address-cells = <1>; |
|
#size-cells = <1>; |
|
|
|
flash0: flash@0 { |
|
compatible = "soc-nv-flash"; |
|
write-block-size = <2>; |
|
}; |
|
}; |
|
|
|
usart0: usart@40000000 { |
|
compatible = "silabs,si32-usart"; |
|
reg = <0x40000000 0x1000>; |
|
interrupts = <27 0>; |
|
clocks = <&clk_apb>; |
|
status = "disabled"; |
|
}; |
|
|
|
usart1: usart@40001000 { |
|
compatible = "silabs,si32-usart"; |
|
reg = <0x40001000 0x1000>; |
|
interrupts = <28 0>; |
|
clocks = <&clk_apb>; |
|
status = "disabled"; |
|
}; |
|
|
|
gpio0: gpio@4002a0a0 { |
|
compatible = "silabs,si32-gpio"; |
|
gpio-controller; |
|
#gpio-cells = <2>; |
|
reg = <0x4002a0a0 0xa0>; |
|
}; |
|
|
|
gpio1: gpio@4002a140 { |
|
compatible = "silabs,si32-gpio"; |
|
gpio-controller; |
|
#gpio-cells = <2>; |
|
reg = <0x4002a140 0xa0>; |
|
}; |
|
|
|
gpio2: gpio@4002a1e0 { |
|
compatible = "silabs,si32-gpio"; |
|
gpio-controller; |
|
#gpio-cells = <2>; |
|
reg = <0x4002a1e0 0xc0>; |
|
}; |
|
|
|
gpio3: gpio@4002a320 { |
|
compatible = "silabs,si32-gpio"; |
|
gpio-controller; |
|
#gpio-cells = <2>; |
|
reg = <0x4002a320 0xa0>; |
|
}; |
|
}; |
|
}; |
|
|
|
&nvic { |
|
arm,num-irq-priority-bits = <4>; |
|
};
|
|
|