Browse Source

[bsp][nuvoton][rsoc] Fix compilation issues with bsp of nuvoton series

hydevcode 10 tháng trước cách đây
mục cha
commit
e7e44ec7e8
47 tập tin đã thay đổi với 9109 bổ sung831 xóa
  1. 15 0
      .github/workflows/bsp_buildings.yml
  2. 13 1
      .github/workflows/manual_trigger_scons_except_STM32_all.yml
  3. 7 7
      bsp/nuvoton/libraries/m031/rtt_port/drv_adc.c
  4. 3 8
      bsp/nuvoton/libraries/m031/rtt_port/drv_common.c
  5. 4 4
      bsp/nuvoton/libraries/m031/rtt_port/drv_wdt.c
  6. 38 35
      bsp/nuvoton/libraries/m2354/rtt_port/drv_usbhost.c
  7. 4 4
      bsp/nuvoton/libraries/m2354/rtt_port/drv_wdt.c
  8. 4 8
      bsp/nuvoton/libraries/m460/rtt_port/drv_common.c
  9. 27 0
      bsp/nuvoton/libraries/m460/rtt_port/drv_log.h
  10. 1 5
      bsp/nuvoton/libraries/m480/rtt_port/drv_common.c
  11. 27 0
      bsp/nuvoton/libraries/m480/rtt_port/drv_log.h
  12. 2 1
      bsp/nuvoton/libraries/m480/rtt_port/drv_spi.h
  13. 38 35
      bsp/nuvoton/libraries/m480/rtt_port/drv_usbhost.c
  14. 4 4
      bsp/nuvoton/libraries/m480/rtt_port/drv_wdt.c
  15. 23 23
      bsp/nuvoton/libraries/ma35/rtt_port/drv_adc.c
  16. 10 11
      bsp/nuvoton/libraries/ma35/rtt_port/drv_eadc.c
  17. 8 8
      bsp/nuvoton/libraries/ma35/rtt_port/drv_i2c.c
  18. 27 0
      bsp/nuvoton/libraries/ma35/rtt_port/drv_log.h
  19. 22 22
      bsp/nuvoton/libraries/n9h30/rtt_port/drv_adc.c
  20. 27 0
      bsp/nuvoton/libraries/n9h30/rtt_port/drv_log.h
  21. 27 27
      bsp/nuvoton/libraries/nuc980/rtt_port/drv_adc.c
  22. 27 0
      bsp/nuvoton/libraries/nuc980/rtt_port/drv_log.h
  23. 157 24
      bsp/nuvoton/ma35-rtp/.config
  24. 412 0
      bsp/nuvoton/ma35-rtp/rtconfig.h
  25. 163 68
      bsp/nuvoton/nk-980iot/.config
  26. 564 0
      bsp/nuvoton/nk-980iot/rtconfig.h
  27. 163 79
      bsp/nuvoton/nk-n9h30/.config
  28. 560 0
      bsp/nuvoton/nk-n9h30/rtconfig.h
  29. 162 59
      bsp/nuvoton/nk-rtu980/.config
  30. 14 6
      bsp/nuvoton/nk-rtu980/applications/mnt.c
  31. 559 0
      bsp/nuvoton/nk-rtu980/rtconfig.h
  32. 174 77
      bsp/nuvoton/numaker-hmi-ma35d1/.config
  33. 623 0
      bsp/nuvoton/numaker-hmi-ma35d1/rtconfig.h
  34. 159 46
      bsp/nuvoton/numaker-iot-m467/.config
  35. 630 0
      bsp/nuvoton/numaker-iot-m467/rtconfig.h
  36. 219 47
      bsp/nuvoton/numaker-iot-m487/.config
  37. 594 0
      bsp/nuvoton/numaker-iot-m487/rtconfig.h
  38. 173 52
      bsp/nuvoton/numaker-iot-ma35d1/.config
  39. 637 0
      bsp/nuvoton/numaker-iot-ma35d1/rtconfig.h
  40. 171 40
      bsp/nuvoton/numaker-m032ki/.config
  41. 442 0
      bsp/nuvoton/numaker-m032ki/rtconfig.h
  42. 154 46
      bsp/nuvoton/numaker-m2354/.config
  43. 537 0
      bsp/nuvoton/numaker-m2354/rtconfig.h
  44. 161 64
      bsp/nuvoton/numaker-m467hj/.config
  45. 615 0
      bsp/nuvoton/numaker-m467hj/rtconfig.h
  46. 158 20
      bsp/nuvoton/numaker-pfm-m487/.config
  47. 550 0
      bsp/nuvoton/numaker-pfm-m487/rtconfig.h

+ 15 - 0
.github/workflows/bsp_buildings.yml

@@ -238,6 +238,21 @@ jobs:
                 - "renesas/rzn2l_rsk"
                 - "frdm-k64f"
                 - "xplorer4330/M4"
+         -  RTT_BSP: "nuvoton" 
+            RTT_TOOL_CHAIN: "sourcery-arm"
+            SUB_RTT_BSP: 
+                - "nuvoton/numaker-pfm-m487"
+                - "nuvoton/numaker-hmi-ma35d1"
+                - "nuvoton/numaker-iot-m487"
+                - "nuvoton/numaker-m032ki"
+                - "nuvoton/numaker-iot-m467"
+                - "nuvoton/numaker-m467hj"
+                - "nuvoton/nk-n9h30"
+                - "nuvoton/nk-rtu980"
+                - "nuvoton/ma35-rtp"
+                - "nuvoton/nk-980iot"
+                - "nuvoton/numaker-iot-ma35d1"
+                - "nuvoton/numaker-m2354"
          -  RTT_BSP: "gd32_n32_apm32"   
             RTT_TOOL_CHAIN: "sourcery-arm"
             SUB_RTT_BSP:             

+ 13 - 1
.github/workflows/manual_trigger_scons_except_STM32_all.yml

@@ -270,7 +270,19 @@ jobs:
        #  - {RTT_BSP_NAME: "yichip_yc3121-pos", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "yichip/yc3121-pos"}  #编译问题
         # - {RTT_BSP_NAME: "yichip_yc3122-pos", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "yichip/yc3122-pos"}  #编译问题
           - {RTT_BSP_NAME: "zynqmp-r5-axu4ev", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "zynqmp-r5-axu4ev"}
-  
+          - {RTT_BSP_NAME: "nuvoton_numaker-pfm-m487", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-pfm-m487"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-hmi-ma35d1", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-hmi-ma35d1"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-iot-m487", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-iot-m487"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-m032ki", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-m032ki"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-iot-m467", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-iot-m467"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-m467hj", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-m467hj"}
+          - {RTT_BSP_NAME: "nuvoton_nk-n9h30", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/nk-n9h30"}
+          - {RTT_BSP_NAME: "nuvoton_nk-rtu980", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/nk-rtu980"}
+          - {RTT_BSP_NAME: "nuvoton_ma35-rtp", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/ma35-rtp"}
+          - {RTT_BSP_NAME: "nuvoton_nk-980iot", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/nk-980iot"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-iot-ma35d1", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-iot-ma35d1"}
+          - {RTT_BSP_NAME: "nuvoton_numaker-m2354 ", RTT_TOOL_CHAIN: "sourcery-arm", RTT_BSP: "nuvoton/numaker-m2354"}
+
     steps:
       - uses: actions/checkout@v4
       - name: Set up Python

+ 7 - 7
bsp/nuvoton/libraries/m031/rtt_port/drv_adc.c

@@ -30,8 +30,8 @@ struct nu_adc
 typedef struct nu_adc *nu_adc_t;
 
 /* Private functions ------------------------------------------------------------*/
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled);
-static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
+static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
 
 /* Public functions ------------------------------------------------------------*/
 int rt_hw_adc_init(void);
@@ -60,7 +60,7 @@ typedef struct rt_adc_ops *rt_adc_ops_t;
 
 
 /* nu_adc_enabled - Enable ADC clock and wait for ready */
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled)
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled)
 {
 
     ADC_T *adc_base = ((nu_adc_t)device)->adc_base;
@@ -96,7 +96,7 @@ static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel
     return RT_EOK;
 }
 
-static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
+static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value)
 {
 
     RT_ASSERT(device != RT_NULL);
@@ -111,7 +111,7 @@ static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_uint32_t chann
         return -(RT_EINVAL);
     }
 
-    if ((*padc_reg_tab & (1 << channel)) == 0)
+    if ((*padc_reg_tab & (0x1 << channel)) == 0)
     {
         *value = 0xFFFFFFFF;
         return -(RT_EBUSY);
@@ -127,7 +127,7 @@ static rt_err_t nu_get_adc_value(struct rt_adc_device *device, rt_uint32_t chann
 
     while (ADC_GET_INT_FLAG(adc_base, ADC_ADF_INT) == 0);
 
-    *value = ADC_GET_CONVERSION_DATA(adc_base, channel);
+    *value = ADC_GET_CONVERSION_DATA(adc_base,channel);
 
     return RT_EOK;
 }
@@ -151,4 +151,4 @@ int rt_hw_adc_init(void)
 INIT_BOARD_EXPORT(rt_hw_adc_init);
 
 
-#endif //#if defined(BSP_USING_ADC)
+#endif /* #if defined(BSP_USING_ADC) */

+ 3 - 8
bsp/nuvoton/libraries/m031/rtt_port/drv_common.c

@@ -117,13 +117,6 @@ void SysTick_Handler(void)
     rt_interrupt_leave();
 }
 
-void rt_hw_cpu_reset(void)
-{
-    SYS_UnlockReg();
-
-    SYS->IPRST0 |= SYS_IPRST0_CHIPRST_Msk;
-}
-
 #ifdef RT_USING_CPU_FFS
 int __rt_ffs(int value)
 {
@@ -136,7 +129,9 @@ int __rt_ffs(int value)
 #include <finsh.h>
 static void reboot(uint8_t argc, char **argv)
 {
-    rt_hw_cpu_reset();
+    SYS_UnlockReg();
+
+    SYS->IPRST0 |= SYS_IPRST0_CHIPRST_Msk;
 }
 MSH_CMD_EXPORT(reboot, Reboot System);
 #endif /* RT_USING_FINSH */

+ 4 - 4
bsp/nuvoton/libraries/m031/rtt_port/drv_wdt.c

@@ -101,9 +101,9 @@ static void soft_time_setup(uint32_t wanted_sec, uint32_t hz, soft_time_handle_t
 static void soft_time_feed_dog(soft_time_handle_t *const soft_time);
 
 #if defined(RT_USING_PM)
-static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
+static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
 static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode);
-static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
+static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
 static void soft_time_freqeucy_change(uint32_t new_hz, soft_time_handle_t *const soft_time);
 #endif
 
@@ -132,7 +132,7 @@ static struct rt_device_pm_ops device_pm_ops =
 #if defined(RT_USING_PM)
 
 /* device pm suspend() entry. */
-static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
 {
     switch (mode)
     {
@@ -184,7 +184,7 @@ static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode)
 
 
 /* device pm frequency_change() entry. */
-static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
 {
     uint32_t clk, new_hz;
 

+ 38 - 35
bsp/nuvoton/libraries/m2354/rtt_port/drv_usbhost.c

@@ -29,7 +29,7 @@
     #define NU_USBHOST_HUB_POLLING_INTERVAL    (100)
 #endif
 
-#define NU_MAX_USBH_PORT    1        //USB1.1 port
+#define NU_MAX_USBH_PORT    1        /* USB1.1 port */
 #define NU_MAX_USBH_PIPE    16
 #define NU_USBH_THREAD_STACK_SIZE    2048
 
@@ -37,17 +37,20 @@
 
 #define NU_USBHOST_HUB_POLLING_LOCK
 #if defined(NU_USBHOST_HUB_POLLING_LOCK)
-#define NU_USBHOST_MUTEX_INIT()      { \
+#define NU_USBHOST_MUTEX_INIT() \
+{ \
                                 s_sUSBHDev.lock = rt_mutex_create("usbhost_lock", RT_IPC_FLAG_PRIO); \
                                 RT_ASSERT(s_sUSBHDev.lock != RT_NULL); \
                             }
 
-#define NU_USBHOST_LOCK()      { \
+#define NU_USBHOST_LOCK() \
+{ \
                                 rt_err_t result = rt_mutex_take(s_sUSBHDev.lock, RT_WAITING_FOREVER); \
                                 RT_ASSERT(result == RT_EOK); \
                             }
 
-#define NU_USBHOST_UNLOCK()    { \
+#define NU_USBHOST_UNLOCK() \
+{ \
                                 rt_err_t result = rt_mutex_release(s_sUSBHDev.lock); \
                                 RT_ASSERT(result == RT_EOK); \
                             }
@@ -57,7 +60,7 @@
 #define NU_USBHOST_UNLOCK()
 #endif
 
-/* Private typedef --------------------------------------------------------------*/
+/* Private typedef -------------------------------------------------------------- */
 typedef struct nu_port_dev
 {
     rt_bool_t bRHParent;
@@ -86,7 +89,7 @@ struct nu_usbh_dev
     S_NU_RH_PORT_CTRL asPortCtrl[NU_MAX_USBH_PORT];
 };
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 static struct nu_usbh_dev s_sUSBHDev;
 
 static S_NU_RH_PORT_CTRL *
@@ -97,13 +100,13 @@ GetRHPortControlFromPipe(
     int port;
     if (pipe->inst->parent_hub->is_roothub)
     {
-        //case: device ---> root hub
+        /* case: device ---> root hub */
         inst = pipe->inst;
         port = inst->port;
     }
     else
     {
-        //case: device ---> hub ---> root hub
+        /* case: device ---> hub ---> root hub */
         inst = pipe->inst->parent_hub->self;
         port = inst->port;
     }
@@ -129,11 +132,11 @@ GetPortDevFromPipe(
 
     if (pipe->inst->parent_hub->is_roothub)
     {
-        //case: device ---> root hub
+        /* case: device ---> root hub */
         return &psRHPortCtrl->sRHPortDev;
     }
 
-    //case: device ---> hub ---> root hub
+    /* case: device ---> hub ---> root hub */
     for (i = 0 ; i < NU_MAX_USBH_HUB_PORT_DEV; i ++)
     {
         if (psRHPortCtrl->asHubPortDev[i].port_num == pipe->inst->port)
@@ -263,7 +266,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
 
     if ((psPortDev == NULL) || (psPortDev->pUDev == NULL))
     {
-        //allocate new dev for hub device
+        /* allocate new dev for hub device */
         psPortDev = AllocateNewUDev(psPortCtrl);
 
         if (psPortDev == RT_NULL)
@@ -288,7 +291,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
         psPortDev->bEnumDone = FALSE;
     }
 
-    //For ep0 control transfer
+    /* For ep0 control transfer */
     if ((pipe->ep.bEndpointAddress & 0x7F) == 0)
     {
         pipe->pipe_index = 0;
@@ -336,7 +339,7 @@ static rt_err_t nu_close_pipe(upipe_t pipe)
 
     psPortDev = GetPortDevFromPipe(pipe);
 
-    //For ep0 control transfer
+    /* For ep0 control transfer */
     if ((pipe->ep.bEndpointAddress & 0x7F) == 0)
     {
         if ((psPortDev) && (psPortDev->bRHParent == FALSE) && (psPortDev->bEnumDone == TRUE))
@@ -407,7 +410,7 @@ static int nu_bulk_xfer(
     if (ret < 0)
         return ret;
 
-    //wait transfer done
+    /* wait transfer done */
     if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) < 0)
     {
         rt_kprintf("Request Timeout in %d ms!! (bulk_xfer)\n", timeouts);
@@ -462,7 +465,7 @@ static void xfer_done_cb(UTR_T *psUTR)
 {
     S_NU_PORT_DEV *psPortDev = (S_NU_PORT_DEV *)psUTR->context;
 
-    //transfer done, signal utr_completion
+    /* transfer done, signal utr_completion */
     rt_completion_done(&(psPortDev->utr_completion));
 }
 
@@ -490,7 +493,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         goto exit_nu_pipe_xfer;
     }
 
-    //ctrl xfer
+    /* ctrl xfer */
     if (pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL)
     {
         int ret;
@@ -504,13 +507,13 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
             /* Read data from USB device. */
             if (psSetup->request_type & USB_REQ_TYPE_DIR_IN)
             {
-                //Store setup request
+                /* Store setup request */
                 rt_memcpy(&psPortCtrl->asHubPortDev->asSetupReq[pipe->pipe_index], psSetup, sizeof(struct urequest));
             }
             else
             {
                 /* Write data to USB device. */
-                //Trigger USBHostLib Ctrl_Xfer
+                /* Trigger USBHostLib Ctrl_Xfer */
                 ret = nu_ctrl_xfer(psPortDev, psSetup, NULL, timeouts);
                 if (ret != psSetup->wLength)
                     goto exit_nu_pipe_xfer;
@@ -518,13 +521,13 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         }
         else
         {
-            //token == USBH_PID_DATA
+            /* token == USBH_PID_DATA */
             if (buffer_nonch && ((pipe->ep.bEndpointAddress & USB_DIR_MASK) == USB_DIR_IN))
             {
                 struct urequest *psSetup = &psPortCtrl->asHubPortDev->asSetupReq[pipe->pipe_index];
 
                 /* Read data from USB device. */
-                //Trigger USBHostLib Ctril_Xfer
+                /* Trigger USBHostLib Ctril_Xfer */
                 /*
                 * Workaround: HCD driver can readback all bytes of setup.wLength, but not support single packet transferring.
                 */
@@ -553,10 +556,10 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
                 LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
             }
 
-        } //else
+        } /* else */
         i32XferLen = nbytes;
         goto exit_nu_pipe_xfer;
-    } // if ( pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL )
+    } /* if ( pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL ) */
     else
     {
 
@@ -577,7 +580,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         psUTR->bIsTransferDone = 0;
         psUTR->status = 0;
 
-        //others xfer
+        /* others xfer */
         rt_completion_init(&(psPortDev->utr_completion));
 
         if (pipe->ep.bmAttributes == USB_EP_ATTR_BULK)
@@ -593,7 +596,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
             if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
             {
                 LOG_D("nu_pipe_xfer ERROR: int transfer failed");
-                //goto exit_nu_pipe_xfer;
+                /* goto exit_nu_pipe_xfer; */
             }
             else
             {
@@ -603,25 +606,25 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         }
         else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
         {
-            //TODO: ISO transfer
+            /* TODO: ISO transfer */
             LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
             goto exit_nu_pipe_xfer;
         }
 
-    } //else
+    } /* else */
 
 failreport_nu_pipe_xfer:
 
     if (psUTR->bIsTransferDone == 0)
     {
-        //Timeout
+        /* Timeout */
         LOG_D("nu_pipe_xfer ERROR: timeout");
         pipe->status = UPIPE_STATUS_ERROR;
         usbh_quit_utr(psUTR);
     }
     else
     {
-        // Transfer Done. Get status
+        /* Transfer Done. Get status */
         if (psUTR->status == 0)
         {
             pipe->status = UPIPE_STATUS_OK;
@@ -640,7 +643,7 @@ failreport_nu_pipe_xfer:
 
 exit_nu_pipe_xfer:
 
-    //Call callback
+    /* Call callback */
     if (pipe->callback != RT_NULL)
     {
         pipe->callback(pipe);
@@ -739,7 +742,7 @@ static void nu_hcd_disconnect_callback(
 }
 
 
-/* USB host operations -----------------------------------------------------------*/
+/* USB host operations ----------------------------------------------------------- */
 static struct uhcd_ops nu_uhcd_ops =
 {
     nu_reset_port,
@@ -754,10 +757,10 @@ static rt_err_t nu_hcd_init(rt_device_t device)
 
     usbh_core_init();
 
-    //install connect/disconnect callback
+    /* install connect/disconnect callback */
     usbh_install_conn_callback(nu_hcd_connect_callback, nu_hcd_disconnect_callback);
 
-    //create thread for polling usbh port status
+    /* create thread for polling usbh port status */
     /* create usb hub thread */
     pNuUSBHDev->polling_thread = rt_thread_create("usbh_drv", nu_usbh_rh_thread_entry, RT_NULL,
                                  NU_USBH_THREAD_STACK_SIZE, 8, 20);
@@ -769,7 +772,7 @@ static rt_err_t nu_hcd_init(rt_device_t device)
     return RT_EOK;
 }
 
-/* global function for USB host library -----------------------------*/
+/* global function for USB host library ----------------------------- */
 uint32_t usbh_get_ticks(void)
 {
     return rt_tick_get();
@@ -788,7 +791,7 @@ uint32_t usbh_tick_from_millisecond(uint32_t msec)
 #if defined(RT_USING_PM)
 
 /* device pm suspend() entry. */
-static int usbhost_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t usbhost_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
 {
     rt_err_t result;
 
@@ -877,7 +880,7 @@ int nu_usbh_register(void)
     res = rt_device_register(&psUHCD->parent, "usbh", RT_DEVICE_FLAG_DEACTIVATE);
     RT_ASSERT(res == RT_EOK);
 
-    /*initialize the usb host function */
+    /* initialize the usb host function */
     res = rt_usb_host_init("usbh");
     RT_ASSERT(res == RT_EOK);
 

+ 4 - 4
bsp/nuvoton/libraries/m2354/rtt_port/drv_wdt.c

@@ -101,9 +101,9 @@ static void soft_time_setup(uint32_t wanted_sec, uint32_t hz, soft_time_handle_t
 static void soft_time_feed_dog(soft_time_handle_t *const soft_time);
 
 #if defined(RT_USING_PM)
-    static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
+    static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
     static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode);
-    static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
+    static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
     static void soft_time_freqeucy_change(uint32_t new_hz, soft_time_handle_t *const soft_time);
 #endif
 
@@ -132,7 +132,7 @@ static struct rt_device_pm_ops device_pm_ops =
 #if defined(RT_USING_PM)
 
 /* device pm suspend() entry. */
-static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
 {
     switch (mode)
     {
@@ -184,7 +184,7 @@ static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode)
 
 
 /* device pm frequency_change() entry. */
-static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
 {
     uint32_t clk, new_hz;
 

+ 4 - 8
bsp/nuvoton/libraries/m460/rtt_port/drv_common.c

@@ -127,7 +127,7 @@ void nu_pin_set_function(rt_base_t pin, int data)
     GPx_MFPx_org = *GPx_MFPx;
     *GPx_MFPx    = (GPx_MFPx_org & (~MFP_Msk)) | data;
 
-    //rt_kprintf("Port[%d]-Pin[%d] Addr[%08x] Data[%08x] %08x -> %08x\n", port_index, pin_index, GPx_MFPx, data, GPx_MFPx_org, *GPx_MFPx);
+    /* rt_kprintf("Port[%d]-Pin[%d] Addr[%08x] Data[%08x] %08x -> %08x\n", port_index, pin_index, GPx_MFPx, data, GPx_MFPx_org, *GPx_MFPx); */
 }
 
 /**
@@ -145,16 +145,12 @@ void SysTick_Handler(void)
     rt_interrupt_leave();
 }
 
-void rt_hw_cpu_reset(void)
+int reboot(int argc, char **argv)
 {
     SYS_UnlockReg();
 
     SYS->IPRST0 |= SYS_IPRST0_CHIPRST_Msk;
-}
 
-int reboot(int argc, char **argv)
-{
-    rt_hw_cpu_reset();
     return 0;
 }
 MSH_CMD_EXPORT(reboot, Reboot System);
@@ -173,7 +169,7 @@ void devmem(int argc, char *argv[])
     {
         if (sscanf(argv[2], "0x%x", &value) != 1)
             goto exit_devmem;
-        mode = 1; //Write
+        mode = 1; /*Write*/
     }
 
     if (sscanf(argv[1], "0x%x", &u32Addr) != 1)
@@ -207,7 +203,7 @@ void devmem2(int argc, char *argv[])
 
     if (argc == 3)
     {
-        if (sscanf(argv[2], "%d", &value) != 1)
+        if (sscanf(argv[2], "%u", &value) != 1)
             goto exit_devmem;
         word_count = value;
     }

+ 27 - 0
bsp/nuvoton/libraries/m460/rtt_port/drv_log.h

@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2006-2024 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2022-03-21     shelton      first version
+ */
+
+/*
+ * NOTE: DO NOT include this file on the header file.
+ */
+
+#ifndef LOG_TAG
+#define DBG_TAG                         "drv"
+#else
+#define DBG_TAG                         LOG_TAG
+#endif /* LOG_TAG */
+
+#ifdef DRV_DEBUG
+#define DBG_LVL                         DBG_LOG
+#else
+#define DBG_LVL                         DBG_INFO
+#endif /* DRV_DEBUG */
+
+#include <rtdbg.h>

+ 1 - 5
bsp/nuvoton/libraries/m480/rtt_port/drv_common.c

@@ -117,16 +117,12 @@ void SysTick_Handler(void)
     rt_interrupt_leave();
 }
 
-void rt_hw_cpu_reset(void)
+int reboot(int argc, char **argv)
 {
     SYS_UnlockReg();
 
     SYS->IPRST0 |= SYS_IPRST0_CHIPRST_Msk;
-}
 
-int reboot(int argc, char **argv)
-{
-    rt_hw_cpu_reset();
     return 0;
 }
 MSH_CMD_EXPORT(reboot, Reboot System);

+ 27 - 0
bsp/nuvoton/libraries/m480/rtt_port/drv_log.h

@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2006-2024 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2022-03-21     shelton      first version
+ */
+
+/*
+ * NOTE: DO NOT include this file on the header file.
+ */
+
+#ifndef LOG_TAG
+#define DBG_TAG                         "drv"
+#else
+#define DBG_TAG                         LOG_TAG
+#endif /* LOG_TAG */
+
+#ifdef DRV_DEBUG
+#define DBG_LVL                         DBG_LOG
+#else
+#define DBG_LVL                         DBG_INFO
+#endif /* DRV_DEBUG */
+
+#include <rtdbg.h>

+ 2 - 1
bsp/nuvoton/libraries/m480/rtt_port/drv_spi.h

@@ -28,6 +28,7 @@ struct nu_spi
     struct rt_spi_bus dev;
     char *name;
     SPI_T *spi_base;
+    uint32_t rstidx;
     uint32_t dummy;
 #if defined(BSP_USING_SPI_PDMA)
     int16_t pdma_perp_tx;
@@ -48,4 +49,4 @@ void nu_spi_transfer(struct nu_spi *spi_bus, uint8_t *tx, uint8_t *rx, int lengt
     rt_err_t nu_hw_spi_pdma_allocate(struct nu_spi *spi_bus);
 #endif
 
-#endif // __DRV_SPI_H___
+#endif /* __DRV_SPI_H___ */

+ 38 - 35
bsp/nuvoton/libraries/m480/rtt_port/drv_usbhost.c

@@ -31,7 +31,7 @@
     #define NU_USBHOST_HUB_POLLING_INTERVAL    (100)
 #endif
 
-#define NU_MAX_USBH_PORT    2        //USB1.1 + USB2.0 port
+#define NU_MAX_USBH_PORT    2        /* USB1.1 + USB2.0 port */
 #define NU_MAX_USBH_PIPE    16
 #define NU_USBH_THREAD_STACK_SIZE    2048
 
@@ -39,17 +39,20 @@
 
 #define NU_USBHOST_HUB_POLLING_LOCK
 #if defined(NU_USBHOST_HUB_POLLING_LOCK)
-#define NU_USBHOST_MUTEX_INIT()      { \
+#define NU_USBHOST_MUTEX_INIT() \
+{ \
                                 s_sUSBHDev.lock = rt_mutex_create("usbhost_lock", RT_IPC_FLAG_PRIO); \
                                 RT_ASSERT(s_sUSBHDev.lock != RT_NULL); \
                             }
 
-#define NU_USBHOST_LOCK()      { \
+#define NU_USBHOST_LOCK() \
+{ \
                                 rt_err_t result = rt_mutex_take(s_sUSBHDev.lock, RT_WAITING_FOREVER); \
                                 RT_ASSERT(result == RT_EOK); \
                             }
 
-#define NU_USBHOST_UNLOCK()    { \
+#define NU_USBHOST_UNLOCK() \
+{ \
                                 rt_err_t result = rt_mutex_release(s_sUSBHDev.lock); \
                                 RT_ASSERT(result == RT_EOK); \
                             }
@@ -59,7 +62,7 @@
 #define NU_USBHOST_UNLOCK()
 #endif
 
-/* Private typedef --------------------------------------------------------------*/
+/* Private typedef -------------------------------------------------------------- */
 typedef struct nu_port_dev
 {
     rt_bool_t bRHParent;
@@ -88,7 +91,7 @@ struct nu_usbh_dev
     S_NU_RH_PORT_CTRL asPortCtrl[NU_MAX_USBH_PORT];
 };
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 static struct nu_usbh_dev s_sUSBHDev;
 
 static S_NU_RH_PORT_CTRL *
@@ -99,13 +102,13 @@ GetRHPortControlFromPipe(
     int port;
     if (pipe->inst->parent_hub->is_roothub)
     {
-        //case: device ---> root hub
+        /* case: device ---> root hub */
         inst = pipe->inst;
         port = inst->port;
     }
     else
     {
-        //case: device ---> hub ---> root hub
+        /* case: device ---> hub ---> root hub */
         inst = pipe->inst->parent_hub->self;
         port = inst->port;
     }
@@ -131,11 +134,11 @@ GetPortDevFromPipe(
 
     if (pipe->inst->parent_hub->is_roothub)
     {
-        //case: device ---> root hub
+        /* case: device ---> root hub */
         return &psRHPortCtrl->sRHPortDev;
     }
 
-    //case: device ---> hub ---> root hub
+    /* case: device ---> hub ---> root hub */
     for (i = 0 ; i < NU_MAX_USBH_HUB_PORT_DEV; i ++)
     {
         if (psRHPortCtrl->asHubPortDev[i].port_num == pipe->inst->port)
@@ -265,7 +268,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
 
     if ((psPortDev == NULL) || (psPortDev->pUDev == NULL))
     {
-        //allocate new dev for hub device
+        /* allocate new dev for hub device */
         psPortDev = AllocateNewUDev(psPortCtrl);
 
         if (psPortDev == RT_NULL)
@@ -290,7 +293,7 @@ static rt_err_t nu_open_pipe(upipe_t pipe)
         psPortDev->bEnumDone = FALSE;
     }
 
-    //For ep0 control transfer
+    /* For ep0 control transfer */
     if ((pipe->ep.bEndpointAddress & 0x7F) == 0)
     {
         pipe->pipe_index = 0;
@@ -338,7 +341,7 @@ static rt_err_t nu_close_pipe(upipe_t pipe)
 
     psPortDev = GetPortDevFromPipe(pipe);
 
-    //For ep0 control transfer
+    /* For ep0 control transfer */
     if ((pipe->ep.bEndpointAddress & 0x7F) == 0)
     {
         if ((psPortDev) && (psPortDev->bRHParent == FALSE) && (psPortDev->bEnumDone == TRUE))
@@ -409,7 +412,7 @@ static int nu_bulk_xfer(
     if (ret < 0)
         return ret;
 
-    //wait transfer done
+    /* wait transfer done */
     if (rt_completion_wait(&(psPortDev->utr_completion), timeouts) < 0)
     {
         rt_kprintf("Request Timeout in %d ms!! (bulk_xfer)\n", timeouts);
@@ -464,7 +467,7 @@ static void xfer_done_cb(UTR_T *psUTR)
 {
     S_NU_PORT_DEV *psPortDev = (S_NU_PORT_DEV *)psUTR->context;
 
-    //transfer done, signal utr_completion
+    /* transfer done, signal utr_completion */
     rt_completion_done(&(psPortDev->utr_completion));
 }
 
@@ -492,7 +495,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         goto exit_nu_pipe_xfer;
     }
 
-    //ctrl xfer
+    /* ctrl xfer */
     if (pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL)
     {
         int ret;
@@ -506,13 +509,13 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
             /* Read data from USB device. */
             if (psSetup->request_type & USB_REQ_TYPE_DIR_IN)
             {
-                //Store setup request
+                /* Store setup request */
                 rt_memcpy(&psPortCtrl->asHubPortDev->asSetupReq[pipe->pipe_index], psSetup, sizeof(struct urequest));
             }
             else
             {
                 /* Write data to USB device. */
-                //Trigger USBHostLib Ctrl_Xfer
+                /* Trigger USBHostLib Ctrl_Xfer */
                 ret = nu_ctrl_xfer(psPortDev, psSetup, NULL, timeouts);
                 if (ret != psSetup->wLength)
                     goto exit_nu_pipe_xfer;
@@ -520,13 +523,13 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         }
         else
         {
-            //token == USBH_PID_DATA
+            /* token == USBH_PID_DATA */
             if (buffer_nonch && ((pipe->ep.bEndpointAddress & USB_DIR_MASK) == USB_DIR_IN))
             {
                 struct urequest *psSetup = &psPortCtrl->asHubPortDev->asSetupReq[pipe->pipe_index];
 
                 /* Read data from USB device. */
-                //Trigger USBHostLib Ctril_Xfer
+                /* Trigger USBHostLib Ctril_Xfer */
                 /*
                 * Workaround: HCD driver can readback all bytes of setup.wLength, but not support single packet transferring.
                 */
@@ -555,10 +558,10 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
                 LOG_D("%d == USBH_PID_DATA, nil buf-%d", token, nbytes);
             }
 
-        } //else
+        } /* else */
         i32XferLen = nbytes;
         goto exit_nu_pipe_xfer;
-    } // if ( pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL )
+    } /* if ( pipe->ep.bmAttributes == USB_EP_ATTR_CONTROL ) */
     else
     {
 
@@ -579,7 +582,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         psUTR->bIsTransferDone = 0;
         psUTR->status = 0;
 
-        //others xfer
+        /* others xfer */
         rt_completion_init(&(psPortDev->utr_completion));
 
         if (pipe->ep.bmAttributes == USB_EP_ATTR_BULK)
@@ -595,7 +598,7 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
             if (nu_int_xfer(pipe, psPortDev, psUTR, timeouts) < 0)
             {
                 LOG_D("nu_pipe_xfer ERROR: int transfer failed");
-                //goto exit_nu_pipe_xfer;
+                /* goto exit_nu_pipe_xfer; */
             }
             else
             {
@@ -605,25 +608,25 @@ static int nu_pipe_xfer(upipe_t pipe, rt_uint8_t token, void *buffer, int nbytes
         }
         else if (pipe->ep.bmAttributes == USB_EP_ATTR_ISOC)
         {
-            //TODO: ISO transfer
+            /* TODO: ISO transfer */
             LOG_D("nu_pipe_xfer ERROR: isoc transfer not support");
             goto exit_nu_pipe_xfer;
         }
 
-    } //else
+    } /* else */
 
 failreport_nu_pipe_xfer:
 
     if (psUTR->bIsTransferDone == 0)
     {
-        //Timeout
+        /* Timeout */
         LOG_D("nu_pipe_xfer ERROR: timeout");
         pipe->status = UPIPE_STATUS_ERROR;
         usbh_quit_utr(psUTR);
     }
     else
     {
-        // Transfer Done. Get status
+        /* Transfer Done. Get status*/
         if (psUTR->status == 0)
         {
             pipe->status = UPIPE_STATUS_OK;
@@ -642,7 +645,7 @@ failreport_nu_pipe_xfer:
 
 exit_nu_pipe_xfer:
 
-    //Call callback
+    /* Call callback */
     if (pipe->callback != RT_NULL)
     {
         pipe->callback(pipe);
@@ -741,7 +744,7 @@ static void nu_hcd_disconnect_callback(
 }
 
 
-/* USB host operations -----------------------------------------------------------*/
+/* USB host operations ----------------------------------------------------------- */
 static struct uhcd_ops nu_uhcd_ops =
 {
     nu_reset_port,
@@ -756,10 +759,10 @@ static rt_err_t nu_hcd_init(rt_device_t device)
 
     usbh_core_init();
 
-    //install connect/disconnect callback
+    /* install connect/disconnect callback */
     usbh_install_conn_callback(nu_hcd_connect_callback, nu_hcd_disconnect_callback);
 
-    //create thread for polling usbh port status
+    /* create thread for polling usbh port status */
     /* create usb hub thread */
     pNuUSBHDev->polling_thread = rt_thread_create("usbh_drv", nu_usbh_rh_thread_entry, RT_NULL,
                                  NU_USBH_THREAD_STACK_SIZE, 8, 20);
@@ -771,7 +774,7 @@ static rt_err_t nu_hcd_init(rt_device_t device)
     return RT_EOK;
 }
 
-/* global function for USB host library -----------------------------*/
+/* global function for USB host library ----------------------------- */
 uint32_t usbh_get_ticks(void)
 {
     return rt_tick_get();
@@ -790,7 +793,7 @@ uint32_t usbh_tick_from_millisecond(uint32_t msec)
 #if defined(RT_USING_PM)
 
 /* device pm suspend() entry. */
-static int usbhost_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t usbhost_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
 {
     rt_err_t result;
 
@@ -890,7 +893,7 @@ int nu_usbh_register(void)
     res = rt_device_register(&psUHCD->parent, "usbh", RT_DEVICE_FLAG_DEACTIVATE);
     RT_ASSERT(res == RT_EOK);
 
-    /*initialize the usb host function */
+    /* initialize the usb host function */
     res = rt_usb_host_init("usbh");
     RT_ASSERT(res == RT_EOK);
 

+ 4 - 4
bsp/nuvoton/libraries/m480/rtt_port/drv_wdt.c

@@ -98,9 +98,9 @@ static void soft_time_setup(uint32_t wanted_sec, uint32_t hz, soft_time_handle_t
 static void soft_time_feed_dog(soft_time_handle_t *const soft_time);
 
 #if defined(RT_USING_PM)
-    static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
+    static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode);
     static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode);
-    static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
+    static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode);
     static void soft_time_freqeucy_change(uint32_t new_hz, soft_time_handle_t *const soft_time);
 #endif
 
@@ -129,7 +129,7 @@ static struct rt_device_pm_ops device_pm_ops =
 #if defined(RT_USING_PM)
 
 /* device pm suspend() entry. */
-static int wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_suspend(const struct rt_device *device, rt_uint8_t mode)
 {
     switch (mode)
     {
@@ -181,7 +181,7 @@ static void wdt_pm_resume(const struct rt_device *device, rt_uint8_t mode)
 
 
 /* device pm frequency_change() entry. */
-static int wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
+static rt_err_t wdt_pm_frequency_change(const struct rt_device *device, rt_uint8_t mode)
 {
     uint32_t clk, new_hz;
 

+ 23 - 23
bsp/nuvoton/libraries/ma35/rtt_port/drv_adc.c

@@ -59,8 +59,8 @@ typedef struct nu_adc_touch_data *nu_adc_touch_data_t;
 #endif
 
 /* Private functions ------------------------------------------------------------*/
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled);
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
 static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args);
 
 /* Public functions ------------------------------------------------------------*/
@@ -86,7 +86,7 @@ static void nu_adc_isr(int vector, void *param)
     rt_int32_t irqidx;
     ADC_T  *adc = psNuAdc->base;
 
-    //rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR);
+    /* rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR); */
 
     isr = adc->ISR;
     wkisr = adc->WKISR;
@@ -99,13 +99,13 @@ static void nu_adc_isr(int vector, void *param)
 
         if (psNuAdc->m_isr[irqidx].cbfunc != RT_NULL)
         {
-            // rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc);
+            /* rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc); */
             psNuAdc->m_isr[irqidx].cbfunc(isr, psNuAdc->m_isr[irqidx].private_data);
         }
 
         /* Clear sent bit */
         isr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 
     while ((irqidx = nu_ctz(wkisr)) < eAdc_WKISR_CNT)
     {
@@ -117,7 +117,7 @@ static void nu_adc_isr(int vector, void *param)
         }
 
         wkisr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 }
 
 static rt_err_t _nu_adc_init(rt_device_t dev)
@@ -125,7 +125,7 @@ static rt_err_t _nu_adc_init(rt_device_t dev)
     nu_adc_t psNuAdc = (nu_adc_t)dev;
 
     /* ADC Engine Clock is set to freq Khz */
-    CLK_SetModuleClock(psNuAdc->modid, 0, CLK_CLKDIV4_ADC(180));  // Set ADC clock rate to 9MHz
+    CLK_SetModuleClock(psNuAdc->modid, 0, CLK_CLKDIV4_ADC(180));  /* Set ADC clock rate to 9MHz */
 
     /* Install interrupt service routine */
     rt_hw_interrupt_install(psNuAdc->irqn, nu_adc_isr, (void *)psNuAdc, psNuAdc->name);
@@ -152,7 +152,7 @@ static int32_t AdcMenuStartCallback(uint32_t status, uint32_t userData)
         point.u32Z0 = ADC_GET_CONVERSION_Z1DATA(adc);
         point.u32Z1 = ADC_GET_CONVERSION_Z2DATA(adc);
 
-        //rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1);
+        /* rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1); */
         /* Trigger next or not. */
         if (point.u32Z0 < ADC_TOUCH_Z0_ACTIVE)
         {
@@ -198,7 +198,7 @@ static void nu_adc_touch_antiglitch(ADC_T  *adc)
     int count = 10;
     do
     {
-        rt_hw_us_delay(1000); // 1ms
+        rt_hw_us_delay(1000); /* 1ms */
         ADC_CLR_INT_FLAG(adc, adc->ISR);
         if (adc->ISR == 0)
             break;
@@ -277,10 +277,10 @@ rt_err_t nu_adc_touch_enable(rt_touch_t psRtTouch)
 
     adc->CONF = 0x0;
 
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 4);  //Channel number 4
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 5);  //Channel number 5
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 6);  //Channel number 6
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 7);  //Channel number 7
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 4);  /* Channel number 4 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 5);  /* Channel number 5 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 6);  /* Channel number 6 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 7);  /* Channel number 7 */
 
     /* Register touch device. */
     psNuAdc->psRtTouch = psRtTouch;
@@ -305,10 +305,10 @@ rt_err_t nu_adc_touch_disable(void)
     _nu_adc_control((rt_device_t)psNuAdc, Z_OFF, RT_NULL);
     _nu_adc_control((rt_device_t)psNuAdc, PEDEF_OFF, RT_NULL);
 
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  //Channel number 4
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  //Channel number 5
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  //Channel number 6
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  //Channel number 7
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  /* Channel number 4 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  /* Channel number 5 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  /* Channel number 6 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  /* Channel number 7 */
 
     return RT_EOK;
 }
@@ -364,7 +364,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL |= ADC_CTL_WKTEN_Msk;
         adc->IER |= ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26)); */
     }
     break;
 
@@ -373,7 +373,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL &= ~ADC_CTL_WKTEN_Msk;
         adc->IER &= ~ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26)); */
     }
     break;
 
@@ -524,7 +524,7 @@ static const struct rt_adc_ops nu_adc_ops =
 };
 
 /* nu_adc_enabled - Enable ADC clock and wait for ready */
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled)
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled)
 {
     nu_adc_t psNuADC = (nu_adc_t)device;
     RT_ASSERT(device);
@@ -554,7 +554,7 @@ static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel
     return RT_EOK;
 }
 
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value)
 {
     rt_err_t ret = RT_EOK;
 
@@ -566,7 +566,7 @@ static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel
         ret = -RT_EINVAL;
         goto exit_nu_adc_convert;
     }
-    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)channel)) != RT_EOK)
+    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)(intptr_t)channel)) != RT_EOK)
     {
         goto exit_nu_adc_convert;
     }
@@ -612,4 +612,4 @@ int rt_hw_adc_init(void)
 }
 INIT_BOARD_EXPORT(rt_hw_adc_init);
 
-#endif //#if defined(BSP_USING_ADC)
+#endif /* #if defined(BSP_USING_ADC) */

+ 10 - 11
bsp/nuvoton/libraries/ma35/rtt_port/drv_eadc.c

@@ -16,7 +16,7 @@
 #include <rtdevice.h>
 #include "NuMicro.h"
 
-/* Private define ---------------------------------------------------------------*/
+/* Private define --------------------------------------------------------------- */
 #define DEF_EADC_MAX_CHANNEL_NUM     8
 
 enum
@@ -28,7 +28,7 @@ enum
     EADC_CNT
 };
 
-/* Private Typedef --------------------------------------------------------------*/
+/* Private Typedef -------------------------------------------------------------- */
 struct nu_eadc
 {
     struct rt_adc_device parent;
@@ -40,15 +40,14 @@ struct nu_eadc
 };
 typedef struct nu_eadc *nu_eadc_t;
 
-/* Private functions ------------------------------------------------------------*/
-static rt_err_t nu_eadc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled);
-static rt_err_t nu_get_eadc_value(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
-static rt_err_t nu_get_eadc_value(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
+/* Private functions ------------------------------------------------------------ */
+static rt_err_t nu_eadc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
+static rt_err_t nu_get_eadc_value(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
 
-/* Public functions ------------------------------------------------------------*/
+/* Public functions ------------------------------------------------------------ */
 int rt_hw_eadc_init(void);
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 
 static struct nu_eadc nu_eadc_arr [] =
 {
@@ -66,7 +65,7 @@ typedef struct rt_adc_ops *rt_adc_ops_t;
 
 
 /* nu_adc_enabled - Enable ADC clock and wait for ready */
-static rt_err_t nu_eadc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled)
+static rt_err_t nu_eadc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled)
 {
     nu_eadc_t psNuEadc = (nu_eadc_t)device;
     RT_ASSERT(device != RT_NULL);
@@ -97,7 +96,7 @@ static rt_err_t nu_eadc_enabled(struct rt_adc_device *device, rt_uint32_t channe
     return RT_EOK;
 }
 
-static rt_err_t nu_get_eadc_value(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
+static rt_err_t nu_get_eadc_value(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value)
 {
     nu_eadc_t psNuEadc = (nu_eadc_t)device;
 
@@ -151,4 +150,4 @@ int rt_hw_eadc_init(void)
 }
 INIT_BOARD_EXPORT(rt_hw_eadc_init);
 
-#endif //#if defined(BSP_USING_EADC)
+#endif /* #if defined(BSP_USING_EADC) */

+ 8 - 8
bsp/nuvoton/libraries/ma35/rtt_port/drv_i2c.c

@@ -19,7 +19,7 @@
 #include <drv_i2c.h>
 #include <drv_sys.h>
 
-/* Private define ---------------------------------------------------------------*/
+/* Private define --------------------------------------------------------------- */
 #define LOG_TAG    "drv.i2c"
 #define DBG_ENABLE
 #define DBG_SECTION_NAME   LOG_TAG
@@ -51,7 +51,7 @@ enum
     I2C_CNT
 };
 
-/* Private typedef --------------------------------------------------------------*/
+/* Private typedef -------------------------------------------------------------- */
 typedef struct _nu_i2c_bus
 {
     struct rt_i2c_bus_device parent;
@@ -60,7 +60,7 @@ typedef struct _nu_i2c_bus
     char *device_name;
 } nu_i2c_bus_t;
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 
 
 static nu_i2c_bus_t nu_i2c_arr [ ] =
@@ -97,7 +97,7 @@ static nu_i2c_bus_t nu_i2c_arr [ ] =
 #endif
 };
 
-/* Private functions ------------------------------------------------------------*/
+/* Private functions ------------------------------------------------------------ */
 #if defined(BSP_USING_I2C)
 static rt_ssize_t nu_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
                                  struct rt_i2c_msg msgs[],
@@ -120,7 +120,7 @@ static rt_err_t nu_i2c_bus_control(struct rt_i2c_bus_device *bus, int u32Cmd, vo
     RT_ASSERT(bus != RT_NULL);
     nu_i2c = (nu_i2c_bus_t *) bus;
 
-    switch (cmd)
+    switch (u32Cmd)
     {
     case RT_I2C_DEV_CTRL_CLK:
         I2C_SetBusClockFreq(nu_i2c->I2C, *(rt_uint32_t *)args);
@@ -204,7 +204,7 @@ static rt_err_t nu_i2c_send_address(nu_i2c_bus_t *nu_i2c,
 
             if ((I2C_GET_STATUS(nu_i2c->I2C) != NU_I2C_MASTER_STATUS_REPEAT_START) && !ignore_nack)
             {
-                //LOG_E("sending repeated START failed\n");
+                /* LOG_E("sending repeated START failed\n"); */
 
                 return -RT_EIO;
             }
@@ -294,7 +294,7 @@ static rt_ssize_t nu_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
                 if (I2C_GET_STATUS(nu_i2c->I2C) != NU_I2C_MASTER_STATUS_REPEAT_START)
                 {
                     i = 0;
-                    //LOG_E("Send repeat START Fail");
+                    /* LOG_E("Send repeat START Fail"); */
                     break;
                 }
             }
@@ -382,7 +382,7 @@ static rt_ssize_t nu_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
 }
 #endif
 
-/* Public functions -------------------------------------------------------------*/
+/* Public functions ------------------------------------------------------------- */
 int rt_hw_i2c_init(void)
 {
     int i;

+ 27 - 0
bsp/nuvoton/libraries/ma35/rtt_port/drv_log.h

@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2006-2024 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2022-03-21     shelton      first version
+ */
+
+/*
+ * NOTE: DO NOT include this file on the header file.
+ */
+
+#ifndef LOG_TAG
+#define DBG_TAG                         "drv"
+#else
+#define DBG_TAG                         LOG_TAG
+#endif /* LOG_TAG */
+
+#ifdef DRV_DEBUG
+#define DBG_LVL                         DBG_LOG
+#else
+#define DBG_LVL                         DBG_INFO
+#endif /* DRV_DEBUG */
+
+#include <rtdbg.h>

+ 22 - 22
bsp/nuvoton/libraries/n9h30/rtt_port/drv_adc.c

@@ -19,11 +19,11 @@
 #include "nu_bitutil.h"
 #include "drv_adc.h"
 
-/* Private define ---------------------------------------------------------------*/
+/* Private define --------------------------------------------------------------- */
 #define DEF_ADC_TOUCH_SMPL_TICK  40
 #define TOUCH_MQ_LENGTH      64
 
-/* Private Typedef --------------------------------------------------------------*/
+/* Private Typedef -------------------------------------------------------------- */
 struct nu_adc
 {
     struct rt_adc_device dev;
@@ -58,15 +58,15 @@ struct nu_adc_touch_data
 typedef struct nu_adc_touch_data *nu_adc_touch_data_t;
 #endif
 
-/* Private functions ------------------------------------------------------------*/
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled);
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
+/* Private functions ------------------------------------------------------------ */
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
 static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args);
 
-/* Public functions ------------------------------------------------------------*/
+/* Public functions ------------------------------------------------------------ */
 int rt_hw_adc_init(void);
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 
 static struct nu_adc g_sNuADC =
 {
@@ -86,7 +86,7 @@ static void nu_adc_isr(int vector, void *param)
     rt_int32_t irqidx;
     ADC_T  *adc = psNuAdc->base;
 
-    //rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR);
+    /* rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR); */
 
     isr = adc->ISR;
     wkisr = adc->WKISR;
@@ -99,13 +99,13 @@ static void nu_adc_isr(int vector, void *param)
 
         if (psNuAdc->m_isr[irqidx].cbfunc != RT_NULL)
         {
-            // rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc);
+            /* rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc); */
             psNuAdc->m_isr[irqidx].cbfunc(isr, psNuAdc->m_isr[irqidx].private_data);
         }
 
         /* Clear sent bit */
         isr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 
     while ((irqidx = nu_ctz(wkisr)) < eAdc_WKISR_CNT)
     {
@@ -117,7 +117,7 @@ static void nu_adc_isr(int vector, void *param)
         }
 
         wkisr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 }
 
 
@@ -155,7 +155,7 @@ static int32_t AdcMenuStartCallback(uint32_t status, uint32_t userData)
         point.u32Z0 = ADC_GET_CONVERSION_Z1DATA(adc);
         point.u32Z1 = ADC_GET_CONVERSION_Z2DATA(adc);
 
-        //rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1);
+        /* rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1); */
         /* Trigger next or not. */
         if (point.u32Z0 < ADC_TOUCH_Z0_ACTIVE)
         {
@@ -306,10 +306,10 @@ rt_err_t nu_adc_touch_disable(void)
     _nu_adc_control((rt_device_t)psNuAdc, Z_OFF, RT_NULL);
     _nu_adc_control((rt_device_t)psNuAdc, PEDEF_OFF, RT_NULL);
 
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  //Channel number 4
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  //Channel number 5
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  //Channel number 6
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  //Channel number 7
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  /* Channel number 4 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  /* Channel number 5 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  /* Channel number 6 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  /* Channel number 7 */
 
     return RT_EOK;
 }
@@ -365,7 +365,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL |= ADC_CTL_WKTEN_Msk;
         adc->IER |= ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26)); */
     }
     break;
 
@@ -374,7 +374,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL &= ~ADC_CTL_WKTEN_Msk;
         adc->IER &= ~ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26)); */
     }
     break;
 
@@ -525,7 +525,7 @@ static const struct rt_adc_ops nu_adc_ops =
 };
 
 /* nu_adc_enabled - Enable ADC clock and wait for ready */
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled)
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled)
 {
     nu_adc_t psNuADC = (nu_adc_t)device;
     RT_ASSERT(device);
@@ -555,7 +555,7 @@ static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel
     return RT_EOK;
 }
 
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value)
 {
     rt_err_t ret = RT_EOK;
 
@@ -567,7 +567,7 @@ static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel
         ret = -RT_EINVAL;
         goto exit_nu_adc_convert;
     }
-    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)channel)) != RT_EOK)
+    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)(intptr_t)channel)) != RT_EOK)
     {
         goto exit_nu_adc_convert;
     }
@@ -613,4 +613,4 @@ int rt_hw_adc_init(void)
 }
 INIT_BOARD_EXPORT(rt_hw_adc_init);
 
-#endif //#if defined(BSP_USING_ADC)
+#endif /* #if defined(BSP_USING_ADC) */

+ 27 - 0
bsp/nuvoton/libraries/n9h30/rtt_port/drv_log.h

@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2006-2024 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2022-03-21     shelton      first version
+ */
+
+/*
+ * NOTE: DO NOT include this file on the header file.
+ */
+
+#ifndef LOG_TAG
+#define DBG_TAG                         "drv"
+#else
+#define DBG_TAG                         LOG_TAG
+#endif /* LOG_TAG */
+
+#ifdef DRV_DEBUG
+#define DBG_LVL                         DBG_LOG
+#else
+#define DBG_LVL                         DBG_INFO
+#endif /* DRV_DEBUG */
+
+#include <rtdbg.h>

+ 27 - 27
bsp/nuvoton/libraries/nuc980/rtt_port/drv_adc.c

@@ -19,11 +19,11 @@
 #include "nu_bitutil.h"
 #include "drv_adc.h"
 
-/* Private define ---------------------------------------------------------------*/
+/* Private define --------------------------------------------------------------- */
 #define DEF_ADC_TOUCH_SMPL_TICK  40
 #define TOUCH_MQ_LENGTH      64
 
-/* Private Typedef --------------------------------------------------------------*/
+/* Private Typedef -------------------------------------------------------------- */
 struct nu_adc
 {
     struct rt_adc_device dev;
@@ -58,15 +58,15 @@ struct nu_adc_touch_data
 typedef struct nu_adc_touch_data *nu_adc_touch_data_t;
 #endif
 
-/* Private functions ------------------------------------------------------------*/
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled);
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value);
+/* Private functions ------------------------------------------------------------ */
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
 static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args);
 
-/* Public functions ------------------------------------------------------------*/
+/* Public functions ------------------------------------------------------------ */
 int rt_hw_adc_init(void);
 
-/* Private variables ------------------------------------------------------------*/
+/* Private variables ------------------------------------------------------------ */
 
 static struct nu_adc g_sNuADC =
 {
@@ -86,7 +86,7 @@ static void nu_adc_isr(int vector, void *param)
     rt_int32_t irqidx;
     ADC_T  *adc = psNuAdc->base;
 
-    //rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR);
+    /* rt_kprintf("[%s %d] CTL: %08x CONF:%08x IER:%08x ISR:%08x\n", __func__, __LINE__, adc->CTL, adc->CONF, adc->IER, adc->ISR); */
 
     isr = adc->ISR;
     wkisr = adc->WKISR;
@@ -99,13 +99,13 @@ static void nu_adc_isr(int vector, void *param)
 
         if (psNuAdc->m_isr[irqidx].cbfunc != RT_NULL)
         {
-            // rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc);
+            /* rt_kprintf("[%s] %d %x\n", __func__, irqidx, psNuAdc->m_isr[irqidx].cbfunc); */
             psNuAdc->m_isr[irqidx].cbfunc(isr, psNuAdc->m_isr[irqidx].private_data);
         }
 
         /* Clear sent bit */
         isr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 
     while ((irqidx = nu_ctz(wkisr)) < eAdc_WKISR_CNT)
     {
@@ -117,7 +117,7 @@ static void nu_adc_isr(int vector, void *param)
         }
 
         wkisr &= ~(u32IsrBitMask);
-    } //while
+    } /* while */
 }
 
 
@@ -155,7 +155,7 @@ static int32_t AdcMenuStartCallback(uint32_t status, uint32_t userData)
         point.u32Z0 = ADC_GET_CONVERSION_Z1DATA(adc);
         point.u32Z1 = ADC_GET_CONVERSION_Z2DATA(adc);
 
-        //rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1);
+        /* rt_kprintf("x=%d y=%d z0=%d z1=%d\n", point.u32X, point.u32Y, point.u32Z0, point.u32Z1); */
         /* Trigger next or not. */
         if (point.u32Z0 < ADC_TOUCH_Z0_ACTIVE)
         {
@@ -199,7 +199,7 @@ static void nu_adc_touch_antiglitch(ADC_T  *adc)
     int count = 10;
     do
     {
-        rt_hw_us_delay(1000); // 1ms
+        rt_hw_us_delay(1000); /* 1ms */
         ADC_CLR_INT_FLAG(adc, adc->ISR);
         if (adc->ISR == 0)
             break;
@@ -278,10 +278,10 @@ rt_err_t nu_adc_touch_enable(rt_touch_t psRtTouch)
 
     adc->CONF = 0x0;
 
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 4);  //Channel number 4
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 5);  //Channel number 5
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 6);  //Channel number 6
-    rt_adc_enable((rt_adc_device_t)psNuAdc, 7);  //Channel number 7
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 4);  /* Channel number 4 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 5);  /* Channel number 5 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 6);  /* Channel number 6 */
+    rt_adc_enable((rt_adc_device_t)psNuAdc, 7);  /* Channel number 7 */
 
     /* Register touch device. */
     psNuAdc->psRtTouch = psRtTouch;
@@ -306,10 +306,10 @@ rt_err_t nu_adc_touch_disable(void)
     _nu_adc_control((rt_device_t)psNuAdc, Z_OFF, RT_NULL);
     _nu_adc_control((rt_device_t)psNuAdc, PEDEF_OFF, RT_NULL);
 
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  //Channel number 4
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  //Channel number 5
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  //Channel number 6
-    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  //Channel number 7
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 4);  /* Channel number 4 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 5);  /* Channel number 5 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 6);  /* Channel number 6 */
+    rt_adc_disable((rt_adc_device_t)psNuAdc, 7);  /* Channel number 7 */
 
     return RT_EOK;
 }
@@ -365,7 +365,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL |= ADC_CTL_WKTEN_Msk;
         adc->IER |= ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) | (1 << 26)); */
     }
     break;
 
@@ -374,7 +374,7 @@ static rt_err_t _nu_adc_control(rt_device_t dev, int cmd, void *args)
         adc->CTL &= ~ADC_CTL_WKTEN_Msk;
         adc->IER &= ~ADC_IER_WKTIEN_Msk;
 
-        //TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26));
+        /* TODO outpw(REG_SYS_WKUPSER, inpw(REG_SYS_WKUPSER) & ~(1 << 26)); */
     }
     break;
 
@@ -525,7 +525,7 @@ static const struct rt_adc_ops nu_adc_ops =
 };
 
 /* nu_adc_enabled - Enable ADC clock and wait for ready */
-static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled)
+static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled)
 {
     nu_adc_t psNuADC = (nu_adc_t)device;
     RT_ASSERT(device);
@@ -555,7 +555,7 @@ static rt_err_t nu_adc_enabled(struct rt_adc_device *device, rt_uint32_t channel
     return RT_EOK;
 }
 
-static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
+static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value)
 {
     rt_err_t ret = RT_EOK;
 
@@ -567,7 +567,7 @@ static rt_err_t nu_adc_convert(struct rt_adc_device *device, rt_uint32_t channel
         ret = -RT_EINVAL;
         goto exit_nu_adc_convert;
     }
-    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)channel)) != RT_EOK)
+    else if ((ret = _nu_adc_control((rt_device_t)device, SWITCH_CH, (void *)(intptr_t)channel)) != RT_EOK)
     {
         goto exit_nu_adc_convert;
     }
@@ -613,4 +613,4 @@ int rt_hw_adc_init(void)
 }
 INIT_BOARD_EXPORT(rt_hw_adc_init);
 
-#endif //#if defined(BSP_USING_ADC)
+#endif /* #if defined(BSP_USING_ADC) */

+ 27 - 0
bsp/nuvoton/libraries/nuc980/rtt_port/drv_log.h

@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2006-2024 RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2022-03-21     shelton      first version
+ */
+
+/*
+ * NOTE: DO NOT include this file on the header file.
+ */
+
+#ifndef LOG_TAG
+#define DBG_TAG                         "drv"
+#else
+#define DBG_TAG                         LOG_TAG
+#endif /* LOG_TAG */
+
+#ifdef DRV_DEBUG
+#define DBG_LVL                         DBG_LOG
+#else
+#define DBG_LVL                         DBG_INFO
+#endif /* DRV_DEBUG */
+
+#include <rtdbg.h>

+ 157 - 24
bsp/nuvoton/ma35-rtp/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 CONFIG_USE_MA35D1_SUBM=y
 
 #
@@ -20,7 +16,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -30,18 +25,29 @@ CONFIG_IDLE_THREAD_STACK_SIZE=2048
 CONFIG_RT_USING_TIMER_SOFT=y
 CONFIG_RT_TIMER_THREAD_PRIO=4
 CONFIG_RT_TIMER_THREAD_STACK_SIZE=2048
+# CONFIG_RT_USING_TIMER_ALL_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -53,6 +59,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 # CONFIG_RT_USING_SIGNALS is not set
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -69,6 +76,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -77,13 +86,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart16"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
@@ -118,12 +126,15 @@ CONFIG_FINSH_USING_OPTION_COMPLETION=y
 # DFS: device virtual file system
 #
 # CONFIG_RT_USING_DFS is not set
+# end of DFS: device virtual file system
+
 # CONFIG_RT_USING_FAL is not set
 
 #
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 # CONFIG_RT_USING_SYSTEM_WORKQUEUE is not set
@@ -142,6 +153,8 @@ CONFIG_RT_SERIAL_RB_BUFSZ=256
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 # CONFIG_RT_USING_PWM is not set
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 # CONFIG_RT_USING_PM is not set
@@ -154,21 +167,13 @@ CONFIG_RT_SERIAL_RB_BUFSZ=256
 # CONFIG_RT_USING_TOUCH is not set
 # CONFIG_RT_USING_LCD is not set
 # CONFIG_RT_USING_HWCRYPTO is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 # CONFIG_RT_USING_HWTIMER is not set
-
-#
-# Using USB
-#
-# CONFIG_RT_USING_USB is not set
-# CONFIG_RT_USING_USB_HOST is not set
-# CONFIG_RT_USING_USB_DEVICE is not set
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -186,6 +191,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -207,7 +214,11 @@ CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -216,12 +227,14 @@ CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
 # CONFIG_RT_USING_NETDEV is not set
 # CONFIG_RT_USING_LWIP is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -249,6 +262,8 @@ CONFIG_ULOG_OUTPUT_TIME=y
 CONFIG_ULOG_OUTPUT_LEVEL=y
 CONFIG_ULOG_OUTPUT_TAG=y
 # CONFIG_ULOG_OUTPUT_THREAD_NAME is not set
+# end of log format
+
 CONFIG_ULOG_BACKEND_USING_CONSOLE=y
 # CONFIG_ULOG_BACKEND_USING_FILE is not set
 # CONFIG_ULOG_USING_FILTER is not set
@@ -260,8 +275,20 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+# CONFIG_RT_USING_USB_HOST is not set
+# CONFIG_RT_USING_USB_DEVICE is not set
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
@@ -271,6 +298,7 @@ CONFIG_RT_USING_UTESTCASES=y
 # Utest Self Testcase
 #
 CONFIG_UTEST_SELF_PASS_TC=y
+# end of Utest Self Testcase
 
 #
 # Kernel Testcase
@@ -285,31 +313,56 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_UTEST_MUTEX_TC is not set
 # CONFIG_UTEST_MAILBOX_TC is not set
 # CONFIG_UTEST_THREAD_TC is not set
+# CONFIG_UTEST_DEVICE_TC is not set
 # CONFIG_UTEST_ATOMIC_TC is not set
 # CONFIG_UTEST_HOOKLIST_TC is not set
 # CONFIG_UTEST_MTSAFE_KPRINT_TC is not set
 # CONFIG_UTEST_SCHEDULER_TC is not set
+# end of Kernel Testcase
 
 #
 # CPP11 Testcase
 #
 # CONFIG_UTEST_CPP11_THREAD_TC is not set
+# end of CPP11 Testcase
 
 #
 # Utest Serial Testcase
 #
 # CONFIG_UTEST_SERIAL_TC is not set
+# end of Utest Serial Testcase
+
+#
+# Utest IPC Testcase
+#
+# CONFIG_UTEST_COMPLETION_TC is not set
+# end of Utest IPC Testcase
 
 #
 # RTT Posix Testcase
 #
 # CONFIG_RTT_POSIX_TESTCASE is not set
+# end of RTT Posix Testcase
 
 #
 # Memory Management Subsytem Testcase
 #
 # CONFIG_UTEST_MM_API_TC is not set
 # CONFIG_UTEST_MM_LWP_TC is not set
+# end of Memory Management Subsytem Testcase
+
+#
+# Tmpfs Testcase
+#
+# CONFIG_UTEST_TMPFS_CP is not set
+# end of Tmpfs Testcase
+
+#
+# SMP Testcase
+#
+# CONFIG_UTEST_SMP_CALL_FUNC is not set
+# end of SMP Testcase
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -318,7 +371,6 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -331,6 +383,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -340,27 +393,35 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -383,6 +444,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -425,6 +488,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -435,6 +500,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -450,18 +516,22 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -473,12 +543,15 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -499,6 +572,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -548,6 +622,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -559,6 +634,9 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -566,6 +644,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -576,6 +655,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -586,6 +666,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -633,6 +715,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -645,9 +728,27 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -657,9 +758,12 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -729,6 +833,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -743,6 +848,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -815,6 +922,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -829,15 +937,18 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -846,6 +957,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -854,6 +966,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -870,6 +983,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -903,6 +1018,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -918,6 +1034,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1057,6 +1174,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1068,6 +1187,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1076,6 +1196,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1083,6 +1204,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1093,6 +1216,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1104,12 +1228,14 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1122,10 +1248,13 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1177,11 +1306,13 @@ CONFIG_BSP_USING_HWSEM0=y
 CONFIG_BSP_USING_WHC=y
 CONFIG_BSP_USING_WHC0=y
 # CONFIG_BSP_USING_EBI is not set
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
 #
 CONFIG_BSP_USING_NULINKME=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
@@ -1204,3 +1335,5 @@ CONFIG_NU_PKG_USING_DEMO=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 412 - 0
bsp/nuvoton/ma35-rtp/rtconfig.h

@@ -0,0 +1,412 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+#define USE_MA35D1_SUBM
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 2048
+#define RT_USING_TIMER_SOFT
+#define RT_TIMER_THREAD_PRIO 4
+#define RT_TIMER_THREAD_STACK_SIZE 2048
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart16"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M4
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+/* end of DFS: device virtual file system */
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_RB_BUFSZ 256
+#define RT_USING_PIN
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_ULOG
+#define ULOG_OUTPUT_LVL_D
+#define ULOG_OUTPUT_LVL 7
+#define ULOG_USING_ISR_LOG
+#define ULOG_ASSERT_ENABLE
+#define ULOG_LINE_BUF_SIZE 128
+
+/* log format */
+
+#define ULOG_USING_COLOR
+#define ULOG_OUTPUT_TIME
+#define ULOG_OUTPUT_LEVEL
+#define ULOG_OUTPUT_TAG
+/* end of log format */
+#define ULOG_BACKEND_USING_CONSOLE
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+#define RT_USING_UTESTCASES
+
+/* Utest Self Testcase */
+
+#define UTEST_SELF_PASS_TC
+/* end of Utest Self Testcase */
+
+/* Kernel Testcase */
+
+#define UTEST_SMALL_MEM_TC
+/* end of Kernel Testcase */
+
+/* CPP11 Testcase */
+
+/* end of CPP11 Testcase */
+
+/* Utest Serial Testcase */
+
+/* end of Utest Serial Testcase */
+
+/* Utest IPC Testcase */
+
+/* end of Utest IPC Testcase */
+
+/* RTT Posix Testcase */
+
+/* end of RTT Posix Testcase */
+
+/* Memory Management Subsytem Testcase */
+
+/* end of Memory Management Subsytem Testcase */
+
+/* Tmpfs Testcase */
+
+/* end of Tmpfs Testcase */
+
+/* SMP Testcase */
+
+/* end of SMP Testcase */
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_MA35D1
+#define BSP_USING_PDMA
+#define BSP_USING_PDMA2
+#define BSP_USING_PDMA3
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define BSP_USING_GPIO
+#define BSP_USING_UART
+#define BSP_USING_UART16
+#define BSP_USING_HWSEM
+#define BSP_USING_HWSEM0
+#define BSP_USING_WHC
+#define BSP_USING_WHC0
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 163 - 68
bsp/nuvoton/nk-980iot/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,19 +22,29 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=2048
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
 # CONFIG_RT_DEBUGING_PAGE_LEAK is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -51,6 +56,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -70,6 +76,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 CONFIG_RT_USING_MEMTRACE=y
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -78,14 +86,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_CACHE=y
-# CONFIG_RT_USING_HW_ATOMIC is not set
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
-# CONFIG_RT_USING_CPU_FFS is not set
 CONFIG_ARCH_MM_MMU=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_MMU=y
@@ -152,6 +158,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -159,12 +167,15 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 # CONFIG_RT_USING_FAL is not set
 
 #
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -192,6 +203,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 CONFIG_RT_USING_MTD_NAND=y
 CONFIG_RT_MTD_NAND_DEBUG=y
@@ -239,43 +252,13 @@ CONFIG_RT_HWCRYPTO_USING_SHA2_512=y
 CONFIG_RT_HWCRYPTO_USING_RNG=y
 # CONFIG_RT_HWCRYPTO_USING_CRC is not set
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-CONFIG_RT_USB_DEVICE_COMPOSITE=y
-CONFIG_RT_USB_DEVICE_CDC=y
-CONFIG_RT_USB_DEVICE_NONE=y
-CONFIG_RT_USB_DEVICE_MSTORAGE=y
-# CONFIG_RT_USB_DEVICE_HID is not set
-# CONFIG_RT_USB_DEVICE_RNDIS is not set
-# CONFIG_RT_USB_DEVICE_ECM is not set
-# CONFIG_RT_USB_DEVICE_WINUSB is not set
-# CONFIG_RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_VCOM_TASK_STK_SIZE=2048
-CONFIG_RT_CDC_RX_BUFSIZE=128
-# CONFIG_RT_VCOM_TX_USE_DMA is not set
-CONFIG_RT_VCOM_SERNO="32021919830108"
-CONFIG_RT_VCOM_SER_LEN=14
-CONFIG_RT_VCOM_TX_TIMEOUT=1000
-CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -293,6 +276,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -324,7 +309,11 @@ CONFIG_RT_USING_POSIX_SOCKET=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -338,16 +327,18 @@ CONFIG_RT_USING_SAL=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -371,6 +362,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -408,12 +401,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -431,12 +426,48 @@ CONFIG_RT_USING_ADT_BITMAP=y
 CONFIG_RT_USING_ADT_HASHMAP=y
 CONFIG_RT_USING_ADT_REF=y
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+CONFIG_RT_USB_DEVICE_COMPOSITE=y
+CONFIG_RT_USB_DEVICE_CDC=y
+CONFIG_RT_USB_DEVICE_NONE=y
+CONFIG_RT_USB_DEVICE_MSTORAGE=y
+# CONFIG_RT_USB_DEVICE_HID is not set
+# CONFIG_RT_USB_DEVICE_RNDIS is not set
+# CONFIG_RT_USB_DEVICE_ECM is not set
+# CONFIG_RT_USB_DEVICE_WINUSB is not set
+# CONFIG_RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_VCOM_TASK_STK_SIZE=2048
+CONFIG_RT_CDC_RX_BUFSIZE=128
+# CONFIG_RT_VCOM_TX_USE_DMA is not set
+CONFIG_RT_VCOM_SERNO="32021919830108"
+CONFIG_RT_VCOM_SER_LEN=14
+CONFIG_RT_VCOM_TX_TIMEOUT=1000
+CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -445,7 +476,6 @@ CONFIG_RT_USING_ADT_REF=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -458,6 +488,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -467,27 +498,35 @@ CONFIG_RT_USING_ADT_REF=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -510,6 +549,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -552,6 +593,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -562,6 +605,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -577,18 +621,22 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -600,24 +648,19 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
-CONFIG_PKG_USING_WAVPLAYER=y
-CONFIG_PKG_WAVPLAYER_PATH="/packages/multimedia/wavplayer"
-CONFIG_PKG_WP_USING_PLAY=y
-CONFIG_PKG_WP_PLAY_DEVICE="sound0"
-CONFIG_PKG_WP_USING_RECORD=y
-CONFIG_PKG_WP_RECORD_DEVICE="sound0"
-# CONFIG_PKG_USING_WAVPLAYER_V020 is not set
-CONFIG_PKG_USING_WAVPLAYER_LATEST_VERSION=y
-CONFIG_PKG_WAVPLAYER_VER="latest"
+# CONFIG_PKG_USING_WAVPLAYER is not set
 # CONFIG_PKG_USING_TJPGD is not set
 # CONFIG_PKG_USING_PDFGEN is not set
 # CONFIG_PKG_USING_HELIX is not set
@@ -634,6 +677,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -682,6 +726,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -693,6 +738,9 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -700,6 +748,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -710,6 +759,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -720,6 +770,8 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -743,11 +795,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -771,6 +819,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -783,9 +832,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -795,9 +862,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -867,6 +937,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -881,6 +952,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -953,6 +1026,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -967,15 +1041,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -984,6 +1061,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -992,6 +1070,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1007,13 +1086,10 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_DONUT is not set
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
-CONFIG_PKG_USING_OPTPARSE=y
-CONFIG_PKG_OPTPARSE_PATH="/packages/misc/optparse"
-# CONFIG_PKG_USING_OPTPARSE_V100 is not set
-CONFIG_PKG_USING_OPTPARSE_LATEST_VERSION=y
-CONFIG_PKG_OPTPARSE_VER="latest"
-# CONFIG_OPTPARSE_USING_DEMO is not set
+# CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
 # CONFIG_PKG_USING_MINILZO is not set
 # CONFIG_PKG_USING_QUICKLZ is not set
@@ -1045,6 +1121,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1060,6 +1137,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1199,6 +1277,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1210,6 +1290,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1218,6 +1299,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1225,6 +1307,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1235,6 +1319,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1246,12 +1331,14 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1264,10 +1351,13 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1359,6 +1449,7 @@ CONFIG_BSP_USING_WDT=y
 # CONFIG_BSP_USING_EBI is not set
 CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_USBH=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1371,6 +1462,7 @@ CONFIG_BOARD_USING_STORAGE_SDCARD=y
 CONFIG_BOARD_USING_STORAGE_SPINAND=y
 CONFIG_BOARD_USING_USB0_DEVICE_HOST=y
 CONFIG_BOARD_USING_USB1_HOST=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
@@ -1378,6 +1470,7 @@ CONFIG_BOARD_USING_USB1_HOST=y
 # CONFIG_BOARD_USING_MAX31875 is not set
 # CONFIG_BOARD_USING_LCD_ILI9341 is not set
 # CONFIG_BOARD_USING_ESP8266 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1396,3 +1489,5 @@ CONFIG_NU_PKG_USING_NAU8822=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 CONFIG_NU_PKG_USING_SPINAND=y
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 564 - 0
bsp/nuvoton/nk-980iot/rtconfig.h

@@ -0,0 +1,564 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 16
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 2048
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_PAGE_MAX_ORDER 11
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_MEMHEAP
+#define RT_MEMHEAP_FAST_MODE
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_MEMTRACE
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_CACHE
+#define ARCH_MM_MMU
+#define ARCH_ARM
+#define ARCH_ARM_MMU
+#define ARCH_ARM_ARM9
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 20
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 64
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 16
+#define DFS_FILESYSTEM_TYPES_MAX 16
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 2048
+#define RT_USING_CAN
+#define RT_CAN_USING_HDR
+#define RT_USING_CPUTIME
+#define CPUTIME_TIMER_FREQ 0
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_MTD_NAND
+#define RT_MTD_NAND_DEBUG
+#define RT_USING_RTC
+#define RT_USING_ALARM
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 16
+#define RT_LWIP_PBUF_NUM 256
+#define RT_LWIP_RAW_PCB_NUM 16
+#define RT_LWIP_UDP_PCB_NUM 16
+#define RT_LWIP_TCP_PCB_NUM 16
+#define RT_LWIP_TCP_SEG_NUM 64
+#define RT_LWIP_TCP_SND_BUF 16384
+#define RT_LWIP_TCP_WND 65535
+#define RT_LWIP_TCPTHREAD_PRIORITY 21
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 256
+#define RT_LWIP_TCPTHREAD_STACKSIZE 4096
+#define LWIP_NO_TX_THREAD
+#define RT_LWIP_ETHTHREAD_PRIORITY 22
+#define RT_LWIP_ETHTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 256
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 1
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+#define RT_USING_ADT
+#define RT_USING_ADT_AVL
+#define RT_USING_ADT_BITMAP
+#define RT_USING_ADT_HASHMAP
+#define RT_USING_ADT_REF
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define RT_USB_DEVICE_COMPOSITE
+#define RT_USB_DEVICE_CDC
+#define RT_USB_DEVICE_NONE
+#define RT_USB_DEVICE_MSTORAGE
+#define RT_VCOM_TASK_STK_SIZE 2048
+#define RT_CDC_RX_BUFSIZE 128
+#define RT_VCOM_SERNO "32021919830108"
+#define RT_VCOM_SER_LEN 14
+#define RT_VCOM_TX_TIMEOUT 1000
+#define RT_USB_MSTORAGE_DISK_NAME "ramdisk1"
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_NUC980
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_MMU
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define BSP_USING_GPIO
+#define BSP_USING_EMAC
+#define BSP_USING_EMAC0
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_IO_RW
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_ADC
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TIMER1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2
+#define BSP_USING_TMR3
+#define BSP_USING_TIMER3
+#define BSP_USING_TMR4
+#define BSP_USING_TIMER4
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART1_TX_DMA
+#define BSP_USING_UART1_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C0
+#define BSP_USING_I2C2
+#define BSP_USING_SDH
+#define BSP_USING_SDH1
+#define NU_SDH_USING_PDMA
+#define NU_SDH_HOTPLUG
+#define BSP_USING_PWM
+#define BSP_USING_PWM0
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0
+#define BSP_USING_SPI0_PDMA
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_I2S
+#define NU_I2S_DMA_FIFO_SIZE 4096
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI_PDMA
+#define BSP_USING_QSPI0
+#define BSP_USING_QSPI0_PDMA
+#define BSP_USING_CRYPTO
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+#define BSP_USING_USBH
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_CONSOLE
+#define BOARD_USING_IP101GR
+#define BOARD_USING_NAU8822
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_SPINAND
+#define BOARD_USING_USB0_DEVICE_HOST
+#define BOARD_USING_USB1_HOST
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NAU8822
+#define NU_PKG_USING_SPINAND
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 163 - 79
bsp/nuvoton/nk-n9h30/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,19 +22,29 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=2048
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
 # CONFIG_RT_DEBUGING_PAGE_LEAK is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -51,6 +56,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -70,6 +76,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 CONFIG_RT_USING_MEMTRACE=y
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 CONFIG_RT_USING_INTERRUPT_INFO=y
@@ -78,14 +86,12 @@ CONFIG_RT_USING_INTERRUPT_INFO=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_CACHE=y
-# CONFIG_RT_USING_HW_ATOMIC is not set
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
-# CONFIG_RT_USING_CPU_FFS is not set
 CONFIG_ARCH_MM_MMU=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_MMU=y
@@ -152,6 +158,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -159,6 +167,8 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -170,6 +180,7 @@ CONFIG_FAL_USING_NOR_FLASH_DEV_NAME="norflash0"
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -196,6 +207,9 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+CONFIG_RT_USING_INPUT_CAPTURE=y
+CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
 # CONFIG_RT_USING_MTD_NOR is not set
 CONFIG_RT_USING_MTD_NAND=y
 # CONFIG_RT_MTD_NAND_DEBUG is not set
@@ -226,44 +240,13 @@ CONFIG_RT_USING_TOUCH=y
 # CONFIG_RT_TOUCH_PIN_IRQ is not set
 # CONFIG_RT_USING_LCD is not set
 # CONFIG_RT_USING_HWCRYPTO is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-CONFIG_RT_USING_INPUT_CAPTURE=y
-CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-CONFIG_RT_USB_DEVICE_COMPOSITE=y
-CONFIG_RT_USB_DEVICE_CDC=y
-CONFIG_RT_USB_DEVICE_NONE=y
-CONFIG_RT_USB_DEVICE_MSTORAGE=y
-# CONFIG_RT_USB_DEVICE_HID is not set
-# CONFIG_RT_USB_DEVICE_RNDIS is not set
-# CONFIG_RT_USB_DEVICE_ECM is not set
-# CONFIG_RT_USB_DEVICE_WINUSB is not set
-# CONFIG_RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_VCOM_TASK_STK_SIZE=512
-CONFIG_RT_CDC_RX_BUFSIZE=128
-# CONFIG_RT_VCOM_TX_USE_DMA is not set
-CONFIG_RT_VCOM_SERNO="32021919830108"
-CONFIG_RT_VCOM_SER_LEN=14
-CONFIG_RT_VCOM_TX_TIMEOUT=1000
-CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -281,6 +264,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -312,7 +297,11 @@ CONFIG_RT_USING_POSIX_SELECT=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -326,16 +315,18 @@ CONFIG_SAL_INTERNET_CHECK=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -359,6 +350,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.1.30"
 CONFIG_RT_LWIP_GWADDR="192.168.1.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -396,12 +389,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -419,12 +414,48 @@ CONFIG_RT_USING_ADT_BITMAP=y
 CONFIG_RT_USING_ADT_HASHMAP=y
 CONFIG_RT_USING_ADT_REF=y
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+CONFIG_RT_USB_DEVICE_COMPOSITE=y
+CONFIG_RT_USB_DEVICE_CDC=y
+CONFIG_RT_USB_DEVICE_NONE=y
+CONFIG_RT_USB_DEVICE_MSTORAGE=y
+# CONFIG_RT_USB_DEVICE_HID is not set
+# CONFIG_RT_USB_DEVICE_RNDIS is not set
+# CONFIG_RT_USB_DEVICE_ECM is not set
+# CONFIG_RT_USB_DEVICE_WINUSB is not set
+# CONFIG_RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_VCOM_TASK_STK_SIZE=512
+CONFIG_RT_CDC_RX_BUFSIZE=128
+# CONFIG_RT_VCOM_TX_USE_DMA is not set
+CONFIG_RT_VCOM_SERNO="32021919830108"
+CONFIG_RT_VCOM_SER_LEN=14
+CONFIG_RT_VCOM_TX_TIMEOUT=1000
+CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -433,7 +464,6 @@ CONFIG_RT_USING_ADT_REF=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -446,6 +476,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -455,27 +486,35 @@ CONFIG_RT_USING_ADT_REF=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -498,6 +537,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -540,6 +581,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -550,6 +593,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -565,18 +609,22 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -585,39 +633,18 @@ CONFIG_RT_USING_ADT_REF=y
 #
 # LVGL: powerful and easy-to-use embedded GUI library
 #
-CONFIG_PKG_USING_LVGL=y
-CONFIG_PKG_LVGL_PATH="/packages/multimedia/LVGL/LVGL"
-CONFIG_PKG_LVGL_THREAD_PRIO=20
-CONFIG_PKG_LVGL_THREAD_STACK_SIZE=4096
-CONFIG_PKG_LVGL_DISP_REFR_PERIOD=30
-# CONFIG_PKG_LVGL_USING_SQUARELINE is not set
-# CONFIG_PKG_LVGL_USING_EXAMPLES is not set
-CONFIG_PKG_LVGL_USING_DEMOS=y
-# CONFIG_PKG_LVGL_USING_V080311 is not set
-# CONFIG_PKG_LVGL_USING_V080310 is not set
-# CONFIG_PKG_LVGL_USING_V08039 is not set
-# CONFIG_PKG_LVGL_USING_V08038 is not set
-# CONFIG_PKG_LVGL_USING_V08037 is not set
-# CONFIG_PKG_LVGL_USING_V08036 is not set
-# CONFIG_PKG_LVGL_USING_V08035 is not set
-CONFIG_PKG_LVGL_USING_V08034=y
-# CONFIG_PKG_LVGL_USING_V08033 is not set
-# CONFIG_PKG_LVGL_USING_V08032 is not set
-# CONFIG_PKG_LVGL_USING_V08031 is not set
-# CONFIG_PKG_LVGL_USING_V08030 is not set
-# CONFIG_PKG_LVGL_USING_V08020 is not set
-# CONFIG_PKG_LVGL_USING_V8_3_LATEST_VERSION is not set
-# CONFIG_PKG_LVGL_USING_LATEST_VERSION is not set
-CONFIG_PKG_LVGL_VER_NUM=0x080304
-CONFIG_PKG_LVGL_VER="v8.3.4"
+# CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -638,6 +665,7 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -686,6 +714,7 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -697,6 +726,9 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -704,6 +736,7 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -714,6 +747,7 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -724,6 +758,8 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -747,11 +783,7 @@ CONFIG_PKG_LVGL_VER="v8.3.4"
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -775,6 +807,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -787,9 +820,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -799,9 +850,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -871,6 +925,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -885,6 +940,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -957,6 +1014,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -971,15 +1029,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -988,6 +1049,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -996,6 +1058,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1011,6 +1074,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_DONUT is not set
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -1044,6 +1109,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1059,6 +1125,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1198,6 +1265,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1209,6 +1278,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1217,6 +1287,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1224,6 +1295,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1234,6 +1307,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1245,12 +1319,14 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1263,10 +1339,13 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1361,6 +1440,7 @@ CONFIG_BSP_LCD_HEIGHT=480
 CONFIG_BSP_USING_VPOST_OSD=y
 CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_USBH=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1373,6 +1453,7 @@ CONFIG_BOARD_USING_STORAGE_SPIFLASH=y
 CONFIG_BOARD_USING_BUZZER=y
 CONFIG_BOARD_USING_USB0_DEVICE_HOST=y
 CONFIG_BOARD_USING_USB1_HOST=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
@@ -1384,6 +1465,7 @@ CONFIG_BOARD_USING_LCM_FW070TFT_WVGA=y
 CONFIG_BOARD_USING_ADCTOUCH=y
 # CONFIG_BOARD_USING_GT911 is not set
 # CONFIG_BOARD_USING_FT5446 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1403,3 +1485,5 @@ CONFIG_NU_PKG_USING_NAU8822=y
 CONFIG_NU_PKG_USING_ADC_TOUCH=y
 # CONFIG_NU_PKG_USING_ADC_TOUCH_SW is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 560 - 0
bsp/nuvoton/nk-n9h30/rtconfig.h

@@ -0,0 +1,560 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 16
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 2048
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_PAGE_MAX_ORDER 11
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_MEMHEAP
+#define RT_MEMHEAP_FAST_MODE
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_MEMTRACE
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_INTERRUPT_INFO
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_CACHE
+#define ARCH_MM_MMU
+#define ARCH_ARM
+#define ARCH_ARM_MMU
+#define ARCH_ARM_ARM9
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 64
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 16
+#define DFS_FILESYSTEM_TYPES_MAX 16
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+#define FAL_USING_SFUD_PORT
+#define FAL_USING_NOR_FLASH_DEV_NAME "norflash0"
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_RB_BUFSZ 2048
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_INPUT_CAPTURE
+#define RT_INPUT_CAPTURE_RB_SIZE 100
+#define RT_USING_MTD_NAND
+#define RT_USING_RTC
+#define RT_USING_ALARM
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_USING_QSPI
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_TOUCH
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP203
+#define RT_USING_LWIP_VER_NUM 0x20003
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.1.30"
+#define RT_LWIP_GWADDR "192.168.1.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 32
+#define RT_LWIP_PBUF_NUM 256
+#define RT_LWIP_RAW_PCB_NUM 32
+#define RT_LWIP_UDP_PCB_NUM 32
+#define RT_LWIP_TCP_PCB_NUM 32
+#define RT_LWIP_TCP_SEG_NUM 256
+#define RT_LWIP_TCP_SND_BUF 32768
+#define RT_LWIP_TCP_WND 10240
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 32
+#define RT_LWIP_TCPTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 1024
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 32
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+#define RT_USING_ADT
+#define RT_USING_ADT_AVL
+#define RT_USING_ADT_BITMAP
+#define RT_USING_ADT_HASHMAP
+#define RT_USING_ADT_REF
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define RT_USB_DEVICE_COMPOSITE
+#define RT_USB_DEVICE_CDC
+#define RT_USB_DEVICE_NONE
+#define RT_USB_DEVICE_MSTORAGE
+#define RT_VCOM_TASK_STK_SIZE 512
+#define RT_CDC_RX_BUFSIZE 128
+#define RT_VCOM_SERNO "32021919830108"
+#define RT_VCOM_SER_LEN 14
+#define RT_VCOM_TX_TIMEOUT 1000
+#define RT_USB_MSTORAGE_DISK_NAME "ramdisk1"
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_N9H30
+#define BSP_USING_MMU
+#define BSP_USING_GPIO
+#define BSP_USING_EMAC
+#define BSP_USING_EMAC0
+#define BSP_USING_EMAC1
+#define BSP_USING_RTC
+#define BSP_USING_ADC
+#define BSP_USING_ADC_TOUCH
+#define BSP_USING_ETMR
+#define BSP_USING_ETIMER
+#define BSP_USING_ETIMER_CAPTURE
+#define BSP_USING_ETMR0
+#define BSP_USING_ETIMER0
+#define BSP_USING_ETMR1
+#define BSP_USING_ETIMER1
+#define BSP_USING_ETMR2
+#define BSP_USING_ETIMER2_CAPTURE
+#define BSP_USING_ETMR3
+#define BSP_USING_ETIMER3_CAPTURE
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TIMER0
+#define BSP_USING_TIMER1
+#define BSP_USING_TIMER2
+#define BSP_USING_TIMER3
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_I2C
+#define BSP_USING_I2C0
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_SDH1
+#define NU_SDH_HOTPLUG
+#define BSP_USING_CAN
+#define BSP_USING_CAN0
+#define BSP_USING_PWM
+#define BSP_USING_PWM0
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_QSPI1_NONE
+#define BSP_USING_I2S
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_WDT
+#define BSP_USING_EBI
+#define BSP_USING_VPOST
+#define LCM_USING_FW070TFT
+#define VPOST_USING_LCD_IDX 3
+#define BSP_LCD_BPP 32
+#define BSP_LCD_WIDTH 800
+#define BSP_LCD_HEIGHT 480
+#define BSP_USING_VPOST_OSD
+#define BSP_USING_USBD
+#define BSP_USING_USBH
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_CONSOLE
+#define BOARD_USING_IP101GR
+#define BOARD_USING_NAU8822
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_SPIFLASH
+#define BOARD_USING_BUZZER
+#define BOARD_USING_USB0_DEVICE_HOST
+#define BOARD_USING_USB1_HOST
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+#define BOARD_USING_LCM
+#define BOARD_USING_LCM_FW070TFT_WVGA
+#define BOARD_USING_ADCTOUCH
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_NAU8822
+#define NU_PKG_USING_ADC_TOUCH
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 162 - 59
bsp/nuvoton/nk-rtu980/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,19 +22,29 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=2048
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
 # CONFIG_RT_DEBUGING_PAGE_LEAK is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -51,6 +56,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -70,6 +76,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 CONFIG_RT_USING_MEMTRACE=y
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -78,14 +86,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_CACHE=y
-# CONFIG_RT_USING_HW_ATOMIC is not set
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
-# CONFIG_RT_USING_CPU_FFS is not set
 CONFIG_ARCH_MM_MMU=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_MMU=y
@@ -152,6 +158,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -159,6 +167,8 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -170,6 +180,7 @@ CONFIG_FAL_USING_NOR_FLASH_DEV_NAME="norflash0"
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -197,6 +208,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 # CONFIG_RT_USING_PWM is not set
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 # CONFIG_RT_USING_PM is not set
@@ -245,43 +258,13 @@ CONFIG_RT_HWCRYPTO_USING_SHA2_512=y
 CONFIG_RT_HWCRYPTO_USING_RNG=y
 # CONFIG_RT_HWCRYPTO_USING_CRC is not set
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-CONFIG_RT_USB_DEVICE_COMPOSITE=y
-CONFIG_RT_USB_DEVICE_CDC=y
-CONFIG_RT_USB_DEVICE_NONE=y
-CONFIG_RT_USB_DEVICE_MSTORAGE=y
-# CONFIG_RT_USB_DEVICE_HID is not set
-# CONFIG_RT_USB_DEVICE_RNDIS is not set
-# CONFIG_RT_USB_DEVICE_ECM is not set
-# CONFIG_RT_USB_DEVICE_WINUSB is not set
-# CONFIG_RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_VCOM_TASK_STK_SIZE=2048
-CONFIG_RT_CDC_RX_BUFSIZE=128
-# CONFIG_RT_VCOM_TX_USE_DMA is not set
-CONFIG_RT_VCOM_SERNO="32021919830108"
-CONFIG_RT_VCOM_SER_LEN=14
-CONFIG_RT_VCOM_TX_TIMEOUT=1000
-CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -299,6 +282,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -330,7 +315,11 @@ CONFIG_RT_USING_POSIX_SOCKET=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -344,16 +333,18 @@ CONFIG_RT_USING_SAL=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -377,6 +368,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -414,12 +407,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -437,12 +432,48 @@ CONFIG_RT_USING_ADT_BITMAP=y
 CONFIG_RT_USING_ADT_HASHMAP=y
 CONFIG_RT_USING_ADT_REF=y
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+CONFIG_RT_USB_DEVICE_COMPOSITE=y
+CONFIG_RT_USB_DEVICE_CDC=y
+CONFIG_RT_USB_DEVICE_NONE=y
+CONFIG_RT_USB_DEVICE_MSTORAGE=y
+# CONFIG_RT_USB_DEVICE_HID is not set
+# CONFIG_RT_USB_DEVICE_RNDIS is not set
+# CONFIG_RT_USB_DEVICE_ECM is not set
+# CONFIG_RT_USB_DEVICE_WINUSB is not set
+# CONFIG_RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_VCOM_TASK_STK_SIZE=2048
+CONFIG_RT_CDC_RX_BUFSIZE=128
+# CONFIG_RT_VCOM_TX_USE_DMA is not set
+CONFIG_RT_VCOM_SERNO="32021919830108"
+CONFIG_RT_VCOM_SER_LEN=14
+CONFIG_RT_VCOM_TX_TIMEOUT=1000
+CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -451,7 +482,6 @@ CONFIG_RT_USING_ADT_REF=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -464,6 +494,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -473,27 +504,35 @@ CONFIG_RT_USING_ADT_REF=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -516,6 +555,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -558,6 +599,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -568,6 +611,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -583,18 +627,22 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -606,12 +654,15 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -632,6 +683,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -680,6 +732,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -691,6 +744,9 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -698,6 +754,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -708,6 +765,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -718,6 +776,8 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -741,11 +801,7 @@ CONFIG_RT_USING_ADT_REF=y
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -769,6 +825,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -781,9 +838,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -793,9 +868,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -865,6 +943,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -879,6 +958,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -951,6 +1032,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -965,15 +1047,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -982,6 +1067,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -990,6 +1076,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1005,13 +1092,10 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_DONUT is not set
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
-CONFIG_PKG_USING_OPTPARSE=y
-CONFIG_PKG_OPTPARSE_PATH="/packages/misc/optparse"
-# CONFIG_PKG_USING_OPTPARSE_V100 is not set
-CONFIG_PKG_USING_OPTPARSE_LATEST_VERSION=y
-CONFIG_PKG_OPTPARSE_VER="latest"
-# CONFIG_OPTPARSE_USING_DEMO is not set
+# CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
 # CONFIG_PKG_USING_MINILZO is not set
 # CONFIG_PKG_USING_QUICKLZ is not set
@@ -1043,6 +1127,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1058,6 +1143,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1197,6 +1283,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1208,6 +1296,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1216,6 +1305,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1223,6 +1313,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1233,6 +1325,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1244,12 +1337,14 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1262,10 +1357,13 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1354,6 +1452,7 @@ CONFIG_BSP_USING_WDT=y
 # CONFIG_BSP_USING_EBI is not set
 CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_USBH=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1362,11 +1461,13 @@ CONFIG_BSP_USING_CONSOLE=y
 CONFIG_BOARD_USING_UART8_RS485=y
 CONFIG_BOARD_USING_STORAGE_SPIFLASH=y
 CONFIG_BOARD_USING_USB0_DEVICE_HOST=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 CONFIG_BOARD_USING_IP101GR=y
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1385,3 +1486,5 @@ CONFIG_NU_PKG_USING_DEMO=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 14 - 6
bsp/nuvoton/nk-rtu980/applications/mnt.c

@@ -53,11 +53,19 @@ unsigned long rwflag;
 const void   *data;
 */
 
-const struct dfs_mount_tbl mount_table[] =
-{
-    { RAMDISK_UDC, "/mnt/ram_usbd", "elm", 0, RT_NULL },
-    {0},
-};
+#if defined(PKG_USING_RAMDISK)
+    const struct dfs_mount_tbl mount_table[] =
+    {
+        { RAMDISK_UDC, "/mnt/ram_usbd", "elm", 0, RT_NULL },
+        {0},
+    };
+#else
+    const struct dfs_mount_tbl mount_table[] =
+    {
+        {0},
+    };
+#endif
+
 #endif
 
 
@@ -155,7 +163,7 @@ int filesystem_init(void)
 {
     rt_err_t result = RT_EOK;
 
-    // ramdisk as root
+    /* ramdisk as root */
     if (!rt_device_find(RAMDISK_NAME))
     {
         LOG_E("cannot find %s device", RAMDISK_NAME);

+ 559 - 0
bsp/nuvoton/nk-rtu980/rtconfig.h

@@ -0,0 +1,559 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 16
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 2048
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_PAGE_MAX_ORDER 11
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_MEMHEAP
+#define RT_MEMHEAP_FAST_MODE
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_MEMTRACE
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_CACHE
+#define ARCH_MM_MMU
+#define ARCH_ARM
+#define ARCH_ARM_MMU
+#define ARCH_ARM_ARM9
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 20
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 64
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 16
+#define DFS_FILESYSTEM_TYPES_MAX 16
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+#define FAL_USING_SFUD_PORT
+#define FAL_USING_NOR_FLASH_DEV_NAME "norflash0"
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 2048
+#define RT_USING_CAN
+#define RT_CAN_USING_HDR
+#define RT_USING_CPUTIME
+#define CPUTIME_TIMER_FREQ 0
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_RTC
+#define RT_USING_SOFT_RTC
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_USING_QSPI
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_USING_WDT
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 16
+#define RT_LWIP_PBUF_NUM 256
+#define RT_LWIP_RAW_PCB_NUM 16
+#define RT_LWIP_UDP_PCB_NUM 16
+#define RT_LWIP_TCP_PCB_NUM 16
+#define RT_LWIP_TCP_SEG_NUM 64
+#define RT_LWIP_TCP_SND_BUF 16384
+#define RT_LWIP_TCP_WND 65535
+#define RT_LWIP_TCPTHREAD_PRIORITY 21
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 256
+#define RT_LWIP_TCPTHREAD_STACKSIZE 4096
+#define LWIP_NO_TX_THREAD
+#define RT_LWIP_ETHTHREAD_PRIORITY 22
+#define RT_LWIP_ETHTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 256
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 1
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+#define RT_USING_ADT
+#define RT_USING_ADT_AVL
+#define RT_USING_ADT_BITMAP
+#define RT_USING_ADT_HASHMAP
+#define RT_USING_ADT_REF
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define RT_USB_DEVICE_COMPOSITE
+#define RT_USB_DEVICE_CDC
+#define RT_USB_DEVICE_NONE
+#define RT_USB_DEVICE_MSTORAGE
+#define RT_VCOM_TASK_STK_SIZE 2048
+#define RT_CDC_RX_BUFSIZE 128
+#define RT_VCOM_SERNO "32021919830108"
+#define RT_VCOM_SER_LEN 14
+#define RT_VCOM_TX_TIMEOUT 1000
+#define RT_USB_MSTORAGE_DISK_NAME "ramdisk1"
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_NUC980
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_MMU
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define BSP_USING_GPIO
+#define BSP_USING_EMAC
+#define BSP_USING_EMAC1
+#define NU_EMAC_PDMA_MEMCOPY
+#define NU_EMAC_PDMA_MEMCOPY_THRESHOLD 128
+#define BSP_USING_ADC
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TIMER1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2
+#define BSP_USING_TMR3
+#define BSP_USING_TIMER3
+#define BSP_USING_TMR4
+#define BSP_USING_TIMER4
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART4
+#define BSP_USING_UART4_TX_DMA
+#define BSP_USING_UART4_RX_DMA
+#define BSP_USING_UART8
+#define BSP_USING_UART8_TX_DMA
+#define BSP_USING_UART8_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C1
+#define BSP_USING_CAN
+#define BSP_USING_CAN3
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0
+#define BSP_USING_SPI0_PDMA
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI_PDMA
+#define BSP_USING_QSPI0
+#define BSP_USING_QSPI0_PDMA
+#define BSP_USING_CRYPTO
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+#define BSP_USING_USBH
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_CONSOLE
+#define BOARD_USING_UART8_RS485
+#define BOARD_USING_STORAGE_SPIFLASH
+#define BOARD_USING_USB0_DEVICE_HOST
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+#define BOARD_USING_IP101GR
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 174 - 77
bsp/nuvoton/numaker-hmi-ma35d1/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 CONFIG_USE_MA35D1_AARCH32=y
 
 #
@@ -20,7 +16,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -30,20 +25,30 @@ CONFIG_IDLE_THREAD_STACK_SIZE=4096
 CONFIG_RT_USING_TIMER_SOFT=y
 CONFIG_RT_TIMER_THREAD_PRIO=4
 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096
+# CONFIG_RT_USING_TIMER_ALL_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-CONFIG_RT_KSERVICE_USING_STDLIB=y
-# CONFIG_RT_KSERVICE_USING_STDLIB_MEMORY is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
 # CONFIG_RT_DEBUGING_PAGE_LEAK is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -55,6 +60,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 # CONFIG_RT_USING_SIGNALS is not set
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -74,6 +80,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 CONFIG_RT_USING_INTERRUPT_INFO=y
@@ -82,13 +90,13 @@ CONFIG_RT_USING_INTERRUPT_INFO=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=4096
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_CACHE=y
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_MM_MMU=y
 CONFIG_ARCH_ARM=y
@@ -96,7 +104,6 @@ CONFIG_ARCH_ARM_MMU=y
 CONFIG_ARCH_ARM_CORTEX_A=y
 CONFIG_RT_SMP_AUTO_BOOT=y
 CONFIG_RT_USING_GIC_V2=y
-# CONFIG_RT_USING_GIC_V3 is not set
 CONFIG_ARCH_ARM_SECURE_MODE=y
 # CONFIG_RT_BACKTRACE_FUNCTION_NAME is not set
 CONFIG_ARCH_ARMV8=y
@@ -162,6 +169,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -169,12 +178,15 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 # CONFIG_RT_USING_FAL is not set
 
 #
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -199,6 +211,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 CONFIG_RT_USING_MTD_NAND=y
 CONFIG_RT_MTD_NAND_DEBUG=y
@@ -230,25 +244,13 @@ CONFIG_RT_USING_TOUCH=y
 # CONFIG_RT_TOUCH_PIN_IRQ is not set
 # CONFIG_RT_USING_LCD is not set
 # CONFIG_RT_USING_HWCRYPTO is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 CONFIG_RT_USING_KTIME=y
 # CONFIG_RT_USING_HWTIMER is not set
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-# CONFIG_RT_USING_USB_DEVICE is not set
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -266,6 +268,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -299,7 +303,11 @@ CONFIG_RT_USING_CUSTOM_DLMODULE=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -313,16 +321,18 @@ CONFIG_RT_USING_SAL=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -346,6 +356,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -383,12 +395,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -416,6 +430,8 @@ CONFIG_ULOG_OUTPUT_TIME=y
 CONFIG_ULOG_OUTPUT_LEVEL=y
 CONFIG_ULOG_OUTPUT_TAG=y
 # CONFIG_ULOG_OUTPUT_THREAD_NAME is not set
+# end of log format
+
 CONFIG_ULOG_BACKEND_USING_CONSOLE=y
 # CONFIG_ULOG_BACKEND_USING_FILE is not set
 # CONFIG_ULOG_USING_FILTER is not set
@@ -431,8 +447,25 @@ CONFIG_RT_USING_ADT_BITMAP=y
 CONFIG_RT_USING_ADT_HASHMAP=y
 CONFIG_RT_USING_ADT_REF=y
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+# CONFIG_RT_USING_USB_DEVICE is not set
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
@@ -442,6 +475,7 @@ CONFIG_RT_USING_UTESTCASES=y
 # Utest Self Testcase
 #
 CONFIG_UTEST_SELF_PASS_TC=y
+# end of Utest Self Testcase
 
 #
 # Kernel Testcase
@@ -457,31 +491,56 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_UTEST_MUTEX_TC is not set
 # CONFIG_UTEST_MAILBOX_TC is not set
 # CONFIG_UTEST_THREAD_TC is not set
+# CONFIG_UTEST_DEVICE_TC is not set
 # CONFIG_UTEST_ATOMIC_TC is not set
 # CONFIG_UTEST_HOOKLIST_TC is not set
 # CONFIG_UTEST_MTSAFE_KPRINT_TC is not set
 # CONFIG_UTEST_SCHEDULER_TC is not set
+# end of Kernel Testcase
 
 #
 # CPP11 Testcase
 #
 # CONFIG_UTEST_CPP11_THREAD_TC is not set
+# end of CPP11 Testcase
 
 #
 # Utest Serial Testcase
 #
 # CONFIG_UTEST_SERIAL_TC is not set
+# end of Utest Serial Testcase
+
+#
+# Utest IPC Testcase
+#
+# CONFIG_UTEST_COMPLETION_TC is not set
+# end of Utest IPC Testcase
 
 #
 # RTT Posix Testcase
 #
 # CONFIG_RTT_POSIX_TESTCASE is not set
+# end of RTT Posix Testcase
 
 #
 # Memory Management Subsytem Testcase
 #
 # CONFIG_UTEST_MM_API_TC is not set
 # CONFIG_UTEST_MM_LWP_TC is not set
+# end of Memory Management Subsytem Testcase
+
+#
+# Tmpfs Testcase
+#
+# CONFIG_UTEST_TMPFS_CP is not set
+# end of Tmpfs Testcase
+
+#
+# SMP Testcase
+#
+# CONFIG_UTEST_SMP_CALL_FUNC is not set
+# end of SMP Testcase
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -490,7 +549,6 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -503,6 +561,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -512,27 +571,35 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -555,6 +622,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -597,6 +666,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -607,6 +678,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -622,18 +694,22 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -642,51 +718,22 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # LVGL: powerful and easy-to-use embedded GUI library
 #
-CONFIG_PKG_USING_LVGL=y
-CONFIG_PKG_LVGL_PATH="/packages/multimedia/LVGL/LVGL"
-CONFIG_PKG_LVGL_THREAD_PRIO=20
-CONFIG_PKG_LVGL_THREAD_STACK_SIZE=4096
-CONFIG_PKG_LVGL_DISP_REFR_PERIOD=16
-# CONFIG_PKG_LVGL_USING_SQUARELINE is not set
-# CONFIG_PKG_LVGL_USING_EXAMPLES is not set
-CONFIG_PKG_LVGL_USING_DEMOS=y
-# CONFIG_PKG_LVGL_USING_V080311 is not set
-# CONFIG_PKG_LVGL_USING_V080310 is not set
-# CONFIG_PKG_LVGL_USING_V08039 is not set
-# CONFIG_PKG_LVGL_USING_V08038 is not set
-# CONFIG_PKG_LVGL_USING_V08037 is not set
-# CONFIG_PKG_LVGL_USING_V08036 is not set
-# CONFIG_PKG_LVGL_USING_V08035 is not set
-# CONFIG_PKG_LVGL_USING_V08034 is not set
-# CONFIG_PKG_LVGL_USING_V08033 is not set
-# CONFIG_PKG_LVGL_USING_V08032 is not set
-# CONFIG_PKG_LVGL_USING_V08031 is not set
-# CONFIG_PKG_LVGL_USING_V08030 is not set
-# CONFIG_PKG_LVGL_USING_V08020 is not set
-CONFIG_PKG_LVGL_USING_V8_3_LATEST_VERSION=y
-# CONFIG_PKG_LVGL_USING_LATEST_VERSION is not set
-CONFIG_PKG_LVGL_VER_NUM=0x0803FF
-CONFIG_PKG_LVGL_VER="v8.3-latest"
+# CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
-CONFIG_PKG_USING_WAVPLAYER=y
-CONFIG_PKG_WAVPLAYER_PATH="/packages/multimedia/wavplayer"
-CONFIG_PKG_WP_USING_PLAY=y
-CONFIG_PKG_WP_PLAY_DEVICE="sound0"
-CONFIG_PKG_WP_USING_RECORD=y
-CONFIG_PKG_WP_RECORD_DEVICE="sound0"
-# CONFIG_PKG_USING_WAVPLAYER_V020 is not set
-CONFIG_PKG_USING_WAVPLAYER_LATEST_VERSION=y
-CONFIG_PKG_WAVPLAYER_VER="latest"
+# CONFIG_PKG_USING_WAVPLAYER is not set
 # CONFIG_PKG_USING_TJPGD is not set
 # CONFIG_PKG_USING_PDFGEN is not set
 # CONFIG_PKG_USING_HELIX is not set
@@ -703,6 +750,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -751,6 +799,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -762,6 +811,9 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -769,6 +821,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -779,6 +832,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -789,6 +843,8 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -812,11 +868,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -840,6 +892,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -852,9 +905,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -864,9 +935,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -936,6 +1010,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -950,6 +1025,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -1022,6 +1099,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -1037,15 +1115,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_NCNN is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -1054,6 +1135,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1062,6 +1144,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1077,13 +1160,10 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_DONUT is not set
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
-CONFIG_PKG_USING_OPTPARSE=y
-CONFIG_PKG_OPTPARSE_PATH="/packages/misc/optparse"
-# CONFIG_PKG_USING_OPTPARSE_V100 is not set
-CONFIG_PKG_USING_OPTPARSE_LATEST_VERSION=y
-CONFIG_PKG_OPTPARSE_VER="latest"
-# CONFIG_OPTPARSE_USING_DEMO is not set
+# CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
 # CONFIG_PKG_USING_MINILZO is not set
 # CONFIG_PKG_USING_QUICKLZ is not set
@@ -1115,6 +1195,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1130,6 +1211,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1269,6 +1351,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1280,6 +1364,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1288,6 +1373,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1295,6 +1381,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1305,6 +1393,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1316,12 +1405,14 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1334,10 +1425,13 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1415,7 +1509,6 @@ CONFIG_BSP_USING_SDH1=y
 # CONFIG_BSP_USING_CANFD is not set
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
-# CONFIG_BSP_USING_SPI_PDMA is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1433,7 +1526,6 @@ CONFIG_BSP_USING_I2S0=y
 # CONFIG_BSP_USING_I2S1 is not set
 CONFIG_NU_I2S_DMA_FIFO_SIZE=2048
 CONFIG_BSP_USING_QSPI=y
-# CONFIG_BSP_USING_QSPI_PDMA is not set
 CONFIG_BSP_USING_QSPI0=y
 # CONFIG_BSP_USING_QSPI0_PDMA is not set
 # CONFIG_BSP_USING_QSPI1 is not set
@@ -1461,6 +1553,7 @@ CONFIG_BSP_USING_NFI=y
 CONFIG_BSP_USING_USBH=y
 CONFIG_BSP_USING_HSUSBH0=y
 CONFIG_BSP_USING_HSUSBH1=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1475,6 +1568,7 @@ CONFIG_BOARD_USING_STORAGE_SPINAND=y
 # CONFIG_BOARD_USING_BUZZER is not set
 # CONFIG_BOARD_USING_MPU6500 is not set
 CONFIG_BOARD_USING_USBHOST=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
@@ -1486,6 +1580,7 @@ CONFIG_BOARD_USING_LCM_FW070TFT_WSVGA=y
 CONFIG_BOARD_USING_ADCTOUCH=y
 # CONFIG_BOARD_USING_SENSOR0 is not set
 # CONFIG_BOARD_USING_SENSOR1 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1505,3 +1600,5 @@ CONFIG_NU_PKG_USING_NAU8822=y
 CONFIG_NU_PKG_USING_ADC_TOUCH=y
 # CONFIG_NU_PKG_USING_ADC_TOUCH_SW is not set
 CONFIG_NU_PKG_USING_SPINAND=y
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 623 - 0
bsp/nuvoton/numaker-hmi-ma35d1/rtconfig.h

@@ -0,0 +1,623 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+#define USE_MA35D1_AARCH32
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 4096
+#define RT_USING_TIMER_SOFT
+#define RT_TIMER_THREAD_PRIO 4
+#define RT_TIMER_THREAD_STACK_SIZE 4096
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_PAGE_MAX_ORDER 11
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_MEMHEAP
+#define RT_MEMHEAP_FAST_MODE
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_INTERRUPT_INFO
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 4096
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_CACHE
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_MM_MMU
+#define ARCH_ARM
+#define ARCH_ARM_MMU
+#define ARCH_ARM_CORTEX_A
+#define RT_SMP_AUTO_BOOT
+#define RT_USING_GIC_V2
+#define ARCH_ARM_SECURE_MODE
+#define ARCH_ARMV8
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 4096
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_LEGACY
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 128
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 128
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 32
+#define DFS_FILESYSTEM_TYPES_MAX 32
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 512
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 256
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_MTD_NAND
+#define RT_MTD_NAND_DEBUG
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 4096
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 4096
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 8
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_TOUCH
+#define RT_USING_PIN
+#define RT_USING_KTIME
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+#define RT_USING_POSIX_DELAY
+#define RT_USING_POSIX_CLOCK
+#define RT_USING_PTHREADS
+#define PTHREAD_NUM_MAX 8
+#define RT_USING_MODULE
+#define RT_USING_CUSTOM_DLMODULE
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 32
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 32
+#define RT_LWIP_PBUF_NUM 8192
+#define RT_LWIP_RAW_PCB_NUM 32
+#define RT_LWIP_UDP_PCB_NUM 32
+#define RT_LWIP_TCP_PCB_NUM 32
+#define RT_LWIP_TCP_SEG_NUM 1024
+#define RT_LWIP_TCP_SND_BUF 8192
+#define RT_LWIP_TCP_WND 10240
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 8192
+#define RT_LWIP_TCPTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 8192
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_HW_CHECKSUM
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_ULOG
+#define ULOG_OUTPUT_LVL_D
+#define ULOG_OUTPUT_LVL 7
+#define ULOG_USING_ISR_LOG
+#define ULOG_ASSERT_ENABLE
+#define ULOG_LINE_BUF_SIZE 128
+
+/* log format */
+
+#define ULOG_USING_COLOR
+#define ULOG_OUTPUT_TIME
+#define ULOG_OUTPUT_LEVEL
+#define ULOG_OUTPUT_TAG
+/* end of log format */
+#define ULOG_BACKEND_USING_CONSOLE
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+#define RT_USING_ADT
+#define RT_USING_ADT_AVL
+#define RT_USING_ADT_BITMAP
+#define RT_USING_ADT_HASHMAP
+#define RT_USING_ADT_REF
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USBD_THREAD_STACK_SZ 4096
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+#define RT_USING_UTESTCASES
+
+/* Utest Self Testcase */
+
+#define UTEST_SELF_PASS_TC
+/* end of Utest Self Testcase */
+
+/* Kernel Testcase */
+
+#define UTEST_MEMHEAP_TC
+#define UTEST_SMALL_MEM_TC
+/* end of Kernel Testcase */
+
+/* CPP11 Testcase */
+
+/* end of CPP11 Testcase */
+
+/* Utest Serial Testcase */
+
+/* end of Utest Serial Testcase */
+
+/* Utest IPC Testcase */
+
+/* end of Utest IPC Testcase */
+
+/* RTT Posix Testcase */
+
+/* end of RTT Posix Testcase */
+
+/* Memory Management Subsytem Testcase */
+
+/* end of Memory Management Subsytem Testcase */
+
+/* Tmpfs Testcase */
+
+/* end of Tmpfs Testcase */
+
+/* SMP Testcase */
+
+/* end of SMP Testcase */
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_MA35D1
+#define BSP_USING_SSPCC
+#define BSP_USING_SSMCC
+#define BSP_USING_UMCTL2
+#define BSP_USING_RTP
+#define RTP_USING_AT_STARTUP
+#define RT_USING_FPU
+#define BSP_USING_PDMA
+#define BSP_USING_PDMA0
+#define BSP_USING_PDMA1
+#define NU_PDMA_MEMFUN_ACTOR_MAX 4
+#define BSP_USING_GPIO
+#define BSP_USING_GMAC
+#define BSP_USING_GMAC0
+#define BSP_USING_GMAC1
+#define BSP_USING_RTC
+#define BSP_USING_ADC
+#define BSP_USING_ADC_TOUCH
+#define BSP_USING_CCAP
+#define BSP_USING_CCAP0
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART11
+#define BSP_USING_UART11_TX_DMA
+#define BSP_USING_UART11_RX_DMA
+#define BSP_USING_UART12
+#define BSP_USING_UART14
+#define BSP_USING_UART16
+#define BSP_USING_UART16_TX_DMA
+#define BSP_USING_UART16_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C0
+#define BSP_USING_I2C1
+#define BSP_USING_I2C2
+#define BSP_USING_I2C3
+#define BSP_USING_I2C4
+#define BSP_USING_I2C5
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_SDH1
+#define BSP_USING_SPI
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_SPI2_NONE
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_I2S
+#define BSP_USING_I2S0
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_DISP
+#define LCM_USING_FW070TFT_WSVGA
+#define DISP_USING_LCD_IDX 0
+#define BSP_LCD_BPP 32
+#define BSP_LCD_WIDTH 1024
+#define BSP_LCD_HEIGHT 600
+#define DISP_USING_OVERLAY
+#define BSP_USING_HWSEM
+#define BSP_USING_HWSEM0
+#define BSP_USING_WHC
+#define BSP_USING_WHC0
+#define BSP_USING_NFI
+#define BSP_USING_USBH
+#define BSP_USING_HSUSBH0
+#define BSP_USING_HSUSBH1
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_CONSOLE
+#define BOARD_USING_NAU8822
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_EMMC
+#define BOARD_USING_STORAGE_RAWNAND
+#define BOARD_USING_STORAGE_SPINAND
+#define BOARD_USING_USBHOST
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+#define BOARD_USING_LCM
+#define BOARD_USING_LCM_FW070TFT_WSVGA
+#define BOARD_USING_ADCTOUCH
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NAU8822
+#define NU_PKG_USING_ADC_TOUCH
+#define NU_PKG_USING_SPINAND
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 159 - 46
bsp/nuvoton/numaker-iot-m467/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,18 +22,28 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=1024
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -50,6 +55,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -66,6 +72,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -74,13 +82,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
@@ -147,6 +154,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -154,6 +163,8 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -165,6 +176,7 @@ CONFIG_FAL_USING_NOR_FLASH_DEV_NAME="norflash0"
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -191,6 +203,9 @@ CONFIG_RT_USING_I2C_BITOPS=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+CONFIG_RT_USING_INPUT_CAPTURE=y
+CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 # CONFIG_RT_USING_PM is not set
@@ -259,39 +274,13 @@ CONFIG_RT_HWCRYPTO_USING_CRC_1021=y
 # CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set
 CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-CONFIG_RT_USING_INPUT_CAPTURE=y
-CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
-# CONFIG__RT_USB_DEVICE_NONE is not set
-# CONFIG__RT_USB_DEVICE_CDC is not set
-CONFIG__RT_USB_DEVICE_MSTORAGE=y
-# CONFIG__RT_USB_DEVICE_HID is not set
-# CONFIG__RT_USB_DEVICE_RNDIS is not set
-# CONFIG__RT_USB_DEVICE_ECM is not set
-# CONFIG__RT_USB_DEVICE_WINUSB is not set
-# CONFIG__RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_USB_DEVICE_MSTORAGE=y
-CONFIG_RT_USB_MSTORAGE_DISK_NAME="sd0"
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -309,6 +298,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -340,7 +331,11 @@ CONFIG_RT_USING_POSIX_SOCKET=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -354,22 +349,23 @@ CONFIG_SAL_INTERNET_CHECK=y
 CONFIG_SAL_USING_LWIP=y
 CONFIG_SAL_USING_AT=y
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
-# CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
+CONFIG_RT_USING_LWIP_LOCAL_VERSION=y
 # CONFIG_RT_USING_LWIP141 is not set
 # CONFIG_RT_USING_LWIP203 is not set
 CONFIG_RT_USING_LWIP212=y
-# CONFIG_RT_USING_LWIP_LATEST is not set
 CONFIG_RT_USING_LWIP_VER_NUM=0x20102
 # CONFIG_RT_USING_LWIP_IPV6 is not set
 CONFIG_RT_LWIP_MEM_ALIGNMENT=4
@@ -387,6 +383,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -433,12 +431,14 @@ CONFIG_AT_USING_SOCKET=y
 CONFIG_AT_USING_CLI=y
 # CONFIG_AT_PRINT_RAW_CMD is not set
 CONFIG_AT_SW_VERSION_NUM=0x10301
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -466,6 +466,8 @@ CONFIG_ULOG_OUTPUT_TIME=y
 CONFIG_ULOG_OUTPUT_LEVEL=y
 CONFIG_ULOG_OUTPUT_TAG=y
 # CONFIG_ULOG_OUTPUT_THREAD_NAME is not set
+# end of log format
+
 CONFIG_ULOG_BACKEND_USING_CONSOLE=y
 # CONFIG_ULOG_BACKEND_USING_FILE is not set
 # CONFIG_ULOG_USING_FILTER is not set
@@ -477,12 +479,43 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
+# CONFIG__RT_USB_DEVICE_NONE is not set
+# CONFIG__RT_USB_DEVICE_CDC is not set
+CONFIG__RT_USB_DEVICE_MSTORAGE=y
+# CONFIG__RT_USB_DEVICE_HID is not set
+# CONFIG__RT_USB_DEVICE_RNDIS is not set
+# CONFIG__RT_USB_DEVICE_ECM is not set
+# CONFIG__RT_USB_DEVICE_WINUSB is not set
+# CONFIG__RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_USB_DEVICE_MSTORAGE=y
+CONFIG_RT_USB_MSTORAGE_DISK_NAME="sd0"
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -491,7 +524,6 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -504,6 +536,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -513,27 +546,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -596,6 +637,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -638,6 +681,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -648,6 +693,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -663,18 +709,22 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -686,12 +736,15 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -712,6 +765,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -761,6 +815,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -791,6 +846,9 @@ CONFIG_PKG_VSNPRINTF_LOG10_TAYLOR_TERMS=4
 # CONFIG_RT_VSNPRINTF_FULL_REPLACING_VSNPRINTF is not set
 CONFIG_PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION=y
 CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -798,6 +856,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -808,6 +867,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -818,6 +878,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -865,6 +927,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -877,9 +940,27 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -889,9 +970,12 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -961,6 +1045,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -975,6 +1060,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -1047,6 +1134,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -1061,15 +1149,18 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -1078,6 +1169,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1086,6 +1178,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1102,6 +1195,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -1135,6 +1230,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1150,6 +1246,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1289,6 +1386,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1300,6 +1399,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1308,6 +1408,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1315,6 +1416,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1325,6 +1428,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1336,12 +1440,14 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1354,10 +1460,13 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1436,7 +1545,6 @@ CONFIG_BSP_USING_CANFD0=y
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
 CONFIG_BSP_USING_SPI_PDMA=y
-# CONFIG_BSP_USING_SPII2S is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1494,6 +1602,7 @@ CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_HSUSBH=y
 CONFIG_NU_USBHOST_HUB_POLLING_INTERVAL=100
 # CONFIG_BSP_USING_HSOTG is not set
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1512,11 +1621,13 @@ CONFIG_BOARD_USING_USB_D_H=y
 # CONFIG_BOARD_USING_HSUSBH is not set
 CONFIG_BOARD_USING_HSUSBH_USBD=y
 # CONFIG_BOARD_USING_HSOTG is not set
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_LCD_ILI9341 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1535,3 +1646,5 @@ CONFIG_NU_PKG_USING_NCT7717U=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 630 - 0
bsp/nuvoton/numaker-iot-m467/rtconfig.h

@@ -0,0 +1,630 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 1024
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M4
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_LEGACY
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 2048
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 32
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 8
+#define DFS_FILESYSTEM_TYPES_MAX 8
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+#define FAL_USING_SFUD_PORT
+#define FAL_USING_NOR_FLASH_DEV_NAME "norflash0"
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 512
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_PWM
+#define RT_USING_INPUT_CAPTURE
+#define RT_INPUT_CAPTURE_RB_SIZE 100
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 2048
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 2048
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 16
+#define RT_SDIO_DEBUG
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_USING_QSPI
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_SENSOR
+#define RT_USING_SENSOR_V2
+#define RT_USING_SENSOR_CMD
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_DES
+#define RT_HWCRYPTO_USING_DES_ECB
+#define RT_HWCRYPTO_USING_DES_CBC
+#define RT_HWCRYPTO_USING_3DES
+#define RT_HWCRYPTO_USING_3DES_ECB
+#define RT_HWCRYPTO_USING_3DES_CBC
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_HWCRYPTO_USING_CRC
+#define RT_HWCRYPTO_USING_CRC_07
+#define RT_HWCRYPTO_USING_CRC_8005
+#define RT_HWCRYPTO_USING_CRC_1021
+#define RT_HWCRYPTO_USING_CRC_04C11DB7
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+#define SAL_USING_AT
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP_LOCAL_VERSION
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 8
+#define RT_LWIP_PBUF_NUM 64
+#define RT_LWIP_RAW_PCB_NUM 4
+#define RT_LWIP_UDP_PCB_NUM 4
+#define RT_LWIP_TCP_PCB_NUM 4
+#define RT_LWIP_TCP_SEG_NUM 64
+#define RT_LWIP_TCP_SND_BUF 8192
+#define RT_LWIP_TCP_WND 10240
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 64
+#define RT_LWIP_TCPTHREAD_STACKSIZE 2048
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 2048
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 64
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_PING
+#define RT_USING_AT
+#define AT_USING_CLIENT
+#define AT_CLIENT_NUM_MAX 1
+#define AT_USING_SOCKET
+#define AT_USING_CLI
+#define AT_SW_VERSION_NUM 0x10301
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_ULOG
+#define ULOG_OUTPUT_LVL_D
+#define ULOG_OUTPUT_LVL 7
+#define ULOG_ASSERT_ENABLE
+#define ULOG_LINE_BUF_SIZE 128
+
+/* log format */
+
+#define ULOG_USING_COLOR
+#define ULOG_OUTPUT_TIME
+#define ULOG_OUTPUT_LEVEL
+#define ULOG_OUTPUT_TAG
+/* end of log format */
+#define ULOG_BACKEND_USING_CONSOLE
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define _RT_USB_DEVICE_MSTORAGE
+#define RT_USB_DEVICE_MSTORAGE
+#define RT_USB_MSTORAGE_DISK_NAME "sd0"
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+#define PKG_USING_AT_DEVICE
+#define AT_DEVICE_USING_ESP8266
+#define AT_DEVICE_ESP8266_INIT_ASYN
+#define AT_DEVICE_ESP8266_SOCKET
+#define AT_DEVICE_ESP8266_SAMPLE
+#define ESP8266_SAMPLE_WIFI_SSID "NT_ZY_BUFFALO"
+#define ESP8266_SAMPLE_WIFI_PASSWORD "12345678"
+#define ESP8266_SAMPLE_CLIENT_NAME "uart2"
+#define ESP8266_SAMPLE_RECV_BUFF_LEN 2048
+#define PKG_USING_AT_DEVICE_LATEST_VERSION
+#define PKG_AT_DEVICE_VER_NUM 0x99999
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+#define PKG_USING_RT_VSNPRINTF_FULL
+#define PKG_VSNPRINTF_SUPPORT_DECIMAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_EXPONENTIAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_WRITEBACK_SPECIFIER
+#define PKG_VSNPRINTF_SUPPORT_LONG_LONG
+#define PKG_VSNPRINTF_CHECK_FOR_NUL_IN_FORMAT_SPECIFIER
+#define PKG_VSNPRINTF_INTEGER_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DECIMAL_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DEFAULT_FLOAT_PRECISION 6
+#define PKG_VSNPRINTF_MAX_INTEGRAL_DIGITS_FOR_DECIMAL 9
+#define PKG_VSNPRINTF_LOG10_TAYLOR_TERMS 4
+#define PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M460
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define NU_PDMA_SGTBL_POOL_SIZE 32
+#define BSP_USING_FMC
+#define BSP_USING_GPIO
+#define BSP_USING_EMAC
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TPWM
+#define BSP_USING_TIMER_CAPTURE
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TPWM1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2_CAPTURE
+#define BSP_USING_TMR3
+#define BSP_USING_TIMER3
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART1_TX_DMA
+#define BSP_USING_UART1_RX_DMA
+#define BSP_USING_UART2
+#define BSP_USING_UART2_TX_DMA
+#define BSP_USING_UART2_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C2
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_CANFD
+#define BSP_USING_CANFD0
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_SPI2
+#define BSP_USING_SPI2_PDMA
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_SPI4_NONE
+#define BSP_USING_SPI5_NONE
+#define BSP_USING_SPI6_NONE
+#define BSP_USING_SPI7_NONE
+#define BSP_USING_SPI8_NONE
+#define BSP_USING_SPI9_NONE
+#define BSP_USING_SPI10_NONE
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_CRYPTO
+#define BSP_USING_TRNG
+#define BSP_USING_CRC
+#define NU_CRC_USE_PDMA
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+#define BSP_USING_HSUSBH
+#define NU_USBHOST_HUB_POLLING_INTERVAL 100
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+#define BOARD_USING_RTL8201FI
+#define BOARD_USING_ESP8266
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_SPIFLASH
+#define BOARD_USING_CANFD0
+#define BOARD_USING_NCT7717U
+#define BOARD_USING_USB_D_H
+#define BOARD_USING_HSUSBH_USBD
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NCT7717U
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 219 - 47
bsp/nuvoton/numaker-iot-m487/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,18 +22,28 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=1024
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -50,6 +55,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -66,6 +72,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -74,13 +82,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
@@ -147,12 +154,17 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
 # CONFIG_RT_USING_DFS_RAMFS is not set
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
+# CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -163,6 +175,7 @@ CONFIG_FAL_PART_HAS_TABLE_CFG=y
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -189,6 +202,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 CONFIG_RT_USING_PM=y
@@ -262,39 +277,13 @@ CONFIG_RT_HWCRYPTO_USING_CRC_1021=y
 # CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set
 CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk/"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
-# CONFIG__RT_USB_DEVICE_NONE is not set
-# CONFIG__RT_USB_DEVICE_CDC is not set
-# CONFIG__RT_USB_DEVICE_MSTORAGE is not set
-CONFIG__RT_USB_DEVICE_HID=y
-# CONFIG__RT_USB_DEVICE_WINUSB is not set
-# CONFIG__RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_USB_DEVICE_HID=y
-# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
-CONFIG_RT_USB_DEVICE_HID_MOUSE=y
-# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
-# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -312,6 +301,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -343,7 +334,11 @@ CONFIG_RT_USING_POSIX_SELECT=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -354,20 +349,82 @@ CONFIG_SAL_INTERNET_CHECK=y
 #
 # Docking with protocol stacks
 #
-# CONFIG_SAL_USING_LWIP is not set
+CONFIG_SAL_USING_LWIP=y
 CONFIG_SAL_USING_AT=y
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
-# CONFIG_RT_USING_LWIP is not set
+CONFIG_RT_USING_LWIP=y
+# CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
+# CONFIG_RT_USING_LWIP141 is not set
+CONFIG_RT_USING_LWIP203=y
+# CONFIG_RT_USING_LWIP212 is not set
+# CONFIG_RT_USING_LWIP_LATEST is not set
+CONFIG_RT_USING_LWIP_VER_NUM=0x20003
+# CONFIG_RT_USING_LWIP_IPV6 is not set
+CONFIG_RT_LWIP_MEM_ALIGNMENT=4
+CONFIG_RT_LWIP_IGMP=y
+CONFIG_RT_LWIP_ICMP=y
+# CONFIG_RT_LWIP_SNMP is not set
+CONFIG_RT_LWIP_DNS=y
+CONFIG_RT_LWIP_DHCP=y
+CONFIG_IP_SOF_BROADCAST=1
+CONFIG_IP_SOF_BROADCAST_RECV=1
+
+#
+# Static IPv4 Address
+#
+CONFIG_RT_LWIP_IPADDR="192.168.1.30"
+CONFIG_RT_LWIP_GWADDR="192.168.1.1"
+CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
+CONFIG_RT_LWIP_UDP=y
+CONFIG_RT_LWIP_TCP=y
+CONFIG_RT_LWIP_RAW=y
+# CONFIG_RT_LWIP_PPP is not set
+CONFIG_RT_MEMP_NUM_NETCONN=8
+CONFIG_RT_LWIP_PBUF_NUM=16
+CONFIG_RT_LWIP_RAW_PCB_NUM=4
+CONFIG_RT_LWIP_UDP_PCB_NUM=4
+CONFIG_RT_LWIP_TCP_PCB_NUM=4
+CONFIG_RT_LWIP_TCP_SEG_NUM=40
+CONFIG_RT_LWIP_TCP_SND_BUF=8196
+CONFIG_RT_LWIP_TCP_WND=8196
+CONFIG_RT_LWIP_TCPTHREAD_PRIORITY=10
+CONFIG_RT_LWIP_TCPTHREAD_MBOX_SIZE=8
+CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=1024
+# CONFIG_LWIP_NO_RX_THREAD is not set
+# CONFIG_LWIP_NO_TX_THREAD is not set
+CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12
+CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=1024
+CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8
+# CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set
+CONFIG_LWIP_NETIF_STATUS_CALLBACK=1
+CONFIG_LWIP_NETIF_LINK_CALLBACK=1
+CONFIG_RT_LWIP_NETIF_NAMESIZE=6
+CONFIG_SO_REUSE=1
+CONFIG_LWIP_SO_RCVTIMEO=1
+CONFIG_LWIP_SO_SNDTIMEO=1
+CONFIG_LWIP_SO_RCVBUF=1
+CONFIG_LWIP_SO_LINGER=0
+# CONFIG_RT_LWIP_NETIF_LOOPBACK is not set
+CONFIG_LWIP_NETIF_LOOPBACK=0
+# CONFIG_RT_LWIP_STATS is not set
+# CONFIG_RT_LWIP_USING_HW_CHECKSUM is not set
+CONFIG_RT_LWIP_USING_PING=y
+# CONFIG_LWIP_USING_DHCPD is not set
+# CONFIG_RT_LWIP_DEBUG is not set
 CONFIG_RT_USING_AT=y
 # CONFIG_AT_DEBUG is not set
 # CONFIG_AT_USING_SERVER is not set
@@ -378,12 +435,14 @@ CONFIG_AT_USING_SOCKET=y
 CONFIG_AT_USING_CLI=y
 # CONFIG_AT_PRINT_RAW_CMD is not set
 CONFIG_AT_SW_VERSION_NUM=0x10301
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -397,12 +456,46 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk/"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
+# CONFIG__RT_USB_DEVICE_NONE is not set
+# CONFIG__RT_USB_DEVICE_CDC is not set
+# CONFIG__RT_USB_DEVICE_MSTORAGE is not set
+CONFIG__RT_USB_DEVICE_HID=y
+# CONFIG__RT_USB_DEVICE_RNDIS is not set
+# CONFIG__RT_USB_DEVICE_ECM is not set
+# CONFIG__RT_USB_DEVICE_WINUSB is not set
+# CONFIG__RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_USB_DEVICE_HID=y
+# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
+CONFIG_RT_USB_DEVICE_HID_MOUSE=y
+# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
+# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -411,7 +504,6 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -424,6 +516,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -433,27 +526,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -516,6 +617,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -558,6 +661,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -568,6 +673,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -583,18 +689,22 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -606,12 +716,15 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -632,6 +745,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -681,6 +795,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -711,6 +826,9 @@ CONFIG_PKG_VSNPRINTF_LOG10_TAYLOR_TERMS=4
 # CONFIG_RT_VSNPRINTF_FULL_REPLACING_VSNPRINTF is not set
 CONFIG_PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION=y
 CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -718,6 +836,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -728,6 +847,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -738,6 +858,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -785,6 +907,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -797,9 +920,27 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -809,9 +950,12 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -881,6 +1025,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -895,6 +1040,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -967,6 +1114,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -981,15 +1129,18 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -998,6 +1149,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1006,6 +1158,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1022,6 +1175,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -1055,6 +1210,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1070,6 +1226,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1209,6 +1366,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1220,6 +1379,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1228,6 +1388,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1235,6 +1396,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1245,6 +1408,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1256,12 +1420,14 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1274,10 +1440,13 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1325,7 +1494,6 @@ CONFIG_BSP_USING_I2C1=y
 CONFIG_BSP_USING_I2C2=y
 CONFIG_BSP_USING_USCI=y
 CONFIG_BSP_USING_UUART=y
-# CONFIG_BSP_USING_USPI_PDMA is not set
 CONFIG_BSP_USING_USCI0=y
 CONFIG_BSP_USING_UUART0=y
 # CONFIG_BSP_USING_UI2C0 is not set
@@ -1341,7 +1509,6 @@ CONFIG_BSP_USING_SDH0=y
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
 CONFIG_BSP_USING_SPI_PDMA=y
-# CONFIG_BSP_USING_SPII2S is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1379,6 +1546,7 @@ CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_HSUSBH=y
 CONFIG_NU_USBHOST_HUB_POLLING_INTERVAL=100
 # CONFIG_BSP_USING_HSOTG is not set
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1396,12 +1564,14 @@ CONFIG_BOARD_USING_USB_D_H=y
 # CONFIG_BOARD_USING_HSUSBH is not set
 CONFIG_BOARD_USING_HSUSBH_USBD=y
 # CONFIG_BOARD_USING_HSOTG is not set
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_MAX31875 is not set
 # CONFIG_BOARD_USING_LCD_ILI9341 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1420,3 +1590,5 @@ CONFIG_NU_PKG_USING_NAU88L25=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 594 - 0
bsp/nuvoton/numaker-iot-m487/rtconfig.h

@@ -0,0 +1,594 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 1024
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M4
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 2048
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 32
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 8
+#define DFS_FILESYSTEM_TYPES_MAX 4
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 2048
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_PM
+#define PM_TICKLESS_THRESHOLD_TIME 2
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 2048
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 2048
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 16
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_SENSOR
+#define RT_USING_SENSOR_CMD
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_DES
+#define RT_HWCRYPTO_USING_DES_ECB
+#define RT_HWCRYPTO_USING_DES_CBC
+#define RT_HWCRYPTO_USING_3DES
+#define RT_HWCRYPTO_USING_3DES_ECB
+#define RT_HWCRYPTO_USING_3DES_CBC
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_HWCRYPTO_USING_CRC
+#define RT_HWCRYPTO_USING_CRC_07
+#define RT_HWCRYPTO_USING_CRC_8005
+#define RT_HWCRYPTO_USING_CRC_1021
+#define RT_HWCRYPTO_USING_CRC_04C11DB7
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+#define SAL_USING_AT
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP203
+#define RT_USING_LWIP_VER_NUM 0x20003
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.1.30"
+#define RT_LWIP_GWADDR "192.168.1.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 8
+#define RT_LWIP_PBUF_NUM 16
+#define RT_LWIP_RAW_PCB_NUM 4
+#define RT_LWIP_UDP_PCB_NUM 4
+#define RT_LWIP_TCP_PCB_NUM 4
+#define RT_LWIP_TCP_SEG_NUM 40
+#define RT_LWIP_TCP_SND_BUF 8196
+#define RT_LWIP_TCP_WND 8196
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
+#define RT_LWIP_TCPTHREAD_STACKSIZE 1024
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 1024
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define LWIP_NETIF_LOOPBACK 0
+#define RT_LWIP_USING_PING
+#define RT_USING_AT
+#define AT_USING_CLIENT
+#define AT_CLIENT_NUM_MAX 1
+#define AT_USING_SOCKET
+#define AT_USING_CLI
+#define AT_SW_VERSION_NUM 0x10301
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk/"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define _RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID_MOUSE
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+#define PKG_USING_AT_DEVICE
+#define AT_DEVICE_USING_ESP8266
+#define AT_DEVICE_ESP8266_INIT_ASYN
+#define AT_DEVICE_ESP8266_SOCKET
+#define AT_DEVICE_ESP8266_SAMPLE
+#define ESP8266_SAMPLE_WIFI_SSID "NT_ZY_BUFFALO"
+#define ESP8266_SAMPLE_WIFI_PASSWORD "12345678"
+#define ESP8266_SAMPLE_CLIENT_NAME "uart1"
+#define ESP8266_SAMPLE_RECV_BUFF_LEN 2048
+#define PKG_USING_AT_DEVICE_LATEST_VERSION
+#define PKG_AT_DEVICE_VER_NUM 0x99999
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+#define PKG_USING_RT_VSNPRINTF_FULL
+#define PKG_VSNPRINTF_SUPPORT_DECIMAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_EXPONENTIAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_WRITEBACK_SPECIFIER
+#define PKG_VSNPRINTF_SUPPORT_LONG_LONG
+#define PKG_VSNPRINTF_CHECK_FOR_NUL_IN_FORMAT_SPECIFIER
+#define PKG_VSNPRINTF_INTEGER_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DECIMAL_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DEFAULT_FLOAT_PRECISION 6
+#define PKG_VSNPRINTF_MAX_INTEGRAL_DIGITS_FOR_DECIMAL 9
+#define PKG_VSNPRINTF_LOG10_TAYLOR_TERMS 4
+#define PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M480
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define NU_PDMA_SGTBL_POOL_SIZE 16
+#define BSP_USING_FMC
+#define BSP_USING_GPIO
+#define BSP_USING_CLK
+#define NU_CLK_INVOKE_WKTMR
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_TMR
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART1_TX_DMA
+#define BSP_USING_UART1_RX_DMA
+#define BSP_USING_UART2
+#define BSP_USING_UART2_TX_DMA
+#define BSP_USING_UART2_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C0
+#define BSP_USING_I2C1
+#define BSP_USING_I2C2
+#define BSP_USING_USCI
+#define BSP_USING_UUART
+#define BSP_USING_USCI0
+#define BSP_USING_UUART0
+#define BSP_USING_UUART0_TX_DMA
+#define BSP_USING_UUART0_RX_DMA
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1
+#define BSP_USING_SPI1_PDMA
+#define BSP_USING_SPI2
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_I2S
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_CRYPTO
+#define BSP_USING_CRC
+#define NU_CRC_USE_PDMA
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+#define BSP_USING_HSUSBH
+#define NU_USBHOST_HUB_POLLING_INTERVAL 100
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+#define BOARD_USING_ESP8266
+#define BOARD_USING_NAU88L25
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_SPIFLASH
+#define BOARD_USING_USB_D_H
+#define BOARD_USING_HSUSBH_USBD
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NAU88L25
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 173 - 52
bsp/nuvoton/numaker-iot-ma35d1/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 CONFIG_USE_MA35D1_AARCH32=y
 
 #
@@ -20,7 +16,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -30,20 +25,30 @@ CONFIG_IDLE_THREAD_STACK_SIZE=4096
 CONFIG_RT_USING_TIMER_SOFT=y
 CONFIG_RT_TIMER_THREAD_PRIO=4
 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096
+# CONFIG_RT_USING_TIMER_ALL_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-CONFIG_RT_KSERVICE_USING_STDLIB=y
-# CONFIG_RT_KSERVICE_USING_STDLIB_MEMORY is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
 # CONFIG_RT_DEBUGING_PAGE_LEAK is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -55,6 +60,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 # CONFIG_RT_USING_SIGNALS is not set
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -74,6 +80,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 CONFIG_RT_USING_INTERRUPT_INFO=y
@@ -82,13 +90,13 @@ CONFIG_RT_USING_INTERRUPT_INFO=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=4096
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_CACHE=y
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_MM_MMU=y
 CONFIG_ARCH_ARM=y
@@ -96,7 +104,6 @@ CONFIG_ARCH_ARM_MMU=y
 CONFIG_ARCH_ARM_CORTEX_A=y
 CONFIG_RT_SMP_AUTO_BOOT=y
 CONFIG_RT_USING_GIC_V2=y
-# CONFIG_RT_USING_GIC_V3 is not set
 # CONFIG_ARCH_ARM_SECURE_MODE is not set
 # CONFIG_RT_BACKTRACE_FUNCTION_NAME is not set
 CONFIG_ARCH_ARMV8=y
@@ -162,6 +169,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -169,12 +178,15 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 # CONFIG_RT_USING_FAL is not set
 
 #
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -201,6 +213,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 CONFIG_RT_USING_MTD_NAND=y
 CONFIG_RT_MTD_NAND_DEBUG=y
@@ -231,25 +245,13 @@ CONFIG_RT_AUDIO_RECORD_PIPE_SIZE=2048
 # CONFIG_RT_USING_TOUCH is not set
 # CONFIG_RT_USING_LCD is not set
 # CONFIG_RT_USING_HWCRYPTO is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 CONFIG_RT_USING_KTIME=y
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-# CONFIG_RT_USING_USB_DEVICE is not set
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -267,6 +269,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -300,7 +304,11 @@ CONFIG_RT_USING_CUSTOM_DLMODULE=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -314,16 +322,18 @@ CONFIG_SAL_INTERNET_CHECK=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -347,6 +357,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -384,12 +396,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -417,6 +431,8 @@ CONFIG_ULOG_OUTPUT_TIME=y
 CONFIG_ULOG_OUTPUT_LEVEL=y
 CONFIG_ULOG_OUTPUT_TAG=y
 # CONFIG_ULOG_OUTPUT_THREAD_NAME is not set
+# end of log format
+
 CONFIG_ULOG_BACKEND_USING_CONSOLE=y
 # CONFIG_ULOG_BACKEND_USING_FILE is not set
 # CONFIG_ULOG_USING_FILTER is not set
@@ -432,8 +448,25 @@ CONFIG_RT_USING_ADT_BITMAP=y
 CONFIG_RT_USING_ADT_HASHMAP=y
 CONFIG_RT_USING_ADT_REF=y
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+# CONFIG_RT_USING_USB_DEVICE is not set
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
@@ -443,6 +476,7 @@ CONFIG_RT_USING_UTESTCASES=y
 # Utest Self Testcase
 #
 CONFIG_UTEST_SELF_PASS_TC=y
+# end of Utest Self Testcase
 
 #
 # Kernel Testcase
@@ -458,31 +492,56 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_UTEST_MUTEX_TC is not set
 # CONFIG_UTEST_MAILBOX_TC is not set
 # CONFIG_UTEST_THREAD_TC is not set
+# CONFIG_UTEST_DEVICE_TC is not set
 # CONFIG_UTEST_ATOMIC_TC is not set
 # CONFIG_UTEST_HOOKLIST_TC is not set
 # CONFIG_UTEST_MTSAFE_KPRINT_TC is not set
 # CONFIG_UTEST_SCHEDULER_TC is not set
+# end of Kernel Testcase
 
 #
 # CPP11 Testcase
 #
 # CONFIG_UTEST_CPP11_THREAD_TC is not set
+# end of CPP11 Testcase
 
 #
 # Utest Serial Testcase
 #
 # CONFIG_UTEST_SERIAL_TC is not set
+# end of Utest Serial Testcase
+
+#
+# Utest IPC Testcase
+#
+# CONFIG_UTEST_COMPLETION_TC is not set
+# end of Utest IPC Testcase
 
 #
 # RTT Posix Testcase
 #
 # CONFIG_RTT_POSIX_TESTCASE is not set
+# end of RTT Posix Testcase
 
 #
 # Memory Management Subsytem Testcase
 #
 # CONFIG_UTEST_MM_API_TC is not set
 # CONFIG_UTEST_MM_LWP_TC is not set
+# end of Memory Management Subsytem Testcase
+
+#
+# Tmpfs Testcase
+#
+# CONFIG_UTEST_TMPFS_CP is not set
+# end of Tmpfs Testcase
+
+#
+# SMP Testcase
+#
+# CONFIG_UTEST_SMP_CALL_FUNC is not set
+# end of SMP Testcase
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -491,7 +550,6 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -504,6 +562,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -513,27 +572,35 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -556,6 +623,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -598,6 +667,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -608,6 +679,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -623,18 +695,22 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -646,24 +722,19 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
-CONFIG_PKG_USING_WAVPLAYER=y
-CONFIG_PKG_WAVPLAYER_PATH="/packages/multimedia/wavplayer"
-CONFIG_PKG_WP_USING_PLAY=y
-CONFIG_PKG_WP_PLAY_DEVICE="sound0"
-CONFIG_PKG_WP_USING_RECORD=y
-CONFIG_PKG_WP_RECORD_DEVICE="sound0"
-# CONFIG_PKG_USING_WAVPLAYER_V020 is not set
-CONFIG_PKG_USING_WAVPLAYER_LATEST_VERSION=y
-CONFIG_PKG_WAVPLAYER_VER="latest"
+# CONFIG_PKG_USING_WAVPLAYER is not set
 # CONFIG_PKG_USING_TJPGD is not set
 # CONFIG_PKG_USING_PDFGEN is not set
 # CONFIG_PKG_USING_HELIX is not set
@@ -680,6 +751,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -728,6 +800,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -739,6 +812,9 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -746,6 +822,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -756,6 +833,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -766,6 +844,8 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -789,11 +869,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -817,6 +893,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -829,9 +906,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -841,9 +936,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -913,6 +1011,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -927,6 +1026,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -999,6 +1100,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -1014,15 +1116,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_NCNN is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -1031,6 +1136,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1039,6 +1145,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1054,13 +1161,10 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_DONUT is not set
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
-CONFIG_PKG_USING_OPTPARSE=y
-CONFIG_PKG_OPTPARSE_PATH="/packages/misc/optparse"
-# CONFIG_PKG_USING_OPTPARSE_V100 is not set
-CONFIG_PKG_USING_OPTPARSE_LATEST_VERSION=y
-CONFIG_PKG_OPTPARSE_VER="latest"
-# CONFIG_OPTPARSE_USING_DEMO is not set
+# CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
 # CONFIG_PKG_USING_MINILZO is not set
 # CONFIG_PKG_USING_QUICKLZ is not set
@@ -1092,6 +1196,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1107,6 +1212,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1246,6 +1352,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1257,6 +1365,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1265,6 +1374,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1272,6 +1382,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1282,6 +1394,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1293,12 +1406,14 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1311,10 +1426,13 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1429,7 +1547,6 @@ CONFIG_BSP_USING_CANFD=y
 # CONFIG_BSP_USING_CANFD3 is not set
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
-# CONFIG_BSP_USING_SPI_PDMA is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1447,7 +1564,6 @@ CONFIG_BSP_USING_I2S0=y
 # CONFIG_BSP_USING_I2S1 is not set
 CONFIG_NU_I2S_DMA_FIFO_SIZE=2048
 CONFIG_BSP_USING_QSPI=y
-# CONFIG_BSP_USING_QSPI_PDMA is not set
 CONFIG_BSP_USING_QSPI0=y
 # CONFIG_BSP_USING_QSPI0_PDMA is not set
 # CONFIG_BSP_USING_QSPI1 is not set
@@ -1467,6 +1583,7 @@ CONFIG_BSP_USING_NFI=y
 CONFIG_BSP_USING_USBH=y
 CONFIG_BSP_USING_HSUSBH0=y
 CONFIG_BSP_USING_HSUSBH1=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1480,11 +1597,13 @@ CONFIG_BOARD_USING_STORAGE_RAWNAND=y
 # CONFIG_BOARD_USING_STORAGE_SPIFLASH is not set
 CONFIG_BOARD_USING_STORAGE_SPINAND=y
 CONFIG_BOARD_USING_USBHOST=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_SENSOR0 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1503,3 +1622,5 @@ CONFIG_NU_PKG_USING_NAU8822=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 CONFIG_NU_PKG_USING_SPINAND=y
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 637 - 0
bsp/nuvoton/numaker-iot-ma35d1/rtconfig.h

@@ -0,0 +1,637 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+#define USE_MA35D1_AARCH32
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 4096
+#define RT_USING_TIMER_SOFT
+#define RT_TIMER_THREAD_PRIO 4
+#define RT_TIMER_THREAD_STACK_SIZE 4096
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_PAGE_MAX_ORDER 11
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_MEMHEAP
+#define RT_MEMHEAP_FAST_MODE
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_INTERRUPT_INFO
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 4096
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_CACHE
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_MM_MMU
+#define ARCH_ARM
+#define ARCH_ARM_MMU
+#define ARCH_ARM_CORTEX_A
+#define RT_SMP_AUTO_BOOT
+#define RT_USING_GIC_V2
+#define ARCH_ARMV8
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 4096
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_LEGACY
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 128
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 128
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 32
+#define DFS_FILESYSTEM_TYPES_MAX 32
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 512
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 256
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_MTD_NAND
+#define RT_MTD_NAND_DEBUG
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 4096
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 4096
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 8
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_PIN
+#define RT_USING_KTIME
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+#define RT_USING_POSIX_DELAY
+#define RT_USING_POSIX_CLOCK
+#define RT_USING_PTHREADS
+#define PTHREAD_NUM_MAX 8
+#define RT_USING_MODULE
+#define RT_USING_CUSTOM_DLMODULE
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 32
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 32
+#define RT_LWIP_PBUF_NUM 8192
+#define RT_LWIP_RAW_PCB_NUM 32
+#define RT_LWIP_UDP_PCB_NUM 32
+#define RT_LWIP_TCP_PCB_NUM 32
+#define RT_LWIP_TCP_SEG_NUM 1024
+#define RT_LWIP_TCP_SND_BUF 8192
+#define RT_LWIP_TCP_WND 10240
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 8192
+#define RT_LWIP_TCPTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 4096
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 8192
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_HW_CHECKSUM
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_ULOG
+#define ULOG_OUTPUT_LVL_D
+#define ULOG_OUTPUT_LVL 7
+#define ULOG_USING_ISR_LOG
+#define ULOG_ASSERT_ENABLE
+#define ULOG_LINE_BUF_SIZE 128
+
+/* log format */
+
+#define ULOG_USING_COLOR
+#define ULOG_OUTPUT_TIME
+#define ULOG_OUTPUT_LEVEL
+#define ULOG_OUTPUT_TAG
+/* end of log format */
+#define ULOG_BACKEND_USING_CONSOLE
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+#define RT_USING_ADT
+#define RT_USING_ADT_AVL
+#define RT_USING_ADT_BITMAP
+#define RT_USING_ADT_HASHMAP
+#define RT_USING_ADT_REF
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USBD_THREAD_STACK_SZ 4096
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+#define RT_USING_UTESTCASES
+
+/* Utest Self Testcase */
+
+#define UTEST_SELF_PASS_TC
+/* end of Utest Self Testcase */
+
+/* Kernel Testcase */
+
+#define UTEST_MEMHEAP_TC
+#define UTEST_SMALL_MEM_TC
+/* end of Kernel Testcase */
+
+/* CPP11 Testcase */
+
+/* end of CPP11 Testcase */
+
+/* Utest Serial Testcase */
+
+/* end of Utest Serial Testcase */
+
+/* Utest IPC Testcase */
+
+/* end of Utest IPC Testcase */
+
+/* RTT Posix Testcase */
+
+/* end of RTT Posix Testcase */
+
+/* Memory Management Subsytem Testcase */
+
+/* end of Memory Management Subsytem Testcase */
+
+/* Tmpfs Testcase */
+
+/* end of Tmpfs Testcase */
+
+/* SMP Testcase */
+
+/* end of SMP Testcase */
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_MA35D1
+#define BSP_USING_SSPCC
+#define BSP_USING_SSMCC
+#define BSP_USING_UMCTL2
+#define BSP_USING_RTP
+#define RTP_USING_AT_STARTUP
+#define RT_USING_FPU
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define BSP_USING_PDMA0
+#define BSP_USING_PDMA1
+#define NU_PDMA_MEMFUN_ACTOR_MAX 4
+#define BSP_USING_GPIO
+#define BSP_USING_GMAC
+#define BSP_USING_GMAC0
+#define BSP_USING_GMAC1
+#define BSP_USING_RTC
+#define BSP_USING_EADC
+#define BSP_USING_EADC0
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TIMER1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2
+#define BSP_USING_TMR3
+#define BSP_USING_TIMER3
+#define BSP_USING_TMR4
+#define BSP_USING_TIMER4
+#define BSP_USING_TMR5
+#define BSP_USING_TIMER5
+#define BSP_USING_TMR6
+#define BSP_USING_TIMER6
+#define BSP_USING_TMR7
+#define BSP_USING_TIMER7
+#define BSP_USING_TMR8
+#define BSP_USING_TIMER8
+#define BSP_USING_TMR9
+#define BSP_USING_TIMER9
+#define BSP_USING_TMR10
+#define BSP_USING_TIMER10
+#define BSP_USING_TMR11
+#define BSP_USING_TIMER11
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART10
+#define BSP_USING_UART10_TX_DMA
+#define BSP_USING_UART10_RX_DMA
+#define BSP_USING_UART12
+#define BSP_USING_UART12_TX_DMA
+#define BSP_USING_UART12_RX_DMA
+#define BSP_USING_UART16
+#define BSP_USING_I2C
+#define BSP_USING_I2C0
+#define BSP_USING_I2C1
+#define BSP_USING_I2C2
+#define BSP_USING_I2C4
+#define BSP_USING_I2C5
+#define BSP_USING_SDH
+#define BSP_USING_SDH1
+#define BSP_USING_CANFD
+#define BSP_USING_SPI
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_SPI2_NONE
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_I2S
+#define BSP_USING_I2S0
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_HWSEM
+#define BSP_USING_HWSEM0
+#define BSP_USING_WHC
+#define BSP_USING_WHC0
+#define BSP_USING_NFI
+#define BSP_USING_USBH
+#define BSP_USING_HSUSBH0
+#define BSP_USING_HSUSBH1
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_CONSOLE
+#define BOARD_USING_NAU8822
+#define BOARD_USING_GMAC0
+#define BOARD_USING_GMAC1
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_RAWNAND
+#define BOARD_USING_STORAGE_SPINAND
+#define BOARD_USING_USBHOST
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NAU8822
+#define NU_PKG_USING_SPINAND
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 171 - 40
bsp/nuvoton/numaker-m032ki/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -29,18 +24,29 @@ CONFIG_IDLE_THREAD_STACK_SIZE=512
 CONFIG_RT_USING_TIMER_SOFT=y
 CONFIG_RT_TIMER_THREAD_PRIO=4
 CONFIG_RT_TIMER_THREAD_STACK_SIZE=512
+# CONFIG_RT_USING_TIMER_ALL_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -52,6 +58,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 # CONFIG_RT_USING_SIGNALS is not set
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -68,6 +75,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -76,14 +85,11 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
-# CONFIG_RT_USING_HW_ATOMIC is not set
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
-# CONFIG_RT_USING_CPU_FFS is not set
+# end of RT-Thread Kernel
+
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
 CONFIG_ARCH_ARM_CORTEX_M0=y
@@ -132,12 +138,15 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_RAMFS is not set
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
+# end of DFS: device virtual file system
+
 # CONFIG_RT_USING_FAL is not set
 
 #
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 # CONFIG_RT_USING_SYSTEM_WORKQUEUE is not set
@@ -156,6 +165,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 CONFIG_RT_USING_PM=y
@@ -175,35 +186,13 @@ CONFIG_RT_USING_WDT=y
 # CONFIG_RT_USING_TOUCH is not set
 # CONFIG_RT_USING_LCD is not set
 # CONFIG_RT_USING_HWCRYPTO is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-# CONFIG_RT_USING_USB_HOST is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-CONFIG_RT_USB_DEVICE_COMPOSITE=y
-# CONFIG_RT_USB_DEVICE_CDC is not set
-CONFIG_RT_USB_DEVICE_NONE=y
-# CONFIG_RT_USB_DEVICE_MSTORAGE is not set
-CONFIG_RT_USB_DEVICE_HID=y
-# CONFIG_RT_USB_DEVICE_WINUSB is not set
-# CONFIG_RT_USB_DEVICE_AUDIO is not set
-# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
-CONFIG_RT_USB_DEVICE_HID_MOUSE=y
-# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
-# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -221,6 +210,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -242,7 +233,11 @@ CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -251,12 +246,14 @@ CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
 # CONFIG_RT_USING_NETDEV is not set
 # CONFIG_RT_USING_LWIP is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -270,8 +267,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+# CONFIG_RT_USING_USB_HOST is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+CONFIG_RT_USB_DEVICE_COMPOSITE=y
+# CONFIG_RT_USB_DEVICE_CDC is not set
+CONFIG_RT_USB_DEVICE_NONE=y
+# CONFIG_RT_USB_DEVICE_MSTORAGE is not set
+CONFIG_RT_USB_DEVICE_HID=y
+# CONFIG_RT_USB_DEVICE_WINUSB is not set
+# CONFIG_RT_USB_DEVICE_AUDIO is not set
+# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
+CONFIG_RT_USB_DEVICE_HID_MOUSE=y
+# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
+# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
@@ -281,6 +305,7 @@ CONFIG_RT_USING_UTESTCASES=y
 # Utest Self Testcase
 #
 CONFIG_UTEST_SELF_PASS_TC=y
+# end of Utest Self Testcase
 
 #
 # Kernel Testcase
@@ -295,31 +320,56 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_UTEST_MUTEX_TC is not set
 # CONFIG_UTEST_MAILBOX_TC is not set
 # CONFIG_UTEST_THREAD_TC is not set
+# CONFIG_UTEST_DEVICE_TC is not set
 # CONFIG_UTEST_ATOMIC_TC is not set
 # CONFIG_UTEST_HOOKLIST_TC is not set
 # CONFIG_UTEST_MTSAFE_KPRINT_TC is not set
 # CONFIG_UTEST_SCHEDULER_TC is not set
+# end of Kernel Testcase
 
 #
 # CPP11 Testcase
 #
 # CONFIG_UTEST_CPP11_THREAD_TC is not set
+# end of CPP11 Testcase
 
 #
 # Utest Serial Testcase
 #
 # CONFIG_UTEST_SERIAL_TC is not set
+# end of Utest Serial Testcase
+
+#
+# Utest IPC Testcase
+#
+# CONFIG_UTEST_COMPLETION_TC is not set
+# end of Utest IPC Testcase
 
 #
 # RTT Posix Testcase
 #
 # CONFIG_RTT_POSIX_TESTCASE is not set
+# end of RTT Posix Testcase
 
 #
 # Memory Management Subsytem Testcase
 #
 # CONFIG_UTEST_MM_API_TC is not set
 # CONFIG_UTEST_MM_LWP_TC is not set
+# end of Memory Management Subsytem Testcase
+
+#
+# Tmpfs Testcase
+#
+# CONFIG_UTEST_TMPFS_CP is not set
+# end of Tmpfs Testcase
+
+#
+# SMP Testcase
+#
+# CONFIG_UTEST_SMP_CALL_FUNC is not set
+# end of SMP Testcase
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -328,7 +378,6 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -341,6 +390,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -350,27 +400,35 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -393,6 +451,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -435,6 +495,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -445,6 +507,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -460,18 +523,22 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -483,12 +550,15 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -508,6 +578,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_QRCODE is not set
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -557,6 +628,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -568,6 +640,9 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -575,6 +650,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -585,6 +661,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -595,6 +672,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -642,6 +721,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -654,9 +734,27 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -666,9 +764,12 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -738,6 +839,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -752,6 +854,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -824,6 +928,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -838,15 +943,18 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -855,6 +963,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -863,6 +972,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -879,6 +989,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -912,6 +1024,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -927,6 +1040,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1066,6 +1180,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1077,6 +1193,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1085,6 +1202,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1092,6 +1210,8 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1102,6 +1222,7 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1113,12 +1234,14 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1131,10 +1254,13 @@ CONFIG_UTEST_SMALL_MEM_TC=y
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1204,17 +1330,20 @@ CONFIG_BSP_USING_UART7=y
 CONFIG_BSP_USING_WDT=y
 # CONFIG_BSP_USING_EBI is not set
 CONFIG_BSP_USING_USBD=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
 #
 CONFIG_BSP_USING_NULINKME=y
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_STORAGE_SPIFLASH is not set
 # CONFIG_BOARD_USING_LCD_ILI9341 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1233,3 +1362,5 @@ CONFIG_NU_PKG_USING_DEMO=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 442 - 0
bsp/nuvoton/numaker-m032ki/rtconfig.h

@@ -0,0 +1,442 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 512
+#define RT_USING_TIMER_SOFT
+#define RT_TIMER_THREAD_PRIO 4
+#define RT_TIMER_THREAD_STACK_SIZE 512
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M0
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define DFS_FD_MAX 16
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 2
+#define DFS_FILESYSTEM_TYPES_MAX 2
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 64
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_PM
+#define PM_TICKLESS_THRESHOLD_TIME 2
+#define RT_USING_RTC
+#define RT_USING_WDT
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define RT_USB_DEVICE_COMPOSITE
+#define RT_USB_DEVICE_NONE
+#define RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID_MOUSE
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+#define RT_USING_UTESTCASES
+
+/* Utest Self Testcase */
+
+#define UTEST_SELF_PASS_TC
+/* end of Utest Self Testcase */
+
+/* Kernel Testcase */
+
+#define UTEST_SMALL_MEM_TC
+/* end of Kernel Testcase */
+
+/* CPP11 Testcase */
+
+/* end of CPP11 Testcase */
+
+/* Utest Serial Testcase */
+
+/* end of Utest Serial Testcase */
+
+/* Utest IPC Testcase */
+
+/* end of Utest IPC Testcase */
+
+/* RTT Posix Testcase */
+
+/* end of RTT Posix Testcase */
+
+/* Memory Management Subsytem Testcase */
+
+/* end of Memory Management Subsytem Testcase */
+
+/* Tmpfs Testcase */
+
+/* end of Tmpfs Testcase */
+
+/* SMP Testcase */
+
+/* end of SMP Testcase */
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M032
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 4
+#define NU_PDMA_SGTBL_POOL_SIZE 16
+#define BSP_USING_GPIO
+#define BSP_USING_CLK
+#define NU_CLK_INVOKE_WKTMR
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_IO_RW
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_ADC
+#define BSP_USING_ADC0
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TIMER1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART1_TX_DMA
+#define BSP_USING_UART1_RX_DMA
+#define BSP_USING_UART2
+#define BSP_USING_UART3
+#define BSP_USING_UART4
+#define BSP_USING_UART5
+#define BSP_USING_UART6
+#define BSP_USING_UART7
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 154 - 46
bsp/nuvoton/numaker-m2354/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,18 +22,28 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=2048
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -50,6 +55,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -66,6 +72,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -74,14 +82,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
-# CONFIG_RT_USING_CPU_FFS is not set
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
 CONFIG_ARCH_ARM_CORTEX_M23=y
@@ -147,12 +153,16 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
 # CONFIG_RT_USING_DFS_RAMFS is not set
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -163,6 +173,7 @@ CONFIG_FAL_PART_HAS_TABLE_CFG=y
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -189,6 +200,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 CONFIG_RT_USING_PM=y
@@ -262,39 +275,13 @@ CONFIG_RT_HWCRYPTO_USING_CRC_1021=y
 # CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set
 CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
-# CONFIG__RT_USB_DEVICE_NONE is not set
-# CONFIG__RT_USB_DEVICE_CDC is not set
-# CONFIG__RT_USB_DEVICE_MSTORAGE is not set
-CONFIG__RT_USB_DEVICE_HID=y
-# CONFIG__RT_USB_DEVICE_WINUSB is not set
-# CONFIG__RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_USB_DEVICE_HID=y
-# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
-CONFIG_RT_USB_DEVICE_HID_MOUSE=y
-# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
-# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -312,6 +299,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -343,7 +332,11 @@ CONFIG_RT_USING_POSIX_SELECT=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -357,16 +350,18 @@ CONFIG_SAL_INTERNET_CHECK=y
 # CONFIG_SAL_USING_LWIP is not set
 CONFIG_SAL_USING_AT=y
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 # CONFIG_RT_USING_LWIP is not set
 CONFIG_RT_USING_AT=y
 # CONFIG_AT_DEBUG is not set
@@ -378,12 +373,14 @@ CONFIG_AT_USING_SOCKET=y
 CONFIG_AT_USING_CLI=y
 # CONFIG_AT_PRINT_RAW_CMD is not set
 CONFIG_AT_SW_VERSION_NUM=0x10301
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -397,12 +394,44 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
+# CONFIG__RT_USB_DEVICE_NONE is not set
+# CONFIG__RT_USB_DEVICE_CDC is not set
+# CONFIG__RT_USB_DEVICE_MSTORAGE is not set
+CONFIG__RT_USB_DEVICE_HID=y
+# CONFIG__RT_USB_DEVICE_WINUSB is not set
+# CONFIG__RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_USB_DEVICE_HID=y
+# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
+CONFIG_RT_USB_DEVICE_HID_MOUSE=y
+# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
+# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -411,7 +440,6 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -424,6 +452,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -433,27 +462,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -516,6 +553,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -558,6 +597,8 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -568,6 +609,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -583,18 +625,22 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -606,12 +652,15 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -631,6 +680,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_QRCODE is not set
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -679,6 +729,7 @@ CONFIG_PKG_AT_DEVICE_VER_NUM=0x99999
 # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -709,6 +760,9 @@ CONFIG_PKG_VSNPRINTF_LOG10_TAYLOR_TERMS=4
 # CONFIG_RT_VSNPRINTF_FULL_REPLACING_VSNPRINTF is not set
 CONFIG_PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION=y
 CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -716,6 +770,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -726,6 +781,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -736,6 +792,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -783,6 +841,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -795,9 +854,27 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -807,9 +884,12 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -879,6 +959,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -893,6 +974,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -965,6 +1048,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -979,15 +1063,18 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -996,6 +1083,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1004,6 +1092,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1020,6 +1109,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -1053,6 +1144,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1068,6 +1160,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1207,6 +1300,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1218,6 +1313,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1226,6 +1322,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1233,6 +1330,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1243,6 +1342,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1254,12 +1354,14 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1272,10 +1374,13 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1329,8 +1434,6 @@ CONFIG_BSP_USING_SDH0=y
 # CONFIG_BSP_USING_BPWM is not set
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
-# CONFIG_BSP_USING_SPI_PDMA is not set
-# CONFIG_BSP_USING_SPII2S is not set
 # CONFIG_BSP_USING_SPI0_NONE is not set
 CONFIG_BSP_USING_SPI0=y
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1363,6 +1466,7 @@ CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_USBH=y
 CONFIG_NU_USBHOST_HUB_POLLING_INTERVAL=100
 CONFIG_BSP_USING_OTG=y
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1374,12 +1478,14 @@ CONFIG_BOARD_USING_STORAGE_SDCARD=y
 # CONFIG_BOARD_USING_USBH is not set
 CONFIG_BOARD_USING_OTG=y
 # CONFIG_BOARD_USING_USB_NONE is not set
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_LCD_ILI9341 is not set
 CONFIG_BOARD_USING_SEGMENT_LCD=y
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1398,3 +1504,5 @@ CONFIG_NU_PKG_USING_DEMO=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 537 - 0
bsp/nuvoton/numaker-m2354/rtconfig.h

@@ -0,0 +1,537 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 2048
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M23
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 4096
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 32
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 4
+#define DFS_FILESYSTEM_TYPES_MAX 4
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 2
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 2048
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_PM
+#define PM_TICKLESS_THRESHOLD_TIME 2
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 2048
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 2048
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 16
+#define RT_SDIO_DEBUG
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_USING_QSPI
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_DEBUG_SFUD
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_SENSOR
+#define RT_USING_SENSOR_CMD
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_DES
+#define RT_HWCRYPTO_USING_DES_ECB
+#define RT_HWCRYPTO_USING_DES_CBC
+#define RT_HWCRYPTO_USING_3DES
+#define RT_HWCRYPTO_USING_3DES_ECB
+#define RT_HWCRYPTO_USING_3DES_CBC
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_HWCRYPTO_USING_CRC
+#define RT_HWCRYPTO_USING_CRC_07
+#define RT_HWCRYPTO_USING_CRC_8005
+#define RT_HWCRYPTO_USING_CRC_1021
+#define RT_HWCRYPTO_USING_CRC_04C11DB7
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_AT
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_AT
+#define AT_USING_CLIENT
+#define AT_CLIENT_NUM_MAX 1
+#define AT_USING_SOCKET
+#define AT_USING_CLI
+#define AT_SW_VERSION_NUM 0x10301
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define _RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID_MOUSE
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+#define PKG_USING_AT_DEVICE
+#define AT_DEVICE_USING_ESP8266
+#define AT_DEVICE_ESP8266_INIT_ASYN
+#define AT_DEVICE_ESP8266_SOCKET
+#define AT_DEVICE_ESP8266_SAMPLE
+#define ESP8266_SAMPLE_WIFI_SSID "NT_ZY_BUFFALO"
+#define ESP8266_SAMPLE_WIFI_PASSWORD "12345678"
+#define ESP8266_SAMPLE_CLIENT_NAME "uart4"
+#define ESP8266_SAMPLE_RECV_BUFF_LEN 2048
+#define PKG_USING_AT_DEVICE_LATEST_VERSION
+#define PKG_AT_DEVICE_VER_NUM 0x99999
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+#define PKG_USING_RT_VSNPRINTF_FULL
+#define PKG_VSNPRINTF_SUPPORT_DECIMAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_EXPONENTIAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_WRITEBACK_SPECIFIER
+#define PKG_VSNPRINTF_SUPPORT_LONG_LONG
+#define PKG_VSNPRINTF_CHECK_FOR_NUL_IN_FORMAT_SPECIFIER
+#define PKG_VSNPRINTF_INTEGER_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DECIMAL_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DEFAULT_FLOAT_PRECISION 6
+#define PKG_VSNPRINTF_MAX_INTEGRAL_DIGITS_FOR_DECIMAL 9
+#define PKG_VSNPRINTF_LOG10_TAYLOR_TERMS 4
+#define PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M2354
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define NU_PDMA_SGTBL_POOL_SIZE 16
+#define BSP_USING_FMC
+#define BSP_USING_GPIO
+#define BSP_USING_CLK
+#define NU_CLK_INVOKE_WKTMR
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_EADC
+#define BSP_USING_EADC0
+#define BSP_USING_TMR
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART4
+#define BSP_USING_UART4_TX_DMA
+#define BSP_USING_UART4_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C1
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_SPI
+#define BSP_USING_SPI0
+#define BSP_USING_SPI1
+#define BSP_USING_SPI2_NONE
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_CRYPTO
+#define BSP_USING_TRNG
+#define BSP_USING_CRC
+#define NU_CRC_USE_PDMA
+#define BSP_USING_WDT
+#define BSP_USING_SLCD
+#define BSP_USING_USBD
+#define BSP_USING_USBH
+#define NU_USBHOST_HUB_POLLING_INTERVAL 100
+#define BSP_USING_OTG
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+#define BOARD_USING_ESP8266
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_OTG
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+#define BOARD_USING_SEGMENT_LCD
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 161 - 64
bsp/nuvoton/numaker-m467hj/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,18 +22,28 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=1024
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -50,6 +55,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -66,6 +72,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -74,13 +82,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
@@ -147,6 +154,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -154,6 +163,8 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -165,6 +176,7 @@ CONFIG_FAL_USING_NOR_FLASH_DEV_NAME="norflash0"
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -191,6 +203,9 @@ CONFIG_RT_USING_I2C_BITOPS=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+CONFIG_RT_USING_INPUT_CAPTURE=y
+CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 # CONFIG_RT_USING_PM is not set
@@ -259,39 +274,13 @@ CONFIG_RT_HWCRYPTO_USING_CRC_1021=y
 # CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set
 CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-CONFIG_RT_USING_INPUT_CAPTURE=y
-CONFIG_RT_INPUT_CAPTURE_RB_SIZE=100
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
-#
-# Using USB
-#
-CONFIG_RT_USING_USB=y
-CONFIG_RT_USING_USB_HOST=y
-CONFIG_RT_USBH_MSTORAGE=y
-CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
-# CONFIG_RT_USBH_HID is not set
-CONFIG_RT_USING_USB_DEVICE=y
-CONFIG_RT_USBD_THREAD_STACK_SZ=4096
-CONFIG_USB_VENDOR_ID=0x0FFE
-CONFIG_USB_PRODUCT_ID=0x0001
-# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
-# CONFIG__RT_USB_DEVICE_NONE is not set
-# CONFIG__RT_USB_DEVICE_CDC is not set
-CONFIG__RT_USB_DEVICE_MSTORAGE=y
-# CONFIG__RT_USB_DEVICE_HID is not set
-# CONFIG__RT_USB_DEVICE_RNDIS is not set
-# CONFIG__RT_USB_DEVICE_ECM is not set
-# CONFIG__RT_USB_DEVICE_WINUSB is not set
-# CONFIG__RT_USB_DEVICE_AUDIO is not set
-CONFIG_RT_USB_DEVICE_MSTORAGE=y
-CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 
 #
 # C/C++ and POSIX layer
@@ -309,6 +298,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -340,7 +331,11 @@ CONFIG_RT_USING_POSIX_SOCKET=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -354,16 +349,18 @@ CONFIG_RT_USING_SAL=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -387,6 +384,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.31.55"
 CONFIG_RT_LWIP_GWADDR="192.168.31.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -424,12 +423,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -457,6 +458,8 @@ CONFIG_ULOG_OUTPUT_TIME=y
 CONFIG_ULOG_OUTPUT_LEVEL=y
 CONFIG_ULOG_OUTPUT_TAG=y
 # CONFIG_ULOG_OUTPUT_THREAD_NAME is not set
+# end of log format
+
 CONFIG_ULOG_BACKEND_USING_CONSOLE=y
 # CONFIG_ULOG_BACKEND_USING_FILE is not set
 # CONFIG_ULOG_USING_FILTER is not set
@@ -468,12 +471,43 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
+# CONFIG__RT_USB_DEVICE_NONE is not set
+# CONFIG__RT_USB_DEVICE_CDC is not set
+CONFIG__RT_USB_DEVICE_MSTORAGE=y
+# CONFIG__RT_USB_DEVICE_HID is not set
+# CONFIG__RT_USB_DEVICE_RNDIS is not set
+# CONFIG__RT_USB_DEVICE_ECM is not set
+# CONFIG__RT_USB_DEVICE_WINUSB is not set
+# CONFIG__RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_USB_DEVICE_MSTORAGE=y
+CONFIG_RT_USB_MSTORAGE_DISK_NAME="ramdisk1"
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -482,7 +516,6 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -495,6 +528,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -504,27 +538,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -547,6 +589,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -589,6 +633,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -599,6 +645,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -614,18 +661,22 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -637,24 +688,19 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
-CONFIG_PKG_USING_WAVPLAYER=y
-CONFIG_PKG_WAVPLAYER_PATH="/packages/multimedia/wavplayer"
-CONFIG_PKG_WP_USING_PLAY=y
-CONFIG_PKG_WP_PLAY_DEVICE="sound0"
-CONFIG_PKG_WP_USING_RECORD=y
-CONFIG_PKG_WP_RECORD_DEVICE="sound0"
-# CONFIG_PKG_USING_WAVPLAYER_V020 is not set
-CONFIG_PKG_USING_WAVPLAYER_LATEST_VERSION=y
-CONFIG_PKG_WAVPLAYER_VER="latest"
+# CONFIG_PKG_USING_WAVPLAYER is not set
 # CONFIG_PKG_USING_TJPGD is not set
 # CONFIG_PKG_USING_PDFGEN is not set
 # CONFIG_PKG_USING_HELIX is not set
@@ -671,6 +717,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -720,6 +767,7 @@ CONFIG_PKG_WAVPLAYER_VER="latest"
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -750,6 +798,9 @@ CONFIG_PKG_VSNPRINTF_LOG10_TAYLOR_TERMS=4
 # CONFIG_RT_VSNPRINTF_FULL_REPLACING_VSNPRINTF is not set
 CONFIG_PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION=y
 CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -757,6 +808,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -767,6 +819,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -777,6 +830,8 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -800,11 +855,7 @@ CONFIG_PKG_RT_VSNPRINTF_FULL_VER="latest"
 # CONFIG_PKG_USING_SYSWATCH is not set
 # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
 # CONFIG_PKG_USING_PLCCORE is not set
-CONFIG_PKG_USING_RAMDISK=y
-CONFIG_PKG_RAMDISK_PATH="/packages/system/ramdisk"
-# CONFIG_PKG_USING_RAMDISK_V010 is not set
-CONFIG_PKG_USING_RAMDISK_LATEST_VERSION=y
-CONFIG_PKG_RAMDISK_VER="latest"
+# CONFIG_PKG_USING_RAMDISK is not set
 # CONFIG_PKG_USING_MININI is not set
 # CONFIG_PKG_USING_QBOOT is not set
 # CONFIG_PKG_USING_PPOOL is not set
@@ -828,6 +879,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -840,9 +892,27 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -852,9 +922,12 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -924,6 +997,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -938,6 +1012,8 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -1010,6 +1086,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -1024,15 +1101,18 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -1041,6 +1121,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -1049,6 +1130,7 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1065,13 +1147,10 @@ CONFIG_PKG_RAMDISK_VER="latest"
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
-CONFIG_PKG_USING_OPTPARSE=y
-CONFIG_PKG_OPTPARSE_PATH="/packages/misc/optparse"
-# CONFIG_PKG_USING_OPTPARSE_V100 is not set
-CONFIG_PKG_USING_OPTPARSE_LATEST_VERSION=y
-CONFIG_PKG_OPTPARSE_VER="latest"
-# CONFIG_OPTPARSE_USING_DEMO is not set
+# CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
 # CONFIG_PKG_USING_MINILZO is not set
 # CONFIG_PKG_USING_QUICKLZ is not set
@@ -1103,6 +1182,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1118,6 +1198,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1257,6 +1338,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1268,6 +1351,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1276,6 +1360,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1283,6 +1368,8 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1293,6 +1380,7 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1304,12 +1392,14 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1322,10 +1412,13 @@ CONFIG_PKG_OPTPARSE_VER="latest"
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1402,7 +1495,6 @@ CONFIG_BSP_USING_CANFD0=y
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
 CONFIG_BSP_USING_SPI_PDMA=y
-# CONFIG_BSP_USING_SPII2S is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1463,6 +1555,7 @@ CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_HSUSBH=y
 CONFIG_NU_USBHOST_HUB_POLLING_INTERVAL=100
 # CONFIG_BSP_USING_HSOTG is not set
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1482,6 +1575,7 @@ CONFIG_BOARD_USING_USB_D_H=y
 # CONFIG_BOARD_USING_HSUSBH is not set
 CONFIG_BOARD_USING_HSUSBH_USBD=y
 # CONFIG_BOARD_USING_HSOTG is not set
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
@@ -1492,6 +1586,7 @@ CONFIG_BOARD_USING_HSUSBH_USBD=y
 # CONFIG_BOARD_USING_ST1663I is not set
 # CONFIG_BOARD_USING_SENSOR0 is not set
 CONFIG_BOARD_USING_SENSON0_ID=
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1510,3 +1605,5 @@ CONFIG_NU_PKG_USING_NAU8822=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 615 - 0
bsp/nuvoton/numaker-m467hj/rtconfig.h

@@ -0,0 +1,615 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 1024
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M4
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_LEGACY
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 2048
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 32
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 8
+#define DFS_FILESYSTEM_TYPES_MAX 8
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+#define FAL_USING_SFUD_PORT
+#define FAL_USING_NOR_FLASH_DEV_NAME "norflash0"
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 512
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_PWM
+#define RT_USING_INPUT_CAPTURE
+#define RT_INPUT_CAPTURE_RB_SIZE 100
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 2048
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 2048
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 16
+#define RT_SDIO_DEBUG
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_USING_QSPI
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_DEBUG_SFUD
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_SENSOR
+#define RT_USING_SENSOR_V2
+#define RT_USING_SENSOR_CMD
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_DES
+#define RT_HWCRYPTO_USING_DES_ECB
+#define RT_HWCRYPTO_USING_DES_CBC
+#define RT_HWCRYPTO_USING_3DES
+#define RT_HWCRYPTO_USING_3DES_ECB
+#define RT_HWCRYPTO_USING_3DES_CBC
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_HWCRYPTO_USING_CRC
+#define RT_HWCRYPTO_USING_CRC_07
+#define RT_HWCRYPTO_USING_CRC_8005
+#define RT_HWCRYPTO_USING_CRC_1021
+#define RT_HWCRYPTO_USING_CRC_04C11DB7
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+#define RT_USING_POSIX_POLL
+#define RT_USING_POSIX_SELECT
+#define RT_USING_POSIX_SOCKET
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP212
+#define RT_USING_LWIP_VER_NUM 0x20102
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.31.55"
+#define RT_LWIP_GWADDR "192.168.31.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 8
+#define RT_LWIP_PBUF_NUM 64
+#define RT_LWIP_RAW_PCB_NUM 4
+#define RT_LWIP_UDP_PCB_NUM 4
+#define RT_LWIP_TCP_PCB_NUM 4
+#define RT_LWIP_TCP_SEG_NUM 64
+#define RT_LWIP_TCP_SND_BUF 8192
+#define RT_LWIP_TCP_WND 10240
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 64
+#define RT_LWIP_TCPTHREAD_STACKSIZE 2048
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 2048
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 64
+#define RT_LWIP_REASSEMBLY_FRAG
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define RT_LWIP_NETIF_LOOPBACK
+#define LWIP_NETIF_LOOPBACK 1
+#define RT_LWIP_STATS
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_ULOG
+#define ULOG_OUTPUT_LVL_D
+#define ULOG_OUTPUT_LVL 7
+#define ULOG_ASSERT_ENABLE
+#define ULOG_LINE_BUF_SIZE 128
+
+/* log format */
+
+#define ULOG_USING_COLOR
+#define ULOG_OUTPUT_TIME
+#define ULOG_OUTPUT_LEVEL
+#define ULOG_OUTPUT_TAG
+/* end of log format */
+#define ULOG_BACKEND_USING_CONSOLE
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define _RT_USB_DEVICE_MSTORAGE
+#define RT_USB_DEVICE_MSTORAGE
+#define RT_USB_MSTORAGE_DISK_NAME "ramdisk1"
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+#define PKG_USING_RT_VSNPRINTF_FULL
+#define PKG_VSNPRINTF_SUPPORT_DECIMAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_EXPONENTIAL_SPECIFIERS
+#define PKG_VSNPRINTF_SUPPORT_WRITEBACK_SPECIFIER
+#define PKG_VSNPRINTF_SUPPORT_LONG_LONG
+#define PKG_VSNPRINTF_CHECK_FOR_NUL_IN_FORMAT_SPECIFIER
+#define PKG_VSNPRINTF_INTEGER_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DECIMAL_BUFFER_SIZE 32
+#define PKG_VSNPRINTF_DEFAULT_FLOAT_PRECISION 6
+#define PKG_VSNPRINTF_MAX_INTEGRAL_DIGITS_FOR_DECIMAL 9
+#define PKG_VSNPRINTF_LOG10_TAYLOR_TERMS 4
+#define PKG_USING_RT_VSNPRINTF_FULL_LATEST_VERSION
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M460
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define NU_PDMA_SGTBL_POOL_SIZE 32
+#define BSP_USING_FMC
+#define BSP_USING_GPIO
+#define BSP_USING_EMAC
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_TMR
+#define BSP_USING_TIMER
+#define BSP_USING_TPWM
+#define BSP_USING_TIMER_CAPTURE
+#define BSP_USING_TMR0
+#define BSP_USING_TIMER0
+#define BSP_USING_TMR1
+#define BSP_USING_TPWM1
+#define BSP_USING_TMR2
+#define BSP_USING_TIMER2_CAPTURE
+#define BSP_USING_TMR3
+#define BSP_USING_TIMER3
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_UART1
+#define BSP_USING_UART1_TX_DMA
+#define BSP_USING_UART1_RX_DMA
+#define BSP_USING_I2C
+#define BSP_USING_I2C2
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_CANFD
+#define BSP_USING_CANFD0
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_SPI2
+#define BSP_USING_SPI2_PDMA
+#define BSP_USING_SPI3_NONE
+#define BSP_USING_SPI4_NONE
+#define BSP_USING_SPI5_NONE
+#define BSP_USING_SPI6_NONE
+#define BSP_USING_SPI7_NONE
+#define BSP_USING_SPI8_NONE
+#define BSP_USING_SPI9_NONE
+#define BSP_USING_SPI10_NONE
+#define BSP_USING_I2S
+#define BSP_USING_I2S0
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_CRYPTO
+#define BSP_USING_TRNG
+#define BSP_USING_CRC
+#define NU_CRC_USE_PDMA
+#define BSP_USING_WDT
+#define BSP_USING_EBI
+#define BSP_USING_HBI
+#define BSP_USING_USBD
+#define BSP_USING_HSUSBH
+#define NU_USBHOST_HUB_POLLING_INTERVAL 100
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+#define BOARD_USING_RTL8201FI
+#define BOARD_USING_NAU8822
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_CANFD0
+#define BOARD_USING_EXTERNAL_HYPERRAM
+#define BOARD_USING_HYPERRAM_SIZE 8388608
+#define BOARD_USING_NCT7717U
+#define BOARD_USING_USB_D_H
+#define BOARD_USING_HSUSBH_USBD
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+#define BOARD_USING_SENSON0_ID
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_NCT7717U
+#define NU_PKG_USING_NAU8822
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif

+ 158 - 20
bsp/nuvoton/numaker-pfm-m487/.config

@@ -1,7 +1,3 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# RT-Thread Configuration
-#
 
 #
 # RT-Thread Kernel
@@ -19,7 +15,6 @@ CONFIG_RT_THREAD_PRIORITY_32=y
 # CONFIG_RT_THREAD_PRIORITY_256 is not set
 CONFIG_RT_THREAD_PRIORITY_MAX=32
 CONFIG_RT_TICK_PER_SECOND=1000
-CONFIG_RT_USING_OVERFLOW_CHECK=y
 CONFIG_RT_USING_HOOK=y
 CONFIG_RT_HOOK_USING_FUNC_PTR=y
 # CONFIG_RT_USING_HOOKLIST is not set
@@ -27,18 +22,28 @@ CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=1024
 # CONFIG_RT_USING_TIMER_SOFT is not set
+# CONFIG_RT_USING_CPU_USAGE_TRACER is not set
 
 #
 # kservice optimization
 #
-# CONFIG_RT_KSERVICE_USING_STDLIB is not set
-# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
 # CONFIG_RT_USING_TINY_FFS is not set
-# CONFIG_RT_KPRINTF_USING_LONGLONG is not set
+# end of kservice optimization
+
+#
+# klibc optimization
+#
+# CONFIG_RT_KLIBC_USING_STDLIB is not set
+# CONFIG_RT_KLIBC_USING_TINY_SIZE is not set
+# CONFIG_RT_KLIBC_USING_PRINTF_LONGLONG is not set
+# end of klibc optimization
+
 CONFIG_RT_USING_DEBUG=y
+CONFIG_RT_DEBUGING_ASSERT=y
 CONFIG_RT_DEBUGING_COLOR=y
 CONFIG_RT_DEBUGING_CONTEXT=y
 # CONFIG_RT_DEBUGING_AUTO_INIT is not set
+CONFIG_RT_USING_OVERFLOW_CHECK=y
 
 #
 # Inter-Thread communication
@@ -50,6 +55,7 @@ CONFIG_RT_USING_MAILBOX=y
 CONFIG_RT_USING_MESSAGEQUEUE=y
 # CONFIG_RT_USING_MESSAGEQUEUE_PRIORITY is not set
 CONFIG_RT_USING_SIGNALS=y
+# end of Inter-Thread communication
 
 #
 # Memory Management
@@ -66,6 +72,8 @@ CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y
 # CONFIG_RT_USING_MEMTRACE is not set
 # CONFIG_RT_USING_HEAP_ISR is not set
 CONFIG_RT_USING_HEAP=y
+# end of Memory Management
+
 CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
@@ -74,13 +82,12 @@ CONFIG_RT_USING_DEVICE=y
 CONFIG_RT_USING_CONSOLE=y
 CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
-CONFIG_RT_VER_NUM=0x50100
+CONFIG_RT_VER_NUM=0x50200
 # CONFIG_RT_USING_STDC_ATOMIC is not set
 CONFIG_RT_BACKTRACE_LEVEL_MAX_NR=32
-# CONFIG_RT_USING_CACHE is not set
+# end of RT-Thread Kernel
+
 CONFIG_RT_USING_HW_ATOMIC=y
-# CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE is not set
-# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM=y
 CONFIG_ARCH_ARM_CORTEX_M=y
@@ -147,6 +154,8 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096
 CONFIG_RT_DFS_ELM_REENTRANT=y
 CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
 # CONFIG_RT_DFS_ELM_USE_EXFAT is not set
+# end of elm-chan's FatFs, Generic FAT Filesystem Module
+
 CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_ROMFS is not set
 # CONFIG_RT_USING_DFS_CROMFS is not set
@@ -154,6 +163,8 @@ CONFIG_RT_USING_DFS_DEVFS=y
 # CONFIG_RT_USING_DFS_TMPFS is not set
 # CONFIG_RT_USING_DFS_MQUEUE is not set
 # CONFIG_RT_USING_DFS_NFS is not set
+# end of DFS: device virtual file system
+
 CONFIG_RT_USING_FAL=y
 CONFIG_FAL_DEBUG_CONFIG=y
 CONFIG_FAL_DEBUG=1
@@ -164,6 +175,7 @@ CONFIG_FAL_PART_HAS_TABLE_CFG=y
 # Device Drivers
 #
 # CONFIG_RT_USING_DM is not set
+# CONFIG_RT_USING_DEV_BUS is not set
 CONFIG_RT_USING_DEVICE_IPC=y
 CONFIG_RT_UNAMED_PIPE_NUMBER=64
 CONFIG_RT_USING_SYSTEM_WORKQUEUE=y
@@ -190,6 +202,8 @@ CONFIG_RT_USING_ADC=y
 # CONFIG_RT_USING_ZERO is not set
 # CONFIG_RT_USING_RANDOM is not set
 CONFIG_RT_USING_PWM=y
+# CONFIG_RT_USING_PULSE_ENCODER is not set
+# CONFIG_RT_USING_INPUT_CAPTURE is not set
 # CONFIG_RT_USING_MTD_NOR is not set
 # CONFIG_RT_USING_MTD_NAND is not set
 CONFIG_RT_USING_PM=y
@@ -261,15 +275,13 @@ CONFIG_RT_HWCRYPTO_USING_CRC_1021=y
 # CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set
 CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y
 # CONFIG_RT_HWCRYPTO_USING_BIGNUM is not set
-# CONFIG_RT_USING_PULSE_ENCODER is not set
-# CONFIG_RT_USING_INPUT_CAPTURE is not set
-# CONFIG_RT_USING_DEV_BUS is not set
 # CONFIG_RT_USING_WIFI is not set
 # CONFIG_RT_USING_VIRTIO is not set
 CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_KTIME is not set
 CONFIG_RT_USING_HWTIMER=y
-
+# CONFIG_RT_USING_CHERRYUSB is not set
+# end of Device Drivers
 #
 # Using USB
 #
@@ -313,6 +325,8 @@ CONFIG_RT_LIBC_USING_LIGHT_TZ_DST=y
 CONFIG_RT_LIBC_TZ_DEFAULT_HOUR=8
 CONFIG_RT_LIBC_TZ_DEFAULT_MIN=0
 CONFIG_RT_LIBC_TZ_DEFAULT_SEC=0
+# end of Timezone and Daylight Saving Time
+# end of ISO-ANSI C layer
 
 #
 # POSIX (Portable Operating System Interface) layer
@@ -344,7 +358,11 @@ CONFIG_RT_USING_POSIX_DEVIO=y
 #
 # Socket is in the 'Network' category
 #
+# end of Interprocess Communication (IPC)
+# end of POSIX (Portable Operating System Interface) layer
+
 # CONFIG_RT_USING_CPLUSPLUS is not set
+# end of C/C++ and POSIX layer
 
 #
 # Network
@@ -358,16 +376,18 @@ CONFIG_SAL_INTERNET_CHECK=y
 CONFIG_SAL_USING_LWIP=y
 # CONFIG_SAL_USING_AT is not set
 # CONFIG_SAL_USING_TLS is not set
+# end of Docking with protocol stacks
+
 CONFIG_SAL_USING_POSIX=y
 CONFIG_RT_USING_NETDEV=y
 CONFIG_NETDEV_USING_IFCONFIG=y
 CONFIG_NETDEV_USING_PING=y
 CONFIG_NETDEV_USING_NETSTAT=y
 CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
 # CONFIG_NETDEV_USING_IPV6 is not set
 CONFIG_NETDEV_IPV4=1
 CONFIG_NETDEV_IPV6=0
-# CONFIG_NETDEV_IPV6_SCOPES is not set
 CONFIG_RT_USING_LWIP=y
 # CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set
 # CONFIG_RT_USING_LWIP141 is not set
@@ -391,6 +411,8 @@ CONFIG_IP_SOF_BROADCAST_RECV=1
 CONFIG_RT_LWIP_IPADDR="192.168.1.30"
 CONFIG_RT_LWIP_GWADDR="192.168.1.1"
 CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
+# end of Static IPv4 Address
+
 CONFIG_RT_LWIP_UDP=y
 CONFIG_RT_LWIP_TCP=y
 CONFIG_RT_LWIP_RAW=y
@@ -428,12 +450,14 @@ CONFIG_RT_LWIP_USING_PING=y
 # CONFIG_LWIP_USING_DHCPD is not set
 # CONFIG_RT_LWIP_DEBUG is not set
 # CONFIG_RT_USING_AT is not set
+# end of Network
 
 #
 # Memory protection
 #
 # CONFIG_RT_USING_MEM_PROTECTION is not set
 # CONFIG_RT_USING_HW_STACK_GUARD is not set
+# end of Memory protection
 
 #
 # Utilities
@@ -447,12 +471,46 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_RT_USING_RESOURCE_ID is not set
 # CONFIG_RT_USING_ADT is not set
 # CONFIG_RT_USING_RT_LINK is not set
+# end of Utilities
+
 # CONFIG_RT_USING_VBUS is not set
 
+#
+# Using USB legacy version
+#
+CONFIG_RT_USING_USB=y
+CONFIG_RT_USING_USB_HOST=y
+CONFIG_RT_USBH_MSTORAGE=y
+CONFIG_UDISK_MOUNTPOINT="/mnt/udisk/"
+# CONFIG_RT_USBH_HID is not set
+CONFIG_RT_USING_USB_DEVICE=y
+CONFIG_RT_USBD_THREAD_STACK_SZ=4096
+CONFIG_USB_VENDOR_ID=0x0FFE
+CONFIG_USB_PRODUCT_ID=0x0001
+# CONFIG_RT_USB_DEVICE_COMPOSITE is not set
+# CONFIG__RT_USB_DEVICE_NONE is not set
+# CONFIG__RT_USB_DEVICE_CDC is not set
+# CONFIG__RT_USB_DEVICE_MSTORAGE is not set
+CONFIG__RT_USB_DEVICE_HID=y
+# CONFIG__RT_USB_DEVICE_RNDIS is not set
+# CONFIG__RT_USB_DEVICE_ECM is not set
+# CONFIG__RT_USB_DEVICE_WINUSB is not set
+# CONFIG__RT_USB_DEVICE_AUDIO is not set
+CONFIG_RT_USB_DEVICE_HID=y
+# CONFIG_RT_USB_DEVICE_HID_KEYBOARD is not set
+CONFIG_RT_USB_DEVICE_HID_MOUSE=y
+# CONFIG_RT_USB_DEVICE_HID_GENERAL is not set
+# CONFIG_RT_USB_DEVICE_HID_MEDIA is not set
+# end of Using USB legacy version
+
+# CONFIG_RT_USING_FDT is not set
+# end of RT-Thread Components
+
 #
 # RT-Thread Utestcases
 #
 # CONFIG_RT_USING_UTESTCASES is not set
+# end of RT-Thread Utestcases
 
 #
 # RT-Thread online packages
@@ -461,7 +519,6 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # IoT - internet of things
 #
-# CONFIG_PKG_USING_LWIP is not set
 # CONFIG_PKG_USING_LORAWAN_DRIVER is not set
 # CONFIG_PKG_USING_PAHOMQTT is not set
 # CONFIG_PKG_USING_UMQTT is not set
@@ -474,6 +531,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_WEBTERMINAL is not set
 # CONFIG_PKG_USING_FREEMODBUS is not set
 # CONFIG_PKG_USING_NANOPB is not set
+# CONFIG_PKG_USING_WIFI_HOST_DRIVER is not set
 
 #
 # Wi-Fi
@@ -483,27 +541,35 @@ CONFIG_UTEST_THR_PRIORITY=20
 # Marvell WiFi
 #
 # CONFIG_PKG_USING_WLANMARVELL is not set
+# end of Marvell WiFi
 
 #
 # Wiced WiFi
 #
 # CONFIG_PKG_USING_WLAN_WICED is not set
+# end of Wiced WiFi
+
 # CONFIG_PKG_USING_RW007 is not set
 
 #
 # CYW43012 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43012 is not set
+# end of CYW43012 WiFi
 
 #
 # BL808 WiFi
 #
 # CONFIG_PKG_USING_WLAN_BL808 is not set
+# end of BL808 WiFi
 
 #
 # CYW43439 WiFi
 #
 # CONFIG_PKG_USING_WLAN_CYW43439 is not set
+# end of CYW43439 WiFi
+# end of Wi-Fi
+
 # CONFIG_PKG_USING_COAP is not set
 # CONFIG_PKG_USING_NOPOLL is not set
 # CONFIG_PKG_USING_NETUTILS is not set
@@ -526,6 +592,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
 # CONFIG_PKG_USING_JOYLINK is not set
 # CONFIG_PKG_USING_IOTSHARP_SDK is not set
+# end of IoT Cloud
+
 # CONFIG_PKG_USING_NIMBLE is not set
 # CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set
 # CONFIG_PKG_USING_OTA_DOWNLOADER is not set
@@ -568,6 +636,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ZEPHYR_POLLING is not set
 # CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set
 # CONFIG_PKG_USING_LHC_MODBUS is not set
+# CONFIG_PKG_USING_QMODBUS is not set
+# end of IoT - internet of things
 
 #
 # security packages
@@ -578,6 +648,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_TINYCRYPT is not set
 # CONFIG_PKG_USING_TFM is not set
 # CONFIG_PKG_USING_YD_CRYPTO is not set
+# end of security packages
 
 #
 # language packages
@@ -593,18 +664,22 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_JSMN is not set
 # CONFIG_PKG_USING_AGILE_JSMN is not set
 # CONFIG_PKG_USING_PARSON is not set
+# end of JSON: JavaScript Object Notation, a lightweight data-interchange format
 
 #
 # XML: Extensible Markup Language
 #
 # CONFIG_PKG_USING_SIMPLE_XML is not set
 # CONFIG_PKG_USING_EZXML is not set
+# end of XML: Extensible Markup Language
+
 # CONFIG_PKG_USING_LUATOS_SOC is not set
 # CONFIG_PKG_USING_LUA is not set
 # CONFIG_PKG_USING_JERRYSCRIPT is not set
 # CONFIG_PKG_USING_MICROPYTHON is not set
 # CONFIG_PKG_USING_PIKASCRIPT is not set
 # CONFIG_PKG_USING_RTT_RUST is not set
+# end of language packages
 
 #
 # multimedia packages
@@ -616,12 +691,15 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_LVGL is not set
 # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set
 # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set
+# end of LVGL: powerful and easy-to-use embedded GUI library
 
 #
 # u8g2: a monochrome graphic library
 #
 # CONFIG_PKG_USING_U8G2_OFFICIAL is not set
 # CONFIG_PKG_USING_U8G2 is not set
+# end of u8g2: a monochrome graphic library
+
 # CONFIG_PKG_USING_OPENMV is not set
 # CONFIG_PKG_USING_MUPDF is not set
 # CONFIG_PKG_USING_STEMWIN is not set
@@ -642,6 +720,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_GUIENGINE is not set
 # CONFIG_PKG_USING_PERSIMMON is not set
 # CONFIG_PKG_USING_3GPP_AMRNB is not set
+# end of multimedia packages
 
 #
 # tools packages
@@ -691,6 +770,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_VOFA_PLUS is not set
 # CONFIG_PKG_USING_RT_TRACE is not set
 # CONFIG_PKG_USING_ZDEBUG is not set
+# end of tools packages
 
 #
 # system packages
@@ -702,6 +782,9 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_RT_MEMCPY_CM is not set
 # CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
 # CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set
+# end of enhanced kernel services
+
+# CONFIG_PKG_USING_AUNITY is not set
 
 #
 # acceleration: Assembly language or algorithmic acceleration packages
@@ -709,6 +792,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_QFPLIB_M0_FULL is not set
 # CONFIG_PKG_USING_QFPLIB_M0_TINY is not set
 # CONFIG_PKG_USING_QFPLIB_M3 is not set
+# end of acceleration: Assembly language or algorithmic acceleration packages
 
 #
 # CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
@@ -719,6 +803,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_CMSIS_NN is not set
 # CONFIG_PKG_USING_CMSIS_RTOS1 is not set
 # CONFIG_PKG_USING_CMSIS_RTOS2 is not set
+# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard
 
 #
 # Micrium: Micrium software products porting for RT-Thread
@@ -729,6 +814,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_UC_CLK is not set
 # CONFIG_PKG_USING_UC_COMMON is not set
 # CONFIG_PKG_USING_UC_MODBUS is not set
+# end of Micrium: Micrium software products porting for RT-Thread
+
 # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set
 # CONFIG_PKG_USING_LITEOS_SDK is not set
 # CONFIG_PKG_USING_TZ_DATABASE is not set
@@ -776,6 +863,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_RTP is not set
 # CONFIG_PKG_USING_REB is not set
 # CONFIG_PKG_USING_R_RHEALSTONE is not set
+# end of system packages
 
 #
 # peripheral libraries and drivers
@@ -788,9 +876,27 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # STM32 HAL & SDK Drivers
 #
-# CONFIG_PKG_USING_STM32L4XX_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_HAL_DRIVER is not set
+# CONFIG_PKG_USING_STM32L4_CMSIS_DRIVER is not set
 # CONFIG_PKG_USING_STM32WB55_SDK is not set
 # CONFIG_PKG_USING_STM32_SDIO is not set
+# end of STM32 HAL & SDK Drivers
+
+#
+# Infineon HAL Packages
+#
+# CONFIG_PKG_USING_INFINEON_CAT1CM0P is not set
+# CONFIG_PKG_USING_INFINEON_CMSIS is not set
+# CONFIG_PKG_USING_INFINEON_CORE_LIB is not set
+# CONFIG_PKG_USING_INFINEON_MTB_HAL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_MTB_PDL_CAT1 is not set
+# CONFIG_PKG_USING_INFINEON_RETARGET_IO is not set
+# CONFIG_PKG_USING_INFINEON_CAPSENSE is not set
+# CONFIG_PKG_USING_INFINEON_CSDIDAC is not set
+# CONFIG_PKG_USING_INFINEON_SERIAL_FLASH is not set
+# CONFIG_PKG_USING_INFINEON_USBDEV is not set
+# end of Infineon HAL Packages
+
 # CONFIG_PKG_USING_BLUETRUM_SDK is not set
 # CONFIG_PKG_USING_EMBARC_BSP is not set
 # CONFIG_PKG_USING_ESP_IDF is not set
@@ -800,9 +906,12 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # CONFIG_PKG_USING_K210_SDK is not set
 # CONFIG_PKG_USING_KENDRYTE_SDK is not set
+# end of Kendryte SDK
+
 # CONFIG_PKG_USING_NRF5X_SDK is not set
 # CONFIG_PKG_USING_NRFX is not set
 # CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
+# end of HAL & SDK Drivers
 
 #
 # sensors drivers
@@ -872,6 +981,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ICM20608 is not set
 # CONFIG_PKG_USING_PAJ7620 is not set
 # CONFIG_PKG_USING_STHS34PF80 is not set
+# end of sensors drivers
 
 #
 # touch drivers
@@ -886,6 +996,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_XPT2046_TOUCH is not set
 # CONFIG_PKG_USING_CST816X is not set
 # CONFIG_PKG_USING_CST812T is not set
+# end of touch drivers
+
 # CONFIG_PKG_USING_REALTEK_AMEBA is not set
 # CONFIG_PKG_USING_BUTTON is not set
 # CONFIG_PKG_USING_PCF8574 is not set
@@ -958,6 +1070,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_BT_MX01 is not set
 # CONFIG_PKG_USING_RGPOWER is not set
 # CONFIG_PKG_USING_SPI_TOOLS is not set
+# end of peripheral libraries and drivers
 
 #
 # AI packages
@@ -972,15 +1085,18 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_QUEST is not set
 # CONFIG_PKG_USING_NAXOS is not set
 # CONFIG_PKG_USING_R_TINYMAIX is not set
+# end of AI packages
 
 #
 # Signal Processing and Control Algorithm Packages
 #
+# CONFIG_PKG_USING_APID is not set
 # CONFIG_PKG_USING_FIRE_PID_CURVE is not set
 # CONFIG_PKG_USING_QPID is not set
 # CONFIG_PKG_USING_UKAL is not set
 # CONFIG_PKG_USING_DIGITALCTRL is not set
 # CONFIG_PKG_USING_KISSFFT is not set
+# end of Signal Processing and Control Algorithm Packages
 
 #
 # miscellaneous packages
@@ -989,6 +1105,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # project laboratory
 #
+# end of project laboratory
 
 #
 # samples: kernel and components samples
@@ -997,6 +1114,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set
 # CONFIG_PKG_USING_NETWORK_SAMPLES is not set
 # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
+# end of samples: kernel and components samples
 
 #
 # entertainment: terminal games and other interesting software packages
@@ -1013,6 +1131,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_COWSAY is not set
 # CONFIG_PKG_USING_MORSE is not set
 # CONFIG_PKG_USING_TINYSQUARE is not set
+# end of entertainment: terminal games and other interesting software packages
+
 # CONFIG_PKG_USING_LIBCSV is not set
 # CONFIG_PKG_USING_OPTPARSE is not set
 # CONFIG_PKG_USING_FASTLZ is not set
@@ -1046,6 +1166,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_SOEM is not set
 # CONFIG_PKG_USING_QPARAM is not set
 # CONFIG_PKG_USING_CorevMCU_CLI is not set
+# end of miscellaneous packages
 
 #
 # Arduino libraries
@@ -1061,6 +1182,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_NINEINONE_SENSOR_SHIELD is not set
 # CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
 # CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
+# end of Projects and Demos
 
 #
 # Sensors
@@ -1200,6 +1322,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_SEEED_LTC2941 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_LDC1612 is not set
 # CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set
+# CONFIG_PKG_USING_ARDUINO_JARZEBSKI_MPU6050 is not set
+# end of Sensors
 
 #
 # Display
@@ -1211,6 +1335,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set
 # CONFIG_PKG_USING_SEEED_TM1637 is not set
+# end of Display
 
 #
 # Timing
@@ -1219,6 +1344,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
 # CONFIG_PKG_USING_ARDUINO_TICKER is not set
 # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
+# end of Timing
 
 #
 # Data Processing
@@ -1226,6 +1352,8 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set
 # CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set
 # CONFIG_PKG_USING_ARDUINO_TENSORFLOW_LITE_MICRO is not set
+# CONFIG_PKG_USING_ARDUINO_RUNNINGMEDIAN is not set
+# end of Data Processing
 
 #
 # Data Storage
@@ -1236,6 +1364,7 @@ CONFIG_UTEST_THR_PRIORITY=20
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PN532 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI4713 is not set
+# end of Communication
 
 #
 # Device Control
@@ -1247,12 +1376,14 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS1841 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DS3502 is not set
 # CONFIG_PKG_USING_ARDUINO_SEEED_PCF85063TP is not set
+# end of Device Control
 
 #
 # Other
 #
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set
+# end of Other
 
 #
 # Signal IO
@@ -1265,10 +1396,13 @@ CONFIG_UTEST_THR_PRIORITY=20
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP3008 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP4725 is not set
 # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BD3491FS is not set
+# end of Signal IO
 
 #
 # Uncategorized
 #
+# end of Arduino libraries
+# end of RT-Thread online packages
 
 #
 # Hardware Drivers Config
@@ -1321,7 +1455,6 @@ CONFIG_BSP_USING_SDH0=y
 # CONFIG_BSP_USING_EPWM is not set
 CONFIG_BSP_USING_SPI=y
 CONFIG_BSP_USING_SPI_PDMA=y
-# CONFIG_BSP_USING_SPII2S is not set
 CONFIG_BSP_USING_SPI0_NONE=y
 # CONFIG_BSP_USING_SPI0 is not set
 # CONFIG_BSP_USING_SPII2S0 is not set
@@ -1358,6 +1491,7 @@ CONFIG_BSP_USING_USBD=y
 CONFIG_BSP_USING_HSUSBH=y
 CONFIG_NU_USBHOST_HUB_POLLING_INTERVAL=100
 # CONFIG_BSP_USING_HSOTG is not set
+# end of On-chip Peripheral Drivers
 
 #
 # On-board Peripheral Drivers
@@ -1373,11 +1507,13 @@ CONFIG_BOARD_USING_USB_D_H=y
 # CONFIG_BOARD_USING_HSUSBH is not set
 CONFIG_BOARD_USING_HSUSBH_USBD=y
 # CONFIG_BOARD_USING_HSOTG is not set
+# end of On-board Peripheral Drivers
 
 #
 # Board extended module drivers
 #
 # CONFIG_BOARD_USING_ADVANCE_V4 is not set
+# end of Board extended module drivers
 
 #
 # Nuvoton Packages Config
@@ -1396,3 +1532,5 @@ CONFIG_NU_PKG_USING_NAU88L25=y
 # CONFIG_NU_PKG_USING_TPC is not set
 # CONFIG_NU_PKG_USING_ADC_TOUCH is not set
 # CONFIG_NU_PKG_USING_SPINAND is not set
+# end of Nuvoton Packages Config
+# end of Hardware Drivers Config

+ 550 - 0
bsp/nuvoton/numaker-pfm-m487/rtconfig.h

@@ -0,0 +1,550 @@
+#ifndef RT_CONFIG_H__
+#define RT_CONFIG_H__
+
+/* RT-Thread Kernel */
+
+#define RT_NAME_MAX 8
+#define RT_CPUS_NR 1
+#define RT_ALIGN_SIZE 8
+#define RT_THREAD_PRIORITY_32
+#define RT_THREAD_PRIORITY_MAX 32
+#define RT_TICK_PER_SECOND 1000
+#define RT_USING_HOOK
+#define RT_HOOK_USING_FUNC_PTR
+#define RT_USING_IDLE_HOOK
+#define RT_IDLE_HOOK_LIST_SIZE 4
+#define IDLE_THREAD_STACK_SIZE 1024
+
+/* kservice optimization */
+
+/* end of kservice optimization */
+
+/* klibc optimization */
+
+/* end of klibc optimization */
+#define RT_USING_DEBUG
+#define RT_DEBUGING_ASSERT
+#define RT_DEBUGING_COLOR
+#define RT_DEBUGING_CONTEXT
+#define RT_USING_OVERFLOW_CHECK
+
+/* Inter-Thread communication */
+
+#define RT_USING_SEMAPHORE
+#define RT_USING_MUTEX
+#define RT_USING_EVENT
+#define RT_USING_MAILBOX
+#define RT_USING_MESSAGEQUEUE
+#define RT_USING_SIGNALS
+/* end of Inter-Thread communication */
+
+/* Memory Management */
+
+#define RT_USING_MEMPOOL
+#define RT_USING_SMALL_MEM
+#define RT_USING_SMALL_MEM_AS_HEAP
+#define RT_USING_HEAP
+/* end of Memory Management */
+#define RT_USING_DEVICE
+#define RT_USING_CONSOLE
+#define RT_CONSOLEBUF_SIZE 256
+#define RT_CONSOLE_DEVICE_NAME "uart0"
+#define RT_VER_NUM 0x50200
+#define RT_BACKTRACE_LEVEL_MAX_NR 32
+/* end of RT-Thread Kernel */
+#define RT_USING_HW_ATOMIC
+#define RT_USING_CPU_FFS
+#define ARCH_ARM
+#define ARCH_ARM_CORTEX_M
+#define ARCH_ARM_CORTEX_M4
+
+/* RT-Thread Components */
+
+#define RT_USING_COMPONENTS_INIT
+#define RT_USING_USER_MAIN
+#define RT_MAIN_THREAD_STACK_SIZE 2048
+#define RT_MAIN_THREAD_PRIORITY 10
+#define RT_USING_MSH
+#define RT_USING_FINSH
+#define FINSH_USING_MSH
+#define FINSH_THREAD_NAME "tshell"
+#define FINSH_THREAD_PRIORITY 20
+#define FINSH_THREAD_STACK_SIZE 2048
+#define FINSH_USING_HISTORY
+#define FINSH_HISTORY_LINES 5
+#define FINSH_USING_SYMTAB
+#define FINSH_CMD_SIZE 80
+#define MSH_USING_BUILT_IN_COMMANDS
+#define FINSH_USING_DESCRIPTION
+#define FINSH_ARG_MAX 10
+#define FINSH_USING_OPTION_COMPLETION
+
+/* DFS: device virtual file system */
+
+#define RT_USING_DFS
+#define DFS_USING_POSIX
+#define DFS_USING_WORKDIR
+#define RT_USING_DFS_MNTTABLE
+#define DFS_FD_MAX 32
+#define RT_USING_DFS_V1
+#define DFS_FILESYSTEMS_MAX 8
+#define DFS_FILESYSTEM_TYPES_MAX 4
+#define RT_USING_DFS_ELMFAT
+
+/* elm-chan's FatFs, Generic FAT Filesystem Module */
+
+#define RT_DFS_ELM_CODE_PAGE 437
+#define RT_DFS_ELM_WORD_ACCESS
+#define RT_DFS_ELM_USE_LFN_3
+#define RT_DFS_ELM_USE_LFN 3
+#define RT_DFS_ELM_LFN_UNICODE_0
+#define RT_DFS_ELM_LFN_UNICODE 0
+#define RT_DFS_ELM_MAX_LFN 255
+#define RT_DFS_ELM_DRIVES 8
+#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
+#define RT_DFS_ELM_REENTRANT
+#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
+/* end of elm-chan's FatFs, Generic FAT Filesystem Module */
+#define RT_USING_DFS_DEVFS
+/* end of DFS: device virtual file system */
+#define RT_USING_FAL
+#define FAL_DEBUG_CONFIG
+#define FAL_DEBUG 1
+#define FAL_PART_HAS_TABLE_CFG
+
+/* Device Drivers */
+
+#define RT_USING_DEVICE_IPC
+#define RT_UNAMED_PIPE_NUMBER 64
+#define RT_USING_SYSTEM_WORKQUEUE
+#define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
+#define RT_SYSTEM_WORKQUEUE_PRIORITY 23
+#define RT_USING_SERIAL
+#define RT_USING_SERIAL_V1
+#define RT_SERIAL_USING_DMA
+#define RT_SERIAL_RB_BUFSZ 128
+#define RT_USING_CAN
+#define RT_USING_I2C
+#define RT_USING_I2C_BITOPS
+#define RT_USING_ADC
+#define RT_USING_PWM
+#define RT_USING_PM
+#define PM_TICKLESS_THRESHOLD_TIME 2
+#define RT_USING_RTC
+#define RT_USING_SDIO
+#define RT_SDIO_STACK_SIZE 2048
+#define RT_SDIO_THREAD_PRIORITY 15
+#define RT_MMCSD_STACK_SIZE 2048
+#define RT_MMCSD_THREAD_PREORITY 22
+#define RT_MMCSD_MAX_PARTITION 16
+#define RT_USING_SPI
+#define RT_USING_QSPI
+#define RT_USING_SFUD
+#define RT_SFUD_USING_SFDP
+#define RT_SFUD_USING_FLASH_INFO_TABLE
+#define RT_SFUD_SPI_MAX_HZ 50000000
+#define RT_USING_WDT
+#define RT_USING_AUDIO
+#define RT_AUDIO_REPLAY_MP_BLOCK_SIZE 4096
+#define RT_AUDIO_REPLAY_MP_BLOCK_COUNT 2
+#define RT_AUDIO_RECORD_PIPE_SIZE 2048
+#define RT_USING_HWCRYPTO
+#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto"
+#define RT_HWCRYPTO_IV_MAX_SIZE 16
+#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256
+#define RT_HWCRYPTO_USING_AES
+#define RT_HWCRYPTO_USING_AES_ECB
+#define RT_HWCRYPTO_USING_AES_CBC
+#define RT_HWCRYPTO_USING_AES_CFB
+#define RT_HWCRYPTO_USING_AES_CTR
+#define RT_HWCRYPTO_USING_AES_OFB
+#define RT_HWCRYPTO_USING_DES
+#define RT_HWCRYPTO_USING_DES_ECB
+#define RT_HWCRYPTO_USING_DES_CBC
+#define RT_HWCRYPTO_USING_3DES
+#define RT_HWCRYPTO_USING_3DES_ECB
+#define RT_HWCRYPTO_USING_3DES_CBC
+#define RT_HWCRYPTO_USING_SHA1
+#define RT_HWCRYPTO_USING_SHA2
+#define RT_HWCRYPTO_USING_SHA2_224
+#define RT_HWCRYPTO_USING_SHA2_256
+#define RT_HWCRYPTO_USING_SHA2_384
+#define RT_HWCRYPTO_USING_SHA2_512
+#define RT_HWCRYPTO_USING_RNG
+#define RT_HWCRYPTO_USING_CRC
+#define RT_HWCRYPTO_USING_CRC_07
+#define RT_HWCRYPTO_USING_CRC_8005
+#define RT_HWCRYPTO_USING_CRC_1021
+#define RT_HWCRYPTO_USING_CRC_04C11DB7
+#define RT_USING_PIN
+#define RT_USING_HWTIMER
+/* end of Device Drivers */
+
+/* C/C++ and POSIX layer */
+
+/* ISO-ANSI C layer */
+
+/* Timezone and Daylight Saving Time */
+
+#define RT_LIBC_USING_LIGHT_TZ_DST
+#define RT_LIBC_TZ_DEFAULT_HOUR 8
+#define RT_LIBC_TZ_DEFAULT_MIN 0
+#define RT_LIBC_TZ_DEFAULT_SEC 0
+/* end of Timezone and Daylight Saving Time */
+/* end of ISO-ANSI C layer */
+
+/* POSIX (Portable Operating System Interface) layer */
+
+#define RT_USING_POSIX_FS
+#define RT_USING_POSIX_DEVIO
+
+/* Interprocess Communication (IPC) */
+
+
+/* Socket is in the 'Network' category */
+
+/* end of Interprocess Communication (IPC) */
+/* end of POSIX (Portable Operating System Interface) layer */
+/* end of C/C++ and POSIX layer */
+
+/* Network */
+
+#define RT_USING_SAL
+#define SAL_INTERNET_CHECK
+
+/* Docking with protocol stacks */
+
+#define SAL_USING_LWIP
+/* end of Docking with protocol stacks */
+#define SAL_USING_POSIX
+#define RT_USING_NETDEV
+#define NETDEV_USING_IFCONFIG
+#define NETDEV_USING_PING
+#define NETDEV_USING_NETSTAT
+#define NETDEV_USING_AUTO_DEFAULT
+#define NETDEV_IPV4 1
+#define NETDEV_IPV6 0
+#define RT_USING_LWIP
+#define RT_USING_LWIP203
+#define RT_USING_LWIP_VER_NUM 0x20003
+#define RT_LWIP_MEM_ALIGNMENT 4
+#define RT_LWIP_IGMP
+#define RT_LWIP_ICMP
+#define RT_LWIP_DNS
+#define RT_LWIP_DHCP
+#define IP_SOF_BROADCAST 1
+#define IP_SOF_BROADCAST_RECV 1
+
+/* Static IPv4 Address */
+
+#define RT_LWIP_IPADDR "192.168.1.30"
+#define RT_LWIP_GWADDR "192.168.1.1"
+#define RT_LWIP_MSKADDR "255.255.255.0"
+/* end of Static IPv4 Address */
+#define RT_LWIP_UDP
+#define RT_LWIP_TCP
+#define RT_LWIP_RAW
+#define RT_MEMP_NUM_NETCONN 8
+#define RT_LWIP_PBUF_NUM 16
+#define RT_LWIP_RAW_PCB_NUM 4
+#define RT_LWIP_UDP_PCB_NUM 4
+#define RT_LWIP_TCP_PCB_NUM 4
+#define RT_LWIP_TCP_SEG_NUM 40
+#define RT_LWIP_TCP_SND_BUF 8196
+#define RT_LWIP_TCP_WND 8196
+#define RT_LWIP_TCPTHREAD_PRIORITY 10
+#define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
+#define RT_LWIP_TCPTHREAD_STACKSIZE 1024
+#define RT_LWIP_ETHTHREAD_PRIORITY 12
+#define RT_LWIP_ETHTHREAD_STACKSIZE 1024
+#define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
+#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_LINK_CALLBACK 1
+#define RT_LWIP_NETIF_NAMESIZE 6
+#define SO_REUSE 1
+#define LWIP_SO_RCVTIMEO 1
+#define LWIP_SO_SNDTIMEO 1
+#define LWIP_SO_RCVBUF 1
+#define LWIP_SO_LINGER 0
+#define LWIP_NETIF_LOOPBACK 0
+#define RT_LWIP_USING_PING
+/* end of Network */
+
+/* Memory protection */
+
+/* end of Memory protection */
+
+/* Utilities */
+
+#define RT_USING_UTEST
+#define UTEST_THR_STACK_SIZE 4096
+#define UTEST_THR_PRIORITY 20
+/* end of Utilities */
+
+/* Using USB legacy version */
+
+#define RT_USING_USB
+#define RT_USING_USB_HOST
+#define RT_USBH_MSTORAGE
+#define UDISK_MOUNTPOINT "/mnt/udisk/"
+#define RT_USING_USB_DEVICE
+#define RT_USBD_THREAD_STACK_SZ 4096
+#define USB_VENDOR_ID 0x0FFE
+#define USB_PRODUCT_ID 0x0001
+#define _RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID
+#define RT_USB_DEVICE_HID_MOUSE
+/* end of Using USB legacy version */
+/* end of RT-Thread Components */
+
+/* RT-Thread Utestcases */
+
+/* end of RT-Thread Utestcases */
+
+/* RT-Thread online packages */
+
+/* IoT - internet of things */
+
+
+/* Wi-Fi */
+
+/* Marvell WiFi */
+
+/* end of Marvell WiFi */
+
+/* Wiced WiFi */
+
+/* end of Wiced WiFi */
+
+/* CYW43012 WiFi */
+
+/* end of CYW43012 WiFi */
+
+/* BL808 WiFi */
+
+/* end of BL808 WiFi */
+
+/* CYW43439 WiFi */
+
+/* end of CYW43439 WiFi */
+/* end of Wi-Fi */
+
+/* IoT Cloud */
+
+/* end of IoT Cloud */
+/* end of IoT - internet of things */
+
+/* security packages */
+
+/* end of security packages */
+
+/* language packages */
+
+/* JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
+
+/* XML: Extensible Markup Language */
+
+/* end of XML: Extensible Markup Language */
+/* end of language packages */
+
+/* multimedia packages */
+
+/* LVGL: powerful and easy-to-use embedded GUI library */
+
+/* end of LVGL: powerful and easy-to-use embedded GUI library */
+
+/* u8g2: a monochrome graphic library */
+
+/* end of u8g2: a monochrome graphic library */
+/* end of multimedia packages */
+
+/* tools packages */
+
+/* end of tools packages */
+
+/* system packages */
+
+/* enhanced kernel services */
+
+/* end of enhanced kernel services */
+
+/* acceleration: Assembly language or algorithmic acceleration packages */
+
+/* end of acceleration: Assembly language or algorithmic acceleration packages */
+
+/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
+
+/* Micrium: Micrium software products porting for RT-Thread */
+
+/* end of Micrium: Micrium software products porting for RT-Thread */
+/* end of system packages */
+
+/* peripheral libraries and drivers */
+
+/* HAL & SDK Drivers */
+
+/* STM32 HAL & SDK Drivers */
+
+/* end of STM32 HAL & SDK Drivers */
+
+/* Infineon HAL Packages */
+
+/* end of Infineon HAL Packages */
+
+/* Kendryte SDK */
+
+/* end of Kendryte SDK */
+/* end of HAL & SDK Drivers */
+
+/* sensors drivers */
+
+/* end of sensors drivers */
+
+/* touch drivers */
+
+/* end of touch drivers */
+/* end of peripheral libraries and drivers */
+
+/* AI packages */
+
+/* end of AI packages */
+
+/* Signal Processing and Control Algorithm Packages */
+
+/* end of Signal Processing and Control Algorithm Packages */
+
+/* miscellaneous packages */
+
+/* project laboratory */
+
+/* end of project laboratory */
+
+/* samples: kernel and components samples */
+
+/* end of samples: kernel and components samples */
+
+/* entertainment: terminal games and other interesting software packages */
+
+/* end of entertainment: terminal games and other interesting software packages */
+/* end of miscellaneous packages */
+
+/* Arduino libraries */
+
+
+/* Projects and Demos */
+
+/* end of Projects and Demos */
+
+/* Sensors */
+
+/* end of Sensors */
+
+/* Display */
+
+/* end of Display */
+
+/* Timing */
+
+/* end of Timing */
+
+/* Data Processing */
+
+/* end of Data Processing */
+
+/* Data Storage */
+
+/* Communication */
+
+/* end of Communication */
+
+/* Device Control */
+
+/* end of Device Control */
+
+/* Other */
+
+/* end of Other */
+
+/* Signal IO */
+
+/* end of Signal IO */
+
+/* Uncategorized */
+
+/* end of Arduino libraries */
+/* end of RT-Thread online packages */
+
+/* Hardware Drivers Config */
+
+/* On-chip Peripheral Drivers */
+
+#define SOC_SERIES_M480
+#define BSP_USE_STDDRIVER_SOURCE
+#define BSP_USING_PDMA
+#define NU_PDMA_MEMFUN_ACTOR_MAX 2
+#define NU_PDMA_SGTBL_POOL_SIZE 16
+#define BSP_USING_FMC
+#define BSP_USING_GPIO
+#define BSP_USING_CLK
+#define NU_CLK_INVOKE_WKTMR
+#define BSP_USING_EMAC
+#define NU_EMAC_PDMA_MEMCOPY
+#define NU_EMAC_PDMA_MEMCOPY_THRESHOLD 128
+#define BSP_USING_RTC
+#define NU_RTC_SUPPORT_MSH_CMD
+#define BSP_USING_TMR
+#define BSP_USING_UART
+#define BSP_USING_UART0
+#define BSP_USING_I2C
+#define BSP_USING_I2C1
+#define BSP_USING_I2C2
+#define BSP_USING_SDH
+#define BSP_USING_SDH0
+#define BSP_USING_SPI
+#define BSP_USING_SPI_PDMA
+#define BSP_USING_SPI0_NONE
+#define BSP_USING_SPI1_NONE
+#define BSP_USING_SPI2_NONE
+#define BSP_USING_SPI3
+#define BSP_USING_I2S
+#define NU_I2S_DMA_FIFO_SIZE 2048
+#define BSP_USING_QSPI
+#define BSP_USING_QSPI0
+#define BSP_USING_QSPI0_PDMA
+#define BSP_USING_CRYPTO
+#define BSP_USING_CRC
+#define NU_CRC_USE_PDMA
+#define BSP_USING_WDT
+#define BSP_USING_USBD
+#define BSP_USING_HSUSBH
+#define NU_USBHOST_HUB_POLLING_INTERVAL 100
+/* end of On-chip Peripheral Drivers */
+
+/* On-board Peripheral Drivers */
+
+#define BSP_USING_NULINKME
+#define BOARD_USING_IP101GR
+#define BOARD_USING_NAU88L25
+#define BOARD_USING_STORAGE_SDCARD
+#define BOARD_USING_STORAGE_SPIFLASH
+#define BOARD_USING_USB_D_H
+#define BOARD_USING_HSUSBH_USBD
+/* end of On-board Peripheral Drivers */
+
+/* Board extended module drivers */
+
+/* end of Board extended module drivers */
+
+/* Nuvoton Packages Config */
+
+#define NU_PKG_USING_UTILS
+#define NU_PKG_USING_DEMO
+#define NU_PKG_USING_NAU88L25
+/* end of Nuvoton Packages Config */
+/* end of Hardware Drivers Config */
+
+#endif