@ -15,32 +15,34 @@
compatible = "silabs,xg24_rb4187c", "silabs,efr32mg24";
compatible = "silabs,xg24_rb4187c", "silabs,efr32mg24";
chosen {
chosen {
zephyr,bt-hci = &bt_hci_silabs;
zephyr,code-partition = &slot0_partition;
zephyr,console = &usart0;
zephyr,console = &usart0;
zephyr,display = &ls0xx_ls013b7dh03;
zephyr,flash = &flash0;
zephyr,shell-uart = &usart0;
zephyr,shell-uart = &usart0;
zephyr,uart-pipe = &usart0;
zephyr,sram = &sram0;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,uart-pipe = &usart0;
zephyr,code-partition = &slot0_partition;
zephyr,bt-hci = &bt_hci_silabs;
zephyr,display = &ls0xx_ls013b7dh03;
};
};
/* These aliases are provided for compatibility with samples */
/* These aliases are provided for compatibility with samples */
aliases {
aliases {
dht0 = &si7021;
led0 = &led0;
led0 = &led0;
led1 = &led1;
led1 = &led1;
sw0 = &button0;
sw0 = &button0;
sw1 = &button1;
sw1 = &button1;
watchdog0 = &wdog0;
watchdog0 = &wdog0;
dht0 = &si7021;
};
};
leds {
leds {
compatible = "gpio-leds";
compatible = "gpio-leds";
led0: led_0 {
led0: led_0 {
gpios = <&gpiob 2 GPIO_ACTIVE_HIGH>;
gpios = <&gpiob 2 GPIO_ACTIVE_HIGH>;
label = "LED 0";
label = "LED 0";
};
};
led1: led_1 {
led1: led_1 {
gpios = <&gpiob 4 GPIO_ACTIVE_HIGH>;
gpios = <&gpiob 4 GPIO_ACTIVE_HIGH>;
label = "LED 1";
label = "LED 1";
@ -49,11 +51,13 @@
buttons {
buttons {
compatible = "gpio-keys";
compatible = "gpio-keys";
button0: button_0 {
button0: button_0 {
gpios = <&gpiob 1 GPIO_ACTIVE_LOW>;
gpios = <&gpiob 1 GPIO_ACTIVE_LOW>;
label = "User Push Button 0";
label = "User Push Button 0";
zephyr,code = <INPUT_KEY_0>;
zephyr,code = <INPUT_KEY_0>;
};
};
button1: button_1 {
button1: button_1 {
gpios = <&gpiob 3 GPIO_ACTIVE_LOW>;
gpios = <&gpiob 3 GPIO_ACTIVE_LOW>;
label = "User Push Button 1";
label = "User Push Button 1";
@ -63,9 +67,8 @@
sensor_enable: sensor_enable {
sensor_enable: sensor_enable {
compatible = "regulator-fixed";
compatible = "regulator-fixed";
regulator-name = "sensor_enable";
enable-gpios = <&gpiod 3 GPIO_ACTIVE_HIGH>;
enable-gpios = <&gpiod 3 GPIO_ACTIVE_HIGH>;
status = "okay ";
regulator-name = "sensor_enable ";
};
};
};
};
@ -84,25 +87,25 @@
};
};
&hfxo {
&hfxo {
status = "okay";
ctune = <95>;
ctune = <95>;
precision = <50>;
precision = <50>;
status = "okay";
};
};
&lfxo {
&lfxo {
status = "okay";
ctune = <44>;
ctune = <44>;
precision = <50>;
precision = <50>;
status = "okay";
};
};
&hfrcodpll {
&hfrcodpll {
clock-frequency = <DT_FREQ_M(78)>;
clock-frequency = <DT_FREQ_M(78)>;
clocks = <&hfxo>;
clocks = <&hfxo>;
dpll-n = <3839>;
dpll-autorecover;
dpll-m = <1919>;
dpll-edge = "fall";
dpll-edge = "fall";
dpll-lock = "phase";
dpll-lock = "phase";
dpll-autorecover;
dpll-m = <1919>;
dpll-n = <3839>;
};
};
&em23grpaclk {
&em23grpaclk {
@ -134,20 +137,21 @@
&eusart1 {
&eusart1 {
compatible = "silabs,eusart-spi";
compatible = "silabs,eusart-spi";
pinctrl-0 = <&eusart1_default>;
pinctrl-names = "default";
clock-frequency = <DT_FREQ_M(10)>;
cs-gpios = <&gpioc 8 GPIO_ACTIVE_HIGH>, <&gpioc 4 GPIO_ACTIVE_LOW>;
#address-cells = <1>;
#address-cells = <1>;
#size-cells = <0>;
#size-cells = <0>;
clock-frequency = <DT_FREQ_M(10)>;
pinctrl-0 = <&eusart1_default>;
pinctrl-names = "default";
status = "okay";
status = "okay";
cs-gpios = <&gpioc 8 GPIO_ACTIVE_HIGH>, <&gpioc 4 GPIO_ACTIVE_LOW>;
ls0xx_ls013b7dh03: ls0xx@0 {
ls0xx_ls013b7dh03: ls0xx@0 {
compatible = "sharp,ls0xx";
compatible = "sharp,ls0xx";
spi-max-frequency = <DT_FREQ_K(1100)>;
reg = <0>;
reg = <0>;
width = <128>;
height = <128>;
height = <128>;
spi-max-frequency = <DT_FREQ_K(1100)>;
width = <128>;
extcomin-gpios = <&gpioc 6 GPIO_ACTIVE_HIGH>;
extcomin-gpios = <&gpioc 6 GPIO_ACTIVE_HIGH>;
extcomin-frequency = <60>;
extcomin-frequency = <60>;
disp-en-gpios = <&gpioc 9 GPIO_ACTIVE_HIGH>;
disp-en-gpios = <&gpioc 9 GPIO_ACTIVE_HIGH>;
@ -156,12 +160,12 @@
mx25r80: mx25r8035f@1 {
mx25r80: mx25r8035f@1 {
compatible = "jedec,spi-nor";
compatible = "jedec,spi-nor";
reg = <1>;
reg = <1>;
spi-max-frequency = <DT_FREQ_M(33)>;
size = <DT_SIZE_M(8)>;
jedec-id = [c2 28 14];
has-dpd;
dpd-wakeup-sequence = <30000 20 35000>;
dpd-wakeup-sequence = <30000 20 35000>;
has-dpd;
jedec-id = [c2 28 14];
mxicy,mx25r-power-mode = "low-power";
mxicy,mx25r-power-mode = "low-power";
size = <DT_SIZE_M(8)>;
spi-max-frequency = <DT_FREQ_M(33)>;
zephyr,pm-device-runtime-auto;
zephyr,pm-device-runtime-auto;
};
};
};
};
@ -175,7 +179,6 @@
compatible = "silabs,si7006";
compatible = "silabs,si7006";
reg = <0x40>;
reg = <0x40>;
vin-supply = <&sensor_enable>;
vin-supply = <&sensor_enable>;
status = "okay";
};
};
};
};
@ -219,10 +222,10 @@
};
};
&dcdc {
&dcdc {
status = "okay";
regulator-boot-on;
regulator-boot-on;
regulator-initial-mode = <SILABS_DCDC_MODE_BUCK>;
regulator-initial-mode = <SILABS_DCDC_MODE_BUCK>;
silabs,pfmx-peak-current-milliamp = <100>;
silabs,pfmx-peak-current-milliamp = <100>;
status = "okay";
};
};
&flash0 {
&flash0 {
@ -233,33 +236,33 @@
/* Reserve 48 kB for the bootloader */
/* Reserve 48 kB for the bootloader */
boot_partition: partition@0 {
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 DT_SIZE_K(48)>;
reg = <0x0 DT_SIZE_K(48)>;
label = "mcuboot";
read-only;
read-only;
};
};
/* Reserve 720 kB for the application in slot 0 */
/* Reserve 720 kB for the application in slot 0 */
slot0_partition: partition@c000 {
slot0_partition: partition@c000 {
label = "image-0";
reg = <0x0000c000 0x000B4000>;
reg = <0x0000c000 0x000B4000>;
label = "image-0";
};
};
/* Reserve 720 kB for the application in slot 1 */
/* Reserve 720 kB for the application in slot 1 */
slot1_partition: partition@C0000 {
slot1_partition: partition@C0000 {
label = "image-1";
reg = <0x000C0000 0x000B4000>;
reg = <0x000C0000 0x000B4000>;
label = "image-1";
};
};
/* Reserve 32 kB for the scratch partition */
/* Reserve 32 kB for the scratch partition */
scratch_partition: partition@174000 {
scratch_partition: partition@174000 {
label = "image-scratch";
reg = <0x00174000 DT_SIZE_K(32)>;
reg = <0x00174000 DT_SIZE_K(32)>;
label = "image-scratch";
};
};
/* Set 16 kB of storage at the end of the 1536 kB of flash */
/* Set 16 kB of storage at the end of the 1536 kB of flash */
storage_partition: partition@17c000 {
storage_partition: partition@17c000 {
label = "storage";
reg = <0x0017c000 DT_SIZE_K(16)>;
reg = <0x0017c000 DT_SIZE_K(16)>;
label = "storage";
};
};
};
};
};
};