1/* 2 * Copyright 2022 NXP 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7/dts-v1/; 8 9#include <nxp/nxp_lpc55S36_ns.dtsi> 10#include "lpcxpresso55s36-pinctrl.dtsi" 11#include <zephyr/dt-bindings/input/input-event-codes.h> 12 13/ { 14 model = "NXP LPCXpresso55S36 board"; 15 compatible = "nxp,lpc55xxx", "nxp,lpc"; 16 17 chosen { 18 zephyr,sram = &sram0; 19 zephyr,flash = &flash0; 20 zephyr,code-partition = &slot0_partition; 21 zephyr,uart-mcumgr = &flexcomm0; 22 zephyr,console = &flexcomm0; 23 zephyr,shell-uart = &flexcomm0; 24 zephyr,canbus = &can0; 25 zephyr,flash-controller = &iap; 26 }; 27 28 aliases{ 29 led0 = &red_led; 30 led1 = &green_led; 31 led2 = &blue_led; 32 sw0 = &btn_wk; 33 sw1 = &btn_usr; 34 usart-0 = &flexcomm0; 35 pwm-0 = &flexpwm1_pwm0; 36 mcuboot-button0 = &btn_wk; 37 }; 38 39 leds { 40 compatible = "gpio-leds"; 41 red_led: led_0 { 42 gpios = <&gpio1 28 0>; 43 label = "Red LED"; 44 }; 45 green_led: led_1 { 46 gpios = <&gpio0 22 0>; 47 label = "Green LED"; 48 }; 49 blue_led: led_2 { 50 gpios = <&gpio1 11 0>; 51 label = "Blue LED"; 52 }; 53 }; 54 55 gpio_keys { 56 compatible = "gpio-keys"; 57 btn_wk: button_0 { 58 label = "Wakeup button"; 59 gpios = <&gpio1 18 GPIO_ACTIVE_LOW>; 60 zephyr,code = <INPUT_KEY_WAKEUP>; 61 }; 62 btn_usr: button_1 { 63 label = "USR button"; 64 gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; 65 zephyr,code = <INPUT_KEY_0>; 66 }; 67 }; 68 69 mikrobus_header: mikrobus-connector { 70 compatible = "mikro-bus"; 71 #gpio-cells = <2>; 72 gpio-map-mask = <0xffffffff 0xffffffc0>; 73 gpio-map-pass-thru = <0 0x3f>; 74 gpio-map = <0 0 &gpio1 9 0>, /* AN */ 75 /* Not a GPIO*/ /* RST */ 76 <2 0 &gpio0 20 0>, /* CS */ 77 <3 0 &gpio1 2 0>, /* SCK */ 78 <4 0 &gpio1 3 0>, /* MISO */ 79 <5 0 &gpio0 26 0>, /* MOSI */ 80 /* +3.3V */ 81 /* GND */ 82 <6 0 &gpio1 8 0>, /* PWM */ 83 <7 0 &gpio0 17 0>, /* INT */ 84 <8 0 &gpio1 24 0>, /* RX */ 85 <9 0 &gpio1 25 0>, /* TX */ 86 <10 0 &gpio1 30 0>, /* SCL */ 87 <11 0 &gpio1 21 0>; /* SDA */ 88 /* +5V */ 89 /* GND */ 90 }; 91 92 arduino_header: arduino-connector { 93 compatible = "arduino-header-r3"; 94 #gpio-cells = <2>; 95 gpio-map-mask = <0xffffffff 0xffffffc0>; 96 gpio-map-pass-thru = <0 0x3f>; 97 gpio-map = <0 0 &gpio0 15 0>, /* A0 */ 98 <1 0 &gpio0 16 0>, /* A1 */ 99 <2 0 &gpio0 0 0>, /* A2 */ 100 <3 0 &gpio1 13 0>, /* A3 */ 101 <4 0 &gpio1 21 0>, /* A4 */ 102 <5 0 &gpio1 30 0>, /* A5 */ 103 <6 0 &gpio2 0 0>, /* D0 */ 104 <7 0 &gpio2 1 0>, /* D1 */ 105 <8 0 &gpio1 26 0>, /* D2 */ 106 <9 0 &gpio1 23 0>, /* D3 */ 107 <10 0 &gpio1 8 0>, /* D4 */ 108 <11 0 &gpio1 25 0>, /* D5 */ 109 <12 0 &gpio1 0 0>, /* D6 */ 110 <13 0 &gpio1 28 0>, /* D7 */ 111 <14 0 &gpio1 27 0>, /* D8 */ 112 <15 0 &gpio1 29 0>, /* D9 */ 113 <16 0 &gpio1 26 0>, /* D10 */ 114 <17 0 &gpio0 26 0>, /* D11 */ 115 <18 0 &gpio1 3 0>, /* D12 */ 116 <19 0 &gpio1 2 0>, /* D13 */ 117 <20 0 &gpio0 3 0>, /* D14 */ 118 <21 0 &gpio0 2 0>; /* D15 */ 119 }; 120}; 121 122&flexcomm0 { 123 status = "okay"; 124 compatible = "nxp,lpc-usart"; 125 current-speed = <115200>; 126 pinctrl-0 = <&pinmux_flexcomm0_usart>; 127 pinctrl-names = "default"; 128}; 129 130&can0 { 131 pinctrl-0 = <&pinmux_mcan_can0>; 132 pinctrl-names = "default"; 133 status = "okay"; 134 135 can-transceiver { 136 max-bitrate = <5000000>; 137 }; 138}; 139 140&adc0 { 141 status = "okay"; 142 pinctrl-0 = <&pinmux_lpadc0>; 143 pinctrl-names = "default"; 144}; 145 146/* Flash is divided into 32 kB sub-regions. 147 * Each sub-region can be assigned individual 148 * security tier in secure AHB controller. 149 */ 150&flash0 { 151 partitions { 152 compatible = "fixed-partitions"; 153 #address-cells = <1>; 154 #size-cells = <1>; 155 boot_partition: partition@0 { 156 label = "mcuboot"; 157 reg = <0x0 DT_SIZE_K(32)>; 158 }; 159 slot0_partition: partition@8000 { 160 label = "image-0"; 161 reg = <0x00008000 DT_SIZE_K(96)>; 162 }; 163 slot1_partition: partition@20000 { 164 label = "image-1"; 165 reg = <0x00020000 DT_SIZE_K(96)>; 166 }; 167 storage_partition: partition@38000 { 168 label = "storage"; 169 reg = <0x00038000 DT_SIZE_K(20)>; 170 }; 171 /* The last 12KB are reserved for PFR on the 256KB flash. 172 */ 173 }; 174}; 175 176&flexpwm1_pwm0 { 177 status = "okay"; 178 pinctrl-0 = <&pinmux_flexpwm1_pwm0>; 179 pinctrl-names = "default"; 180}; 181 182zephyr_udc0: &usbfs { 183 status = "okay"; 184 pinctrl-0 = <&pinmux_usbfs>; 185 pinctrl-names = "default"; 186}; 187 188&dma0 { 189 status = "okay"; 190}; 191 192&vref0 { 193 status = "okay"; 194}; 195 196&dac0 { 197 status = "okay"; 198 pinctrl-0 = <&pinmux_dac0>; 199 pinctrl-names = "default"; 200}; 201