Changeset 1d758fc in mainline for uspace/drv/bus/usb/xhci/trb_ring.c
- Timestamp:
- 2018-02-12T10:11:47Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5fe3f954
- Parents:
- 2f762a7
- git-author:
- Ondřej Hlavatý <aearsis@…> (2018-02-05 03:28:50)
- git-committer:
- Ondřej Hlavatý <aearsis@…> (2018-02-12 10:11:47)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/xhci/trb_ring.c
r2f762a7 r1d758fc 89 89 static errno_t trb_segment_alloc(trb_segment_t **segment) 90 90 { 91 dma_buffer_t dbuf; 92 93 const errno_t err = dma_buffer_alloc(&dbuf, PAGE_SIZE); 91 *segment = AS_AREA_ANY; 92 uintptr_t phys; 93 94 const int err = dmamem_map_anonymous(PAGE_SIZE, 95 DMAMEM_4GiB, AS_AREA_READ | AS_AREA_WRITE, 0, 96 &phys, (void **) segment); 94 97 if (err) 95 98 return err; 96 99 97 *segment = dbuf.virt;98 100 memset(*segment, 0, PAGE_SIZE); 99 (*segment)->phys = dbuf.phys;101 (*segment)->phys = phys; 100 102 usb_log_debug("Allocated new ring segment."); 101 103 return EOK; … … 104 106 static void trb_segment_free(trb_segment_t *segment) 105 107 { 106 dma_buffer_t dbuf = { .virt = segment, .phys = segment->phys }; 107 dma_buffer_free(&dbuf); 108 dmamem_unmap_anonymous(segment); 108 109 } 109 110
Note:
See TracChangeset
for help on using the changeset viewer.