From e9b9e907c62ecad5ab5b612db3b1c16a40f15ca8 Mon Sep 17 00:00:00 2001 From: xj Date: Tue, 25 Jun 2024 19:38:58 -0700 Subject: [PATCH] Add physical page interface --- .../drivers/usb/components/mem/usb_mem.c | 11 +++++++++++ .../drivers/usb/components/mem/usb_mem.h | 16 ++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.c b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.c index 54e47f614..f4a220235 100644 --- a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.c +++ b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.c @@ -52,4 +52,15 @@ void *usb_hc_malloc_align(size_t align, size_t size) void usb_hc_free(void* ptr){ if(ptr != NULL) free(ptr); +} + + +usb_dir_page_t usb_alloc_dir_page(int len, int flag, int headroom_len){ + return NULL; +} + + + +void usb_free_dir_page(usb_dir_page_t page){ + } \ No newline at end of file diff --git a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.h b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.h index b47417473..03fea763c 100644 --- a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.h +++ b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/mem/usb_mem.h @@ -23,6 +23,7 @@ Modification: Use usb_malloc, usb_free and usb_align functions #define USB_MEM_H_ #include +#include #include "usb_config.h" #define USB_MEM_ALIGNX __attribute__((aligned(CONFIG_USB_ALIGN_SIZE))) @@ -35,5 +36,20 @@ void *usb_hc_malloc_align(size_t align, size_t size); #define usb_free(ptr) usb_hc_free(ptr) #define usb_align(align, size) usb_hc_malloc_align(align, size) +struct usb_dir_page{ + uint64_t vir_addr; + uint64_t phy_addr; + uint32_t size; + uint32_t len; + uint32_t flag; + uint32_t headroom_len; +}__PACKED; + +typedef struct usb_dir_page *usb_dir_page_t; + +usb_dir_page_t usb_alloc_dir_page(int len, int flag, int headroom_len); +void usb_free_dir_page(usb_dir_page_t page); + + #endif