| /* |
| * Copyright (c) 2020, NXP |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| |
| #include <nxp/nxp_rt6xx.dtsi> |
| |
| / { |
| model = "NXP MIMXRT685-EVK board"; |
| compatible = "nxp,mimxrt685"; |
| |
| aliases { |
| sw0 = &user_button_1; |
| sw1 = &user_button_2; |
| led0 = &green_led; |
| led1 = &blue_led; |
| led2 = &red_led; |
| usart-0 = &flexcomm0; |
| }; |
| |
| chosen { |
| zephyr,sram = &sram0; |
| zephyr,flash = &flash0; |
| zephyr,console = &flexcomm0; |
| zephyr,shell-uart = &flexcomm0; |
| }; |
| |
| flash0: flash@18000000 { |
| /* Octal flash MX25UM51345G */ |
| reg = <0x18000000 DT_SIZE_K(65536)>; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| user_button_1: button_0 { |
| label = "User SW1"; |
| gpios = <&gpio1 1 GPIO_ACTIVE_LOW>; |
| }; |
| user_button_2: button_1 { |
| label = "User SW2"; |
| gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| green_led: led_1 { |
| gpios = <&gpio0 14 0>; |
| label = "User LED_GREEN"; |
| }; |
| blue_led: led_2 { |
| gpios = <&gpio0 26 0>; |
| label = "User LED_BLUE"; |
| }; |
| red_led: led_3 { |
| gpios = <&gpio0 31 0>; |
| label = "User LED_RED"; |
| }; |
| }; |
| |
| arduino_header: arduino-connector { |
| compatible = "arduino-header-r3"; |
| #gpio-cells = <2>; |
| gpio-map-mask = <0xffffffff 0xffffffc0>; |
| gpio-map-pass-thru = <0 0x3f>; |
| gpio-map = <0 0 &gpio0 5 0>, /* A0 */ |
| <1 0 &gpio0 6 0>, /* A1 */ |
| <2 0 &gpio0 19 0>, /* A2 */ |
| <3 0 &gpio0 20 0>, /* A3 */ |
| <4 0 &gpio0 17 0>, /* A4 */ |
| <5 0 &gpio0 18 0>, /* A5 */ |
| <6 0 &gpio0 30 0>, /* D0 */ |
| <7 0 &gpio0 29 0>, /* D1 */ |
| <8 0 &gpio0 28 0>, /* D2 */ |
| <9 0 &gpio0 27 0>, /* D3 */ |
| <10 0 &gpio1 0 0>, /* D4 */ |
| <11 0 &gpio1 10 0>, /* D5 */ |
| <12 0 &gpio1 2 0>, /* D6 */ |
| <13 0 &gpio1 8 0>, /* D7 */ |
| <14 0 &gpio1 9 0>, /* D8 */ |
| <15 0 &gpio1 7 0>, /* D9 */ |
| <16 0 &gpio1 6 0>, /* D10 */ |
| <17 0 &gpio1 5 0>, /* D11 */ |
| <18 0 &gpio1 4 0>, /* D12 */ |
| <19 0 &gpio1 3 0>, /* D13 */ |
| <20 0 &gpio0 17 0>, /* D14 */ |
| <21 0 &gpio0 18 0>; /* D15 */ |
| }; |
| |
| power-states { |
| idle: idle { |
| compatible = "zephyr,power-state"; |
| power-state-name = "runtime-idle"; |
| min-residency-us = <10>; |
| }; |
| suspend: suspend { |
| compatible = "zephyr,power-state"; |
| power-state-name = "suspend-to-idle"; |
| min-residency-us = <1000>; |
| }; |
| }; |
| }; |
| |
| &cpu0 { |
| cpu-power-states = <&idle &suspend>; |
| }; |
| |
| /* |
| * RT600 EVK board uses OS timer as the kernel timer |
| * In case we need to switch to SYSTICK timer, then |
| * replace &os_timer with &systick |
| */ |
| &os_timer { |
| status = "okay"; |
| }; |
| |
| &flexcomm0 { |
| compatible = "nxp,lpc-usart"; |
| status = "okay"; |
| current-speed = <115200>; |
| }; |
| |
| arduino_i2c: &flexcomm2 { |
| compatible = "nxp,lpc-i2c"; |
| status = "okay"; |
| clock-frequency = <I2C_BITRATE_FAST>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| fxos8700@1e { |
| compatible = "nxp,fxos8700"; |
| reg = <0x1e>; |
| label = "FXOS8700"; |
| int1-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; |
| reset-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| arduino_spi: &flexcomm5 { |
| compatible = "nxp,lpc-spi"; |
| status = "okay"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| dmas = <&dma0 10>, <&dma0 11>; |
| dma-names = "rx", "tx"; |
| }; |
| |
| /* I2S receive channel */ |
| i2s0: &flexcomm1 { |
| status = "okay"; |
| compatible = "nxp,lpc-i2s"; |
| label = "I2S_0"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| dmas = <&dma0 2>; |
| dma-names = "rx"; |
| }; |
| |
| /* I2S transmit channel */ |
| i2s1: &flexcomm3 { |
| status = "okay"; |
| compatible = "nxp,lpc-i2s"; |
| label = "I2S_1"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| dmas = <&dma0 7>; |
| dma-names = "tx"; |
| }; |
| |
| &flexspi { |
| reg = <0x50134000 0x4000>, <0x18000000 DT_SIZE_M(64)>; |
| mx25um51345g: mx25um51345g@2 { |
| compatible = "nxp,imx-flexspi-mx25um51345g"; |
| size = <536870912>; |
| label = "MX25UM51345G"; |
| reg = <2>; |
| spi-max-frequency = <200000000>; |
| status = "okay"; |
| jedec-id = [c2 81 3a]; |
| |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| storage_partition: partition@3f00000 { |
| label = "storage"; |
| reg = <0x03f00000 DT_SIZE_M(1)>; |
| }; |
| }; |
| }; |
| }; |
| |
| &gpio0 { |
| status = "okay"; |
| }; |
| |
| &gpio1 { |
| status = "okay"; |
| }; |
| |
| &dma0 { |
| /* |
| * The total number of dma channels available is defined by |
| * FSL_FEATURE_DMA_NUMBER_OF_CHANNELS in the SoC features file. |
| * Since memory from the heap pool is allocated based on the number |
| * of DMA channels, set this property to as many channels is needed |
| * for the platform. Adjust HEAP_MEM_POOL_SIZE in case you need more |
| * memory. |
| */ |
| dma-channels = <20>; |
| status = "okay"; |
| }; |
| |
| &user_button_1 { |
| status = "okay"; |
| }; |
| |
| &user_button_2 { |
| status = "okay"; |
| }; |
| |
| &green_led { |
| status = "okay"; |
| }; |
| |
| &blue_led { |
| status = "okay"; |
| }; |
| |
| &red_led { |
| status = "okay"; |
| }; |