Skip to content

Commit 99a0b77

Browse files
boards: nxp: Add kw45b41z-evk board support
NXP KW45 EVK board support Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
1 parent 98f2f58 commit 99a0b77

File tree

11 files changed

+300
-0
lines changed

11 files changed

+300
-0
lines changed

boards/nxp/kw45b41z_evk/Kconfig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_INIT_PRIORITY
5+
int "Board initialization priority"
6+
default 45
7+
help
8+
Board initialization priority.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# KW45B41Z-EVK board
2+
3+
# Copyright 2025 NXP
4+
# SPDX-License-Identifier: Apache-2.0
5+
6+
if BOARD_KW45B41Z_EVK
7+
8+
config BT_DIS_MANUF
9+
default "NXP"
10+
11+
endif # BOARD_KW45B41Z_EVK
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_KW45B41Z_EVK
5+
select SOC_KW45B41Z83
6+
select SOC_PART_NUMBER_KW45B41Z83AFTA

boards/nxp/kw45b41z_evk/board.cmake

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
board_runner_args(jlink "--device=kw45b41z83" "--reset-after-load")
5+
6+
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)

boards/nxp/kw45b41z_evk/board.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
board:
5+
name: kw45b41z_evk
6+
vendor: nxp
7+
socs:
8+
- name: kw45b41z83
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
/*
2+
* Copyright 2025 NXP
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
#include <nxp/mcx/MCXW716CMFTA-pinctrl.h>
7+
8+
&pinctrl {
9+
pinmux_lpuart0: pinmux_lpuart0 {
10+
group0 {
11+
pinmux = <LPUART0_RX_PTA16>, <LPUART0_TX_PTA17>;
12+
drive-strength = "low";
13+
slew-rate = "fast";
14+
};
15+
};
16+
17+
pinmux_lpuart1: pinmux_lpuart1 {
18+
group0 {
19+
pinmux = <LPUART1_RX_PTC2>, <LPUART1_TX_PTC3>;
20+
drive-strength = "low";
21+
slew-rate = "fast";
22+
};
23+
};
24+
25+
pinmux_tpm0: pinmux_tpm0 {
26+
group0 {
27+
pinmux = <TPM0_CH0_PTA21>,
28+
<TPM0_CH1_PTA20>,
29+
<TPM0_CH2_PTA19>;
30+
drive-strength = "low";
31+
slew-rate = "fast";
32+
};
33+
};
34+
35+
pinmux_lpi2c1: pinmux_lpi2c1 {
36+
group0 {
37+
pinmux = <LPI2C1_SCL_PTC0>,
38+
<LPI2C1_SDA_PTC1>;
39+
drive-strength = "low";
40+
slew-rate = "fast";
41+
bias-pull-up;
42+
};
43+
};
44+
45+
pinmux_lpspi1: pinmux_lpspi1 {
46+
group0 {
47+
pinmux = <LPSPI1_SIN_PTB1>,
48+
<LPSPI1_SOUT_PTB3>;
49+
slew-rate = "fast";
50+
drive-strength = "low";
51+
};
52+
};
53+
54+
pinmux_flexcan: pinmux_flexcan {
55+
group0 {
56+
pinmux = <CAN0_RX_PTC5>, <CAN0_TX_PTC4>;
57+
slew-rate = "slow";
58+
drive-strength = "low";
59+
};
60+
};
61+
62+
};
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
/*
2+
* Copyright 2025 NXP
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
/dts-v1/;
7+
8+
#include <nxp/nxp_mcxw71.dtsi>
9+
#include "kw45b41z_evk-pinctrl.dtsi"
10+
11+
/ {
12+
model = "NXP KW45B41Z83-EVK board";
13+
compatible = "nxp,kw45";
14+
15+
aliases {
16+
led0 = &blue_led;
17+
blue-pwm-led = &blue_pwm_led;
18+
green-pwm-led = &green_pwm_led;
19+
red-pwm-led = &red_pwm_led;
20+
};
21+
22+
chosen {
23+
zephyr,flash = &flash;
24+
zephyr,flash-controller = &fmu;
25+
zephyr,code-partition = &slot0_partition;
26+
zephyr,sram = &stcm0;
27+
zephyr,console = &lpuart1;
28+
zephyr,shell-uart = &lpuart1;
29+
zephyr,uart-pipe = &lpuart0;
30+
zephyr,canbus = &flexcan0;
31+
};
32+
33+
leds {
34+
compatible = "gpio-leds";
35+
blue_led: led {
36+
gpios = <&gpiob 0 GPIO_ACTIVE_LOW>;
37+
};
38+
};
39+
40+
pwmleds {
41+
compatible = "pwm-leds";
42+
blue_pwm_led: pwm_led_0 {
43+
pwms = <&tpm0 1 PWM_USEC(200) PWM_POLARITY_NORMAL>;
44+
};
45+
green_pwm_led: pwm_led_1 {
46+
pwms = <&tpm0 2 PWM_USEC(200) PWM_POLARITY_NORMAL>;
47+
};
48+
red_pwm_led: pwm_led_2 {
49+
pwms = <&tpm0 0 PWM_USEC(200) PWM_POLARITY_NORMAL>;
50+
};
51+
};
52+
};
53+
54+
&vref {
55+
status = "okay";
56+
};
57+
58+
&gpiob {
59+
status = "okay";
60+
};
61+
62+
&lpuart0 {
63+
current-speed = <115200>;
64+
status = "okay";
65+
pinctrl-0 = <&pinmux_lpuart0>;
66+
pinctrl-names = "default";
67+
};
68+
69+
&lpuart1 {
70+
current-speed = <115200>;
71+
status = "okay";
72+
pinctrl-0 = <&pinmux_lpuart1>;
73+
pinctrl-names = "default";
74+
};
75+
76+
&lpi2c1 {
77+
status = "okay";
78+
pinctrl-0 = <&pinmux_lpi2c1>;
79+
pinctrl-names = "default";
80+
};
81+
82+
&lpspi1 {
83+
status = "okay";
84+
pinctrl-0 = <&pinmux_lpspi1>;
85+
pinctrl-names = "default";
86+
};
87+
88+
&flexcan0 {
89+
status = "okay";
90+
bitrate = <125000>;
91+
pinctrl-0 = <&pinmux_flexcan>;
92+
pinctrl-names = "default";
93+
94+
can-transceiver {
95+
max-bitrate = <420000000>;
96+
};
97+
};
98+
99+
&flash {
100+
partitions {
101+
compatible = "fixed-partitions";
102+
#address-cells = <1>;
103+
#size-cells = <1>;
104+
105+
boot_partition: partition@0 {
106+
reg = <0x0 DT_SIZE_K(64)>;
107+
};
108+
109+
slot0_partition: partition@10000 {
110+
reg = <0x10000 DT_SIZE_K(416)>;
111+
};
112+
113+
slot1_partition: partition@78000 {
114+
reg = <0x78000 DT_SIZE_K(416)>;
115+
};
116+
117+
storage_partition: partition@e0000 {
118+
reg = <0xe0000 DT_SIZE_K(128)>;
119+
};
120+
};
121+
};
122+
123+
&fmu {
124+
status = "okay";
125+
};
126+
127+
&tpm0 {
128+
status = "okay";
129+
pinctrl-0 = <&pinmux_tpm0>;
130+
pinctrl-names = "default";
131+
};
132+
133+
&lptmr0 {
134+
status = "okay";
135+
};
136+
137+
&flexcan0 {
138+
status = "okay";
139+
pinctrl-0 = <&pinmux_flexcan>;
140+
pinctrl-names = "default";
141+
142+
can-transceiver {
143+
max-bitrate = <5000000>;
144+
};
145+
};
146+
147+
&nbu {
148+
status = "okay";
149+
wakeup-source;
150+
};
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
identifier: kw45b41z_evk
5+
name: NXP KW45B41Z-EVK
6+
type: mcu
7+
arch: arm
8+
ram: 64
9+
flash: 1024
10+
toolchain:
11+
- zephyr
12+
- gnuarmemb
13+
- xtools
14+
supported:
15+
- can
16+
- gpio
17+
- spi
18+
- watchdog
19+
- i2c
20+
vendor: nxp
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Copyright 2025 NXP
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
CONFIG_ARM_MPU=y
5+
CONFIG_TRUSTED_EXECUTION_SECURE=y
6+
CONFIG_PINCTRL=y
7+
CONFIG_SERIAL=y
8+
CONFIG_CONSOLE=y
9+
CONFIG_UART_CONSOLE=y
10+
CONFIG_GPIO=y

samples/bluetooth/beacon/sample.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ tests:
99
- nrf51dk/nrf51822
1010
- nrf52dk/nrf52832
1111
- nrf54l15dk/nrf54l15/cpuapp
12+
- kw45b41z_evk
1213
tags: bluetooth
1314
integration_platforms:
1415
- qemu_cortex_m3

0 commit comments

Comments
 (0)