| /* |
| * Copyright (c) 2019-2021 Vestas Wind Systems A/S |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| |
| #include <nxp/nxp_ke18f512vlx16.dtsi> |
| #include <zephyr/dt-bindings/clock/kinetis_scg.h> |
| #include <zephyr/dt-bindings/pwm/pwm.h> |
| #include "twr_ke18f-pinctrl.dtsi" |
| |
| / { |
| model = "NXP Kinetis KE18 MCU Tower System Module"; |
| compatible = "nxp,mke18f16", "nxp,ke18f", "nxp,ke1xf"; |
| |
| aliases { |
| led0 = &orange_led; |
| led1 = &yellow_led; |
| led2 = &green_led; |
| led3 = &red_led; |
| led4 = &tri_red_led; |
| led5 = &tri_green_led; |
| led6 = &tri_blue_led; |
| pwm-led0 = &orange_pwm_led; |
| pwm-led1 = &yellow_pwm_led; |
| pwm-led2 = &green_pwm_led; |
| pwm-led3 = &red_pwm_led; |
| red-pwm-led = &tri_red_pwm_led; |
| green-pwm-led = &tri_green_pwm_led; |
| blue-pwm-led = &tri_blue_pwm_led; |
| sw0 = &user_button_3; |
| sw1 = &user_button_2; |
| magn0 = &fxos8700; |
| accel0 = &fxos8700; |
| }; |
| |
| chosen { |
| /* |
| * Note: when using DMA, the SRAM region must be set to |
| * a memory region that is not cached by the chip. If the chosen |
| * sram region is changed and DMA is in use, you will |
| * encounter issues! |
| */ |
| zephyr,sram = &sram0; |
| zephyr,flash = &flash0; |
| zephyr,code-partition = &slot0_partition; |
| zephyr,console = &lpuart0; |
| zephyr,shell-uart = &lpuart0; |
| zephyr,uart-pipe = &lpuart0; |
| zephyr,canbus = &flexcan0; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| orange_led: led_0 { |
| gpios = <&gpioc 13 GPIO_ACTIVE_LOW>; |
| label = "User LED D9"; |
| }; |
| yellow_led: led_1 { |
| gpios = <&gpioc 12 GPIO_ACTIVE_LOW>; |
| label = "User LED D8"; |
| }; |
| green_led: led_2 { |
| gpios = <&gpioc 11 GPIO_ACTIVE_LOW>; |
| label = "User LED D7"; |
| }; |
| red_led: led_3 { |
| gpios = <&gpioc 10 GPIO_ACTIVE_LOW>; |
| label = "User LED D6"; |
| }; |
| |
| tri_red_led: led_4 { |
| gpios = <&gpiod 16 GPIO_ACTIVE_LOW>; |
| label = "User Tricolor LED D5 (Red)"; |
| }; |
| tri_green_led: led_5 { |
| gpios = <&gpiod 15 GPIO_ACTIVE_LOW>; |
| label = "User Tricolor LED D5 (Green)"; |
| }; |
| tri_blue_led: led_6 { |
| gpios = <&gpiob 5 GPIO_ACTIVE_LOW>; |
| label = "User Tricolor LED D5 (Blue)"; |
| }; |
| }; |
| |
| pwmleds { |
| compatible = "pwm-leds"; |
| orange_pwm_led: led_pwm_0 { |
| pwms = <&ftm3 7 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User PWM LED D9"; |
| }; |
| yellow_pwm_led: led_pwm_1 { |
| pwms = <&ftm3 6 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User PWM LED D8"; |
| }; |
| green_pwm_led: led_pwm_2 { |
| pwms = <&ftm3 5 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User PWM LED D7"; |
| }; |
| red_pwm_led: led_pwm_3 { |
| pwms = <&ftm3 4 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User PWM LED D6"; |
| }; |
| |
| tri_red_pwm_led: led_pwm_4 { |
| pwms = <&ftm0 1 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User Tricolor PWM LED D5 (Red)"; |
| }; |
| tri_green_pwm_led: led_pwm_5 { |
| pwms = <&ftm0 0 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User Tricolor PWM LED D5 (Green)"; |
| }; |
| tri_blue_pwm_led: led_pwm_6 { |
| pwms = <&ftm0 5 PWM_MSEC(20) PWM_POLARITY_INVERTED>; |
| label = "User Tricolor PWM LED D5 (Blue)"; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| user_button_2: button_0 { |
| label = "User SW2"; |
| gpios = <&gpiod 3 GPIO_ACTIVE_LOW>; |
| }; |
| user_button_3: button_1 { |
| label = "User SW3"; |
| gpios = <&gpiod 6 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| |
| flexio: flexio@4005a000 { |
| reg = <0x4005a000 0x1000>; |
| compatible = "nxp,flexio"; |
| pinctrl-0 = <&flexio_clockout>; |
| pinctrl-names = "default"; |
| }; |
| }; |
| |
| &cpu0 { |
| clock-frequency = <120000000>; |
| cpu-power-states = <&idle &stop>; |
| }; |
| |
| &idle { |
| min-residency-us = <1>; |
| }; |
| |
| &stop { |
| min-residency-us = <20000>; |
| exit-latency-us = <13>; |
| }; |
| |
| &sim { |
| clkout-source = <1>; |
| clkout-divider = <0>; |
| }; |
| |
| &scg { |
| sosc-mode = <KINETIS_SCG_SOSC_MODE_LOW_POWER>; |
| |
| sosc_clk { |
| status = "okay"; |
| clock-frequency = <8000000>; |
| }; |
| |
| pll { |
| clock-mult = <30>; |
| }; |
| |
| core_clk { |
| clocks = <&spll_clk>; |
| }; |
| |
| bus_clk { |
| clock-div = <2>; |
| }; |
| |
| slow_clk { |
| clock-div = <5>; |
| }; |
| |
| clkout_clk { |
| status = "okay"; |
| }; |
| |
| splldiv1_clk { |
| clock-div = <1>; |
| }; |
| |
| splldiv2_clk { |
| clock-div = <2>; |
| }; |
| |
| sircdiv1_clk { |
| clock-div = <1>; |
| }; |
| |
| sircdiv2_clk { |
| clock-div = <2>; |
| }; |
| |
| fircdiv1_clk { |
| clock-div = <1>; |
| }; |
| |
| fircdiv2_clk { |
| clock-div = <1>; |
| }; |
| |
| soscdiv1_clk { |
| clock-div = <1>; |
| }; |
| |
| soscdiv2_clk { |
| clock-div = <1>; |
| }; |
| }; |
| |
| &lpuart0 { |
| status = "okay"; |
| current-speed = <115200>; |
| pinctrl-0 = <&lpuart0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &ftm0 { |
| status = "okay"; |
| compatible = "nxp,kinetis-ftm-pwm"; |
| #pwm-cells = <3>; |
| pinctrl-0 = <&ftm0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &ftm3 { |
| status = "okay"; |
| compatible = "nxp,kinetis-ftm-pwm"; |
| #pwm-cells = <3>; |
| pinctrl-0 = <&ftm3_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &lpi2c0 { |
| status = "okay"; |
| pinctrl-0 = <&lpi2c0_default>; |
| pinctrl-names = "default"; |
| scl-gpios = <&gpioa 3 GPIO_ACTIVE_HIGH>; |
| sda-gpios = <&gpioa 2 GPIO_ACTIVE_HIGH>; |
| |
| fxos8700: fxos8700@1d { |
| compatible = "nxp,fxos8700"; |
| reg = <0x1d>; |
| reset-gpios = <&gpioc 15 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| &lpi2c1 { |
| status = "okay"; |
| pinctrl-0 = <&lpi2c1_default>; |
| pinctrl-names = "default"; |
| scl-gpios = <&gpiod 9 GPIO_ACTIVE_HIGH>; |
| sda-gpios = <&gpiod 8 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| &lpspi0 { |
| status = "okay"; |
| pinctrl-0 = <&lpspi0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &lpspi1 { |
| status = "okay"; |
| pinctrl-0 = <&lpspi1_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &dac0 { |
| status = "okay"; |
| pinctrl-0 = <&dac0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &adc0 { |
| status = "okay"; |
| sample-time = <12>; |
| pinctrl-0 = <&adc0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &temp0 { |
| status = "okay"; |
| }; |
| |
| &flexcan0 { |
| status = "okay"; |
| bus-speed = <125000>; |
| pinctrl-0 = <&flexcan0_default>; |
| pinctrl-names = "default"; |
| |
| can-transceiver { |
| max-bitrate = <1000000>; |
| }; |
| }; |
| |
| &gpioa { |
| status = "okay"; |
| }; |
| |
| &gpiob { |
| status = "okay"; |
| }; |
| |
| &gpioc { |
| status = "okay"; |
| }; |
| |
| &gpiod { |
| status = "okay"; |
| }; |
| |
| &gpioe { |
| status = "okay"; |
| }; |
| |
| &edma { |
| status = "okay"; |
| }; |
| |
| &flash0 { |
| |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| boot_partition: partition@0 { |
| label = "mcuboot"; |
| reg = <0x00000000 0xc000>; |
| }; |
| slot0_partition: partition@c000 { |
| label = "image-0"; |
| reg = <0x0000c000 0x32000>; |
| }; |
| slot1_partition: partition@3e000 { |
| label = "image-1"; |
| reg = <0x0003e000 0x32000>; |
| }; |
| scratch_partition: partition@70000 { |
| label = "image-scratch"; |
| reg = <0x00070000 0xa000>; |
| }; |
| storage_partition: partition@7a000 { |
| label = "storage"; |
| reg = <0x0007a000 0x00006000>; |
| }; |
| }; |
| }; |