diff --git a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/port/xhci/xhci.h b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/port/xhci/xhci.h index 0d8bff14f..d701eb935 100644 --- a/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/port/xhci/xhci.h +++ b/Ubiquitous/XiZi_AIoT/services/drivers/usb/components/port/xhci/xhci.h @@ -813,16 +813,27 @@ struct xhci_host { char name[4]; /* xhci registers base addr */ + /* + * base, cap, op, run and db are pointed to their according physical address. However, the user-space driver can not access physical + * address directly. So we add these data members: base_addr, cap_addr, op_addr, run_addr and ad_addr, and bind them to the according + * physical address. + */ /** Registers base */ void *base; + void *base_addr; /** Capability registers */ void *cap; + void *cap_addr; + /** Operational registers */ void *op; + void *op_addr; /** Runtime registers */ void *run; + void *run_addr; /** Doorbell registers */ void *db; + void *db_addr; /** extended capability */ unsigned int xecp; /** capability cache */