|  | /* SPDX-License-Identifier: Apache-2.0 */ | 
|  |  | 
|  | /dts-v1/; | 
|  |  | 
|  | #include <nxp/nxp_kw41z.dtsi> | 
|  | #include "frdm_kw41z-pinctrl.dtsi" | 
|  | #include <zephyr/dt-bindings/gpio/arduino-header-r3.h> | 
|  | #include <zephyr/dt-bindings/input/input-event-codes.h> | 
|  |  | 
|  | / { | 
|  | model = "NXP Freedom KW41Z board"; | 
|  | compatible = "nxp,kw41z", "nxp,mkw41z4"; | 
|  |  | 
|  | aliases { | 
|  | led0 = &green_led; | 
|  | led1 = &blue_led; | 
|  | led2 = &red_led; | 
|  | sw0 = &user_button_3; | 
|  | sw1 = &user_button_4; | 
|  | pwm-led0 = &blue_pwm_led; | 
|  | pwm-led1 = &green_pwm_led; | 
|  | pwm-led2 = &red_pwm_led; | 
|  | blue-pwm-led = &blue_pwm_led; | 
|  | green-pwm-led = &green_pwm_led; | 
|  | red-pwm-led = &red_pwm_led; | 
|  | magn0 = &fxos8700; | 
|  | accel0 = &fxos8700; | 
|  | }; | 
|  |  | 
|  | chosen { | 
|  | zephyr,sram = &sram0; | 
|  | zephyr,flash = &flash0; | 
|  | zephyr,console = &lpuart0; | 
|  | zephyr,shell-uart = &lpuart0; | 
|  | zephyr,ieee802154 = &ieee802154; | 
|  | zephyr,code-partition = &slot0_partition; | 
|  | zephyr,uart-mcumgr = &lpuart0; | 
|  | }; | 
|  |  | 
|  | leds { | 
|  | compatible = "gpio-leds"; | 
|  |  | 
|  | red_led: led_0 { | 
|  | gpios = <&gpioc 1 GPIO_ACTIVE_LOW>; | 
|  | label = "User LD1"; | 
|  | }; | 
|  |  | 
|  | green_led: led_1 { | 
|  | gpios = <&gpioa 19 GPIO_ACTIVE_LOW>; | 
|  | label = "User LD2"; | 
|  | }; | 
|  |  | 
|  | blue_led: led_2 { | 
|  | gpios = <&gpioa 18 GPIO_ACTIVE_LOW>; | 
|  | label = "User LD3"; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | pwmleds { | 
|  | compatible = "pwm-leds"; | 
|  |  | 
|  | blue_pwm_led: pwm_led_0 { | 
|  | pwms = <&tpm2 0 PWM_MSEC(20) PWM_POLARITY_INVERTED>; | 
|  | label = "User PWM LD1"; | 
|  | }; | 
|  |  | 
|  | green_pwm_led: pwm_led_1 { | 
|  | pwms = <&tpm2 1 PWM_MSEC(20) PWM_POLARITY_INVERTED>; | 
|  | label = "User PWM LD2"; | 
|  | }; | 
|  |  | 
|  | red_pwm_led: pwm_led_2 { | 
|  | pwms = <&tpm0 2 PWM_MSEC(20) PWM_POLARITY_INVERTED>; | 
|  | label = "User PWM LD3"; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | gpio_keys { | 
|  | compatible = "gpio-keys"; | 
|  |  | 
|  | user_button_3: button_0 { | 
|  | label = "User SW3"; | 
|  | gpios = <&gpioc 4 GPIO_ACTIVE_LOW>; | 
|  | zephyr,code = <INPUT_KEY_0>; | 
|  | }; | 
|  |  | 
|  | user_button_4: button_1 { | 
|  | label = "User SW4"; | 
|  | gpios = <&gpioc 5 GPIO_ACTIVE_LOW>; | 
|  | zephyr,code = <INPUT_KEY_1>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | arduino_header: connector { | 
|  | compatible = "arduino-header-r3"; | 
|  | #gpio-cells = <2>; | 
|  | gpio-map-mask = <0xffffffff 0xffffffc0>; | 
|  | gpio-map-pass-thru = <0 0x3f>; | 
|  | gpio-map = /* A0 cannot be muxed as gpio */ | 
|  | <ARDUINO_HEADER_R3_A1 0 &gpiob 18 0>, | 
|  | <ARDUINO_HEADER_R3_A2 0 &gpiob 2 0>, | 
|  | <ARDUINO_HEADER_R3_A3 0 &gpiob 3 0>, | 
|  | <ARDUINO_HEADER_R3_A4 0 &gpiob 1 0>, | 
|  | <ARDUINO_HEADER_R3_D0 0 &gpioc 6 0>, | 
|  | <ARDUINO_HEADER_R3_D1 0 &gpioc 7 0>, | 
|  | <ARDUINO_HEADER_R3_D2 0 &gpioc 19 0>, | 
|  | <ARDUINO_HEADER_R3_D3 0 &gpioc 16 0>, | 
|  | <ARDUINO_HEADER_R3_D4 0 &gpioc 4 0>, | 
|  | <ARDUINO_HEADER_R3_D5 0 &gpioc 17 0>, | 
|  | <ARDUINO_HEADER_R3_D6 0 &gpioc 18 0>, | 
|  | <ARDUINO_HEADER_R3_D7 0 &gpioa 1 0>, | 
|  | <ARDUINO_HEADER_R3_D8 0 &gpioa 0 0>, | 
|  | <ARDUINO_HEADER_R3_D9 0 &gpioc 1 0>, | 
|  | <ARDUINO_HEADER_R3_D10 0 &gpioa 19 0>, | 
|  | <ARDUINO_HEADER_R3_D11 0 &gpioa 16 0>, | 
|  | <ARDUINO_HEADER_R3_D12 0 &gpioa 17 0>, | 
|  | <ARDUINO_HEADER_R3_D13 0 &gpioa 18 0>, | 
|  | <ARDUINO_HEADER_R3_D14 0 &gpioc 3 0>, | 
|  | <ARDUINO_HEADER_R3_D15 0 &gpioc 2 0>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | &sim { | 
|  | pllfll-select = <KINETIS_SIM_PLLFLLSEL_MCGPLLCLK>; | 
|  | er32k-select = <KINETIS_SIM_ER32KSEL_OSC32KCLK>; | 
|  | }; | 
|  |  | 
|  | &adc0 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&adc0_default>; | 
|  | pinctrl-names = "default"; | 
|  | }; | 
|  |  | 
|  | &i2c1 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&i2c1_default>; | 
|  | pinctrl-names = "default"; | 
|  |  | 
|  | fxos8700: fxos8700@1f { | 
|  | compatible = "nxp,fxos8700"; | 
|  | reg = <0x1f>; | 
|  | int1-gpios = <&gpioc 1 GPIO_ACTIVE_LOW>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | &lpuart0 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&lpuart0_default>; | 
|  | pinctrl-names = "default"; | 
|  | current-speed = <115200>; | 
|  | }; | 
|  |  | 
|  | &gpioa { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &gpioc { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &spi0 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&spi0_default>; | 
|  | pinctrl-names = "default"; | 
|  | }; | 
|  |  | 
|  | &tpm0 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&tpm0_default>; | 
|  | pinctrl-names = "default"; | 
|  | }; | 
|  |  | 
|  | &tpm1 { | 
|  | status = "disabled"; | 
|  | }; | 
|  |  | 
|  | &tpm2 { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&tmp2_default>; | 
|  | pinctrl-names = "default"; | 
|  | }; | 
|  |  | 
|  | &ieee802154 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &flash0 { | 
|  | partitions { | 
|  | compatible = "fixed-partitions"; | 
|  | #address-cells = <1>; | 
|  | #size-cells = <1>; | 
|  |  | 
|  | slot0_partition: partition@0 { | 
|  | label = "image-0"; | 
|  | reg = <0x00000000 0x00070000>; | 
|  | }; | 
|  |  | 
|  | storage_partition: partition@70000 { | 
|  | label = "storage"; | 
|  | reg = <0x00070000 0x00010000>; | 
|  | }; | 
|  | }; | 
|  | }; |