1.. zephyr:board:: mimxrt1180_evk
2
3Overview
4********
5
6The dual core i.MX RT1180 runs on the Cortex-M33 core at 240 MHz and on the
7Cortex-M7 at 792 MHz. The i.MX RT1180 MCU offers support over a wide
8temperature range and is qualified for consumer, industrial and automotive
9markets.
10
11Hardware
12********
13
14- MIMXRT1189CVM8B MCU
15
16  - 240MHz Cortex-M33 & 792Mhz Cortex-M7
17  - 1.5MB SRAM with 512KB of TCM for Cortex-M7 and 256KB of TCM for Cortex-M4
18
19- Memory
20
21  - 512 Mbit SDRAM
22  - 128 Mbit QSPI Flash
23  - 512 Mbit HYPER RAM
24  - TF socket for SD card
25
26- Ethernet
27
28  - 1000 Mbit/s Ethernet PHY
29
30- USB
31
32  - 2* USB 2.0 OTG connector
33
34- Audio
35
36  - 3.5 mm audio stereo headphone jack
37  - Board-mounted microphone
38  - Left and right speaker out connectors
39
40- Power
41
42  - 5 V DC jack
43
44- Debug
45
46  - JTAG 20-pin connector
47  - MCU-Link with DAPLink
48
49- Expansion port
50
51  - Arduino interface
52
53- CAN bus connector
54
55For more information about the MIMXRT1180 SoC and MIMXRT1180-EVK board, see
56these references:
57
58- `i.MX RT1180 Website`_
59- `MIMXRT1180-EVK Website`_
60
61External Memory
62===============
63
64This platform has the following external memories:
65
66+--------------------+------------+-------------------------------------+
67| Device             | Controller | Status                              |
68+====================+============+=====================================+
69| W9825G6KH          | SEMC       | Enabled via device configuration    |
70|                    |            | data block, which sets up SEMC at   |
71|                    |            | boot time                           |
72+--------------------+------------+-------------------------------------+
73| W25Q128JWSIQ       | FLEXSPI    | Enabled via flash configurationn    |
74|                    |            | block, which sets up FLEXSPI at     |
75|                    |            | boot time.                          |
76+--------------------+------------+-------------------------------------+
77
78Supported Features
79==================
80
81NXP considers the MIMXRT1180-EVK as the superset board for the i.MX RT118x
82family of MCUs.  This board is a focus for NXP's Full Platform Support for
83Zephyr, to better enable the entire RT118x family.  NXP prioritizes enabling
84this board with new support for Zephyr features.  The mimxrt1180_evk board
85configuration supports the following hardware features:
86
87+-----------+------------+-------------------------------------+
88| Interface | Controller | Driver/Component                    |
89+===========+============+=====================================+
90| NVIC      | on-chip    | nested vector interrupt controller  |
91+-----------+------------+-------------------------------------+
92| SYSTICK   | on-chip    | systick                             |
93+-----------+------------+-------------------------------------+
94| GPIO      | on-chip    | gpio                                |
95+-----------+------------+-------------------------------------+
96| GPT       | on-chip    | counter                             |
97+-----------+------------+-------------------------------------+
98| QTMR      | on-chip    | counter                             |
99+-----------+------------+-------------------------------------+
100| UART      | on-chip    | serial port-polling;                |
101|           |            | serial port-interrupt               |
102+-----------+------------+-------------------------------------+
103| I2C       | on-chip    | i2c                                 |
104+-----------+------------+-------------------------------------+
105| ACMP      | on-chip    | sensor                              |
106+-----------+------------+-------------------------------------+
107| ADC       | on-chip    | adc                                 |
108+-----------+------------+-------------------------------------+
109| NETC      | on-chip    | ethernet, mdio                      |
110+-----------+------------+-------------------------------------+
111| CAN       | on-chip    | can                                 |
112+-----------+------------+-------------------------------------+
113| LPTMR     | on-chip    | counter                             |
114+-----------+------------+-------------------------------------+
115| FLEXSPI   | on-chip    | flash programming                   |
116+-----------+------------+-------------------------------------+
117| PWM       | on-chip    | pwm                                 |
118+-----------+------------+-------------------------------------+
119| PWM       | on-chip    | tpm                                 |
120+-----------+------------+-------------------------------------+
121| I3C       | on-chip    | i3c                                 |
122+-----------+------------+-------------------------------------+
123
124The default configuration can be found in the defconfig file:
125:zephyr_file:`boards/nxp/mimxrt1180_evk/mimxrt1180_evk_mimxrt1189_cm33_defconfig`
126
127Other hardware features are not currently supported by the port.
128
129
130Connections and I/Os
131====================
132
133The MIMXRT1180 SoC has six pairs of pinmux/gpio controllers.
134
135+---------------+-----------------+---------------------------+
136| Name          | Function        | Usage                     |
137+===============+=================+===========================+
138| GPIO_AON_04   | GPIO            | SW8                       |
139+---------------+-----------------+---------------------------+
140| GPIO_AD_27    | GPIO            | LED                       |
141+---------------+-----------------+---------------------------+
142| GPIO_AON_08   | LPUART1_TX      | UART Console              |
143+---------------+-----------------+---------------------------+
144| GPIO_AON_09   | LPUART1_RX      | UART Console              |
145+---------------+-----------------+---------------------------+
146
147System Clock
148============
149
150The MIMXRT1180 SoC is configured to use SysTick as the system clock source,
151running at 240MHz. When targeting the M7 core, SysTick will also be used,
152running at 792MHz
153
154Serial Port
155===========
156
157The MIMXRT1180 SoC has 12 UARTs. One is configured for the console and the
158remaining are not used.
159
160Ethernet
161========
162
163NETC driver supports to manage the Physical Station Interface (PSI).
164
165Programming and Debugging
166*************************
167
168Build and flash applications as usual (see :ref:`build_an_application` and
169:ref:`application_run` for more details).
170
171Configuring a Debug Probe
172=========================
173
174A debug probe is used for both flashing and debugging the board. This board is
175configured by default to use the :ref:`mcu-link-cmsis-onboard-debug-probe`,
176however the :ref:`pyocd-debug-host-tools` do not yet support programming the
177external flashes on this board so you must reconfigure the board for one of the
178following debug probes instead.
179
180.. _Using J-Link RT1180:
181
182Using J-Link
183------------
184
185Please ensure used JLINK above V7.94g and jumper JP5 installed if using
186external jlink plus on J37 as debugger.
187
188When debugging cm33 core, need to ensure the SW5 on "0100" mode.
189When debugging cm7 core, need to ensure the SW5 on "0001" mode.
190(Only support run cm7 image when debugging due to default boot core on board is cm33 core)
191
192Install the :ref:`jlink-debug-host-tools` and make sure they are in your search
193path.
194
195There are two options: the onboard debug circuit can be updated with Segger
196J-Link firmware, or :ref:`jlink-external-debug-probe` can be attached to the
197EVK.
198
199
200Using Linkserver
201----------------
202
203Please ensure used linkserver above V1.5.30 and jumper JP5 uninstalled.
204
205When debugging cm33 core, need to ensure the SW5 on "0100" mode.
206When debugging cm7 core, need to ensure the SW5 on "0001" mode.
207(Only support run cm7 image when debugging due to default boot core on board is cm33 core)
208
209Configuring a Console
210=====================
211
212Regardless of your choice in debug probe, we will use the MCU-Link
213microcontroller as a usb-to-serial adapter for the serial console. Check that
214jumpers JP5 and JP3 are **on** (they are on by default when boards ship from
215the factory) to connect UART signals to the MCU-Link microcontroller.
216
217Connect a USB cable from your PC to J53.
218
219Use the following settings with your serial terminal of choice (minicom, putty,
220etc.):
221
222- Speed: 115200
223- Data: 8 bits
224- Parity: None
225- Stop bits: 1
226
227Flashing
228========
229
230Here is an example for the :zephyr:code-sample:`hello_world` application on cm33 core.
231
232Before power on the board, make sure SW5 is set to 0100b
233
234.. zephyr-app-commands::
235   :zephyr-app: samples/hello_world
236   :board: mimxrt1180_evk/mimxrt1189/cm33
237   :goals: flash
238
239Power off the board, then power on the board and
240open a serial terminal, reset the board (press the SW3 button), and you should
241see the following message in the terminal:
242
243.. code-block:: console
244
245   ***** Booting Zephyr OS v3.7.0-xxx-xxxxxxxxxxxxx *****
246   Hello World! mimxrt1180_evk/mimxrt1189/cm33
247
248Debugging
249=========
250
251Here is an example for the :zephyr:code-sample:`hello_world` application.
252
253.. zephyr-app-commands::
254   :zephyr-app: samples/hello_world
255   :board: mimxrt1180_evk/mimxrt1189/cm33
256   :goals: debug
257
258Open a serial terminal, step through the application in your debugger, and you
259should see the following message in the terminal:
260
261.. code-block:: console
262
263   ***** Booting Zephyr OS v3.7.0-xxx-xxxxxxxxxxxxx *****
264   Hello World! mimxrt1180_evk/mimxrt1189/cm33
265
266.. _MIMXRT1180-EVK Website:
267   https://www.nxp.com/design/design-center/development-boards-and-designs/i-mx-evaluation-and-development-boards/i-mx-rt1180-evaluation-kit:MIMXRT1180-EVK
268
269.. _i.MX RT1180 Website:
270   https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/i-mx-rt-crossover-mcus/i-mx-rt1180-crossover-mcu-with-tsn-switch-and-edgelock:i.MX-RT1180
271