Changeset 8442d10 in mainline for uspace/lib/c
- Timestamp:
- 2013-09-09T21:48:12Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c67dbd6
- Parents:
- 2e2c18a1
- Location:
- uspace/lib/c
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/ddi.c
r2e2c18a1 r8442d10 76 76 * 77 77 */ 78 int physmem_map( void *phys, size_t pages, unsigned int flags, void **virt)78 int physmem_map(uintptr_t phys, size_t pages, unsigned int flags, void **virt) 79 79 { 80 80 return __SYSCALL5(SYS_PHYSMEM_MAP, (sysarg_t) phys, … … 83 83 84 84 int dmamem_map(void *virt, size_t size, unsigned int map_flags, 85 unsigned int flags, void **phys)85 unsigned int flags, uintptr_t *phys) 86 86 { 87 87 return (int) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size, … … 90 90 } 91 91 92 int dmamem_map_anonymous(size_t size, unsigned int map_flags, 93 unsigned int flags, void **phys, void **virt) 94 { 92 int dmamem_map_anonymous(size_t size, uintptr_t constraint, 93 unsigned int map_flags, unsigned int flags, uintptr_t *phys, void **virt) 94 { 95 *phys = constraint; 96 95 97 return (int) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size, 96 98 (sysarg_t) map_flags, (sysarg_t) flags | DMAMEM_FLAGS_ANONYMOUS, … … 158 160 if (!virt) 159 161 return EINVAL; 160 161 void *phys_frame =162 (void *)ALIGN_DOWN((uintptr_t) pio_addr, PAGE_SIZE);163 size_t offset = pio_addr - phys_frame;162 163 uintptr_t phys_frame = 164 ALIGN_DOWN((uintptr_t) pio_addr, PAGE_SIZE); 165 size_t offset = (uintptr_t) pio_addr - phys_frame; 164 166 size_t pages = SIZE2PAGES(offset + size); 165 167 -
uspace/lib/c/generic/time.c
r2e2c18a1 r8442d10 556 556 557 557 void *addr; 558 rc = physmem_map( (void *) faddr, 1,559 AS_AREA_READ | AS_AREA_CACHEABLE,&addr);558 rc = physmem_map(faddr, 1, AS_AREA_READ | AS_AREA_CACHEABLE, 559 &addr); 560 560 if (rc != EOK) { 561 561 as_area_destroy(addr); -
uspace/lib/c/include/ddi.h
r2e2c18a1 r8442d10 42 42 #include <task.h> 43 43 44 #define DMAMEM_16MiB ((uintptr_t) UINT64_C(0xffffffffff000000)) 45 #define DMAMEM_4GiB ((uintptr_t) UINT64_C(0xffffffff00000000)) 46 44 47 extern int device_assign_devno(void); 45 48 46 extern int physmem_map( void *, size_t, unsigned int, void **);49 extern int physmem_map(uintptr_t, size_t, unsigned int, void **); 47 50 48 extern int dmamem_map(void *, size_t, unsigned int, unsigned int, void **);49 extern int dmamem_map_anonymous(size_t, u nsigned int, unsigned int, void **,50 void **);51 extern int dmamem_map(void *, size_t, unsigned int, unsigned int, uintptr_t *); 52 extern int dmamem_map_anonymous(size_t, uintptr_t, unsigned int, unsigned int, 53 uintptr_t *, void **); 51 54 extern int dmamem_unmap(void *, size_t); 52 55 extern int dmamem_unmap_anonymous(void *);
Note:
See TracChangeset
for help on using the changeset viewer.