Changeset a2b0ba3 in mainline
- Timestamp:
- 2017-10-03T11:31:18Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a1eb7c67
- Parents:
- 1f76b7d
- Location:
- uspace/drv/bus/usb/xhci
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/xhci/trb_ring.c
r1f76b7d ra2b0ba3 114 114 ring->pcs = 1; 115 115 116 fibril_mutex_initialize(&ring->guard); 117 116 118 usb_log_debug("Initialized new TRB ring."); 117 119 … … 170 172 int xhci_trb_ring_enqueue(xhci_trb_ring_t *ring, xhci_trb_t *td, uintptr_t *phys) 171 173 { 174 fibril_mutex_lock(&ring->guard); 175 172 176 xhci_trb_t * const saved_enqueue_trb = ring->enqueue_trb; 173 177 trb_segment_t * const saved_enqueue_segment = ring->enqueue_segment; … … 204 208 205 209 usb_log_debug2("TRB ring(%p): Enqueued TRB %p", ring, trb); 210 usb_log_error("RING->PCS: %u", ring->pcs); 206 211 ring->enqueue_trb++; 207 212 … … 219 224 } while (xhci_trb_is_chained(trb++)); 220 225 226 fibril_mutex_unlock(&ring->guard); 221 227 return EOK; 222 228 … … 224 230 ring->enqueue_segment = saved_enqueue_segment; 225 231 ring->enqueue_trb = saved_enqueue_trb; 232 fibril_mutex_unlock(&ring->guard); 226 233 return EAGAIN; 227 234 } -
uspace/drv/bus/usb/xhci/trb_ring.h
r1f76b7d ra2b0ba3 44 44 45 45 #include <adt/list.h> 46 #include <fibril_synch.h> 46 47 #include <libarch/config.h> 47 48 … … 68 69 uintptr_t dequeue; /* Last reported position of the dequeue pointer */ 69 70 bool pcs; /* Producer Cycle State: section 4.9.2 */ 71 72 fibril_mutex_t guard; 70 73 } xhci_trb_ring_t; 71 74
Note:
See TracChangeset
for help on using the changeset viewer.