summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2024-07-23 19:37:54 +0800
committersakumisu <[email protected]>2024-07-23 19:37:54 +0800
commit1c2fd3407a826de56d230508bf4ad3f64f69d7a2 (patch)
tree46805e7fd80fe168cd03df1eec58eff79aeae174
parent1927566dfccbcae370af6cf892026c5c955e8f0f (diff)
refactor(osal): use osal malloc and free, remove usb_malloc & usb_free macro
-rw-r--r--cherryusb_config_template.h3
-rw-r--r--common/usb_osal.h3
-rw-r--r--core/usbh_core.c4
-rw-r--r--osal/usb_osal_freertos.c10
-rw-r--r--osal/usb_osal_nuttx.c10
-rw-r--r--osal/usb_osal_rtthread.c10
-rw-r--r--osal/usb_osal_yoc.c12
7 files changed, 46 insertions, 6 deletions
diff --git a/cherryusb_config_template.h b/cherryusb_config_template.h
index 493f8a4e..05fcc79b 100644
--- a/cherryusb_config_template.h
+++ b/cherryusb_config_template.h
@@ -13,9 +13,6 @@
#define CONFIG_USB_PRINTF(...) printf(__VA_ARGS__)
-#define usb_malloc(size) malloc(size)
-#define usb_free(ptr) free(ptr)
-
#ifndef CONFIG_USB_DBG_LEVEL
#define CONFIG_USB_DBG_LEVEL USB_DBG_INFO
#endif
diff --git a/common/usb_osal.h b/common/usb_osal.h
index f487c485..a3380d13 100644
--- a/common/usb_osal.h
+++ b/common/usb_osal.h
@@ -58,4 +58,7 @@ void usb_osal_leave_critical_section(size_t flag);
void usb_osal_msleep(uint32_t delay);
+void *usb_osal_malloc(size_t size);
+void usb_osal_free(void *ptr);
+
#endif /* USB_OSAL_H */
diff --git a/core/usbh_core.c b/core/usbh_core.c
index 24964137..29869782 100644
--- a/core/usbh_core.c
+++ b/core/usbh_core.c
@@ -486,7 +486,7 @@ int usbh_enumerate(struct usbh_hubport *hport)
goto errout;
}
USB_LOG_INFO("The device has %d interfaces\r\n", ((struct usb_configuration_descriptor *)ep0_request_buffer[hport->bus->busid])->bNumInterfaces);
- hport->raw_config_desc = usb_malloc(wTotalLength);
+ hport->raw_config_desc = usb_osal_malloc(wTotalLength);
if (hport->raw_config_desc == NULL) {
ret = -USB_ERR_NOMEM;
USB_LOG_ERR("No memory to alloc for raw_config_desc\r\n");
@@ -576,7 +576,7 @@ int usbh_enumerate(struct usbh_hubport *hport)
errout:
if (hport->raw_config_desc) {
- usb_free(hport->raw_config_desc);
+ usb_osal_free(hport->raw_config_desc);
hport->raw_config_desc = NULL;
}
return ret;
diff --git a/osal/usb_osal_freertos.c b/osal/usb_osal_freertos.c
index db0e238d..7f1aafad 100644
--- a/osal/usb_osal_freertos.c
+++ b/osal/usb_osal_freertos.c
@@ -198,3 +198,13 @@ void usb_osal_msleep(uint32_t delay)
{
vTaskDelay(pdMS_TO_TICKS(delay));
}
+
+void *usb_osal_malloc(size_t size)
+{
+ return pvPortMalloc(size);
+}
+
+void usb_osal_free(void *ptr)
+{
+ vPortFree(ptr);
+} \ No newline at end of file
diff --git a/osal/usb_osal_nuttx.c b/osal/usb_osal_nuttx.c
index 1e318344..51018cd5 100644
--- a/osal/usb_osal_nuttx.c
+++ b/osal/usb_osal_nuttx.c
@@ -366,4 +366,14 @@ void usb_osal_msleep(uint32_t delay)
useconds_t usec = delay * 1000;
nxsig_usleep(usec);
+}
+
+void *usb_osal_malloc(size_t size)
+{
+ return kmm_malloc(size);
+}
+
+void usb_osal_free(void *ptr)
+{
+ kmm_free(ptr);
} \ No newline at end of file
diff --git a/osal/usb_osal_rtthread.c b/osal/usb_osal_rtthread.c
index 18b66a49..5b06fbf2 100644
--- a/osal/usb_osal_rtthread.c
+++ b/osal/usb_osal_rtthread.c
@@ -167,3 +167,13 @@ void usb_osal_msleep(uint32_t delay)
{
rt_thread_mdelay(delay);
}
+
+void *usb_osal_malloc(size_t size)
+{
+ return rt_malloc(size);
+}
+
+void usb_osal_free(void *ptr)
+{
+ rt_free(ptr);
+} \ No newline at end of file
diff --git a/osal/usb_osal_yoc.c b/osal/usb_osal_yoc.c
index 7189a3b2..ddcb8728 100644
--- a/osal/usb_osal_yoc.c
+++ b/osal/usb_osal_yoc.c
@@ -53,7 +53,7 @@ int usb_osal_sem_give(usb_osal_sem_t sem)
void usb_osal_sem_reset(usb_osal_sem_t sem)
{
-
+
}
usb_osal_mutex_t usb_osal_mutex_create(void)
@@ -123,3 +123,13 @@ void usb_osal_msleep(uint32_t delay)
{
aos_msleep(delay);
}
+
+void *usb_osal_malloc(size_t size)
+{
+ return aos_malloc(size);
+}
+
+void usb_osal_free(void *ptr)
+{
+ aos_free(ptr);
+} \ No newline at end of file