You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2021/04/13 15:11:18 UTC

[GitHub] [incubator-nuttx] michallenc commented on a change in pull request #3539: Documentation: added documentation for i.MX RT series and Teensy 4.x boards

michallenc commented on a change in pull request #3539:
URL: https://github.com/apache/incubator-nuttx/pull/3539#discussion_r612538502



##########
File path: Documentation/platforms/arm/imxrt/index.rst
##########
@@ -0,0 +1,191 @@
+=======
+i.MX RT
+=======
+
+The i.MX RT series of chips from NXP Semiconductors is based around an ARM Cortex-M7 core running
+at 500 MHz, 600 MHz or 1 GHz based on particular MCUs
+
+Suported MCUs
+=============
+
+The following list includes MCUs from i.MX RT series and indicates whether they are supported in NuttX
+
+======  =======  ==============  =================
+MCU     Support  Core            Frequency
+======  =======  ==============  =================
+RT500   No       Cortex-M33      200 MHz
+RT600   No       Cortex-M33      300 MHz
+RT1010  No       Cortex-M7       500 MHz
+RT1015  No       Cortex-M7       500 MHz
+RT1020  Yes      Cortex-M7       500 MHz
+RT1024  No       Cortex-M7       500 MHz
+RT1050  Yes      Cortex-M7       600 MHz
+RT1060  Yes      Cortex-M7       600 MHz
+RT1064  Yes      Cortex-M7       600 MHz
+RT1170  No       Cortex-M7 + M4  1 GHz + 400 MHz
+======  =======  ==============  =================
+
+Data and Instruction Cache
+==========================
+
+MCUs i.MX RT1010 and higher have separated caches for instructions and data. Data cache is initially
+set as write-through but can be changed to write-back via Kconfig. While write-back gives better
+performance than write-through, it is not supported for all peripherals in NuttX yet. Write-back data
+cache can not be selected while running Ethernet or serial port over USB.
+
+Peripheral Support
+==================
+
+The following list indicates peripherals supported in NuttX:
+
+==========  =======
+Peripheral  Support
+==========  =======
+ACMP        No
+ADC         Yes
+CAN         Yes
+CSI         No
+DAC         No
+eLCDIF      Yes
+ENC         Yes
+ENET        Yes
+FlexIO      No
+GPIO        Yes
+I2S         Yes
+PWM         No
+SAI         No
+SPDIF       No
+SPI         Yes
+UART        Yes
+USB         Yes
+==========  =======
+
+ACMP
+----
+
+The circout for comparing two analog input voltages designed to operate across the full
+range of supply voltage (rail-to-rail operation).
+
+ADC
+---
+
+ADC driver with the successive approximation analog/digital convertor. The lower-half of
+this driver is initialize by calling :c:func:`imxrt_adcinitialize`.
+
+CAN
+---
+
+FlexCAN driver is supported in MCUs i.MX RT1020 and higher. i.MX RT106x have both classical
+CAN and also one CAN FD while i.MX RT1170 have 3 CAN FD peripherals. FlexCAN driver in imxrt
+works beyond SocketCAN driver layout. The lower-half of this driver is initialize by
+calling :c:func:`imxrt_cannitialize()`.
+
+There is an booting option that automatically provides initialization of network interface
+in the early stages of booting and therefore calling :c:func:`imxrt_cannitialize()` via
+board specific logic is not neccessary. This however works only when there is only one
+interface in the chip. For running more interfaces (like CAN and Ethernet), network late
+initialization must be turn on by CONFIG_NETDEV_LATEINIT and board specific logic must call
+lower-half part of drivers.
+
+CSI
+---
+
+CMOS Sensor interface which enables the chip to connect directly to external CMOS image sensors.
+
+DAC
+---
+
+Digital/analog convertor for external signal is only supported in i.MX RT1170 MCU. It is 12 bit
+lower power, general purpose DAC.
+
+eLCDIF
+------
+
+The enhanced Liquid Crystal Display interface (LCDIF) is a general purpose display controller.
+
+ENC
+---
+
+The enhanced quadrature encoder/decoder module supported in i.MX RT1015 and higher. The lower-half
+of this driver is initialize by calling :c:func:`imxrt_qeinitialize`.
+
+ENET
+----
+
+Ethernet driver supported in i.MX RT1020 and higher. The lower-half of this driver is initialize
+by calling :c:func:`imxrt_netnitialize`.
+
+There is an booting option that automatically provides initialization of network interface
+in the early stages of booting and therefore calling :c:func:`imxrt_cannitialize()` via
+board specific logic is not neccessary. This however works only when there is only one
+interface in the chip. For running more interfaces (like CAN and Ethernet), network late
+initialization must be turn on by CONFIG_NETDEV_LATEINIT and board specific logic must call
+lower-half part of drivers.
+
+FlexIO
+------
+
+A configurable module providing a range of functionality like emulation of a variety of
+serial/parallel communication protocols, flexible 16-bit timers or programmable logic blocks.
+This module is supported in i.MX RT1010 and higher.
+
+GPIO
+----
+
+Pins can be configured using ``imxrt_config_gpio()`` function. Writing to pins is
+done by ``imxrt_gpio_write()`` function and reading is done by ``imxrt_gpio_read()``.

Review comment:
       Thanks. I forgot it there back then.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org