-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Enable imxrt1015 #14694
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable imxrt1015 #14694
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
|
|
||
| zephyr_library() | ||
| zephyr_library_include_directories(${ZEPHYR_BASE}/drivers) | ||
| zephyr_library_sources(pinmux.c) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
|
|
||
| config BOARD_MIMXRT1015_EVK | ||
| bool "NXP MIMXRT1015-EVK" | ||
| depends on SOC_SERIES_IMX_RT | ||
| select SOC_PART_NUMBER_MIMXRT1015DAF5A |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| # Kconfig - MIMXRT1015-EVK board | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
|
|
||
| if BOARD_MIMXRT1015_EVK | ||
|
|
||
| config BOARD | ||
| default "mimxrt1015_evk" if BOARD_MIMXRT1015_EVK | ||
|
|
||
| choice CODE_LOCATION | ||
| default CODE_FLEXSPI | ||
| endchoice | ||
|
|
||
| if GPIO_MCUX_IGPIO | ||
|
|
||
| config GPIO_MCUX_IGPIO_2 | ||
| default y | ||
|
|
||
| config GPIO_MCUX_IGPIO_3 | ||
| default y | ||
|
|
||
| endif # GPIO_MCUX_IGPIO | ||
|
|
||
| if I2C_MCUX_LPI2C | ||
|
|
||
| config I2C_1 | ||
| default y | ||
|
|
||
| endif # I2C_MCUX_LPI2C | ||
|
|
||
| if UART_MCUX_LPUART | ||
|
|
||
| config UART_MCUX_LPUART_1 | ||
| default y | ||
|
|
||
| config UART_MCUX_LPUART_4 | ||
| default y | ||
|
|
||
| endif # UART_MCUX_LPUART | ||
|
|
||
| endif # BOARD_MIMXRT1015_EVK |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
| set_ifndef(OPENSDA_FW jlink) | ||
|
|
||
| if(OPENSDA_FW STREQUAL jlink) | ||
| set_ifndef(BOARD_DEBUG_RUNNER jlink) | ||
| set_ifndef(BOARD_FLASH_RUNNER jlink) | ||
| endif() | ||
|
|
||
| board_runner_args(jlink "--device=MIMXRT1015") | ||
| include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,197 @@ | ||
| .. _mimxrt1015_evk: | ||
|
|
||
| NXP MIMXRT1015-EVK | ||
| ################## | ||
|
|
||
| Overview | ||
| ******** | ||
|
|
||
| The i.MX RT1015 expands the i.MX RT crossover processor families by providing | ||
| high-performance feature set in low-cost LQFP packages, further simplifying | ||
| board design and layout for customers. The i.MX RT1015 runs on the Arm® | ||
| Cortex®-M7 core at 500 MHz. | ||
|
|
||
| .. image:: ./mimxrt1015_evk.jpg | ||
| :width: 720px | ||
| :align: center | ||
| :alt: MIMXRT1015-EVK | ||
|
|
||
| Hardware | ||
| ******** | ||
|
|
||
| - MIMXRT1015DAF5A MCU | ||
|
|
||
| - Memory | ||
|
|
||
| - 128 Mbit QSPI Flash | ||
|
|
||
| - Connectivity | ||
|
|
||
| - Micro USB host and OTG connectors | ||
| - Arduino interface | ||
|
|
||
| - Audio | ||
|
|
||
| - Audio Codec | ||
| - 4-pole audio headphone jack | ||
| - External speaker connection | ||
| - Microphone | ||
|
|
||
| - Debug | ||
|
|
||
| - JTAG 10-pin connector | ||
| - OpenSDA with DAPLink | ||
|
|
||
| For more information about the MIMXRT1015 SoC and MIMXRT1015-EVK board, see | ||
| these references: | ||
|
|
||
| - `i.MX RT1015 Website`_ | ||
| - `i.MX RT1015 Datasheet`_ | ||
| - `i.MX RT1015 Reference Manual`_ | ||
| - `MIMXRT1015-EVK Website`_ | ||
| - `MIMXRT1015-EVK Quick Reference Guide`_ | ||
| - `MIMXRT1015-EVK Design Files`_ | ||
|
|
||
| Supported Features | ||
| ================== | ||
|
|
||
| The mimxrt1015_evk board configuration supports the following hardware | ||
| features: | ||
|
|
||
| +-----------+------------+-------------------------------------+ | ||
| | Interface | Controller | Driver/Component | | ||
| +===========+============+=====================================+ | ||
| | NVIC | on-chip | nested vector interrupt controller | | ||
| +-----------+------------+-------------------------------------+ | ||
| | SYSTICK | on-chip | systick | | ||
| +-----------+------------+-------------------------------------+ | ||
| | GPIO | on-chip | gpio | | ||
| +-----------+------------+-------------------------------------+ | ||
| | I2C | on-chip | i2c | | ||
| +-----------+------------+-------------------------------------+ | ||
| | UART | on-chip | serial port-polling; | | ||
| | | | serial port-interrupt | | ||
| +-----------+------------+-------------------------------------+ | ||
|
|
||
| The default configuration can be found in the defconfig file: | ||
| ``boards/arm/mimxrt1015_evk/mimxrt1015_evk_defconfig`` | ||
|
|
||
| Other hardware features are not currently supported by the port. | ||
|
|
||
| Connections and I/Os | ||
| ==================== | ||
|
|
||
| The MIMXRT1015 SoC has five pairs of pinmux/gpio controllers. | ||
|
|
||
| +---------------+-----------------+---------------------------+ | ||
| | Name | Function | Usage | | ||
| +===============+=================+===========================+ | ||
| | GPIO_AD_B0_05 | GPIO | LED | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_EMC_09 | GPIO | SW4 | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_AD_B0_06 | LPUART1_TX | UART Console | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_AD_B0_07 | LPUART1_RX | UART Console | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_EMC_32 | LPUART4_TX | UART Console | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_EMC_33 | LPUART4_RX | UART Console | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_AD_B1_15 | LPI2C1_SDA | I2C SDA | | ||
| +---------------+-----------------+---------------------------+ | ||
| | GPIO_AD_B1_14 | LPI2C1_CLK | I2C SCL | | ||
| +---------------+-----------------+---------------------------+ | ||
|
|
||
| System Clock | ||
| ============ | ||
|
|
||
| The MIMXRT1015 SoC is configured to use the 24 MHz external oscillator on the | ||
| board with the on-chip PLL to generate a 500 MHz core clock. | ||
|
|
||
| Serial Port | ||
| =========== | ||
|
|
||
| The MIMXRT1015 SoC has four UARTs. ``LPUART1`` is configured for the console, | ||
| and the remaining are not used. | ||
|
|
||
| Programming and Debugging | ||
|
||
| ************************* | ||
|
|
||
| Build and flash applications as usual (see :ref:`build_an_application` and | ||
| :ref:`application_run` for more details). | ||
|
|
||
| Configuring a Debug Probe | ||
| ========================= | ||
|
|
||
| A debug probe is used for both flashing and debugging the board. This board is | ||
| configured by default to use the :ref:`opensda-daplink-onboard-debug-probe`, | ||
|
||
| however the :ref:`pyocd-debug-host-tools` do not yet support programming the | ||
|
||
| external flashes on this board so you must reconfigure the board for one of the | ||
| following debug probes instead. | ||
|
|
||
| :ref:`jlink-external-debug-probe` | ||
| ------------------------------------------- | ||
|
|
||
| Install the :ref:`jlink-debug-host-tools` and make sure they are in your search | ||
| path. | ||
|
|
||
| Attach a J-Link 10-pin connector to J55. Check that jumpers J47 and J48 are | ||
| **off** (they are on by default when boards ship from the factory) to ensure | ||
| SWD signals are disconnected from the OpenSDA microcontroller. | ||
|
|
||
| Configuring a Console | ||
| ===================== | ||
|
|
||
| Regardless of your choice in debug probe, we will use the OpenSDA | ||
| microcontroller as a usb-to-serial adapter for the serial console. Check that | ||
| jumpers J45 and J46 are **on** (they are on by default when boards ship from | ||
| the factory) to connect UART signals to the OpenSDA microcontroller. | ||
|
|
||
| Connect a USB cable from your PC to J41. | ||
|
|
||
| Use the following settings with your serial terminal of choice (minicom, putty, | ||
| etc.): | ||
|
|
||
| - Speed: 115200 | ||
| - Data: 8 bits | ||
| - Parity: None | ||
| - Stop bits: 1 | ||
|
|
||
| Flashing | ||
| ======== | ||
|
|
||
| Here is an example for the :ref:`hello_world` application. | ||
|
|
||
| .. zephyr-app-commands:: | ||
| :zephyr-app: samples/hello_world | ||
| :board: mimxrt1015_evk | ||
| :goals: flash | ||
|
|
||
| Open a serial terminal, reset the board (press the SW9 button), and you should | ||
| see the following message in the terminal: | ||
|
|
||
| .. code-block:: console | ||
|
|
||
| ***** Booting Zephyr OS v1.14.0-rc1-1297-g312d75f2459e ***** | ||
| Hello World! mimxrt1015_evk | ||
|
|
||
|
|
||
| .. _MIMXRT1015-EVK Website: | ||
| https://www.nxp.com/support/developer-resources/run-time-software/i.mx-developer-resources/i.mx-rt1015-evaluation-kit:MIMXRT1015-EVK | ||
|
|
||
| .. _MIMXRT1015-EVK Quick Reference Guide: | ||
| https://www.nxp.com/docs/en/quick-reference-guide/IMXRT1015QSG.pdf | ||
|
|
||
| .. _MIMXRT1015-EVK Design Files: | ||
| https://www.nxp.com/webapp/Download?colCode=MIMXRT1015-EVK-REVB-DS | ||
|
|
||
| .. _i.MX RT1015 Website: | ||
| https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/i.mx-applications-processors/i.mx-rt-series/i.mx-rt1015-crossover-processor-with-arm-cortex-m7-core:i.MX-RT1015 | ||
|
|
||
| .. _i.MX RT1015 Datasheet: | ||
| https://www.nxp.com/docs/en/data-sheet/IMXRT1015CEC.pdf | ||
|
|
||
| .. _i.MX RT1015 Reference Manual: | ||
| https://www.nxp.com/docs/en/reference-manual/IMXRT1015RM.pdf | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| /* | ||
| * Copyright (c) 2019, NXP | ||
| * | ||
| * SPDX-License-Identifier: Apache-2.0 | ||
| */ | ||
|
|
||
| /dts-v1/; | ||
|
|
||
| #include <nxp/nxp_rt.dtsi> | ||
|
|
||
| / { | ||
| model = "NXP MIMXRT1015-EVK board"; | ||
| compatible = "nxp,mimxrt1015"; | ||
|
|
||
| aliases { | ||
| gpio-1= &gpio1; | ||
| gpio-2= &gpio2; | ||
| gpio-3= &gpio3; | ||
| gpio-4= &gpio4; | ||
| gpio-5= &gpio5; | ||
| i2c-1 = &i2c1; | ||
| uart-1 = &uart1; | ||
| uart-4 = &uart4; | ||
| led0 = &green_led; | ||
| sw0 = &user_button; | ||
| }; | ||
|
|
||
| chosen { | ||
| zephyr,console = &uart1; | ||
| zephyr,shell-uart = &uart1; | ||
| }; | ||
|
|
||
| leds { | ||
| compatible = "gpio-leds"; | ||
| green_led: led-1 { | ||
| gpios = <&gpio3 21 GPIO_INT_ACTIVE_LOW>; | ||
| label = "User LD1"; | ||
| }; | ||
| }; | ||
|
|
||
| gpio_keys { | ||
| compatible = "gpio-keys"; | ||
| user_button: button-1 { | ||
| label = "User SW4"; | ||
| gpios = <&gpio2 9 GPIO_INT_ACTIVE_LOW>; | ||
| }; | ||
| }; | ||
| }; | ||
|
|
||
| arduino_serial: &uart4 {}; | ||
|
|
||
| &flexspi0 { | ||
| reg = <0x402a8000 0x4000>, <0x60000000 0x1000000>; | ||
| at25sf128a: at25sf128a@0 { | ||
| compatible = "adesto,at25sf128a", "jedec,spi-nor"; | ||
| reg = <0>; | ||
| status = "ok"; | ||
| }; | ||
| }; | ||
|
|
||
| &i2c1 { | ||
| status = "ok"; | ||
| }; | ||
|
|
||
| &uart1 { | ||
| status = "ok"; | ||
| current-speed = <115200>; | ||
| }; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
|
|
||
| identifier: mimxrt1015_evk | ||
| name: NXP MIMXRT1015-EVK | ||
| type: mcu | ||
| arch: arm | ||
| toolchain: | ||
| - zephyr | ||
| - gnuarmemb | ||
| - xtools | ||
| ram: 128 | ||
| flash: 16384 | ||
| supported: | ||
| - i2c | ||
| - hwinfo |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| # | ||
| # Copyright (c) 2019, NXP | ||
| # | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
|
|
||
| CONFIG_ARM=y | ||
| CONFIG_SOC_MIMXRT1015=y | ||
| CONFIG_SOC_SERIES_IMX_RT=y | ||
| CONFIG_BOARD_MIMXRT1015_EVK=y | ||
| CONFIG_CONSOLE=y | ||
| CONFIG_UART_CONSOLE=y | ||
| CONFIG_SERIAL=y | ||
| CONFIG_CORTEX_M_SYSTICK=y | ||
| CONFIG_GPIO=y | ||
| CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=500000000 | ||
| CONFIG_ARM_MPU=y |
Uh oh!
There was an error while loading. Please reload this page.