fix pointer in 64bit cpu, use uintptr_t instead

This commit is contained in:
sakimisu
2023-04-21 23:24:13 +08:00
parent 4b59a1330e
commit dc4887aef1
6 changed files with 22 additions and 22 deletions

View File

@@ -515,7 +515,7 @@ static void usbh_hub_events(struct usbh_hub *hub)
child->connected = true;
child->port = port + 1;
child->speed = speed;
USB_LOG_INFO("New %s device on Hub %u, Port %u connected\r\n", speed_table[speed], hub->index, port + 1);
/* Configure EP0 with the default maximum packet size */
@@ -557,7 +557,7 @@ static void usbh_hub_thread(void *argument)
usb_hc_init();
while (1) {
ret = usb_osal_mq_recv(hub_mq, (uint32_t *)&hub, 0xffffffff);
ret = usb_osal_mq_recv(hub_mq, (uintptr_t *)&hub, 0xffffffff);
if (ret < 0) {
continue;
}
@@ -580,7 +580,7 @@ static void usbh_roothub_register(void)
static void usbh_hub_thread_wakeup(struct usbh_hub *hub)
{
usb_osal_mq_send(hub_mq, (uint32_t)hub);
usb_osal_mq_send(hub_mq, (uintptr_t)hub);
}
void usbh_roothub_thread_wakeup(uint8_t port)

View File

@@ -52,25 +52,25 @@
#if (CONFIG_USB_DBG_LEVEL >= USB_DBG_LOG)
#define USB_LOG_DBG(fmt, ...) usb_dbg_log_line("D", 0, fmt, ##__VA_ARGS__)
#else
#define USB_LOG_DBG(...)
#define USB_LOG_DBG(...) {}
#endif
#if (CONFIG_USB_DBG_LEVEL >= USB_DBG_INFO)
#define USB_LOG_INFO(fmt, ...) usb_dbg_log_line("I", 32, fmt, ##__VA_ARGS__)
#else
#define USB_LOG_INFO(...)
#define USB_LOG_INFO(...) {}
#endif
#if (CONFIG_USB_DBG_LEVEL >= USB_DBG_WARNING)
#define USB_LOG_WRN(fmt, ...) usb_dbg_log_line("W", 33, fmt, ##__VA_ARGS__)
#else
#define USB_LOG_WRN(...)
#define USB_LOG_WRN(...) {}
#endif
#if (CONFIG_USB_DBG_LEVEL >= USB_DBG_ERROR)
#define USB_LOG_ERR(fmt, ...) usb_dbg_log_line("E", 31, fmt, ##__VA_ARGS__)
#else
#define USB_LOG_ERR(...)
#define USB_LOG_ERR(...) {}
#endif
#define USB_LOG_RAW(...) CONFIG_USB_PRINTF(__VA_ARGS__)
@@ -82,4 +82,4 @@ void usb_assert(const char *filename, int linenum);
usb_assert(__FILE__, __LINE__); \
} while (0)
#endif /* USB_LOG_H */
#endif /* USB_LOG_H */

View File

@@ -1123,7 +1123,7 @@ void usbd_event_ep_in_complete_handler(uint8_t ep, uint32_t nbytes)
}
#else
tx_msg[ep & 0x7f].nbytes = nbytes;
usb_osal_mq_send(usbd_tx_mq, (uint32_t)&tx_msg[ep & 0x7f]);
usb_osal_mq_send(usbd_tx_mq, (uintptr_t)&tx_msg[ep & 0x7f]);
#endif
}
@@ -1135,7 +1135,7 @@ void usbd_event_ep_out_complete_handler(uint8_t ep, uint32_t nbytes)
}
#else
rx_msg[ep & 0x7f].nbytes = nbytes;
usb_osal_mq_send(usbd_rx_mq, (uint32_t)&rx_msg[ep & 0x7f]);
usb_osal_mq_send(usbd_rx_mq, (uintptr_t)&rx_msg[ep & 0x7f]);
#endif
}
@@ -1146,7 +1146,7 @@ static void usbdev_tx_thread(void *argument)
int ret;
while (1) {
ret = usb_osal_mq_recv(usbd_tx_mq, (uint32_t *)&msg, 0xffffffff);
ret = usb_osal_mq_recv(usbd_tx_mq, (uintptr_t *)&msg, 0xffffffff);
if (ret < 0) {
continue;
}
@@ -1165,7 +1165,7 @@ static void usbdev_rx_thread(void *argument)
int ret;
while (1) {
ret = usb_osal_mq_recv(usbd_rx_mq, (uint32_t *)&msg, 0xffffffff);
ret = usb_osal_mq_recv(usbd_rx_mq, (uintptr_t *)&msg, 0xffffffff);
if (ret < 0) {
continue;
}

View File

@@ -28,8 +28,8 @@ int usb_osal_mutex_take(usb_osal_mutex_t mutex);
int usb_osal_mutex_give(usb_osal_mutex_t mutex);
usb_osal_mq_t usb_osal_mq_create(uint32_t max_msgs);
int usb_osal_mq_send(usb_osal_mq_t mq, uint32_t addr);
int usb_osal_mq_recv(usb_osal_mq_t mq, uint32_t *addr, uint32_t timeout);
int usb_osal_mq_send(usb_osal_mq_t mq, uintptr_t addr);
int usb_osal_mq_recv(usb_osal_mq_t mq, uintptr_t *addr, uint32_t timeout);
size_t usb_osal_enter_critical_section(void);
void usb_osal_leave_critical_section(size_t flag);

View File

@@ -68,10 +68,10 @@ int usb_osal_mutex_give(usb_osal_mutex_t mutex)
usb_osal_mq_t usb_osal_mq_create(uint32_t max_msgs)
{
return (usb_osal_mq_t)xQueueCreate(max_msgs, 4);
return (usb_osal_mq_t)xQueueCreate(max_msgs, sizeof(uintptr_t));
}
int usb_osal_mq_send(usb_osal_mq_t mq, uint32_t addr)
int usb_osal_mq_send(usb_osal_mq_t mq, uintptr_t addr)
{
BaseType_t xHigherPriorityTaskWoken = pdFALSE;
int ret;
@@ -84,7 +84,7 @@ int usb_osal_mq_send(usb_osal_mq_t mq, uint32_t addr)
return (ret == pdPASS) ? 0 : -ETIMEDOUT;
}
int usb_osal_mq_recv(usb_osal_mq_t mq, uint32_t *addr, uint32_t timeout)
int usb_osal_mq_recv(usb_osal_mq_t mq, uintptr_t *addr, uint32_t timeout)
{
return (xQueueReceive((usb_osal_mq_t)mq, addr, timeout) == pdPASS) ? 0 : -ETIMEDOUT;
}

View File

@@ -70,20 +70,20 @@ int usb_osal_mutex_give(usb_osal_mutex_t mutex)
usb_osal_mq_t usb_osal_mq_create(uint32_t max_msgs)
{
return (usb_osal_mq_t)rt_mq_create("usbh_mq", 4, max_msgs, RT_IPC_FLAG_FIFO);
return (usb_osal_mq_t)rt_mq_create("usbh_mq", sizeof(uintptr_t), max_msgs, RT_IPC_FLAG_FIFO);
}
int usb_osal_mq_send(usb_osal_mq_t mq, uint32_t addr)
int usb_osal_mq_send(usb_osal_mq_t mq, uintptr_t addr)
{
return rt_mq_send((rt_mq_t)mq, &addr, 4);
return rt_mq_send((rt_mq_t)mq, &addr, sizeof(uintptr_t));
}
int usb_osal_mq_recv(usb_osal_mq_t mq, uint32_t *addr, uint32_t timeout)
int usb_osal_mq_recv(usb_osal_mq_t mq, uintptr_t *addr, uint32_t timeout)
{
int ret = 0;
rt_err_t result = RT_EOK;
result = rt_mq_recv((rt_mq_t)mq, addr, 4, rt_tick_from_millisecond(timeout));
result = rt_mq_recv((rt_mq_t)mq, addr, sizeof(uintptr_t), rt_tick_from_millisecond(timeout));
if (result == -RT_ETIMEOUT) {
ret = -ETIMEDOUT;
} else if (result == -RT_ERROR) {