Changes in uspace/lib/c/generic/ddi.c [28f8f170:fd6bd6d] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/ddi.c
r28f8f170 rfd6bd6d 75 75 } 76 76 77 int dmamem_map(dmamem_t *dmamem, size_t pages, unsigned int map_flags, 78 unsigned int dma_flags) 79 { 80 // FIXME TODO 81 return -1; 82 } 83 84 int dmamem_unmap(dmamem_t *dmamem) 85 { 86 // FIXME TODO 87 return -1; 88 } 89 90 int dmamem_lock(void *virt, void **phys, size_t pages) 91 { 92 // FIXME TODO 93 return -1; 94 } 95 96 int dmamem_unlock(void *virt, size_t pages) 97 { 98 // FIXME TODO 99 return -1; 100 } 101 77 102 /** Enable I/O space range to task. 78 103 * 79 104 * Caller of this function must have the IO_MEM_MANAGER capability. 80 105 * 81 * @param id 82 * @param ioaddr 83 * @param size 106 * @param id Task ID. 107 * @param ioaddr Starting address of the I/O range. 108 * @param size Size of the range. 84 109 * 85 * @return 0 on success, EPERM if the caller lacks the 86 * CAP_IO_MANAGER capability, ENOENT if there is no task 87 * with specified ID and ENOMEM if there was some problem 88 * in allocating memory. 110 * @return EOK on success 111 * @return EPERM if the caller lacks the CAP_IO_MANAGER capability 112 * @return ENOENT if there is no task with specified ID 113 * @return ENOMEM if there was some problem in allocating memory. 114 * 89 115 */ 90 116 int iospace_enable(task_id_t id, void *ioaddr, unsigned long size) 91 117 { 92 118 ddi_ioarg_t arg; 93 119 94 120 arg.task_id = id; 95 121 arg.ioaddr = ioaddr; 96 122 arg.size = size; 97 123 98 124 return __SYSCALL1(SYS_IOSPACE_ENABLE, (sysarg_t) &arg); 99 125 } … … 101 127 /** Enable PIO for specified I/O range. 102 128 * 103 * @param pio_addr 104 * @param size 105 * @param use_addr Address where the final address for application's PIO106 * 129 * @param pio_addr I/O start address. 130 * @param size Size of the I/O region. 131 * @param use_addr Address where the final address for 132 * application's PIO will be stored. 107 133 * 108 * @return Zero on success or negative error code. 134 * @return Zero on success or negative error code. 135 * 109 136 */ 110 137 int pio_enable(void *pio_addr, size_t size, void **use_addr) … … 114 141 size_t offset; 115 142 unsigned int pages; 116 143 117 144 #ifdef IO_SPACE_BOUNDARY 118 145 if (pio_addr < IO_SPACE_BOUNDARY) { … … 121 148 } 122 149 #endif 123 150 124 151 phys = (void *) ALIGN_DOWN((uintptr_t) pio_addr, PAGE_SIZE); 125 152 offset = pio_addr - phys;
Note:
See TracChangeset
for help on using the changeset viewer.