Changeset 176a70a in mainline
- Timestamp:
- 2017-08-17T17:49:32Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- d3dce3f
- Parents:
- c0ec9e7
- Location:
- uspace/drv/bus/usb/xhci
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/xhci/endpoint.c
rc0ec9e7 r176a70a 40 40 int endpoint_init(hcd_t *hcd, endpoint_t *ep) 41 41 { 42 // TODO: Implement me! 43 usb_log_debug("Endpoint initialized."); 44 return ENAK; 42 assert(ep); 43 xhci_endpoint_t *xhci_ep = malloc(sizeof(xhci_endpoint_t)); 44 if (xhci_ep == NULL) 45 return ENOMEM; 46 47 /* FIXME: Set xhci_ep->slot_id */ 48 49 fibril_mutex_lock(&ep->guard); 50 ep->hc_data.data = xhci_ep; 51 /* FIXME: The two handlers below should be implemented. */ 52 ep->hc_data.toggle_get = NULL; 53 ep->hc_data.toggle_set = NULL; 54 fibril_mutex_unlock(&ep->guard); 55 56 usb_log_debug("Endpoint %d:%d initialized.", ep->address, ep->endpoint); 57 return EOK; 45 58 } 46 59 47 60 void endpoint_fini(hcd_t *hcd, endpoint_t *ep) 48 61 { 49 // TODO: Implement me! 50 usb_log_debug("Endpoint destroyed."); 62 assert(hcd); 63 assert(ep); 64 xhci_endpoint_t *xhci_ep = endpoint_get(ep); 65 /* FIXME: Tear down TR's? */ 66 if (xhci_ep) { 67 free(xhci_ep); 68 } 69 70 usb_log_debug("Endpoint %d:%d destroyed.", ep->address, ep->endpoint); 51 71 } 52 72 -
uspace/drv/bus/usb/xhci/endpoint.h
rc0ec9e7 r176a70a 43 43 #include <usb/host/hcd.h> 44 44 45 /** Connector structure linking endpoint context to the endpoint. */ 46 typedef struct xhci_endpoint { 47 uint32_t slot_id; 48 } xhci_endpoint_t; 49 45 50 int endpoint_init(hcd_t *hcd, endpoint_t *ep); 46 51 void endpoint_fini(hcd_t *hcd, endpoint_t *ep); 52 53 static inline xhci_endpoint_t * endpoint_get(const endpoint_t *ep) 54 { 55 assert(ep); 56 return ep->hc_data.data; 57 } 47 58 48 59 #endif
Note:
See TracChangeset
for help on using the changeset viewer.