Open-CMSIS-Pack / Open-CMSIS-Pack-Spec

Common Microcontroller Software Interface Standard - Pack(age) based distribution system
https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/
Apache License 2.0
53 stars 21 forks source link

Component Discovery Gaps #23

Closed jkrech closed 2 years ago

jkrech commented 3 years ago

Split out from: https://github.com/Open-CMSIS-Pack/Open-CMSIS-Pack/issues/10 links to: https://github.com/Open-CMSIS-Pack/Open-CMSIS-Pack/issues/21

Requires a tool that can:

Requires data model extension: Extend component identification with independent classification(s) Identification: Cclass/Cbundle/Cgroup/... Classification: key = classification scheme value = predefined / standardized / agreed classification id

associating a list of other attributes, what we call here "keywords", to a component, with the following formalism:

<component ...> <keywords> <keyword key="x" value="..."/> <keyword key="y" value="..."/> </keywords> </component>

This brings a kind of flexibility: You can have some keyword keys (and even values) normalized by the definition provided by Open-CMSIS-Pack. You can also allow vendor specific keys. This mechanism allows to set several values for the same key: depending on the software component size / granularity, this can have an importance. The larger the component is, the more likely it is to bring several values for the same key.

e.g. key="OCP-Classification" name="value" type="OCP-ClassificationType"

  <xs:simpleType name="OCP-ClassificationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="RTOS" />
      <xs:enumeration value="Wireless" />
      <xs:enumeration value="USB" />
      <xs:enumeration value="FileSystem" />
      <xs:enumeration value="Sensors" />
      ...
    </xs:restriction>
  </xs:simpleType>

As well as drafting what you would expect to see in a "component view/list"

jkrech commented 3 years ago

@mdortel-stm could you draft a scheme based on ST's requirements to play it through?

mdortel-stm commented 3 years ago

@mdortel-stm could you draft a scheme based on ST's requirements to play it through?

Hi Joachim. Let's start with this:

<xs:element name="component">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="keywords">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="keyword">
                <xs:complexType>
                  <xs:attribute name="key" type="xs:string" use="required" />
                  <xs:attribute name="value" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
mdortel-stm commented 3 years ago

I just understand that I maybe missed the point and chose the wrong naming :) Sorry I'll try to provide the right information in my next try.

mdortel-stm commented 3 years ago

First proposal:

key="Layer" name="value" type="LayerClassificationType"

  <xs:simpleType name="LayerClassificationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="RTOS" />
      <xs:enumeration value="Middleware" />
      <xs:enumeration value="Application" />
      <xs:enumeration value="Driver" />
      <xs:enumeration value="BSP" />
      ...
    </xs:restriction>
  </xs:simpleType>
mdortel-stm commented 2 years ago

Hi all,

Such a long time I did not talk about this topic. So I come back, with the hope getting closer to a conclusion.

  1. The need to associate the component a list of key/value pair to achieve its classification seems to be clear and understood.
  2. The wording is somehow anecdotic. Features / Keywords (too close to pack key word: not fond of it) / Attributes (?): I don't really know how to conclude.
  3. The support of list allows to provide several values for the same key: it is an improvement compared to the current definition
  4. Nevertheless we need to build bounds and common ground for some information. For that purpose, I suggest to consider a node to list "schema" files and not define it in the schema of the PDSC. The pack checking should be able to verify as many things as possible using that input, because some of the definitions will be provided by OpenCMSIS, some by a vendor. I was thinking about something like:
<keywordSpecs>
  <spec url="OpenCMSIS.1.0.0.spec"/>
  <spec url="STM.1.2.1.spec"/>
</keywordSpecs>
  1. In each specification file will be found a "schema" for some keys:
<specification version="1.0.0">​
  <keyword key="layer" maxOccurrence="1" type="string">​
    <value>driver</value>​
    <value>middleware</value>​
    <value>rtos</value>​
    <value>application</value>​
    ...​
  </keyword>​
</specification>

Which is the equivalent of my previous message content. I just imagine that XSD cannot support that kind of specification. (I might be wrong?)

And a customer specific spec could be:

<specification version="1.2.1">​
  <keyword key="st-driver" type="string">​
    <value>HAL</value>​
    <value>LL</value>​
  </keyword>​
</specification>

Whatever the format (XSD or something else), the schema should allow to declare the keys, their value type and, if applicable:

mdortel-stm commented 2 years ago

I remarked this piece of code in another issue (98):

<component Cclass="Board Support" Cgroup="SDK Project Template" Csub="project_template" Cvariant="MK64F12" Cversion="1.0.0" type="config" condition="device.MK64F12_AND___component.serial_manager_AND_utility.debug_console__OR_utility.debug_console_lite__AND_component.uart_adapter_AND_device.MK64F12_startup_AND_driver.adc16_AND_driver.clock_AND_driver.common_AND_driver.dspi_AND_driver.gpio_AND_driver.i2c_AND_driver.port_AND_driver.rtc_AND_driver.smc_AND_driver.uart" isDefaultVariant="1">
      <description>Devices_project_template MK64F12; {for-development:SDK-Manifest-ID: project_template.MK64F12.MK64F12}</description>

I wonder if the current proposal could support what is encoded between braces in description node

jkrech commented 2 years ago

@mdortel-stm I guess this question goes to colleagues at NXP @tcsunhao and @DavidJurajdaNXP ?

mdortel-stm commented 2 years ago

I guess so. I did not explicitly referenced the other issue to avoid mixing too much and bringing more noise than help. Thank you @jkrech

mark-edgeworth commented 2 years ago

This seems to be a way of adding vendor-specific extensions to the standard. By their very nature these would be non-portable between vendors and hence against the concept of an open standard. If there are concepts and data that are generally applicable and useful then these should form part of the standard. If they are for use only in a specific environment then these should be separate from the standard. As for the embedding of meta-data in the field; that is (AFAIK) undocumented and really should not be permitted IMHO.

fred-r commented 2 years ago

To me, we can specify in a standard a "standard field" by specifying:

So to me the proposal is to add a standard field, whose "pick-list" can be customized.

If I make a parallel with some past experience, it is like 3GPP specs where you have USSD: Unstructured Supplementary Service Data. This is customized per PLMN/mobile vendor for the features but the "pipe" to convey it is specified.

So, here, it is the same thing, we specify the "pipe" (the standard field) but it can convey some vendor specific information because silicon vendors can have specificities:

So, to me, a customizable field is not against the standard.

DavidJurajdaNXP commented 2 years ago

I remarked this piece of code in another issue (98):

<component Cclass="Board Support" Cgroup="SDK Project Template" Csub="project_template" Cvariant="MK64F12" Cversion="1.0.0" type="config" condition="device.MK64F12_AND___component.serial_manager_AND_utility.debug_console__OR_utility.debug_console_lite__AND_component.uart_adapter_AND_device.MK64F12_startup_AND_driver.adc16_AND_driver.clock_AND_driver.common_AND_driver.dspi_AND_driver.gpio_AND_driver.i2c_AND_driver.port_AND_driver.rtc_AND_driver.smc_AND_driver.uart" isDefaultVariant="1">
      <description>Devices_project_template MK64F12; {for-development:SDK-Manifest-ID: project_template.MK64F12.MK64F12}</description>

I wonder if the current proposal could support what is encoded between braces in description node

We used "description" element for notes during development. I am not recommending to embed any data in this way in production. There should be dedicated element for any extension data.

DavidJurajdaNXP commented 2 years ago

Let's take a look on existing data. I made overview of public index content. We could see clear structure in first section "Declared APIs" but huge explosion of classifiers in third section "Implicit API used in components". In my opinion this indicate need for some concept of "framework" specific classification, CMSIS could be one of such frameworks. Second information to take away is that API entities are defined mainly in packs provided by ARM/Keil, not by 3rd parties.

Relates to #135.

  1. Declared API (/package/apis):

    +-- Board Support
    |   +-- LED
    |   +-- Buttons
    |   +-- Joystick
    |   +-- A/D Converter
    |   +-- D/A Converter
    |   +-- Audio
    |   +-- Graphic LCD
    |   +-- Touchscreen
    |   +-- Thermometer
    |   +-- Accelerometer
    |   +-- Magnetometer
    |   +-- Gyroscope
    |   +-- Camera
    |   +-- EEPROM
    |   +-- emWin LCD
    +-- CMSIS
    |   +-- RTOS
    |   +-- RTOS2
    +-- CMSIS Driver
    |   +-- USART
    |   +-- SPI
    |   +-- SAI
    |   +-- I2C
    |   +-- CAN
    |   +-- Flash
    |   +-- MCI
    |   +-- NAND
    |   +-- Ethernet
    |   +-- Ethernet MAC
    |   +-- Ethernet PHY
    |   +-- USB Device
    |   +-- USB Host
    |   +-- WiFi
    |   +-- VIO
    +-- Device
    |   +-- IRQ Controller
    |   +-- OS Tick
    |   +-- KSDK Configuration
    |   +-- SAM-ESV7 Framework
    |   +-- STM32Cube Framework
    +-- IoT Utility
    |   +-- Socket
    +-- PSA
    |   +-- Crypto
    |   +-- Internal Trusted Storage
    |   +-- Protected Storage
    |   +-- Initial Attestation
    +-- Security
    |   +-- PKCS11
    +-- TFM Platform
     +-- SPM HAL
     +-- Boot Seed
     +-- Crypto Keys
     +-- Device ID
     +-- NV Counters
     +-- Attest HAL
     +-- System
     +-- Test
     +-- Boot HAL
  2. Explicit API used in components (components/component and components/bundle/component ) Note: This list is corrupted by some Cclass elements which should not be there. It is caused by bug in bundle expansion in my script.

    +-- BSP
    +-- Bluetooth
    +-- Board Support
    |   +-- LED
    |   +-- Buttons
    |   +-- A/D Converter
    |   +-- Joystick
    |   +-- Graphic LCD
    |   +-- emWin LCD
    |   +-- Touchscreen
    |   |   +-- STMPE811
    |   +-- Thermometer
    |   |   +-- DS75
    |   |   +-- LM75
    |   +-- EEPROM
    |   |   +-- 24AA024
    |   |   +-- 24LC128
    |   +-- Accelerometer
    |   +-- Magnetometer
    |   +-- Audio
    |   |   +-- Audio
    |   |   +-- Codec
    |   |   +-- Microphone
    |   +-- D/A Converter
    |   +-- Gyroscope
    |   +-- Camera
    +-- CMSIS
    |   +-- RTOS
    |   |   +-- FreeRTOS
    |   |   +-- Keil RTX
    |   |   +-- Keil RTX5
    |   +-- RTOS2
    |       +-- FreeRTOS
    |       +-- Keil RTX5
    +-- CMSIS Driver
    |   +-- Ethernet
    |   |   +-- ETH_RPMSG
    |   |   +-- KSZ8851SNL
    |   |   +-- ETH_LAN91C111
    |   |   +-- LAN9220
    |   |   +-- Custom
    |   |   +-- RNDIS
    |   |   +-- enet_cmsis
    |   +-- Ethernet PHY
    |   |   +-- DP83848C
    |   |   +-- KSZ8061RNB
    |   |   +-- KSZ8081RNA
    |   |   +-- LAN8710A
    |   |   +-- LAN8720
    |   |   +-- LAN8740A
    |   |   +-- LAN8742A
    |   |   +-- ST802RT1
    |   |   +-- Custom
    |   +-- Flash
    |   |   +-- AM29x800BB
    |   |   +-- AT45DB641E
    |   |   +-- AT45DB642D
    |   |   +-- M29EW28F128
    |   |   +-- M29W640FB
    |   |   +-- N25Q032A
    |   |   +-- S29GL064Nx2
    |   |   +-- Custom
    |   |   +-- MRAM
    |   |   +-- SRAM
    |   +-- NAND
    |   |   +-- Memory Bus
    |   |   +-- Custom
    |   +-- I2C
    |   |   +-- Multi-Slave
    |   |   +-- Custom
    |   |   +-- lpi2c_cmsis
    |   |   +-- i2c_cmsis
    |   |   +-- flexcomm_i2c_cmsis
    |   +-- SPI
    |   |   +-- Multi-Slave
    |   |   +-- Custom
    |   |   +-- SPI
    |   |   +-- SSP
    |   |   +-- lpspi_cmsis
    |   |   +-- spi_cmsis
    |   |   +-- flexcomm_spi_cmsis
    |   |   +-- dspi_cmsis
    |   +-- WiFi
    |   |   +-- ISM43362
    |   |   +-- ESP32
    |   |   +-- ESP8266
    |   |   +-- WizFi360
    |   |   +-- Custom
    |   |   +-- EMW3080
    |   |   +-- QCA400x
    |   +-- USART
    |   |   +-- Custom
    |   |   +-- PL2303
    |   |   +-- CDC
    |   |   +-- USART IrDA
    |   |   +-- USART SmartCard
    |   |   +-- USART Async
    |   |   +-- USART Sync
    |   |   +-- lpuart_cmsis
    |   |   +-- uart_cmsis
    |   |   +-- flexcomm_usart_cmsis
    |   +-- SAI
    |   |   +-- Custom
    |   |   +-- I2S
    |   +-- CAN
    |   |   +-- Custom
    |   +-- MCI
    |   |   +-- Custom
    |   +-- Ethernet MAC
    |   |   +-- Custom
    |   +-- USB Device
    |   |   +-- Custom
    |   |   +-- USB
    |   |   +-- USB0
    |   |   +-- USB1
    |   |   +-- Full-speed
    |   |   +-- High-speed
    |   |   +-- USB2
    |   +-- USB Host
    |   |   +-- Custom
    |   |   +-- USB
    |   |   +-- USB0
    |   |   +-- USB1
    |   |   +-- Full-speed
    |   |   +-- High-speed
    |   |   +-- USB2
    |   +-- VIO
    |       +-- Custom
    |       +-- Virtual
    |       +-- Board
    +-- Compiler
    +-- CycloneACME
    +-- CycloneCRYPTO
    +-- CycloneCommon
    +-- CycloneSSH
    +-- CycloneSSL
    +-- CycloneSTP
    +-- CycloneTCP
    +-- Device
    |   +-- IRQ Controller
    |   |   +-- GIC
    |   |   +-- Atmel AIC
    |   +-- OS Tick
    |   |   +-- Private Timer
    |   |   +-- Generic Physical Timer
    |   |   +-- OSTM0
    |   |   +-- Atmel PIT
    |   +-- KSDK Configuration
    |   |   +-- FRDM-K64F
    |   |   +-- TWR-K64F120M
    |   +-- SAM-ESV7 Framework
    |   |   +-- Classic
    |   +-- STM32Cube Framework
    |       +-- STM32CubeMX
    |       +-- Classic
    +-- FAT32
    +-- File System
    +-- Graphics
    +-- IoT Utility
    |   +-- Socket
    |       +-- Custom
    |       +-- MDK Network
    |       +-- lwIP
    |       +-- WiFi
    |       +-- Mux
    +-- LVGL
    +-- MAXSDHC
    +-- MAXUSB
    +-- MAXUSB_HS
    +-- Multicore
    +-- Network
    +-- Operating System
    +-- PSA
    |   +-- Crypto
    |   |   +-- TFM
    |   |   +-- mbed TLS
    |   +-- Internal Trusted Storage
    |   |   +-- TFM
    |   +-- Protected Storage
    |   |   +-- TFM
    |   +-- Initial Attestation
    |       +-- TFM
    +-- RTOS
    +-- Security
    |   +-- PKCS11
    +-- TFM Platform
    |   +-- SPM HAL
    |   |   +-- Platform
    |   +-- System
    |   |   +-- Template
    |   +-- Test
    |   |   +-- Platform
    |   +-- Boot HAL
    |   |   +-- Platform
    |   +-- Boot Seed
    |   |   +-- Dummy
    |   +-- Crypto Keys
    |   |   +-- Dummy
    |   +-- Device ID
    |   |   +-- Dummy
    |   +-- NV Counters
    |   |   +-- Dummy
    |   +-- Attest HAL
    |       +-- Template
    +-- TencentOS tiny
    +-- USB
    +-- Wireless
    +-- lwIP
    +-- wolfSSL
  3. Implicit API used in components (components/component and components/bundle/component )

    
    +-- AMP
    |   +-- RPMSG
    +-- AWS IoT
    |   +-- AWS IoT Device Defender
    |   +-- AWS IoT Device Shadow
    |   +-- AWS IoT Jobs
    |   +-- AWS IoT Over-the-air Update
    |       +-- Core Library
    |       +-- OS Functional Abstraction Layer
    |       +-- Portable Abstraction Layer
    +-- BLE
    |   +-- Bluetooth low energy
    |   +-- Utilities
    |       +-- Timestamp utility
    +-- BSP
    |   +-- EvKit V1
    |   +-- Board Support
    +-- Bluetooth
    |   +-- Bluetooth LE
    |   +-- Bluetooth LE - Exc Files
    |       +-- DTM Helper files
    +-- Board
    |   +-- Samples
    |       +-- LED
    +-- Board Support
    |   +-- Common
    |   +-- MPS2 LED
    |   +-- MPS2 Buttons
    |   +-- MPS2 Graphic LCD
    |   +-- MPS2 Touchscreen
    |   +-- MPS3 FPGA_IO
    |   +-- ADXL363
    |   +-- SPI Flash
    |   +-- ADP5300
    |   +-- AC780x Development Kit
    |   |   +-- Debug
    |   +-- AC781x Development Kit
    |   |   +-- Debug Interface
    |   +-- Infra
    |   +-- PMON
    |   +-- Drivers
    |   |   +-- Basic
    |   |   +-- NOR
    |   |   +-- SDRAM
    |   |   +-- Basic I/O
    |   |   +-- Accelerometer
    |   |   +-- Gyroscope
    |   |   +-- Humidity Sensor
    |   |   +-- Magnetometer
    |   |   +-- Pressure Sensor
    |   |   +-- Temperature Sensor
    |   |   +-- QSPI
    |   |   +-- Audio
    |   |   +-- BUS
    |   |   +-- Camera
    |   |   +-- EEPROM
    |   |   +-- Environmental Sensors
    |   |   +-- Light Sensor
    |   |   +-- Motion Sensors
    |   |   +-- OSPI
    |   |   +-- Ranging Sensor
    |   |   +-- USB PD
    |   |   +-- DmaCtrl
    |   |   +-- Eeprom
    |   |   +-- I2cSpm
    |   |   +-- Ksz8851snl SPI
    |   |   +-- Ksz8851snl
    |   |   +-- NorFlash
    |   |   +-- RetargetIo
    |   |   +-- Si114x
    |   |   +-- Si7013
    |   |   +-- TempSensor
    |   |   +-- Tft
    |   |   +-- Touch
    |   |   +-- Udelay
    |   |   +-- VddCheck
    |   |   +-- CapSense
    |   |   +-- Display
    |   |   +-- NandFlash
    |   |   +-- SegmentLcd
    |   |   +-- TextDisplay
    |   |   +-- LCD
    |   |   +-- SD
    |   |   +-- Touch Screen
    |   |   +-- I/O
    |   |   +-- GYRO
    |   |   +-- TS
    |   |   +-- SRAM
    |   |   +-- PWRMON
    |   |   +-- ENV-Sensor
    |   |   +-- IDD
    |   |   +-- Smartcard
    |   |   +-- USBPD
    |   |   +-- Glass-LCD
    |   |   +-- DSI-LCD
    |   |   +-- DSI-TS
    |   |   +-- OSPI-NOR
    |   |   +-- RGB-LCD
    |   |   +-- RGB-TS
    |   |   +-- IO
    |   +-- LED
    |   |   +-- 3. RGB LED
    |   |   +-- 17. 8x8 LEDs with 2 colors
    |   |   +-- 6. LEDx8
    |   |   +-- 18. 4x7 SEG display
    |   +-- Buttons
    |   +-- All Driver
    |   +-- A/D Converter
    |   +-- emWin LCD
    |   +-- Components
    |   |   +-- APS6408
    |   |   +-- HTS221
    |   |   +-- IIS2MDC
    |   |   +-- ISM330DHCX
    |   |   +-- LPS22HH
    |   |   +-- M24LR64
    |   |   +-- EMW3080
    |   |   +-- MX25LM51245G
    |   |   +-- OV5640
    |   |   +-- STM32WB
    |   |   +-- TCPP0203
    |   |   +-- VEML6030
    |   |   +-- VL53l5CX
    |   |   +-- HX8347D
    |   |   +-- SPFD5408
    |   |   +-- STLM75
    |   |   +-- CS42L52
    |   |   +-- STTS751
    |   |   +-- CS43L22
    |   |   +-- OTM8009A
    |   |   +-- NT35510
    |   |   +-- FT6X06
    |   |   +-- ILI9341
    |   |   +-- L3GD20
    |   |   +-- STMPE811
    |   |   +-- CBTL08GP053
    |   |   +-- INA230
    |   |   +-- SN65DP141
    |   |   +-- SSD1315
    |   |   +-- ST7735
    |   |   +-- TUSB546
    |   |   +-- WM8994
    |   |   +-- RK043FN48H
    |   |   +-- S70KL1281
    |   |   +-- FT5336
    |   |   +-- CS42L51
    |   |   +-- OV9655
    |   |   +-- IS42S16800J
    |   |   +-- MFXSTM32L152
    |   |   +-- HX8347I
    |   |   +-- ISS66WVH8M8
    |   |   +-- ST7789H2
    |   |   +-- LSM6DSO
    |   +-- CORE
    |   +-- TWR-K20D50M
    |   |   +-- LED
    |   +-- Comparator
    |   +-- HW INIT
    |   +-- Documentation
    |   +-- BSP
    |   +-- User I/O Redirect
    |   +-- SDK Project Template
    |   |   +-- project_template
    |   +-- ARGB
    |   |   +-- ARGB LED
    |   |   +-- 2. ARGB
    |   +-- Memory
    |   |   +-- SPI Flash
    |   |   +-- 14. EEPROM
    |   |   +-- 13. SPI Flash
    |   +-- Button
    |   |   +-- SAR ADC Key
    |   |   +-- Touch Key
    |   |   +-- Button control
    |   |   +-- 15. 4x4 keyboard
    |   +-- LCD
    |   |   +-- SPI LCD
    |   |   +-- 19. 16x2 LCM
    |   +-- Communication
    |   |   +-- URT COM
    |   +-- Audio Output
    |   |   +-- DAC+DMA+Timer Audio output
    |   +-- BLE
    |   |   +-- MG126 BLE support
    |   |   +-- 12. MG126 BLE support
    |   +-- Buzzer
    |   |   +-- 10. Buzzer
    |   +-- Switch
    |   |   +-- 5. DIP Switch
    |   +-- Motor
    |   |   +-- 7. Step Motor
    |   |   +-- 11. RC Servo Motor
    |   +-- Others
    |   |   +-- 8. Variable Resistor
    |   +-- QEI
    |   |   +-- 9. Rotary Encoder
    |   +-- SDK Drivers
    |   |   +-- evkmimxrt1010
    |   |   +-- evkmimxrt1015
    |   |   +-- evkmimxrt1020
    |   |   +-- evkmimxrt1060
    |   |   +-- evkmimxrt1064
    |   |   +-- evkbimxrt1050
    |   |   +-- evkmimxrt1024
    |   |   +-- evkbmimxrt1060
    |   |   +-- xip_board
    |   |   +-- evkmimxrt1160
    |   |   +-- evkmimxrt1170
    |   +-- bsp
    |   +-- bsp_btn_ble
    |   +-- bsp_btn_ant
    +-- CMSIS
    |   +-- CORE
    |   +-- DSP
    |   +-- NN Lib
    +-- CMSIS Driver
    |   +-- MPC
    |   +-- PPC
    |   +-- USART
    |   |   +-- vusart_cmsis
    |   |   +-- flexcomm_usart_cmsis
    |   |   +-- uart_cmsis
    |   |   +-- lpuart_cmsis_edma
    |   |   +-- lpuart_cmsis
    |   |   +-- lpsci_cmsis
    |   |   +-- lpuart_cmsis_dma
    |   |   +-- uart_cmsis_dma
    |   |   +-- uart_cmsis_edma
    |   +-- Flash
    |   |   +-- Embedded Flash
    |   |   +-- QSPI Flash
    |   |   +-- SRAM Emulated Flash
    |   +-- I2C
    |   |   +-- lpc_i2c_cmsis
    |   |   +-- flexcomm_i2c_cmsis
    |   |   +-- i2c_cmsis
    |   |   +-- i2c_cmsis_edma
    |   |   +-- lpi2c_cmsis
    |   |   +-- i2c_cmsis_dma
    |   +-- SPI
    |       +-- vspi_cmsis
    |       +-- flexcomm_spi_cmsis
    |       +-- ecspi_cmsis
    |       +-- dspi_cmsis
    |       +-- lpspi_cmsis
    |       +-- spi_cmsis
    |       +-- spi_cmsis_dma
    +-- CMSIS Driver Validation
    |   +-- Framework
    |   +-- SPI
    |   +-- I2C
    |   +-- USART
    |   +-- Ethernet
    |   +-- MCI
    |   +-- USB Device
    |   +-- USB Host
    |   +-- CAN
    |   +-- WiFi
    +-- CMSIS RTOS Validation
    |   +-- Framework
    |   +-- Thread
    |   +-- GenWait
    |   +-- Timer
    |   +-- Signal
    |   +-- Mutex
    |   +-- Semaphore
    |   +-- MemoryPool
    |   +-- MsgQueue
    |   +-- MailQueue
    |   +-- WaitFunc
    +-- ChipInit_Wizard
    |   +-- PW
    |   +-- RST
    |   +-- GPIO
    |   +-- CSC
    |   +-- EXIC
    |   +-- GPL
    |   +-- MEM
    |   +-- EMB
    |   +-- URT
    |   +-- IRQ handler
    |   +-- Timer
    |   +-- ADC
    |   +-- DAC
    |   +-- CMP
    |   +-- APB
    |   +-- APX_CCL
    |   +-- RTC
    +-- Communications
    |   +-- I2C Master
    |   +-- I2C Slave
    |   +-- SPI Master
    |   +-- SPI Slave
    |   +-- SPI XIP
    |   +-- 1-Wire Master
    |   +-- UART
    |   +-- I2C
    |   +-- I2S
    |   +-- SPI
    +-- Compiler
    |   +-- I/O
    |   |   +-- STDIN
    |   |   +-- STDOUT
    |   |   +-- STDERR
    |   |   +-- TTY
    |   |   +-- File
    |   +-- Event Recorder
    +-- CycloneACME
    |   +-- Core
    |   +-- ACME Client
    |   +-- DNS API
    |       +-- ACME-DNS Client
    +-- CycloneCRYPTO
    |   +-- Core
    |   +-- Hash
    |   |   +-- MD2
    |   |   +-- MD4
    |   |   +-- MD5
    |   |   +-- RIPEMD-128
    |   |   +-- RIPEMD-160
    |   |   +-- SHA-1
    |   |   +-- SHA-224
    |   |   +-- SHA-256
    |   |   +-- SHA-384
    |   |   +-- SHA-512
    |   |   +-- SHA-512/224
    |   |   +-- SHA-512/256
    |   |   +-- SHA3-224
    |   |   +-- SHA3-256
    |   |   +-- SHA3-384
    |   |   +-- SHA3-512
    |   |   +-- BLAKE2b
    |   |   +-- BLAKE2b-160
    |   |   +-- BLAKE2b-256
    |   |   +-- BLAKE2b-384
    |   |   +-- BLAKE2b-512
    |   |   +-- BLAKE2s
    |   |   +-- BLAKE2s-128
    |   |   +-- BLAKE2s-160
    |   |   +-- BLAKE2s-224
    |   |   +-- BLAKE2s-256
    |   |   +-- Tiger
    |   |   +-- Whirlpool
    |   +-- XOF
    |   |   +-- SHAKE
    |   |   +-- cSHAKE
    |   |   +-- Keccak
    |   +-- MAC
    |   |   +-- CMAC
    |   |   +-- HMAC
    |   |   +-- GMAC
    |   |   +-- KMAC
    |   |   +-- Poly1305
    |   +-- Cipher
    |   |   +-- RC4
    |   |   +-- ChaCha
    |   |   +-- Salsa20
    |   |   +-- RC2
    |   |   +-- RC6
    |   |   +-- IDEA
    |   |   +-- DES
    |   |   +-- Triple DES
    |   |   +-- AES
    |   |   +-- Blowfish
    |   |   +-- Camellia
    |   |   +-- SEED
    |   |   +-- ARIA
    |   |   +-- PRESENT
    |   |   +-- Trivium
    |   +-- Cipher Mode
    |   |   +-- ECB
    |   |   +-- CBC
    |   |   +-- CFB
    |   |   +-- OFB
    |   |   +-- CTR
    |   |   +-- XTS
    |   +-- AEAD
    |   |   +-- CCM
    |   |   +-- GCM
    |   |   +-- ChaCha20Poly1305
    |   +-- PKC
    |   |   +-- DH
    |   |   +-- RSA
    |   |   +-- DSA
    |   +-- KDF
    |   |   +-- HKDF
    |   |   +-- PBKDF
    |   |   +-- bcrypt
    |   |   +-- scrypt
    |   +-- ECC
    |   |   +-- Core
    |   |   +-- ECDH
    |   |   +-- ECDSA
    |   |   +-- X25519
    |   |   +-- X448
    |   |   +-- Ed25519
    |   |   +-- Ed448
    |   +-- MPI
    |   |   +-- Core
    |   +-- RNG
    |   |   +-- Yarrow
    |   +-- Encoding
    |   |   +-- Base64
    |   |   +-- Base64url
    |   |   +-- Radix64
    |   |   +-- ASN.1
    |   |   +-- OID
    |   +-- PKIX
    |   |   +-- Key Parsing
    |   |   +-- Key Formatting
    |   |   +-- Certificate Parsing
    |   |   +-- Certificate Creation
    |   |   +-- Certificate Validation
    |   |   +-- CRL Parsing
    |   |   +-- CRL Validation
    |   |   +-- CSR Parsing
    |   |   +-- CSR Creation
    |   |   +-- CSR Validation
    |   |   +-- PEM File Import
    |   |   +-- PEM File Export
    |   +-- Hardware
    |       +-- SAM4E
    |       +-- SAML11
    |       +-- SAMD51
    |       +-- SAME53
    |       +-- SAME54
    |       +-- SAME70
    |       +-- SAMV71
    |       +-- SAMA5D2
    |       +-- SAMA5D3
    |       +-- SAM9X60
    |       +-- K6x
    |       +-- KV5x
    |       +-- LPC54xxx
    |       +-- i.MX RT1050
    |       +-- i.MX RT1060
    |       +-- i.MX RT1170
    |       +-- RA2
    |       +-- RA4
    |       +-- RA6
    |       +-- S5D9
    |       +-- S7G2
    |       +-- EFM32GG11
    |       +-- STM32G0xx
    |       +-- STM32G4xx
    |       +-- STM32F2xx
    |       +-- STM32F4xx
    |       +-- STM32F7xx
    |       +-- STM32H7xx
    |       +-- STM32L0xx
    |       +-- STM32L4xx
    |       +-- STM32L5xx
    |       +-- STM32U5xx
    |       +-- STM32WBxx
    |       +-- STM32WLxx
    |       +-- STM32MP1xx
    |       +-- Tiva TM4C129
    |       +-- MSP432E4
    +-- CycloneCommon
    |   +-- Compiler Support
    |   +-- RTOS Port
    |   |   +-- None
    |   |   +-- ChibiOS Port
    |   |   +-- CMSIS-RTOS Port
    |   |   +-- CMSIS-RTOS2 Port
    |   |   +-- embOS Port
    |   |   +-- FreeRTOS Port
    |   |   +-- RTX Port
    |   |   +-- ThreadX Port
    |   |   +-- uCOS-II Port
    |   |   +-- uCOS-III Port
    |   +-- FS Port
    |   |   +-- FatFs Port
    |   |   +-- MDK-Pro File System Port
    |   +-- Resource Manager
    |   +-- Date Time Helper Routines
    |   +-- String Helper Routines
    +-- CycloneSSH
    |   +-- Core
    |   +-- SSH Client
    |   +-- SSH Server
    |   +-- SCP
    |   |   +-- SCP Client
    |   |   +-- SCP Server
    |   +-- SFTP
    |   |   +-- SFTP Client
    |   |   +-- SFTP Server
    |   +-- Shell
    |   |   +-- Shell Client
    |   |   +-- Shell Server
    |   +-- Authentication
    |   |   +-- Password
    |   |   +-- Public Key
    |   +-- Key Exchange
    |   |   +-- Diffie-Hellman
    |   |   +-- ECDH
    |   |   +-- Curve25519
    |   |   +-- Curve448
    |   +-- Signature
    |   |   +-- RSA
    |   |   +-- DSA
    |   |   +-- ECDSA
    |   |   +-- Ed25519
    |   |   +-- Ed448
    |   +-- Cipher Mode
    |   |   +-- CBC
    |   |   +-- CTR
    |   +-- AEAD
    |   |   +-- GCM
    |   |   +-- ChaCha20Poly1305
    |   +-- Cipher
    |   |   +-- RC4
    |   |   +-- IDEA
    |   |   +-- Blowfish
    |   |   +-- Triple DES
    |   |   +-- AES
    |   |   +-- Camellia
    |   |   +-- SEED
    |   +-- Hash
    |   |   +-- MD5
    |   |   +-- MD5/96
    |   |   +-- RIPEMD-160
    |   |   +-- SHA-1
    |   |   +-- SHA-1/96
    |   |   +-- SHA-256
    |   |   +-- SHA-384
    |   |   +-- SHA-512
    |   +-- Elliptic Curves
    |       +-- nistp256
    |       +-- nistp384
    |       +-- nistp521
    +-- CycloneSSL
    |   +-- Core
    |   +-- TLS Client
    |   +-- TLS Server
    |   +-- DTLS Client
    |   +-- DTLS Server
    |   +-- Key Exchange
    |   |   +-- RSA
    |   |   +-- DHE_RSA
    |   |   +-- DHE_DSS
    |   |   +-- DH_anon
    |   |   +-- ECDHE_RSA
    |   |   +-- ECDHE_ECDSA
    |   |   +-- ECDH_anon
    |   |   +-- PSK
    |   |   +-- RSA_PSK
    |   |   +-- DHE_PSK
    |   |   +-- ECDHE_PSK
    |   +-- Key Exchange (TLS 1.3)
    |   |   +-- DHE
    |   |   +-- ECDHE
    |   |   +-- PSK
    |   |   +-- PSK_DHE
    |   |   +-- PSK_ECDHE
    |   +-- Signature
    |   |   +-- RSA
    |   |   +-- RSA-PSS
    |   |   +-- DSA
    |   |   +-- ECDSA
    |   |   +-- Ed25519
    |   |   +-- Ed448
    |   +-- Cipher Mode
    |   |   +-- CBC
    |   +-- AEAD
    |   |   +-- CCM
    |   |   +-- GCM
    |   |   +-- ChaCha20Poly1305
    |   +-- Cipher
    |   |   +-- RC4
    |   |   +-- IDEA
    |   |   +-- DES
    |   |   +-- Triple DES
    |   |   +-- AES
    |   |   +-- Camellia
    |   |   +-- SEED
    |   |   +-- ARIA
    |   +-- Hash
    |   |   +-- MD5
    |   |   +-- SHA-1
    |   |   +-- SHA-224
    |   |   +-- SHA-256
    |   |   +-- SHA-384
    |   |   +-- SHA-512
    |   +-- Groups
    |       +-- ffdhe2048
    |       +-- ffdhe3072
    |       +-- ffdhe4096
    |       +-- secp160k1
    |       +-- secp160r1
    |       +-- secp160r2
    |       +-- secp192k1
    |       +-- secp192r1
    |       +-- secp224k1
    |       +-- secp224r1
    |       +-- secp256k1
    |       +-- secp256r1
    |       +-- secp384r1
    |       +-- secp521r1
    |       +-- brainpoolP256r1
    |       +-- brainpoolP384r1
    |       +-- brainpoolP512r1
    |       +-- x25519
    |       +-- x448
    +-- CycloneSTP
    |   +-- Core
    |   +-- STP
    |   +-- RSTP
    |   +-- MIBs
    |       +-- BRIDGE-MIB
    |       +-- RSTP-MIB
    +-- CycloneTCP
    |   +-- Core
    |   +-- TCP
    |   +-- UDP
    |   +-- Socket
    |   +-- LLDP
    |   |   +-- LLDP Agent
    |   |   +-- LLDP Extension (IEEE 802.1)
    |   |   +-- LLDP Extension (IEEE 802.3)
    |   |   +-- LLDP Extension (LLDP-MED)
    |   +-- IPv4
    |   |   +-- Core
    |   |   +-- Auto-IP
    |   +-- IGMP
    |   |   +-- IGMP Host
    |   |   +-- IGMP Router
    |   |   +-- IGMP Snooping
    |   +-- IPv6
    |   |   +-- Core
    |   |   +-- MLD
    |   |   +-- SLAAC
    |   |   +-- Router Adv
    |   +-- DHCP
    |   |   +-- DHCP Client
    |   |   +-- DHCP Server
    |   +-- DHCPv6
    |   |   +-- DHCPv6 Client
    |   |   +-- DHCPv6 Relay
    |   +-- DNS
    |   |   +-- DNS Client
    |   |   +-- DNS Cache
    |   +-- mDNS
    |   |   +-- mDNS Client
    |   |   +-- mDNS Responder
    |   +-- DNS-SD
    |   |   +-- DNS-SD
    |   +-- NetBIOS
    |   |   +-- NBNS Client
    |   |   +-- NBNS Responder
    |   +-- LLMNR
    |   |   +-- LLMNR Client
    |   |   +-- LLMNR Responder
    |   +-- CoAP
    |   |   +-- CoAP Client
    |   |   +-- CoAP Server
    |   +-- FTP
    |   |   +-- FTP Client
    |   |   +-- FTP Server
    |   +-- HTTP
    |   |   +-- HTTP Client
    |   |   +-- HTTP Server
    |   +-- MQTT
    |   |   +-- MQTT Client
    |   +-- MQTT-SN
    |   |   +-- MQTT-SN Client
    |   +-- SMTP
    |   |   +-- SMTP Client
    |   +-- SNMP
    |   |   +-- SNMP Agent
    |   +-- MIBs
    |   |   +-- MIB-II
    |   |   +-- IF-MIB
    |   |   +-- IP-MIB
    |   |   +-- TCP-MIB
    |   |   +-- UDP-MIB
    |   |   +-- SNMP-MIB
    |   |   +-- SNMP-FRAMEWORK-MIB
    |   |   +-- SNMP-MPD-MIB
    |   |   +-- SNMP-COMMUNITY-MIB
    |   |   +-- SNMP-USM-MIB
    |   |   +-- SNMP-VACM-MIB
    |   |   +-- LLDP-MIB
    |   +-- SNTP
    |   |   +-- SNTP Client
    |   +-- TFTP
    |   |   +-- TFTP Client
    |   |   +-- TFTP Server
    |   +-- Icecast
    |   |   +-- Icecast Client
    |   +-- Modbus
    |   |   +-- Modbus Client
    |   |   +-- Modbus Server
    |   +-- WebSocket
    |   |   +-- Core
    |   +-- Ping
    |   |   +-- Core
    |   +-- PPP
    |   |   +-- Core
    |   |   +-- PAP
    |   |   +-- CHAP
    |   +-- Drivers (MAC)
    |   |   +-- SAM3X
    |   |   +-- SAM4E
    |   |   +-- SAM7X
    |   |   +-- SAM9263
    |   |   +-- SAM9X60
    |   |   +-- SAMA5D2
    |   |   +-- SAMA5D3
    |   |   +-- SAME53
    |   |   +-- SAME54
    |   |   +-- SAME70
    |   |   +-- SAMV71
    |   |   +-- FM3
    |   |   +-- FM4
    |   |   +-- GD32F307
    |   |   +-- XMC4400
    |   |   +-- XMC4500
    |   |   +-- XMC4700
    |   |   +-- XMC4800
    |   |   +-- SmartFusion
    |   |   +-- SmartFusion2
    |   |   +-- NUC472
    |   |   +-- M487
    |   |   +-- LPC175x
    |   |   +-- LPC176x
    |   |   +-- LPC178x
    |   |   +-- LPC18xx
    |   |   +-- LPC23xx
    |   |   +-- LPC43xx
    |   |   +-- LPC54xxx
    |   |   +-- K6x
    |   |   +-- K7x
    |   |   +-- KV5x
    |   |   +-- i.MX RT1020
    |   |   +-- i.MX RT1050
    |   |   +-- i.MX RT1060
    |   |   +-- i.MX RT1160
    |   |   +-- i.MX RT1170
    |   |   +-- S32K148
    |   |   +-- i.MX6UL
    |   |   +-- S5D9
    |   |   +-- S7G2
    |   |   +-- RA6M3
    |   |   +-- RZA1
    |   |   +-- EFM32GG11
    |   |   +-- STM32F1xx
    |   |   +-- STM32F2xx
    |   |   +-- STM32F4xx
    |   |   +-- STM32F7xx
    |   |   +-- STM32H7xx
    |   |   +-- STM32MP1xx
    |   |   +-- STR912
    |   |   +-- F28M35x
    |   |   +-- LM3S
    |   |   +-- Tiva TM4C129
    |   |   +-- MSP432E4
    |   |   +-- OMAP-L138
    |   |   +-- TMS570
    |   |   +-- Zynq-7000
    |   +-- Drivers (PHY)
    |   |   +-- AR8031
    |   |   +-- AR8035
    |   |   +-- DM9161
    |   |   +-- IP101
    |   |   +-- PEF7071
    |   |   +-- MV88E1512
    |   |   +-- KSZ8031
    |   |   +-- KSZ8041
    |   |   +-- KSZ8051
    |   |   +-- KSZ8061
    |   |   +-- KSZ8081
    |   |   +-- KSZ8091
    |   |   +-- KSZ8721
    |   |   +-- KSZ9031
    |   |   +-- KSZ9131
    |   |   +-- LAN8700
    |   |   +-- LAN8710
    |   |   +-- LAN8720
    |   |   +-- LAN8740
    |   |   +-- LAN8742
    |   |   +-- LAN8770
    |   |   +-- TJA1100
    |   |   +-- TJA1101
    |   |   +-- RTL8211E
    |   |   +-- RTL8211F
    |   |   +-- uPD60611
    |   |   +-- ST802RT1A
    |   |   +-- DP83620
    |   |   +-- DP83630
    |   |   +-- DP83640
    |   |   +-- DP83822
    |   |   +-- DP83825
    |   |   +-- DP83826
    |   |   +-- DP83848
    |   |   +-- DP83867
    |   |   +-- DP83869
    |   |   +-- DP83TC811
    |   +-- Drivers (Switch)
    |   |   +-- MV88E6060
    |   |   +-- KSZ8463
    |   |   +-- KSZ8563
    |   |   +-- KSZ8565
    |   |   +-- KSZ8567
    |   |   +-- KSZ8775
    |   |   +-- KSZ8794
    |   |   +-- KSZ8795
    |   |   +-- KSZ8863
    |   |   +-- KSZ8864
    |   |   +-- KSZ8873
    |   |   +-- KSZ8895
    |   |   +-- KSZ9477
    |   |   +-- KSZ9563
    |   |   +-- KSZ9893
    |   |   +-- KSZ9896
    |   |   +-- KSZ9897
    |   |   +-- LAN9303
    |   |   +-- LAN9353
    |   |   +-- LAN9354
    |   |   +-- LAN9355
    |   +-- Drivers (Ethernet)
    |   |   +-- DM9000
    |   |   +-- ENC28J60
    |   |   +-- ENC624J600
    |   |   +-- KSZ8851
    |   +-- Drivers (Wi-Fi)
    |       +-- WILC1000
    |       +-- WINC1500
    |       +-- WF200
    |       +-- BCM43362
    |       +-- MRF24WG
    +-- Data Exchange
    |   +-- JSON
    |   |   +-- Jansson
    |   |   +-- parson
    |   |   +-- Jsmn
    |   |   +-- cJSON
    |   +-- CBOR
    |   |   +-- TinyCBOR
    |   +-- Serialization
    |       +-- flatbuffers
    +-- Data Processing
    |   +-- Math
    |       +-- gemmlowp fixed-point
    |       +-- kissfft
    |       +-- ruy
    +-- Device
    |   +-- Startup
    |   |   +-- LPC54101_startup
    |   |   +-- LPC810_startup
    |   |   +-- LPC811_startup
    |   |   +-- LPC812_startup
    |   |   +-- LPC8N04_startup
    |   |   +-- MIMXRT533S_startup
    |   |   +-- MIMXRT555S_startup
    |   |   +-- MIMXRT595S_startup
    |   |   +-- MIMXRT633S_startup
    |   |   +-- MIMXRT685S_startup
    |   |   +-- MK27F15_startup
    |   |   +-- MK27FA15_startup
    |   |   +-- MK28F15_startup
    |   |   +-- MK28FA15_startup
    |   |   +-- MK80F25615_startup
    |   |   +-- MK82F25615_startup
    |   |   +-- MKE14F16_startup
    |   |   +-- MKE16F16_startup
    |   |   +-- MKE18F16_startup
    |   |   +-- MKL13Z644_startup
    |   |   +-- MKL17Z4_startup
    |   |   +-- MKL17Z644_startup
    |   |   +-- MKL27Z4_startup
    |   |   +-- MKL27Z644_startup
    |   |   +-- MKL28Z7_startup
    |   |   +-- MKL33Z4_startup
    |   |   +-- MKL33Z644_startup
    |   |   +-- MKL43Z4_startup
    |   |   +-- MKL82Z7_startup
    |   |   +-- MKV42F16_startup
    |   |   +-- MKV44F16_startup
    |   |   +-- MKV46F16_startup
    |   |   +-- MKV56F24_startup
    |   |   +-- MKV58F24_startup
    |   +-- Drivers
    |   |   +-- Debug_FrameWork
    |   |   +-- ADC
    |   |   +-- CRC
    |   |   +-- FMC
    |   |   +-- I2Cn
    |   |   +-- INTC
    |   |   +-- LCD
    |   |   +-- PCU
    |   |   +-- PWR
    |   |   +-- SCU
    |   |   +-- SCULV
    |   |   +-- TIMER1n
    |   |   +-- TIMER2n
    |   |   +-- TIMER3n
    |   |   +-- UARTn
    |   |   +-- USART1n
    |   |   +-- WDT
    |   |   +-- WT
    |   |   +-- Debug_frameWork
    |   |   +-- adc
    |   |   +-- crc
    |   |   +-- dmac
    |   |   +-- i2c
    |   |   +-- pcu
    |   |   +-- pwr
    |   |   +-- scu
    |   |   +-- timer1n
    |   |   +-- timer2n
    |   |   +-- timer3n
    |   |   +-- uart
    |   |   +-- usart
    |   |   +-- spi
    |   |   +-- wdt
    |   |   +-- wt
    |   |   +-- cmp
    |   |   +-- dac
    |   |   +-- lcd
    |   |   +-- ebi
    |   |   +-- timer30
    |   |   +-- timer40
    |   |   +-- rtc
    |   |   +-- tempsensor
    |   |   +-- usb
    |   |   +-- CMPn
    |   |   +-- DMACn
    |   |   +-- LPUART
    |   |   +-- PMU
    |   |   +-- RTCC
    |   |   +-- SCn
    |   |   +-- SPIn
    |   |   +-- TIMER5n
    |   |   +-- TIMER4n
    |   |   +-- Common
    |   |   +-- dma
    |   |   +-- fmc
    |   |   +-- gpio
    |   |   +-- led
    |   |   +-- timer
    |   |   +-- usart1n
    |   |   +-- FRT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- PWM
    |   |   +-- SPI
    |   |   +-- TIMER
    |   |   +-- UART
    |   |   +-- NVIC
    |   |   +-- DEBUG_FRMWRK
    |   |   +-- AFE
    |   |   +-- CFMC
    |   |   +-- DFMC
    |   |   +-- DMA
    |   |   +-- MPWM
    |   |   +-- QEI
    |   |   +-- PGA
    |   |   +-- COMP
    |   |   +-- AES128
    |   |   +-- RNG
    |   |   +-- Timer
    |   |   +-- DEBUG_FRAMEWORK
    |   |   +-- Power
    |   |   +-- Slib
    |   |   +-- BEEP
    |   |   +-- Crypto
    |   |   +-- Flash
    |   |   +-- RTC
    |   |   +-- SPORT
    |   |   +-- TMR
    |   |   +-- Interrupt
    |   |   +-- DIO
    |   |   +-- GPT
    |   |   +-- DAC
    |   |   +-- FEE
    |   |   +-- CLK
    |   |   +-- IEXC
    |   |   +-- INT
    |   |   +-- RST
    |   |   +-- URT
    |   |   +-- WUT
    |   |   +-- ADCC
    |   |   +-- TWI
    |   |   +-- DACC
    |   |   +-- TTU
    |   |   +-- VMU
    |   |   +-- MATH UNIT
    |   |   +-- Rotary
    |   |   +-- HAE
    |   |   +-- SINC
    |   |   +-- DBC
    |   |   +-- OCU
    |   |   +-- FOCP
    |   |   +-- FFTB
    |   +-- StdPeriph Drivers
    |   |   +-- Framework
    |   |   +-- ADC
    |   |   +-- WUPT
    |   |   +-- BUZZER
    |   |   +-- RCM
    |   |   +-- EINT
    |   |   +-- Flash
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- IWDT
    |   |   +-- SPI
    |   |   +-- TMR1/TMR1A
    |   |   +-- TMR2
    |   |   +-- TMR4
    |   |   +-- UART
    |   |   +-- WWDT
    |   |   +-- BAKR
    |   |   +-- CAN
    |   |   +-- CRC
    |   |   +-- DMA
    |   |   +-- FMC
    |   |   +-- SCI2C
    |   |   +-- PMU
    |   |   +-- QSPI
    |   |   +-- TMR
    |   |   +-- USART
    |   |   +-- EMMC
    |   |   +-- SDRC
    |   |   +-- DAC
    |   |   +-- DBGMCU
    |   |   +-- SDIO
    |   |   +-- RTC
    |   |   +-- BAKPR
    |   |   +-- DMC
    |   |   +-- CRYP
    |   |   +-- DCI
    |   |   +-- HASH
    |   |   +-- RNG
    |   |   +-- SMC
    |   |   +-- SYSCFG
    |   |   +-- BKP
    |   |   +-- CEC
    |   |   +-- EXTI
    |   |   +-- FSMC
    |   |   +-- IWDG
    |   |   +-- PWR
    |   |   +-- RCC
    |   |   +-- TIM
    |   |   +-- WWDG
    |   |   +-- CLOCK
    |   |   +-- CMP
    |   |   +-- ERU
    |   |   +-- FLASH
    |   |   +-- LED
    |   |   +-- OPA
    |   |   +-- PPU
    |   |   +-- SSP
    |   |   +-- SYSTEM
    |   |   +-- WDT
    |   |   +-- WT
    |   |   +-- BT16
    |   |   +-- CHIPCTRL
    |   |   +-- GTA
    |   |   +-- KBI
    |   |   +-- NORMAL_UART
    |   |   +-- TKS
    |   |   +-- UART0
    |   |   +-- SystemClock
    |   |   +-- IAP
    |   |   +-- PWM
    |   |   +-- TIMER
    |   |   +-- IIC
    |   |   +-- QEP
    |   |   +-- CMPSS
    |   +-- Memory map
    |   +-- Definition
    |   +-- Driver
    |   |   +-- DualTimer
    |   |   +-- GPIO
    |   |   +-- PWM
    |   |   +-- Timer
    |   |   +-- UART
    |   |   +-- UTI
    |   |   +-- WatchDog
    |   |   +-- ADC12B
    |   |   +-- I2CM
    |   |   +-- I2CS
    |   |   +-- MPULCD
    |   |   +-- RTC
    |   |   +-- SLPTimer
    |   |   +-- SPI
    |   +-- Retarget_UART
    |   +-- Examples Support
    |   +-- Global Configuration
    |   +-- Cycle Count
    |   +-- Retarget UART
    |   +-- Peripheral Libraries
    |   |   +-- FLASH
    |   |   +-- UART
    |   |   +-- DMA
    |   |   +-- GPIO
    |   |   +-- CLOCK
    |   |   +-- CRC
    |   |   +-- Timer
    |   |   +-- I2C
    |   |   +-- SPI
    |   |   +-- INT
    |   |   +-- PWR
    |   |   +-- RST
    |   |   +-- RTC
    |   |   +-- Watchdog
    |   +-- AFE
    |   |   +-- Operation
    |   +-- Silicon Revision
    |   +-- Retarget
    |   +-- Services
    |   |   +-- Interrupt
    |   |   +-- Power
    |   |   +-- DMA
    |   |   +-- TRU
    |   |   +-- smpu
    |   |   +-- Timer
    |   |   +-- GPIO
    |   |   +-- MBOX
    |   |   +-- SMPU
    |   |   +-- PWM
    |   |   +-- CPT
    |   |   +-- WD
    |   |   +-- SPU
    |   +-- OSAL
    |   |   +-- PORTS
    |   |   +-- Source
    |   +-- ATC Drivers
    |   |   +-- ACMP
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- CKGEN
    |   |   +-- CRC
    |   |   +-- CTU
    |   |   +-- DMA
    |   |   +-- ECC SRAM
    |   |   +-- eFlash
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MMDIVSQART
    |   |   +-- PWDT
    |   |   +-- PWM
    |   |   +-- RTC
    |   |   +-- SPI
    |   |   +-- SPM
    |   |   +-- TIMER
    |   |   +-- UART
    |   |   +-- WDG
    |   |   +-- LIN
    |   |   +-- sFlash
    |   |   +-- Watchdog
    |   +-- SPI_BUS
    |   +-- FLASH
    |   +-- CLOCK
    |   +-- DMA
    |   +-- Interrupt
    |   +-- Uart
    |   +-- I2C_Master
    |   +-- I3C_Master
    |   +-- SOC_Init
    |   +-- GPIO
    |   +-- BOARD_mini_pcie
    |   +-- ISR
    |   +-- FT32Driver
    |   |   +-- COMMON
    |   |   +-- ADC
    |   |   +-- COMP
    |   |   +-- CRC
    |   |   +-- CRS
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- DEBUG
    |   |   +-- EXTI
    |   |   +-- FLASH
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- IWDG
    |   |   +-- MISC
    |   |   +-- OPA
    |   |   +-- PWR
    |   |   +-- RCC
    |   |   +-- RTC
    |   |   +-- SPI
    |   |   +-- SYSCFG
    |   |   +-- TIM
    |   |   +-- USART
    |   |   +-- WWDG
    |   |   +-- Touch
    |   |   +-- DIV
    |   +-- APM32F00x Startup
    |   +-- APM32F00x StdPeriph Drivers
    |   |   +-- Framework
    |   |   +-- ADC
    |   |   +-- WUPT
    |   |   +-- BUZZER
    |   |   +-- RCM
    |   |   +-- EINT
    |   |   +-- FMC
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- IWDT
    |   |   +-- SPI
    |   |   +-- TMR1/TMR1A
    |   |   +-- TMR2
    |   |   +-- TMR4
    |   |   +-- USART
    |   |   +-- WWDT
    |   +-- APM32F0xx Startup
    |   +-- APM32F0xx StdPeriph Drivers
    |   |   +-- Framework
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- CEC
    |   |   +-- COMP
    |   |   +-- CRC
    |   |   +-- CRS
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- EINT
    |   |   +-- FMC
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- IWDT
    |   |   +-- PMU
    |   |   +-- RCM
    |   |   +-- RTC
    |   |   +-- SPI
    |   |   +-- TMR
    |   |   +-- USART
    |   |   +-- WWDT
    |   +-- GD32E10x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- BKP
    |   |   +-- CAN
    |   |   +-- CRC
    |   |   +-- CTC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- EXMC
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- EVAL
    |   |   +-- GD32E10x
    |   |   +-- GD32E23x
    |   |   +-- GD32E503
    |   |   +-- GD32E507
    |   |   +-- GD32F103B
    |   |   +-- GD32F103C
    |   |   +-- GD32F103E
    |   |   +-- GD32F105C
    |   |   +-- GD32F107C
    |   |   +-- GD32F207i
    |   |   +-- GD32F207c
    |   |   +-- GD32F30x
    |   |   +-- GD32F450I
    |   |   +-- GD32F450Z
    |   |   +-- GD32F403
    |   |   +-- GD32L23x
    |   +-- GD32E10x_libopt
    |   +-- GD32E23x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- CMP
    |   |   +-- CRC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SPI_I2S
    |   |   +-- SYSCFG
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- GD32E23x_libopt
    |   +-- GD32E50x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- BKP
    |   |   +-- CAN
    |   |   +-- CMP
    |   |   +-- CRC
    |   |   +-- CTC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- ENET
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- SHRTIMER
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- SQPI
    |   |   +-- TIMER
    |   |   +-- TMU
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- GD32E50x_libopt
    |   +-- GD32F10x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- BKP
    |   |   +-- CAN
    |   |   +-- CRC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- ENET
    |   |   +-- EXMC
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- GD32F10x_libopt
    |   +-- GD32F1x0_StdPeripherals
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- CEC
    |   |   +-- CRC
    |   |   +-- CMP
    |   |   +-- DAC
    |   |   +-- MCUDBG
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- GPIO
    |   |   +-- SYSCFG
    |   |   +-- I2C
    |   |   +-- FWDGT
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   |   +-- MISC
    |   |   +-- TSI
    |   |   +-- SLCD
    |   |   +-- OPA
    |   |   +-- IVREF
    |   +-- GD32F1x0_EVAL
    |   +-- GD32F1x0_libopt
    |   +-- GD32F20x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- BKP
    |   |   +-- CAN
    |   |   +-- CAU
    |   |   +-- CRC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DCI
    |   |   +-- DMA
    |   |   +-- ENET
    |   |   +-- EXMC
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- HAU
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- TLI
    |   |   +-- TRNG
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- GD32F20x_libopt
    |   +-- GD32F30x_StdPeripherals
    |   |   +-- ADC
    |   |   +-- BKP
    |   |   +-- CAN
    |   |   +-- CRC
    |   |   +-- CTC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- ENET
    |   |   +-- EXMC
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   +-- GD32F30x_libopt
    |   +-- GD32F3x0_StdPeripherals
    |   |   +-- ADC
    |   |   +-- CRC
    |   |   +-- CTC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- GPIO
    |   |   +-- SYSCFG
    |   |   +-- I2C
    |   |   +-- FWDGT
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SPI_I2S
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- WWDGT
    |   |   +-- MISC
    |   |   +-- TSI
    |   |   +-- CEC
    |   |   +-- CMP
    |   |   +-- DAC
    |   +-- GD32F3x0_EVAL
    |   +-- GD32F3x0_libopt
    |   +-- StdPeripherals
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- CRC
    |   |   +-- CTC
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DCI
    |   |   +-- DMA
    |   |   +-- ENET
    |   |   +-- EXMC
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- IPA
    |   |   +-- IREF
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- SYSCFG
    |   |   +-- TIMER
    |   |   +-- TLI
    |   |   +-- TRNG
    |   |   +-- USART
    |   |   +-- WWDGT
    |   |   +-- BKP
    |   +-- Libopt
    |   +-- GD32L23x_StdPeripherals
    |   |   +-- SPI_I2S
    |   |   +-- CMP
    |   |   +-- CRC
    |   |   +-- SLCD
    |   |   +-- FMC
    |   |   +-- I2C
    |   |   +-- PMU
    |   |   +-- RTC
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- GPIO
    |   |   +-- MISC
    |   |   +-- RCU
    |   |   +-- WWDGT
    |   |   +-- FWDGT
    |   |   +-- TIMER
    |   |   +-- LPTIMER
    |   |   +-- USART
    |   |   +-- LPUART
    |   +-- GD32L23x_libopt
    |   +-- GD32W515_StdPeripherals
    |   |   +-- ADC
    |   |   +-- ICACHE
    |   |   +-- HPDF
    |   |   +-- CRC
    |   |   +-- TZPCU
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- TRNG
    |   |   +-- EFUSE
    |   |   +-- EXTI
    |   |   +-- FMC
    |   |   +-- FWDGT
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- MISC
    |   |   +-- PMU
    |   |   +-- RCU
    |   |   +-- RTC
    |   |   +-- SDIO
    |   |   +-- SPI_I2S
    |   |   +-- SQPI
    |   |   +-- QSPI
    |   |   +-- TIMER
    |   |   +-- TSI
    |   |   +-- DCI
    |   |   +-- CAU
    |   |   +-- HAU
    |   |   +-- PKCAU
    |   |   +-- USART
    |   |   +-- WWDGT
    |   |   +-- SYSCFG
    |   +-- GMF0 HAL
    |   +-- GR551x HAL
    |   +-- GR551x App Drivers
    |   +-- GR551x BLE Drivers
    |   +-- Project Config
    |   |   +-- ProjectConfig
    |   +-- IMC300A PLIB
    |   +-- JCOM
    |   +-- IMM100A PLIB
    |   +-- ConfigWizard
    |   +-- ConfigWizard_v2
    |   +-- SDK
    |   |   +-- ADC1
    |   |   +-- ADC2
    |   |   +-- BOOTROM
    |   |   +-- CCU6
    |   |   +-- GPT12E
    |   |   +-- HS
    |   |   +-- INT
    |   |   +-- ISR
    |   |   +-- LS
    |   |   +-- MON
    |   |   +-- PMU
    |   |   +-- PORT
    |   |   +-- SCU
    |   |   +-- SSC
    |   |   +-- TIMER2x
    |   |   +-- TRX
    |   |   +-- UART
    |   |   +-- WDT1
    |   |   +-- BDRV
    |   |   +-- CSA
    |   |   +-- LIN
    |   |   +-- MATHDIV
    |   |   +-- DMA
    |   |   +-- SDADC
    |   |   +-- TIMER3
    |   +-- BF-Stepping
    |   +-- RTE_Device
    |   +-- XMClib
    |   |   +-- VADC
    |   |   +-- ACMP
    |   |   +-- BCCU
    |   |   +-- CAN
    |   |   +-- CCU4
    |   |   +-- CCU8
    |   |   +-- ERU
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- I2S
    |   |   +-- LEDTS
    |   |   +-- MATH
    |   |   +-- PAU
    |   |   +-- POSIF
    |   |   +-- PRNG
    |   |   +-- RTC
    |   |   +-- SCU
    |   |   +-- SPI
    |   |   +-- UART
    |   |   +-- WDT
    |   |   +-- FLASH
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- DSD
    |   |   +-- EBU
    |   |   +-- ECAT
    |   |   +-- ETH_MAC
    |   |   +-- ETH_PHY
    |   |   +-- HRPWM
    |   |   +-- SDMMC
    |   |   +-- USB
    |   |   +-- FCE
    |   +-- emlib
    |   |   +-- Framework
    |   |   +-- ACMP
    |   |   +-- ADC
    |   |   +-- AES
    |   |   +-- BURTC
    |   |   +-- CMU
    |   |   +-- CORE
    |   |   +-- DAC
    |   |   +-- DBG
    |   |   +-- DMA
    |   |   +-- EBI
    |   |   +-- EMU
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- INT
    |   |   +-- LCD
    |   |   +-- LESENSE
    |   |   +-- LETIMER
    |   |   +-- LEUART
    |   |   +-- MPU
    |   |   +-- MSC
    |   |   +-- OPAMP
    |   |   +-- PCNT
    |   |   +-- PRS
    |   |   +-- RAMFUNC
    |   |   +-- RMU
    |   |   +-- RTC
    |   |   +-- SYSTEM
    |   |   +-- TIMER
    |   |   +-- USART
    |   |   +-- VCMP
    |   |   +-- WDOG
    |   |   +-- IDAC
    |   +-- emdrv
    |   |   +-- DMADRV
    |   |   +-- GPIOINT
    |   |   +-- NVM
    |   |   +-- RTCDRV
    |   |   +-- SLEEP
    |   |   +-- SPIDRV
    |   +-- KSDK HAL
    |   |   +-- ADC16
    |   |   +-- AOI
    |   |   +-- CADC
    |   |   +-- CMP
    |   |   +-- COP
    |   |   +-- CRC
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- DMAMUX
    |   |   +-- DSPI
    |   |   +-- eDMA
    |   |   +-- ENC
    |   |   +-- ENET
    |   |   +-- EWM
    |   |   +-- FLEXBUS
    |   |   +-- FlexCAN
    |   |   +-- FLEXIO
    |   |   +-- FLEXIO_I2C
    |   |   +-- FLEXIO_I2S
    |   |   +-- FLEXIO_SPI
    |   |   +-- FLEXIO_UART
    |   |   +-- FTM
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- LLWU
    |   |   +-- LMEM
    |   |   +-- LPSCI
    |   |   +-- LPTMR
    |   |   +-- LPUART
    |   |   +-- MCG
    |   |   +-- MCG_Lite
    |   |   +-- MMDVSQ
    |   |   +-- MPU
    |   |   +-- OSC
    |   |   +-- PDB
    |   |   +-- PIT
    |   |   +-- PMC
    |   |   +-- PORT
    |   |   +-- PWM
    |   |   +-- RCM
    |   |   +-- RNGA
    |   |   +-- RTC
    |   |   +-- SAI
    |   |   +-- SDHC
    |   |   +-- SIM
    |   |   +-- SMC
    |   |   +-- SPI
    |   |   +-- TPM
    |   |   +-- TSI
    |   |   +-- UART
    |   |   +-- VREF
    |   |   +-- WDOG
    |   |   +-- XBAR
    |   +-- KSDK Driver
    |   |   +-- ADC16
    |   |   +-- AOI
    |   |   +-- CADC
    |   |   +-- CMP
    |   |   +-- COP
    |   |   +-- CRC
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- DSPI
    |   |   +-- eDMA
    |   |   +-- ENC
    |   |   +-- ENET
    |   |   +-- EWM
    |   |   +-- Flash
    |   |   +-- FLEXBUS
    |   |   +-- FlexCAN
    |   |   +-- FLEXIO
    |   |   +-- FLEXIO_I2C
    |   |   +-- FLEXIO_I2S
    |   |   +-- FLEXIO_SPI
    |   |   +-- FLEXIO_UART
    |   |   +-- FTM
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- LMEM
    |   |   +-- LPSCI
    |   |   +-- LPTMR
    |   |   +-- LPUART
    |   |   +-- MPU
    |   |   +-- PDB
    |   |   +-- PIT
    |   |   +-- PWM
    |   |   +-- RNGA
    |   |   +-- RTC
    |   |   +-- SAI
    |   |   +-- SDHC
    |   |   +-- SPI
    |   |   +-- TPM
    |   |   +-- TSI
    |   |   +-- UART
    |   |   +-- VREF
    |   |   +-- WDOG
    |   |   +-- XBAR
    |   +-- KSDK System
    |   |   +-- Clock
    |   |   +-- Interrupt
    |   |   +-- HwTimer
    |   |   +-- Power
    |   +-- KSDK OSA
    |   |   +-- OSA
    |   +-- KSDK Utility
    |   |   +-- Debug Console
    |   |   +-- Misc
    |   +-- LPCOpen
    |   +-- PIN
    |   +-- GPDMA
    |   +-- SCU
    |   +-- R-IN32M3 Drivers
    |   |   +-- CSI
    |   |   +-- DMAC
    |   |   +-- IIC
    |   |   +-- SROMC
    |   |   +-- TIMER
    |   |   +-- UART
    |   |   +-- WDT
    |   +-- R-IN32M4 Drivers
    |   |   +-- ADC
    |   |   +-- CSI
    |   |   +-- DMAC
    |   |   +-- IIC
    |   |   +-- SROMC
    |   |   +-- TAUD
    |   |   +-- TIMER
    |   |   +-- UART
    |   |   +-- WDT
    |   +-- R-IN32M4 Middlewares
    |   |   +-- Flash
    |   |   +-- Sflash
    |   +-- R-IN32M4 GbEthPHY
    |   |   +-- Library
    |   +-- SDK PAL
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- I2C
    |   |   +-- I2S
    |   |   +-- IC
    |   |   +-- MPU
    |   |   +-- OC
    |   |   +-- PWM
    |   |   +-- Security
    |   |   +-- SPI
    |   |   +-- Timing
    |   |   +-- UART
    |   |   +-- WDG
    |   +-- SDK Driver
    |   |   +-- ADC
    |   |   +-- Clock
    |   |   +-- CMP
    |   |   +-- CRC
    |   |   +-- CSEC
    |   |   +-- eDMA
    |   |   +-- EIM
    |   |   +-- ERM
    |   |   +-- Flash
    |   |   +-- FlexCAN
    |   |   +-- FlexIO
    |   |   +-- FlexIO (I2C)
    |   |   +-- FlexIO (I2S)
    |   |   +-- FlexIO (SPI)
    |   |   +-- FlexIO (UART)
    |   |   +-- FTM
    |   |   +-- FTM (IC)
    |   |   +-- FTM (MC)
    |   |   +-- FTM (OC)
    |   |   +-- FTM (PWM)
    |   |   +-- FTM (QD)
    |   |   +-- Interrupt
    |   |   +-- LIN (LPUART)
    |   |   +-- LPI2C
    |   |   +-- LPIT
    |   |   +-- LPSPI
    |   |   +-- LPTMR
    |   |   +-- LPUART
    |   |   +-- MPU
    |   |   +-- PDB
    |   |   +-- PINS
    |   |   +-- Power
    |   |   +-- RTC
    |   |   +-- TRGMUX
    |   |   +-- WDOG
    |   |   +-- ENET
    |   |   +-- EWM
    |   |   +-- Flash (MX25l6433F)
    |   |   +-- PHY
    |   |   +-- QSPI
    |   |   +-- SAI
    |   +-- SDK OSIF
    |   |   +-- OSIF
    |   +-- SAM-ESV7 Chip Library
    |   |   +-- ACC
    |   |   +-- AES
    |   |   +-- AFEC
    |   |   +-- DAC
    |   |   +-- EEFC
    |   |   +-- GMAC
    |   |   +-- HSMCI
    |   |   +-- ICM
    |   |   +-- MLB
    |   |   +-- MPU
    |   |   +-- PIO
    |   |   +-- PMC
    |   |   +-- PWMC
    |   |   +-- QSPI
    |   |   +-- RSTC
    |   |   +-- RTC
    |   |   +-- RTT
    |   |   +-- SDRAMC
    |   |   +-- SPI
    |   |   +-- SUPC
    |   |   +-- TRNG
    |   |   +-- TWI
    |   |   +-- UART
    |   |   +-- USART
    |   |   +-- USBD
    |   |   +-- WDT
    |   |   +-- XDMAC
    |   +-- STM32Cube HAL
    |   |   +-- COMMON
    |   |   +-- ADC
    |   |   +-- CAN
    |   |   +-- CEC
    |   |   +-- COMP
    |   |   +-- CORTEX
    |   |   +-- CRC
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- FLASH
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- I2S
    |   |   +-- IRDA
    |   |   +-- IWDG
    |   |   +-- PCD
    |   |   +-- PWR
    |   |   +-- RCC
    |   |   +-- RTC
    |   |   +-- SMARTCARD
    |   |   +-- SMBUS
    |   |   +-- SPI
    |   |   +-- TIM
    |   |   +-- TSC
    |   |   +-- UART
    |   |   +-- USART
    |   |   +-- WWDG
    |   |   +-- Common
    |   |   +-- Cortex
    |   |   +-- CRYP
    |   |   +-- DCMI
    |   |   +-- ETH
    |   |   +-- Flash
    |   |   +-- HASH
    |   |   +-- HCD
    |   |   +-- MMC
    |   |   +-- NAND
    |   |   +-- NOR
    |   |   +-- PC Card
    |   |   +-- RNG
    |   |   +-- SD
    |   |   +-- Smartcard
    |   |   +-- SRAM
    |   |   +-- HRTIM
    |   |   +-- OPAMP
    |   |   +-- PCCARD
    |   |   +-- SDADC
    |   |   +-- DMA2D
    |   |   +-- DSI
    |   |   +-- FMPI2C
    |   |   +-- FMPSMBUS
    |   |   +-- LPTIM
    |   |   +-- LTDC
    |   |   +-- QSPI
    |   |   +-- SAI
    |   |   +-- SDRAM
    |   |   +-- SPDIFRX
    |   |   +-- DFSDM
    |   |   +-- JPEG
    |   |   +-- MDIOS
    |   |   +-- FDCAN
    |   |   +-- CORDIC
    |   |   +-- DTS
    |   |   +-- FMAC
    |   |   +-- GFXMMU
    |   |   +-- HSEM
    |   |   +-- MDMA
    |   |   +-- OSPI
    |   |   +-- OTFDEC
    |   |   +-- PSSI
    |   |   +-- RAMECC
    |   |   +-- SWPMI
    |   |   +-- FIREWALL
    |   |   +-- LCD
    |   |   +-- PKA
    |   |   +-- GTZC
    |   |   +-- ICACHE
    |   |   +-- IPCC
    |   |   +-- DCACHE
    |   |   +-- MDF
    |   |   +-- RAMCFG
    |   |   +-- SUBGHZ
    |   +-- STM32Cube LL
    |   |   +-- COMMON
    |   |   +-- ADC
    |   |   +-- COMP
    |   |   +-- CRC
    |   |   +-- CRS
    |   |   +-- DAC
    |   |   +-- DMA
    |   |   +-- EXTI
    |   |   +-- GPIO
    |   |   +-- I2C
    |   |   +-- PWR
    |   |   +-- RCC
    |   |   +-- RTC
    |   |   +-- SPI
    |   |   +-- TIM
    |   |   +-- USART
    |   |   +-- USB
    |   |   +-- UTILS
    |   |   +-- FMC
    |   |   +-- HRTIM
    |   |   +-- OPAMP
    |   |   +-- Common
    |   |   +-- DMA2D
    |   |   +-- FMPI2C 
    |   |   +-- FSMC
    |   |   +-- LPTIM
    |   |   +-- RNG
    |   |   +-- SDMMC
    |   |   +-- LPUART
    |   |   +-- UCPD
    |   |   +-- BDMA
    |   |   +-- CORDIC
    |   |   +-- DELAY_BLOCK
    |   |   +-- FMAC
    |   |   +-- MDMA
    |   |   +-- SWPMI
    |   |   +-- PKA
    |   |   +-- ICACHE
    |   |   +-- DLYB
    |   |   +-- LPGPIO
    |   +-- VF6xx HAL
    |   |   +-- CCM
    |   |   +-- SEMA4
    |   |   +-- UART
    |   +-- iMX6SX HAL
    |   |   +-- UART
    |   |   +-- MU
    |   |   +-- CCM
    |   |   +-- RDC
    |   +-- iMX7D HAL
    |   |   +-- UART
    |   |   +-- MU
    |   |   +-- GPIO
    |   |   +-- CCM
    |   |   +-- RDC
    |   |   +-- ADC
    |   +-- iMX7ULP HAL
    |   |   +-- Clock
    |   |   +-- MSMC
    |   |   +-- DMA
    |   |   +-- GPIO
    |   |   +-- UART
    |   +-- ADC
    |   +-- CAMERAIF
    |   +-- CTB
    |   +-- EMAC
    |   +-- FLC
    |   +-- HTMR
    |   +-- I2C
    |   +-- ICC
    |   +-- Low Power
    |   +-- 1-Wire
    |   +-- Pulse Train
    |   +-- RTC
    |   +-- SDHC
    |   +-- SEMA
    |   +-- SFCC
    |   +-- SKBD
    |   +-- SMON
    |   +-- SPI
    |   +-- XiP Flash
    |   +-- XiP RAM
    |   +-- SRCC
    |   +-- Timers
    |   +-- UART
    |   +-- WDT
    |   +-- PeriphDriver
    |   |   +-- ADC
    |   |   +-- AES
    |   |   +-- CLCD
    |   |   +-- DMA
    |   |   +-- EMCC
    |   |   +-- HyperBus
    |   |   +-- Flash IAP
    |   |   +-- I2C
    |   |   +-- I2S
    |   |   +-- 1-Wire
    |   |   +-- Pulse Train
    |   |   +-- RTC
    |   |   +-- SDHC
    |   |   +-- SPI
    |   |   +-- XiP RAM
    |   |   +-- XiP Flash
    |   |   +-- Timers
    |   |   +-- Watchdog
    |   |   +-- UART
    |   +-- TFT
    |   +-- AES
    |   +-- CRC
    |   +-- I2S
    |   +-- SYS
    |   +-- TRNG
    |   +-- WUT
    |   +-- PT
    |   +-- FreeRTOS
    |   +-- RPU
    |   +-- SIMO
    |   +-- DualCore
    |   +-- TPU
    |   +-- QDEC
    |   +-- SDK Drivers
    |   |   +-- flash_config
    |   |   +-- button
    |   |   +-- common_task
    |   |   +-- crc_adapter
    |   |   +-- flash_adapter
    |   |   +-- gpio_adapter
    |   |   +-- led
    |   |   +-- lists
    |   |   +-- log
    |   |   +-- debugconsole
    |   |   +-- ringbuffer
    |   |   +-- lpit_adapter
    |   |   +-- lpspi_adapter
    |   |   +-- lptmr_adapter
    |   |   +-- lpuart_adapter
    |   |   +-- lpuart_dma_adapter
    |   |   +-- mem_manager
    |   |   +-- mem_manager_light
    |   |   +-- osa
    |   |   +-- osa_bm
    |   |   +-- osa_thread
    |   |   +-- panic
    |   |   +-- pwm_tpm_adapter
    |   |   +-- software_crc_adapter
    |   |   +-- software_rng_adapter
    |   |   +-- timer_manager
    |   |   +-- tpm_adapter
    |   |   +-- trng_adapter
    |   |   +-- adc
    |   |   +-- clock
    |   |   +-- cmp
    |   |   +-- common
    |   |   +-- crc
    |   |   +-- dac
    |   |   +-- dmamux
    |   |   +-- edma
    |   |   +-- flash
    |   |   +-- flexio
    |   |   +-- flexio_camera
    |   |   +-- flexio_camera_edma
    |   |   +-- flexio_i2c_master
    |   |   +-- flexio_i2s
    |   |   +-- flexio_i2s_edma
    |   |   +-- flexio_mculcd
    |   |   +-- flexio_mculcd_edma
    |   |   +-- flexio_spi
    |   |   +-- flexio_spi_edma
    |   |   +-- flexio_uart
    |   |   +-- flexio_uart_edma
    |   |   +-- gpio
    |   |   +-- intmux
    |   |   +-- llwu
    |   |   +-- i2c
    |   |   +-- i2c_edma
    |   |   +-- lpit
    |   |   +-- lpspi
    |   |   +-- lpspi_edma
    |   |   +-- lptmr
    |   |   +-- lpuart
    |   |   +-- lpuart_edma
    |   |   +-- mmdvsq
    |   |   +-- pmc
    |   |   +-- port
    |   |   +-- rcm
    |   |   +-- rtc
    |   |   +-- sim
    |   |   +-- smartcard_emvsim
    |   |   +-- smartcard_phy_emvsim
    |   |   +-- smc
    |   |   +-- tpm
    |   |   +-- trgmux
    |   |   +-- trng
    |   |   +-- tsi_v4
    |   |   +-- tstmr
    |   |   +-- vref
    |   |   +-- wdog
    |   |   +-- lpi2c_adapter
    |   |   +-- lpit_time_stamp_adapter
    |   |   +-- lptmr_time_stamp_adapter
    |   |   +-- messaging
    |   |   +-- fxos8700cq
    |   |   +-- pit_adapter
    |   |   +-- spi_adapter
    |   |   +-- uart_adapter
    |   |   +-- cop
    |   |   +-- dma
    |   |   +-- flexio_i2s_dma
    |   |   +-- flexio_spi_dma
    |   |   +-- flexio_uart_dma
    |   |   +-- i2c_dma
    |   |   +-- lpuart_dma
    |   |   +-- pit
    |   |   +-- slcd
    |   |   +-- spi
    |   |   +-- spi_dma
    |   |   +-- uart
    |   |   +-- uart_dma
    |   |   +-- slcd_engine
    |   |   +-- slcd_lcd_s401m16kr
    |   |   +-- cache_lpcac
    |   |   +-- cache_lplmem
    |   |   +-- cau3
    |   |   +-- ewm
    |   |   +-- flexbus
    |   |   +-- lpadc
    |   |   +-- lpcmp
    |   |   +-- msmc
    |   |   +-- mu
    |   |   +-- nand_flash-common
    |   |   +-- sai
    |   |   +-- sema42
    |   |   +-- spm
    |   |   +-- sdhc
    |   |   +-- xrdc
    |   |   +-- codec_adapters
    |   |   +-- codec_i2c
    |   |   +-- cs42888_adapter
    |   |   +-- ctimer_adapter
    |   |   +-- da7212_adapter
    |   |   +-- flexcomm_i2c_adapter
    |   |   +-- flexcomm_spi_adapter
    |   |   +-- gint_adapter
    |   |   +-- lpc_crc_adapter
    |   |   +-- lpc_gpio_adapter
    |   |   +-- mrt_adapter
    |   |   +-- pwm_ctimer_adapter
    |   |   +-- sgtl_adapter
    |   |   +-- usart_adapter
    |   |   +-- usart_dma_adapter
    |   |   +-- wm8904_adapter
    |   |   +-- wm8960_adapter
    |   |   +-- codec
    |   |   +-- cs42888
    |   |   +-- ctimer
    |   |   +-- dialog7212
    |   |   +-- flashiap
    |   |   +-- flexcomm
    |   |   +-- flexcomm_i2s
    |   |   +-- flexcomm_i2s_dma
    |   |   +-- usart
    |   |   +-- usart_dma
    |   |   +-- fmeas
    |   |   +-- fro_calib
    |   |   +-- ft6x06
    |   |   +-- gint
    |   |   +-- iap
    |   |   +-- ili9341
    |   |   +-- inputmux
    |   |   +-- inputmux_connections
    |   |   +-- lpc_crc
    |   |   +-- iocon
    |   |   +-- lpc_rtc
    |   |   +-- mrt
    |   |   +-- pint
    |   |   +-- power
    |   |   +-- reset
    |   |   +-- sctimer
    |   |   +-- sgtl5000
    |   |   +-- utick
    |   |   +-- wm8904
    |   |   +-- wm8960
    |   |   +-- wwdt
    |   |   +-- mflash_common
    |   |   +-- rng_adapter
    |   |   +-- dmic
    |   |   +-- dmic_dma
    |   |   +-- dmic_hwvad
    |   |   +-- emc
    |   |   +-- otp
    |   |   +-- rit
    |   |   +-- rng
    |   |   +-- sdif
    |   |   +-- sha
    |   |   +-- spifi
    |   |   +-- spifi_dma
    |   |   +-- lpc_enet
    |   |   +-- mcan
    |   |   +-- lcdc
    |   |   +-- mdio-common
    |   |   +-- phy-common
    |   |   +-- vusart_adapter
    |   |   +-- mailbox
    |   |   +-- ft5406
    |   |   +-- codec_cs42888_adapter
    |   |   +-- codec_da7212_adapter
    |   |   +-- codec_sgtl_adapter
    |   |   +-- codec_wm8904_adapter
    |   |   +-- codec_wm8960_adapter
    |   |   +-- mx25r_flash
    |   |   +-- eeprom
    |   |   +-- fmc
    |   |   +-- audio_flexcomm_i2s_dma_adapter
    |   |   +-- lpc54xxx
    |   |   +-- mflash_dummy
    |   |   +-- mflash_file
    |   |   +-- mdio-lpc-enet
    |   |   +-- mma8652fc
    |   |   +-- phy-device-lan8720a
    |   |   +-- aes
    |   |   +-- PUF
    |   |   +-- lpc54s018m
    |   |   +-- anactrl
    |   |   +-- cdog
    |   |   +-- cmp_1
    |   |   +-- iap1
    |   |   +-- ostimer
    |   |   +-- plu
    |   |   +-- sysctl
    |   |   +-- i3c_bus
    |   |   +-- i3c_bus_adapter
    |   |   +-- cache
    |   |   +-- enc
    |   |   +-- niobe4analog_iap
    |   |   +-- hscmp
    |   |   +-- i3c
    |   |   +-- memInterface
    |   |   +-- opamp
    |   |   +-- powerquad
    |   |   +-- pwm
    |   |   +-- runBootloader
    |   |   +-- casper
    |   |   +-- hashcrypt
    |   |   +-- PRINCE
    |   |   +-- nor_flash-common
    |   |   +-- lpc55xxx
    |   |   +-- css
    |   |   +-- css_hash
    |   |   +-- css_pkc_common
    |   |   +-- css_pkc_doc
    |   |   +-- css_pkc_ecc
    |   |   +-- css_pkc_flow_protection
    |   |   +-- css_pkc_key
    |   |   +-- css_pkc_mac
    |   |   +-- css_pkc_math
    |   |   +-- css_pkc_memory
    |   |   +-- css_pkc_param_integrity
    |   |   +-- css_pkc_pre_processor
    |   |   +-- css_pkc_rsa
    |   |   +-- css_pkc_secure_counter
    |   |   +-- css_pkc_session
    |   |   +-- css_pkc_static_lib
    |   |   +-- i3c_adapter
    |   |   +-- lpc55s3x
    |   |   +-- lpc55s3x_flexspi
    |   |   +-- pkc
    |   |   +-- aoi
    |   |   +-- flexspi
    |   |   +-- flexspi_dma
    |   |   +-- icm42688p
    |   |   +-- itrc
    |   |   +-- lpc_freqme
    |   |   +-- nand_flash-controller-flexspi
    |   |   +-- PUFv3
    |   |   +-- miniusart_adapter
    |   |   +-- lpc_acomp
    |   |   +-- rom_api
    |   |   +-- swm
    |   |   +-- swm_connections
    |   |   +-- syscon
    |   |   +-- syscon_connections
    |   |   +-- wkt
    |   |   +-- capt
    |   |   +-- nfc
    |   |   +-- tsens
    |   |   +-- wdt
    |   |   +-- ecspi
    |   |   +-- ecspi_freertos
    |   |   +-- gpt
    |   |   +-- i2c_freertos
    |   |   +-- iomuxc
    |   |   +-- ipwm
    |   |   +-- iuart
    |   |   +-- iuart_freertos
    |   |   +-- qspi
    |   |   +-- rdc
    |   |   +-- rdc_sema42
    |   |   +-- sema4
    |   |   +-- tmu
    |   |   +-- audio_sai_edma_adapter
    |   |   +-- gpt_adapter
    |   |   +-- igpio_adapter
    |   |   +-- adc_12b1msps_sar
    |   |   +-- adc_etc
    |   |   +-- aipstz
    |   |   +-- dcdc_1
    |   |   +-- dcp
    |   |   +-- flexram
    |   |   +-- flexspi_edma
    |   |   +-- gpc
    |   |   +-- kpp
    |   |   +-- nic301
    |   |   +-- ocotp
    |   |   +-- otfad
    |   |   +-- pmu
    |   |   +-- rtwdog
    |   |   +-- sai_edma
    |   |   +-- snvs_hp
    |   |   +-- snvs_lp
    |   |   +-- soc_flexram_allocate
    |   |   +-- spdif
    |   |   +-- spdif_edma
    |   |   +-- src
    |   |   +-- tempmon
    |   |   +-- xbara
    |   |   +-- xip_device
    |   |   +-- bee
    |   |   +-- qtmr
    |   |   +-- romapi
    |   |   +-- xbarb
    |   |   +-- exception_handling_cm7
    |   |   +-- rt1020
    |   |   +-- enet
    |   |   +-- flexcan
    |   |   +-- mdio-enet
    |   |   +-- nand_flash-controller-semc
    |   |   +-- nor_flash-controller-flexspi
    |   |   +-- phy-device-ksz8081
    |   |   +-- semc
    |   |   +-- rt1024
    |   |   +-- tsc
    |   |   +-- cs42448_adapter
    |   |   +-- rt1050
    |   |   +-- camera-common
    |   |   +-- camera-device-common
    |   |   +-- camera-device-mt9m114
    |   |   +-- camera-device-ov7725
    |   |   +-- camera-device-sccb
    |   |   +-- camera-receiver-common
    |   |   +-- camera-receiver-csi
    |   |   +-- cs42448
    |   |   +-- csi
    |   |   +-- dc-fb-common
    |   |   +-- dc-fb-elcdif
    |   |   +-- elcdif
    |   |   +-- ft5406_rt
    |   |   +-- pxp
    |   |   +-- video-common
    |   |   +-- video-i2c
    |   |   +-- flexcan_edma
    |   |   +-- pit_time_stamp_adapter
    |   |   +-- flexspi_nor_flash_adapter
    |   |   +-- adapter_rt1xx
    |   |   +-- rt1060
    |   |   +-- rt1064
    |   |   +-- acmp
    |   |   +-- anatop_ai
    |   |   +-- asrc
    |   |   +-- asrc_edma
    |   |   +-- caam
    |   |   +-- cache_lmem
    |   |   +-- dcdc_soc
    |   |   +-- dcic
    |   |   +-- gpc_3
    |   |   +-- iee
    |   |   +-- iee_apc
    |   |   +-- key_manager
    |   |   +-- lcdifv2
    |   |   +-- mecc
    |   |   +-- memory
    |   |   +-- mipi_csi2rx
    |   |   +-- mipi_dsi
    |   |   +-- pdm
    |   |   +-- pdm_edma
    |   |   +-- pgmc
    |   |   +-- pmu_1
    |   |   +-- soc_mipi_csi2rx
    |   |   +-- soc_src
    |   |   +-- ssarc
    |   |   +-- tempsensor
    |   |   +-- xecc
    |   |   +-- xrdc2
    |   |   +-- rt1160
    |   |   +-- camera-device-ov5640
    |   |   +-- dc-fb-lcdifv2
    |   |   +-- display-common
    |   |   +-- display-hx8394
    |   |   +-- display-mipi-dsi-cmd
    |   |   +-- display-rm68191
    |   |   +-- display-rm68200
    |   |   +-- gt911
    |   |   +-- phy-device-rtl8211f
    |   |   +-- enet_qos
    |   |   +-- rt1170
    |   |   +-- mdio-enet-qos
    |   |   +-- flexio_mculcd_smartdma
    |   |   +-- iopctl
    |   |   +-- lpc_smartdma
    |   |   +-- soc_mipi_dsi
    |   |   +-- lcdif
    |   |   +-- mipi_dsi_smartdma
    |   |   +-- adapter_rt595
    |   |   +-- rt595
    |   |   +-- rt_gpio_adapter
    |   |   +-- tfa9896_adapter
    |   |   +-- dbi
    |   |   +-- dbi_flexio_smartdma
    |   |   +-- dc-fb-dsi-cmd
    |   |   +-- dc-fb-lcdif
    |   |   +-- dc-fb-ssd1963
    |   |   +-- display-rm67162
    |   |   +-- dsp
    |   |   +-- ft3267
    |   |   +-- mpi_loader
    |   |   +-- pca9420
    |   |   +-- ssd1963
    |   |   +-- tfa9896
    |   |   +-- adapter_rt685
    |   |   +-- mimxrt685audevk
    |   |   +-- rt685
    |   |   +-- tfa9xxx_adapter
    |   |   +-- sx1502
    |   |   +-- tfa9xxx
    |   |   +-- dspi_adapter
    |   |   +-- ftm_adapter
    |   |   +-- pwm_ftm_adapter
    |   |   +-- dspi
    |   |   +-- dspi_edma
    |   |   +-- ftm
    |   |   +-- pdb
    |   |   +-- uart_edma
    |   |   +-- cmt
    |   |   +-- rnga
    |   |   +-- sysmpu
    |   |   +-- smartcard_phy_tda8035
    |   |   +-- smartcard_uart
    |   |   +-- rnga_adapter
    |   |   +-- i2c_adapter
    |   |   +-- lmem
    |   |   +-- sdramc
    |   |   +-- qspi_edma
    |   |   +-- IS42SM16800H
    |   |   +-- dbi_flexio
    |   |   +-- dbi_flexio_edma
    |   |   +-- frdmk64f
    |   |   +-- frdmk66f
    |   |   +-- camera-device-ov7670
    |   |   +-- ltc
    |   |   +-- ltc_dpa
    |   |   +-- ltc_edma
    |   |   +-- irq
    |   |   +-- kbi
    |   |   +-- pwt
    |   |   +-- mscan
    |   |   +-- tsi_v5
    |   |   +-- lpsci
    |   |   +-- sai_dma
    |   |   +-- lpsci_dma
    |   |   +-- mma8451q
    |   |   +-- gpio_kinetis
    |   |   +-- afe
    |   |   +-- xbar
    |   |   +-- mmau
    |   |   +-- slcd_gdh_1247wp
    |   |   +-- smartcard_phy_gpio
    |   |   +-- cadc
    |   |   +-- hsadc
    |   |   +-- phy-device-ksz8041
    |   +-- SDK Utilities
    |   |   +-- serial_manager_usb_config
    |   |   +-- serial_manager
    |   |   +-- serial_manager_spi
    |   |   +-- serial_manager_uart
    |   |   +-- serial_manager_virtual
    |   |   +-- assert
    |   |   +-- assert_lite
    |   |   +-- debug_console
    |   |   +-- debug_console_lite
    |   |   +-- notifier
    |   |   +-- shell
    |   |   +-- serial_manager_swo
    |   |   +-- incbin
    |   |   +-- unity
    |   |   +-- debug_console_swo
    |   +-- SDK Project Template
    |   |   +-- RTE_Device
    |   +-- CMSIS
    |   |   +-- K32L2A31A_header
    |   |   +-- K32L2A31A_system
    |   |   +-- K32L2A41A_header
    |   |   +-- K32L2A41A_system
    |   |   +-- K32L2B11A_header
    |   |   +-- K32L2B11A_system
    |   |   +-- K32L2B21A_header
    |   |   +-- K32L2B21A_system
    |   |   +-- K32L2B31A_header
    |   |   +-- K32L2B31A_system
    |   |   +-- K32L3A60_header
    |   |   +-- K32L3A60_system
    |   |   +-- LPC51U68_header
    |   |   +-- LPC51U68_system
    |   |   +-- LPC54005_header
    |   |   +-- LPC54005_system
    |   |   +-- LPC54016_header
    |   |   +-- LPC54016_system
    |   |   +-- LPC54018M_header
    |   |   +-- LPC54018M_system
    |   |   +-- LPC54018_header
    |   |   +-- LPC54018_system
    |   |   +-- LPC54101_header
    |   |   +-- LPC54102_header
    |   |   +-- LPC54113_header
    |   |   +-- LPC54113_system
    |   |   +-- LPC54114_header
    |   |   +-- LPC54114_system
    |   |   +-- LPC54605_header
    |   |   +-- LPC54605_system
    |   |   +-- LPC54606_header
    |   |   +-- LPC54606_system
    |   |   +-- LPC54607_header
    |   |   +-- LPC54607_system
    |   |   +-- LPC54608_header
    |   |   +-- LPC54608_system
    |   |   +-- LPC54616_header
    |   |   +-- LPC54616_system
    |   |   +-- LPC54618_header
    |   |   +-- LPC54618_system
    |   |   +-- LPC54628_header
    |   |   +-- LPC54628_system
    |   |   +-- LPC54S005_header
    |   |   +-- LPC54S005_system
    |   |   +-- LPC54S016_header
    |   |   +-- LPC54S016_system
    |   |   +-- LPC54S018M_header
    |   |   +-- LPC54S018M_system
    |   |   +-- LPC54S018_header
    |   |   +-- LPC54S018_system
    |   |   +-- LPC5502_header
    |   |   +-- LPC5502_system
    |   |   +-- LPC5504_header
    |   |   +-- LPC5504_system
    |   |   +-- LPC5506_header
    |   |   +-- LPC5506_system
    |   |   +-- LPC5512_header
    |   |   +-- LPC5512_system
    |   |   +-- LPC5514_header
    |   |   +-- LPC5514_system
    |   |   +-- LPC5516_header
    |   |   +-- LPC5516_system
    |   |   +-- LPC5526_header
    |   |   +-- LPC5526_system
    |   |   +-- LPC5528_header
    |   |   +-- LPC5528_system
    |   |   +-- LPC5534_header
    |   |   +-- LPC5534_system
    |   |   +-- LPC5536_header
    |   |   +-- LPC5536_system
    |   |   +-- LPC55S04_header
    |   |   +-- LPC55S04_system
    |   |   +-- LPC55S06_header
    |   |   +-- LPC55S06_system
    |   |   +-- LPC55S14_header
    |   |   +-- LPC55S14_system
    |   |   +-- LPC55S16_header
    |   |   +-- LPC55S16_system
    |   |   +-- LPC55S26_header
    |   |   +-- LPC55S26_system
    |   |   +-- LPC55S28_header
    |   |   +-- LPC55S28_system
    |   |   +-- LPC55S36_header
    |   |   +-- LPC55S36_system
    |   |   +-- LPC55S66_system
    |   |   +-- LPC55S69_system
    |   |   +-- LPC802_header
    |   |   +-- LPC802_system
    |   |   +-- LPC804_header
    |   |   +-- LPC804_system
    |   |   +-- LPC810_header
    |   |   +-- LPC810_system
    |   |   +-- LPC811_header
    |   |   +-- LPC811_system
    |   |   +-- LPC812_header
    |   |   +-- LPC812_system
    |   |   +-- LPC822_header
    |   |   +-- LPC822_system
    |   |   +-- LPC824_header
    |   |   +-- LPC824_system
    |   |   +-- LPC832_header
    |   |   +-- LPC832_system
    |   |   +-- LPC834_header
    |   |   +-- LPC834_system
    |   |   +-- LPC844_header
    |   |   +-- LPC844_system
    |   |   +-- LPC845_header
    |   |   +-- LPC845_system
    |   |   +-- LPC8N04_header
    |   |   +-- MIMXRT1011_header
    |   |   +-- MIMXRT1011_system
    |   |   +-- MIMXRT1015_header
    |   |   +-- MIMXRT1015_system
    |   |   +-- MIMXRT1021_header
    |   |   +-- MIMXRT1021_system
    |   |   +-- MIMXRT1024_header
    |   |   +-- MIMXRT1024_system
    |   |   +-- MIMXRT1051_header
    |   |   +-- MIMXRT1051_system
    |   |   +-- MIMXRT1052_header
    |   |   +-- MIMXRT1052_system
    |   |   +-- MIMXRT1061X_header
    |   |   +-- MIMXRT1061X_system
    |   |   +-- MIMXRT1061_header
    |   |   +-- MIMXRT1061_system
    |   |   +-- MIMXRT1062X_header
    |   |   +-- MIMXRT1062X_system
    |   |   +-- MIMXRT1062_header
    |   |   +-- MIMXRT1062_system
    |   |   +-- MIMXRT1064_header
    |   |   +-- MIMXRT1064_system
    |   |   +-- MIMXRT1165_header
    |   |   +-- MIMXRT1165_system
    |   |   +-- MIMXRT1166_header
    |   |   +-- MIMXRT1166_system
    |   |   +-- MIMXRT1171_header
    |   |   +-- MIMXRT1171_system
    |   |   +-- MIMXRT1172_header
    |   |   +-- MIMXRT1172_system
    |   |   +-- MIMXRT1173_header
    |   |   +-- MIMXRT1173_system
    |   |   +-- MIMXRT1175_header
    |   |   +-- MIMXRT1175_system
    |   |   +-- MIMXRT1176_header
    |   |   +-- MIMXRT1176_system
    |   |   +-- MK02F12810_header
    |   |   +-- MK02F12810_system
    |   |   +-- MK22F12810_header
    |   |   +-- MK22F12810_system
    |   |   +-- MK22F25612_header
    |   |   +-- MK22F25612_system
    |   |   +-- MK22F51212_header
    |   |   +-- MK22F51212_system
    |   |   +-- MK24F12_header
    |   |   +-- MK24F12_system
    |   |   +-- MK26F18_header
    |   |   +-- MK26F18_system
    |   |   +-- MK27FA15_header
    |   |   +-- MK27FA15_system
    |   |   +-- MK28FA15_header
    |   |   +-- MK28FA15_system
    |   |   +-- MK63F12_header
    |   |   +-- MK63F12_system
    |   |   +-- MK64F12_header
    |   |   +-- MK64F12_system
    |   |   +-- MK65F18_header
    |   |   +-- MK65F18_system
    |   |   +-- MK66F18_header
    |   |   +-- MK66F18_system
    |   |   +-- MK80F25615_header
    |   |   +-- MK82F25615_header
    |   |   +-- MKE02Z4_header
    |   |   +-- MKE02Z4_system
    |   |   +-- MKE04Z1284_header
    |   |   +-- MKE04Z1284_system
    |   |   +-- MKE04Z4_header
    |   |   +-- MKE04Z4_system
    |   |   +-- MKE06Z4_header
    |   |   +-- MKE06Z4_system
    |   |   +-- MKE12Z7_header
    |   |   +-- MKE12Z7_system
    |   |   +-- MKE13Z7_header
    |   |   +-- MKE13Z7_system
    |   |   +-- MKE14F16_header
    |   |   +-- MKE14Z4_header
    |   |   +-- MKE14Z4_system
    |   |   +-- MKE14Z7_header
    |   |   +-- MKE14Z7_system
    |   |   +-- MKE15Z4_header
    |   |   +-- MKE15Z4_system
    |   |   +-- MKE15Z7_header
    |   |   +-- MKE15Z7_system
    |   |   +-- MKE16F16_header
    |   |   +-- MKE16Z4_header
    |   |   +-- MKE16Z4_system
    |   |   +-- MKE17Z7_header
    |   |   +-- MKE17Z7_system
    |   |   +-- MKE18F16_header
    |   |   +-- MKL13Z644_header
    |   |   +-- MKL17Z4_header
    |   |   +-- MKL17Z644_header
    |   |   +-- MKL17Z644_system
    |   |   +-- MKL27Z4_header
    |   |   +-- MKL27Z644_header
    |   |   +-- MKL27Z644_system
    |   |   +-- MKL33Z4_header
    |   |   +-- MKL33Z644_header
    |   |   +-- MKL43Z4_header
    |   |   +-- MKM14ZA5_header
    |   |   +-- MKM14ZA5_system
    |   |   +-- MKM33ZA5_header
    |   |   +-- MKM33ZA5_system
    |   |   +-- MKM34Z7_header
    |   |   +-- MKM34Z7_system
    |   |   +-- MKM34ZA5_header
    |   |   +-- MKM34ZA5_system
    |   |   +-- MKM35Z7_header
    |   |   +-- MKM35Z7_system
    |   |   +-- MKV10Z1287_header
    |   |   +-- MKV10Z1287_system
    |   |   +-- MKV10Z7_header
    |   |   +-- MKV10Z7_system
    |   |   +-- MKV11Z7_header
    |   |   +-- MKV11Z7_system
    |   |   +-- MKV30F12810_header
    |   |   +-- MKV30F12810_system
    |   |   +-- MKV31F12810_header
    |   |   +-- MKV31F12810_system
    |   |   +-- MKV31F25612_header
    |   |   +-- MKV31F25612_system
    |   |   +-- MKV31F51212_header
    |   |   +-- MKV31F51212_system
    |   |   +-- MKV42F16_header
    |   |   +-- MKV44F16_header
    |   |   +-- MKV46F16_header
    |   |   +-- MKV56F24_header
    |   |   +-- MKV58F24_header
    |   +-- StartupConfig
    |   +-- StdDriver
    |   |   +-- ACMP
    |   |   +-- BMC
    |   |   +-- BPWM
    |   |   +-- CANFD
    |   |   +-- CCAP
    |   |   +-- CLK
    |   |   +-- CRC
    |   |   +-- Crypto
    |   |   +-- DAC
    |   |   +-- EADC
    |   |   +-- EBI
    |   |   +-- ECAP
    |   |   +-- EPWM
    |   |   +-- EQEI
    |   |   +-- FMC
    |   |   +-- GPIO
    |   |   +-- HBI
    |   |   +-- HSUSBD
    |   |   +-- I2C
    |   |   +-- I2S
    |   |   +-- Keystore
    |   |   +-- KPI
    |   |   +-- PDMA
    |   |   +-- QSPI
    |   |   +-- Retarget
    |   |   +-- RNG
    |   |   +-- RTC
    |   |   +-- SC
    |   |   +-- SCUART
    |   |   +-- SDH
    |   |   +-- SPI
    |   |   +-- SPIM
    |   |   +-- SYS
    |   |   +-- Timer
    |   |   +-- Timer_PWM
    |   |   +-- TRNG
    |   |   +-- UART
    |   |   +-- USBD
    |   |   +-- USCI_I2C
    |   |   +-- USCI_SPI
    |   |   +-- USCI_UART
    |   |   +-- WDT
    |   |   +-- WWDT
    |   +-- UsbHostLib
    |   |   +-- UsbHostLib_Core
    |   |   +-- UsbHostLib_HID
    |   |   +-- UsbHostLib_MSC
    |   |   +-- UsbHostLib_UAC
    |   |   +-- UsbHostLib_CDC
    |   +-- SmartcardLib
    +-- Driver
    |   +-- Driver-All
    +-- Drivers
    |   +-- UART
    |   +-- USB device
    +-- Examples
    |   +-- blinky
    |   +-- blinkyExternal
    +-- FAT32
    |   +-- MAXFAT
    +-- File System
    |   +-- CORE
    |   +-- Legacy API
    |   +-- Interface
    |   |   +-- ETH
    |   |   +-- WiFi
    |   |   +-- PPP
    |   |   +-- SLIP
    |   +-- Socket
    |   |   +-- UDP
    |   |   +-- TCP
    |   |   +-- BSD
    |   +-- Service
    |   |   +-- Web Server Compact
    |   |   +-- Web Server
    |   |   +-- Telnet Server
    |   |   +-- TFTP Server
    |   |   +-- TFTP Client
    |   |   +-- FTP Server
    |   |   +-- FTP Client
    |   |   +-- DNS Client
    |   |   +-- SMTP Client
    |   |   +-- SNMP Agent
    |   |   +-- SNTP Client
    |   +-- Drive
    |   |   +-- RAM
    |   |   +-- NOR
    |   |   +-- NAND
    |   |   +-- Memory Card
    |   |   +-- USB
    |   +-- Device
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- ADC
    |   |   +-- Custom Class
    |   +-- Host
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- Custom Class
    |   +-- FatFs - SDHC
    +-- Flex Software
    |   +-- RA Configuration
    +-- FreeRTOS
    |   +-- FreeRTOS+ TCP
    |   |   +-- Core Library
    |   |   +-- Buffer Management
    |   |   +-- Compiler Port
    |   |   +-- Network Interface
    |   |   +-- TCP Utilities
    |   +-- backoffAlgorithm
    |   +-- coreHTTP
    |   +-- coreJSON
    |   +-- coreMQTT
    |   +-- coreMQTT Agent
    |   +-- corePKCS11
    +-- Graphics
    |   +-- CORE
    |   +-- Display Driver
    |   +-- Tools
    |   |   +-- GUI Builder
    |   +-- Input Device
    |   |   +-- Joystick
    |   |   +-- Touchscreen
    |   +-- Demo
    |   |   +-- Framework
    |   |   +-- AntialiasedText
    |   |   +-- Automotive
    |   |   +-- BarGraph
    |   |   +-- Bitmap
    |   |   +-- ColorBar
    |   |   +-- Cursor
    |   |   +-- Fading
    |   |   +-- Graph
    |   |   +-- IconView
    |   |   +-- ImageFlow
    |   |   +-- ListView
    |   |   +-- RadialMenu
    |   |   +-- Skinning
    |   |   +-- Speed
    |   |   +-- Speedometer
    |   |   +-- TransparentDialog
    |   |   +-- Treeview
    |   |   +-- VScreen
    |   |   +-- WashingMachine
    |   |   +-- ZoomAndRotate
    |   +-- Display
    |   |   +-- Interface Template
    |   |   +-- MCBQVGA_LD
    |   |   +-- MCBQVGA_LG
    |   +-- VNC Server
    +-- Graphics Display
    |   +-- FTM280C34D
    |   +-- STM32072B-EVAL
    |   +-- STM32091C-EVAL
    |   +-- STM32303E-EVAL
    |   +-- STM32F429I-Discovery
    |   +-- 32F469IDISCOVERY
    |   +-- STM32F769I-Discovery
    |   +-- STM32F769I-EVAL
    |   +-- STM32F746G-Discovery
    |   +-- STM32756G-EVAL
    |   +-- STM32H743I-EVAL
    |   +-- STM32H7B3I-EVAL
    +-- HAL
    |   +-- Hardware Access Layer
    +-- IEC60730_Support
    |   +-- Run after Reset
    +-- IRQ_Handler
    |   +-- Systick priority
    |   +-- Enable WWDT NVIC
    |   +-- Enable SYS NVIC
    |   |   +-- _IWDT
    |   |   +-- _PW
    |   |   +-- _CSC
    |   |   +-- _RTC
    |   |   +-- _APB
    |   |   +-- _MEM
    |   |   +-- _EMB
    |   |   +-- Priority
    |   +-- Enable EXINT0 NVIC
    |   +-- Enable EXINT1 NVIC
    |   +-- Enable EXINT2 NVIC
    |   +-- Enable EXINT3 NVIC
    |   +-- Enable COMP NVIC
    |   +-- Enable DMA NVIC
    |   +-- Enable ADC NVIC
    |   +-- Enable DAC NVIC
    |   +-- Enable TM0x NVIC
    |   |   +-- _TM00
    |   |   +-- _TM01
    |   |   +-- Priority
    |   +-- Enable TM10 NVIC
    |   +-- Enable TM1x NVIC
    |   +-- Enable TM20 NVIC
    |   +-- Enable TM2x NVIC
    |   +-- Enable TM3x NVIC
    |   +-- Enable URT0 NVIC
    |   +-- Enable URT123 NVIC
    |   |   +-- _URT1
    |   |   +-- _URT2
    |   |   +-- _URT3
    |   |   +-- Priority
    |   +-- Enable URT4x NVIC
    |   |   +-- _URT4
    |   |   +-- _URT5
    |   |   +-- _URT6
    |   |   +-- _URT7
    |   |   +-- Priority
    |   +-- Enable SPI0 NVIC
    |   +-- Enable I2C0 NVIC
    |   +-- Enable I2Cx NVIC
    |   +-- Enable USB NVIC
    |   +-- Enable APX NVIC
    +-- IoT Client
    |   +-- AWS
    |   +-- Azure
    |   +-- Google
    |   +-- MQTTClient-C
    |   +-- Watson
    +-- IoT Service
    |   +-- AWS
    |       +-- Common
    |       +-- Jobs
    |       +-- Thing Shadow
    |       +-- Device Defender
    +-- IoT Utility
    |   +-- AWS
    |   |   +-- Platform
    |   |   +-- Common
    |   |   +-- Serializer
    |   |   +-- MQTT
    |   +-- Azure
    |   |   +-- Common
    |   |   +-- MQTT
    |   |   +-- AMQP
    |   |   +-- Serializer
    |   +-- http-parser
    |   +-- MQTTPacket
    +-- LVGL
    |   +-- lvgl
    |       +-- Essential
    |       +-- Porting
    |       +-- GPU Arm-2D
    |       +-- GPU STM32-DMA2D
    |       +-- GPU SWM341-DMA2D
    |       +-- GPU NXP-PXP
    |       +-- GPU NXP-VGLite
    |       +-- Extra Themes
    |       +-- Libs PNG
    |       +-- Libs BMP
    |       +-- Libs freetype
    |       +-- Libs GIF
    |       +-- Libs sJPG
    |       +-- Libs QRCode
    |       +-- Libs FileSystem
    |       +-- Libs RLOTTIE
    |       +-- Libs ffmpeg
    |       +-- Benchmark
    |       +-- Demo:Widgets
    +-- Library
    |   +-- MT25QL QSPI Flash
    +-- MAXSDHC
    |   +-- MAXSDHC
    +-- MAXUSB
    |   +-- MAXUSB
    +-- MAXUSB_HS
    |   +-- MAXUSB_HS
    +-- Machine Learning
    |   +-- NPU Support
    |   |   +-- Ethos-U Driver
    |   +-- TensorFlow
    |       +-- Kernel
    |       +-- Kernel Utils
    |       +-- Testing
    +-- Middleware
    |   +-- Middleware-All
    +-- Multicore
    |   +-- RPMsg-Lite BM
    |   |   +-- rpmsg_lite_bm_env
    |   |   +-- rpmsg_lite_bm_config
    |   |   +-- rpmsg_lite_imx8mq_m4_bm
    |   +-- RPMsg-Lite
    |   |   +-- rpmsg_lite
    |   +-- RPMsg-Lite FreeRTOS
    |       +-- rpmsg_lite_freertos_env
    |       +-- rpmsg_lite_freertos_config
    |       +-- rpmsg_lite_imx8mq_m4_freertos
    +-- Native Driver
    |   +-- Native MPC
    |   +-- Native GPIO
    |   +-- Native SCC
    |   +-- Native PPC
    |   +-- Native CMSDK Timer
    |   +-- Native CMSDK DualTimer
    |   +-- Native GP Timer
    |   +-- Native MHU
    |   +-- Native UART
    |   +-- Native QSPI
    |   +-- Native SPI
    |   +-- Native EFlash
    |   +-- Native Cache
    |   +-- Native PWM
    |   +-- Native Watchdog
    |   +-- Native I2C
    |   +-- Native MPU
    |   +-- Native APB Timer
    |   +-- Native APB Dualtimer
    |   +-- Native MPS2 IO
    |   +-- Native CMSDK Dualtimer
    |   +-- UART
    |   +-- IO
    |   +-- SysTimer
    |   +-- MPC
    |   +-- PPC
    |   +-- GPIO
    |   +-- SPI
    |   +-- Watch Dog
    |   +-- SysCounter
    |   +-- MPU
    |   +-- Timeout
    |   +-- I2C SBCon
    |   +-- Audio I2S
    |   +-- Flash
    +-- Network
    |   +-- Mongoose
    |   +-- CORE
    |   +-- Legacy API
    |   +-- Interface
    |   |   +-- ETH
    |   |   +-- WiFi
    |   |   +-- PPP
    |   |   +-- SLIP
    |   |   +-- Ethernet
    |   +-- Socket
    |   |   +-- UDP
    |   |   +-- TCP
    |   |   +-- BSD
    |   +-- Service
    |   |   +-- Web Server Compact
    |   |   +-- Web Server
    |   |   +-- Telnet Server
    |   |   +-- TFTP Server
    |   |   +-- TFTP Client
    |   |   +-- FTP Server
    |   |   +-- FTP Client
    |   |   +-- DNS Client
    |   |   +-- SMTP Client
    |   |   +-- SNMP Agent
    |   |   +-- SNTP Client
    |   +-- Drive
    |   |   +-- RAM
    |   |   +-- NOR
    |   |   +-- NAND
    |   |   +-- Memory Card
    |   |   +-- USB
    |   +-- Device
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- ADC
    |   |   +-- Custom Class
    |   +-- Host
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- Custom Class
    |   +-- RTOS
    |   +-- Driver
    |   |   +-- Ethernet
    |   |   +-- SIO
    |   +-- API
    +-- None
    |   +-- dfu_ant_flag
    |   +-- dfu_ant_memory_layout
    +-- Operating System
    |   +-- FreeRTOS Operating System
    |       +-- freertos
    |       +-- freertos_tickless_gpt
    |       +-- heap
    |       +-- template_application.freertos
    +-- Peripherals
    |   +-- ADC
    |   +-- CRC
    |   +-- GPIO
    |   +-- PMU
    |   +-- Pulse Train
    |   +-- RTC
    |   +-- Flash IAP
    |   +-- Timers
    |   +-- WDT
    |   |   +-- WDT1
    |   |   +-- WDT2
    |   +-- DMA
    +-- Project
    |   +-- Project Template
    +-- Qualcomm
    |   +-- QCA400x
    |       +-- Host Driver SDK
    +-- RTOS
    |   +-- Core
    |   +-- Config
    |   +-- Coroutines
    |   +-- Event Groups
    |   +-- Heap
    |   +-- Message Buffer
    |   +-- Stream Buffer
    |   +-- Timers
    |   +-- TrustZone
    |   +-- ClarinoxSoftFrame
    |   +-- ClarinoxBlue
    |   +-- ClarinoxWiFi
    |   +-- uCos
    |   +-- Flexible Safety RTOS
    |   |   +-- Cortex-M4F
    |   +-- kernel
    |   +-- shell
    |   +-- device
    +-- RXF
    |   +-- Integrate Generated Code
    +-- SMQ
    |   +-- Lib
    |   +-- Example
    +-- Security
    |   +-- mbed Crypto
    |   +-- mbed TLS
    +-- Sensors
    |   +-- Accelerometer
    |   |   +-- adxl362
    |   +-- Temperature
    |   |   +-- adt7420
    |   +-- ADC
    |   |   +-- ad7790
    |   |   +-- ad7798
    |   +-- Visible Light
    |   |   +-- cn0397
    |   +-- Gas
    |   |   +-- cn0357
    |   +-- SensorStrobe
    |       +-- SensorStrobe
    +-- SharkSSL
    |   +-- Lib
    |   +-- Examples
    |       +-- SMQ
    |       +-- MQTT
    |       +-- WebSocket
    +-- Simulation
    |   +-- redBlocks Simulator
    |       +-- C Target Library Core
    |       +-- C Target Library RTX5
    +-- Sino32StdPeripherals
    |   +-- COMMON
    |   +-- ADC
    |   +-- AMOC
    |   +-- CAN
    |   +-- CORE
    |   +-- CRC
    |   +-- DMA
    |   +-- EXTI
    |   +-- FIFO
    |   +-- FLASH
    |   +-- GPIO
    |   +-- GPT
    |   +-- IQmath
    |   +-- IWDT
    |   +-- MACP
    |   +-- MCM
    |   +-- MPU
    |   +-- NVIC
    |   +-- PCA
    |   +-- QEI
    |   +-- RCC
    |   +-- SPI
    |   +-- SYSCFG
    |   +-- TIMER
    |   +-- TWI
    |   +-- UART
    |   +-- WWDT
    |   +-- LCD
    |   +-- LED
    |   +-- PWM
    |   +-- RAMBIST
    +-- TFM
    |   +-- Test Service
    |   |   +-- Core
    |   |   +-- IPC
    |   |   +-- Secure Client
    |   |   +-- PS
    |   |   +-- IRQ
    |   +-- Test
    |   |   +-- Framework
    |   |   +-- PS
    |   |   +-- ITS
    |   |   +-- Audit
    |   |   +-- Crypto
    |   |   +-- Attestation
    |   |   +-- Platform
    |   |   +-- IPC
    |   |   +-- Core Positive
    |   |   +-- Core Interactive
    |   |   +-- Secure Client
    |   |   +-- QCBOR
    |   |   +-- T_COSE
    |   |   +-- PSA API
    |   +-- Bootloader
    |   +-- Core
    |   +-- Secure Service
    |   |   +-- Protected Storage
    |   |   +-- Internal Trusted Storage
    |   |   +-- Audit Logging
    |   |   +-- Crypto
    |   |   +-- Platform
    |   |   +-- Initial Attestation
    |   +-- API
    |   |   +-- Protected Storage
    |   |   +-- Internal Trusted Storage
    |   |   +-- Audit Logging
    |   |   +-- Crypto
    |   |   +-- Platform
    |   |   +-- Initial Attestation
    |   +-- Library
    |       +-- QCBOR
    |       +-- T_COSE
    +-- TFM Platform
    |   +-- Memory Map
    +-- TencentOS tiny
    |   +-- arch
    |   |   +-- arch
    |   +-- cmsis_os
    |   |   +-- cmsis_os
    |   |   +-- cmsis_os2
    |   +-- kernel
    |   |   +-- tos_config
    |   |   +-- core
    |   |   +-- hal
    |   +-- example
    |       +-- helloworld_main
    |       +-- mcu_it.c
    |       +-- mcu_platform.h
    +-- Test
    |   +-- Unity
    +-- Third Parties
    |   +-- lwIP Stack
    |   |   +-- mqtt
    |   |   +-- lwip
    |   +-- RTOS
    |       +-- RTX
    +-- Trust Protection Unit
    |   +-- AES
    |   +-- MAA
    +-- USB
    |   +-- CORE
    |   +-- Legacy API
    |   +-- Interface
    |   |   +-- ETH
    |   |   +-- WiFi
    |   |   +-- PPP
    |   |   +-- SLIP
    |   +-- Socket
    |   |   +-- UDP
    |   |   +-- TCP
    |   |   +-- BSD
    |   +-- Service
    |   |   +-- Web Server Compact
    |   |   +-- Web Server
    |   |   +-- Telnet Server
    |   |   +-- TFTP Server
    |   |   +-- TFTP Client
    |   |   +-- FTP Server
    |   |   +-- FTP Client
    |   |   +-- DNS Client
    |   |   +-- SMTP Client
    |   |   +-- SNMP Agent
    |   |   +-- SNTP Client
    |   +-- Drive
    |   |   +-- RAM
    |   |   +-- NOR
    |   |   +-- NAND
    |   |   +-- Memory Card
    |   |   +-- USB
    |   +-- Device
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- ADC
    |   |   +-- Custom Class
    |   +-- Host
    |   |   +-- HID
    |   |   +-- MSC
    |   |   +-- CDC
    |   |   +-- Custom Class
    |   +-- Core
    |   +-- Device Class
    +-- Wi-Fi
    |   +-- ESP8266 Wi-Fi
    |   +-- Utilities
    |       +-- Timestamp utility
    +-- Wireless
    |   +-- ClarinoxSoftFrame
    |   +-- ClarinoxBlue
    |   +-- ClarinoxWiFi
    |   +-- uCos
    +-- lwIP
    |   +-- Core
    +-- mbed
    |   +-- mbed Client
    |   +-- minar
    +-- nRF_ANT
    |   +-- ANT_Profiles
    |   |   +-- ant_common_page_80
    |   |   +-- ant_common_page_81
    |   |   +-- ant_bsc_pages
    |   |   +-- ant_request_controller
    |   |   +-- ant_sdm_utils
    |   |   +-- ant_bpwr
    |   |   +-- ant_bpwr_pages
    |   |   +-- ant_channel_config
    |   |   +-- ant_common_page_70
    |   |   +-- ant_hrm_utils
    |   |   +-- ant_key_manager
    |   |   +-- ant_bsc_simulator
    |   |   +-- ant_bsc_utils
    |   |   +-- ant_hrm
    |   |   +-- ant_sdm
    |   |   +-- ant_bpwr_utils
    |   |   +-- ant_sdm_pages
    |   |   +-- ant_hrm_pages
    |   |   +-- ant_bpwr_simulator
    |   |   +-- ant_bsc
    |   |   +-- ant_sdm_simulator
    |   |   +-- ant_hrm_simulator
    |   |   +-- ant_search_config
    |   +-- ANT_stack
    |   |   +-- ant_encrypt_negotiation_slave
    |   |   +-- ant_stack_config
    |   |   +-- ant_encrypt_config
    |   +-- ANT_Stat_Ind
    |       +-- ant_state_indicator
    +-- nRF_BLE
    |   +-- BLE_Services
    |   |   +-- ble_hts
    |   |   +-- ble_lbs
    |   |   +-- ble_hrs
    |   |   +-- ble_ans_c
    |   |   +-- ble_cts_c
    |   |   +-- ble_bps
    |   |   +-- ble_rscs
    |   |   +-- experimental_ble_ln_db
    |   |   +-- ble_sc_ctrlpt
    |   |   +-- ble_rscs_c
    |   |   +-- ble_nus
    |   |   +-- experimental_ble_lns
    |   |   +-- ble_bas
    |   |   +-- ble_cscs
    |   |   +-- ble_bas_c
    |   |   +-- ble_nus_c
    |   |   +-- ble_dis
    |   |   +-- ble_hids
    |   |   +-- experimental_ble_ln_cp
    |   |   +-- ble_tps
    |   |   +-- ble_ias
    |   |   +-- ble_lls
    |   |   +-- ble_ias_c
    |   |   +-- ble_gls
    |   |   +-- ble_dfu
    |   |   +-- ble_ancs_c
    |   |   +-- ble_hrs_c
    |   +-- BLE_Modules
    |       +-- ble_date_time
    |       +-- peer_manager
    |       +-- ble_db_discovery
    |       +-- peer_data_storage
    |       +-- gatt_cache_manager
    |       +-- id_manager
    |       +-- pm_mutex
    |       +-- gattc_cache_manager
    |       +-- ble_conn_params
    |       +-- ble_service_common
    |       +-- gatts_cache_manager
    |       +-- ble_conn_state
    |       +-- ble_debug_assert_handler
    |       +-- ble_gatt_db
    |       +-- ble_racp
    |       +-- peer_data
    |       +-- peer_database
    |       +-- device_manager
    |       +-- pm_buffer
    |       +-- ble_dtm
    |       +-- peer_id
    |       +-- ble_error_log
    |       +-- ble_advertising
    |       +-- security_dispatcher
    |       +-- ble_advdata
    |       +-- ble_common
    |       +-- ble_radio_notification
    |       +-- security_manager
    +-- nRF_Drivers
    |   +-- nrf_saadc
    |   +-- nrf_delay
    |   +-- nrf_gpio
    |   +-- ble_flash
    |   +-- nrf_drv_lpcomp
    |   +-- nrf_nvmc
    |   +-- nrf_drv_saadc
    |   +-- nrf_drv_pdm
    |   +-- spi_5W_master
    |   +-- nrf_ppi
    |   +-- nrf_pwm
    |   +-- nrf_drv_rng
    |   +-- radio_config
    |   +-- nrf_gpiote
    |   +-- nrf_clock
    |   +-- nrf_rng
    |   +-- nrf_spis
    |   +-- nrf_drv_i2s
    |   +-- nrf_qdec
    |   +-- nrf_uart
    |   +-- nrf_error
    |   +-- nrf_lpcomp
    |   +-- nrf_drv_rtc
    |   +-- nrf_spi
    |   +-- nrf_drv_spis
    |   +-- nrf_timer
    |   +-- nrf_drv_pwm
    |   +-- nrf_spim
    |   +-- nrf_temp
    |   +-- nrf_rtc
    |   +-- nrf_drv_clock
    |   +-- nrf_drv_twis
    |   +-- nrf_ecb
    |   +-- nrf_i2s
    |   +-- nrf_uarte
    |   +-- nrf_twi
    |   +-- nrf_drv_spi
    |   +-- nrf_twim
    |   +-- nrf_pdm
    |   +-- pstorage
    |   +-- nrf_drv_uart
    |   +-- nrf_twis
    |   +-- twi_master
    |   +-- nrf_drv_swi
    |   +-- nrf_drv_timer
    |   +-- nrf_drv_twi
    |   +-- nrf_soc
    |   +-- nrf_egu
    |   +-- nrf_wdt
    |   +-- nrf_drv_gpiote
    |   +-- sdio
    |   +-- nrf_drv_common
    |   +-- nrf_drv_ppi
    |   +-- nrf_drv_wdt
    |   +-- nrf_drv_qdec
    |   +-- nrf_adc
    |   +-- app_uart
    +-- nRF_Drivers_External
    |   +-- nrf6350
    |   +-- adns2080
    |   +-- mpu6050
    |   +-- cherry8x16
    |   +-- synaptics_touchpad
    |   +-- ds1624
    +-- nRF_IoT
    |   +-- IPv6 Stack
    |   |   +-- ipv6_sntp
    |   |   +-- ipv6_udp
    |   |   +-- iot_pbuffer
    |   |   +-- ipv6_stack
    |   |   +-- ipv6_utils
    |   |   +-- ipv6_icmp6
    |   |   +-- ipv6_dns6
    |   +-- CoAP
    |   |   +-- coap_resource
    |   |   +-- coap_queue
    |   |   +-- coap_core
    |   |   +-- coap_observe
    |   |   +-- coap_message
    |   |   +-- coap_transport_ipv6
    |   |   +-- coap_option
    |   |   +-- coap_transport_lwip
    |   |   +-- coap
    |   +-- BLE_Services
    |   |   +-- ble_ipsp
    |   +-- BLE 6LoWPAN
    |   |   +-- ble_6lowpan
    |   +-- Libraries
    |       +-- iot_common
    |       +-- iot_context_manager
    |       +-- iot_timer
    +-- nRF_Libraries
    |   +-- segger_rtt
    |   +-- mem_manager
    |   +-- app_button
    |   +-- low_power_pwm
    |   +-- hardfault_default
    |   +-- app_error
    |   +-- app_gpiote
    |   +-- DFU
    |   |   +-- dfu_bootloader
    |   |   +-- dfu_app_handler
    |   |   +-- dfu_bootloader_util
    |   |   +-- dfu_transport
    |   |   +-- dfu_bootloader_settings
    |   +-- led_softblink
    |   +-- slip
    |   +-- app_simple_timer
    |   +-- nrf_ic_info
    |   +-- hci_transport
    |   +-- app_scheduler
    |   +-- nrf_assert
    |   +-- sha256
    |   +-- app_timer_with_app_scheduler
    |   +-- nrf_log
    |   +-- crc16
    |   +-- ant_fs
    |   +-- Internal
    |   |   +-- app_mailbox
    |   +-- retarget
    |   +-- app_fifo
    |   +-- app_util
    |   +-- app_pwm
    |   +-- sdk_mapped_flags
    |   +-- crc32
    |   +-- sensorsim
    |   +-- experimental_section_vars
    |   +-- app_trace
    |   +-- hci_slip
    |   +-- fds
    |   +-- app_twi
    |   +-- nordic_common
    |   +-- fstorage
    |   +-- app_timer
    |   +-- hci_mem_pool
    +-- nRF_NFC
    |   +-- nfc_uri_rec
    |   +-- nfc_launchapp_rec
    |   +-- hal_nfc
    |   +-- nfc_type_2_tag_parser
    |   +-- nfc_launchapp_msg
    |   +-- nfc_ep_oob_rec
    |   +-- hal_nfc_logger_universal
    |   +-- nfc_le_oob_rec
    |   +-- nfc_ndef_record
    |   +-- nfc_uri_msg
    |   +-- nfc_lib
    |   +-- nfc_ble_pair_msg
    |   +-- nfc_ndef_msg
    |   +-- nfc_hs_rec
    |   +-- nfc_ac_rec
    +-- nRF_Properitary_RF
    |   +-- nrf_gzp
    |   +-- gzll
    |   +-- esb
    +-- nRF_Serialization
    |   +-- Internal
    |   |   +-- serapp_codecs_s110_ble_evt_mux
    |   |   +-- sercon_mw_s130_ble_gatts
    |   |   +-- sercon_ble_dtm
    |   |   +-- sercon_codecs_s120_ble_gattc
    |   |   +-- sercon_codecs_s130_ble_gattc
    |   |   +-- serapp_codecs_s110_ble_gattc_evt
    |   |   +-- sercon_mw_s130_ble_gattc
    |   |   +-- serapp_codecs_s120_ble_gattc_evt
    |   |   +-- sercon_mw_s130_nrf_soc
    |   |   +-- sercon_codecs_s130_ble_gap
    |   |   +-- sercon_codecs_s130_ble_gatts
    |   |   +-- sercon_codecs_s110_ble_gattc_evt
    |   |   +-- serapp_mw_s110_ble_gap
    |   |   +-- serapp_codecs_s110_ble_l2cap_evt
    |   |   +-- serapp_codecs_s110_ble_gap
    |   |   +-- serapp_mw_s130_ble_l2cap
    |   |   +-- serapp_codecs_s120_ble_gap_evt
    |   |   +-- sercon_codecs_s120_ble_gattc_evt
    |   |   +-- sercon_codecs_s130_ble_gap_evt
    |   |   +-- serapp_mw_s110_nrf_soc
    |   |   +-- sercon_mw_s130_ble_gap
    |   |   +-- ser_codecs_common
    |   |   +-- sercon_codecs_s120_ble_gap
    |   |   +-- serapp_mw_s110_ble_gattc
    |   |   +-- sercon_mw_s120_ble_gatts
    |   |   +-- serapp_codecs_s120_ble_gatts_evt
    |   |   +-- serapp_codecs_s120_ble_l2cap
    |   |   +-- ser_codecs_s130_ble_gattc_struct
    |   |   +-- cond_field_serialization
    |   |   +-- sercon_codecs_s110_ble_l2cap_evt
    |   |   +-- serapp_mw_s120_ble_l2cap
    |   |   +-- dtm_uart
    |   |   +-- ser_codecs_s120_ble_gatts_struct
    |   |   +-- sercon_codecs_s120_ble_gatts
    |   |   +-- sercon_mw_s110_ble_l2cap
    |   |   +-- serapp_mw_s130_nrf_soc
    |   |   +-- serapp_codecs_s130_nrf_soc
    |   |   +-- serapp_codecs_s110_ble
    |   |   +-- serapp_mw_s130_ble_gap
    |   |   +-- ser_codecs_s110_ble_gatts_struct
    |   |   +-- ser_codecs_s130_ble_gap_struct
    |   |   +-- serapp_mw_s120
    |   |   +-- sercon_codecs_s110_ble
    |   |   +-- sercon_codecs_s130_ble_gatts_evt
    |   |   +-- serapp_codecs_s130_ble_gattc
    |   |   +-- serapp_s130
    |   |   +-- sercon_mw_s110_ble_gatts
    |   |   +-- sercon_mw_s120_ble_gattc
    |   |   +-- serapp_codecs_ble_dtm
    |   |   +-- sercon_codecs_s110_ble_gap
    |   |   +-- sercon_mw_s110_ble
    |   |   +-- serapp_codecs_s130_ble_evt_mux
    |   |   +-- serapp_codecs_s130_ble_gatts
    |   |   +-- serapp_codecs_s130_ble_l2cap_evt
    |   |   +-- sercon_mw_s110_ble_gattc
    |   |   +-- ser_codecs_s120_ble_gattc_struct
    |   |   +-- serapp_codecs_s110_ble_gatts
    |   |   +-- sercon_codecs_s130_ble_gattc_evt
    |   |   +-- ser_sd_transport
    |   |   +-- serapp_codecs_s120_nrf_soc
    |   |   +-- serapp_codecs_s120
    |   |   +-- sercon_codecs_s120_ble_l2cap_evt
    |   |   +-- serapp_s120
    |   |   +-- ser_codecs_s110_ble_gattc_struct
    |   |   +-- serapp_codecs_s130_ble_gattc_evt
    |   |   +-- serapp_codecs_s110_ble_l2cap
    |   |   +-- ser_app_hal
    |   |   +-- ser_codecs_s120_ble_gap_struct
    |   |   +-- serapp_codecs_s130_ble_gap_evt
    |   |   +-- serapp_mw_s130_ble_gattc
    |   |   +-- sercon_codecs_s130_ble_evt_mux
    |   |   +-- sercon_codecs_s110_ble_gatts
    |   |   +-- sercon_codecs_s110_ble_gatts_evt
    |   |   +-- serapp_mw_s130
    |   |   +-- serapp_codecs_s130_ble_gap
    |   |   +-- sercon_codecs_s110_ble_gattc
    |   |   +-- serapp_codecs_s110_ble_gattc
    |   |   +-- serapp_codecs_s130
    |   |   +-- serapp_mw_s120_ble
    |   |   +-- sercon_codecs_s120_nrf_soc
    |   |   +-- sercon_mw_s110
    |   |   +-- sercon_codecs_s120_ble_gatts_evt
    |   |   +-- serapp_s130_no_ble_lib
    |   |   +-- sercon_codecs_s110_ble_evt_mux
    |   |   +-- serapp_mw_s110_ble_l2cap
    |   |   +-- sercon_codecs_s120_ble_l2cap
    |   |   +-- serapp_codecs_s120_ble_gap
    |   |   +-- serapp_codecs_s120_ble_gattc
    |   |   +-- serapp_codecs_s120_ble_evt_mux
    |   |   +-- serapp_mw_s120_ble_gap
    |   |   +-- ser_hal_transport
    |   |   +-- serapp_codecs_s110_nrf_soc
    |   |   +-- serapp_codecs_s110
    |   |   +-- serapp_codecs_s120_ble_gatts
    |   |   +-- sercon_mw_s130_ble
    |   |   +-- ser_codecs_s110_ble_struct
    |   |   +-- sercon_mw_s120
    |   |   +-- sercon_mw_s120_ble_gap
    |   |   +-- sercon_codecs_s120_ble_evt_mux
    |   |   +-- ser_codecs_s130_ble_gatts_struct
    |   |   +-- sercon_mw_s130_ble_l2cap
    |   |   +-- serapp_codecs_s110_ble_gap_evt
    |   |   +-- serapp_codecs_s110_ble_gatts_evt
    |   |   +-- serapp_mw_s110
    |   |   +-- serapp_hal_power_system_off
    |   |   +-- sercon_codecs_s110_ble_gap_evt
    |   |   +-- serapp_mw_s130_ble_gatts
    |   |   +-- sercon_codecs_s130_ble_l2cap_evt
    |   |   +-- serapp_s110
    |   |   +-- sercon_mw_s120_nrf_soc
    |   |   +-- serapp_codecs_s120_ble_l2cap_evt
    |   |   +-- ser_softdevice_handler
    |   |   +-- serapp_mw_s110_ble
    |   |   +-- sercon_mw_s130
    |   |   +-- serapp_codecs_s120_ble
    |   |   +-- serapp_mw_s110_ble_gatts
    |   |   +-- sercon_codecs_s130_ble_l2cap
    |   |   +-- sercon_mw_s110_ble_gap
    |   |   +-- serapp_codecs_s130_ble_gatts_evt
    |   |   +-- serapp_codecs_s130_ble_l2cap
    |   |   +-- sercon_codecs_s110_ble_l2cap
    |   |   +-- sercon_codecs_s120_ble_gap_evt
    |   |   +-- sercon_mw_dispatcher
    |   |   +-- sercon_mw_s120_ble
    |   |   +-- sercon_mw_s110_nrf_soc
    |   |   +-- sercon_mw_s120_ble_l2cap
    |   |   +-- serapp_mw_s120_nrf_soc
    |   |   +-- sercon_codecs_s130_ble
    |   |   +-- sercon_codecs_s130_nrf_soc
    |   |   +-- serapp_codecs_s130_ble
    |   |   +-- ser_codecs_s130_ble_struct
    |   |   +-- serapp_mw_s120_ble_gattc
    |   |   +-- ser_codecs_s110_ble_gap_struct
    |   |   +-- sercon_codecs_s110_nrf_soc
    |   |   +-- serapp_mw_s130_ble
    |   |   +-- serapp_mw_s120_ble_gatts
    |   |   +-- sercon_codecs_s120_ble
    |   |   +-- ser_codecs_s120_ble_struct
    |   +-- ser_phy
    |   +-- sercon_engine
    |   +-- ser_phy_hci_slip
    |   +-- serapp_ble_dtm
    +-- nRF_SoftDevice
    |   +-- Internal
    |   |   +-- sd_common
    |   |   +-- sd_handler_with_app_scheduler
    |   |   +-- softdevice_present
    |   |   +-- softdevice_in_use
    |   |   +-- ant_stack_handler_types
    |   +-- s110_hex
    |   +-- s110
    |   +-- s120_hex
    |   +-- s120
    |   +-- s130_hex
    |   +-- s130
    |   +-- s132_hex
    |   +-- s132
    |   +-- s1xx_iot_hex
    |   +-- s1xx_iot
    |   +-- s210
    |   +-- s210_hex
    |   +-- s310
    |   +-- s310_hex
    +-- wolfSSL
     +-- wolfSSL
     |   +-- Core
     |   +-- echoClient
     |   +-- echoServer
     |   +-- SimpleClient
     |   +-- SimpleServer
     +-- wolfCrypt
         +-- CORE
         +-- Dummy
         +-- Test
         +-- Benchmark