Changes in uspace/lib/c/generic/ddi.c [8cd680c:8820544] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/ddi.c
r8cd680c r8820544 87 87 } 88 88 89 /** Unmap a piece of physical memory to task.90 *91 * Caller of this function must have the CAP_MEM_MANAGER capability.92 *93 * @param virt Virtual address from the phys-mapped region.94 *95 * @return EOK on success.96 * @return EPERM if the caller lacks the CAP_MEM_MANAGER capability.97 *98 */99 int physmem_unmap(void *virt)100 {101 return __SYSCALL1(SYS_PHYSMEM_UNMAP, (sysarg_t) virt);102 }103 104 89 /** Lock a piece physical memory for DMA transfers. 105 90 * … … 194 179 195 180 return __SYSCALL1(SYS_IOSPACE_ENABLE, (sysarg_t) &arg); 196 }197 198 /** Disable I/O space range to task.199 *200 * Caller of this function must have the IO_MEM_MANAGER capability.201 *202 * @param id Task ID.203 * @param ioaddr Starting address of the I/O range.204 * @param size Size of the range.205 *206 * @return EOK on success207 * @return EPERM if the caller lacks the CAP_IO_MANAGER capability208 * @return ENOENT if there is no task with specified ID209 *210 */211 static int iospace_disable(task_id_t id, void *ioaddr, size_t size)212 {213 const ddi_ioarg_t arg = {214 .task_id = id,215 .ioaddr = ioaddr,216 .size = size217 };218 219 return __SYSCALL1(SYS_IOSPACE_DISABLE, (sysarg_t) &arg);220 181 } 221 182 … … 312 273 } 313 274 314 /** Disable PIO for specified I/O range.315 *316 * @param virt I/O start address.317 * @param size Size of the I/O region.318 *319 * @return EOK on success.320 * @return Negative error code on failure.321 *322 */323 int pio_disable(void *virt, size_t size)324 {325 #ifdef IO_SPACE_BOUNDARY326 if (virt < IO_SPACE_BOUNDARY)327 return iospace_disable(task_get_id(), virt, size);328 #else329 (void) iospace_disable;330 #endif331 return physmem_unmap(virt);332 }333 334 275 void pio_write_8(ioport8_t *reg, uint8_t val) 335 276 {
Note:
See TracChangeset
for help on using the changeset viewer.