10#define __OSAL_ADDR_H__
18#define OSAL_GFP_ZERO (0x1)
19#define OSAL_GFP_ATOMIC (0x1 << 1)
20#define OSAL_GFP_DMA (0x1 << 2)
21#define OSAL_GFP_KERNEL (0x1 << 3)
23#define OSAL_VERIFY_READ 0
24#define OSAL_VERIFY_WRITE 1
41void *
osal_kmalloc(
unsigned long size,
unsigned int osal_gfp_flag);
58void *
osal_kzalloc(
unsigned long size,
unsigned int osal_gfp_flag);
80void *
osal_kmalloc_align(
unsigned int size,
unsigned int osal_gfp_flag,
unsigned int boundary);
102void *
osal_kzalloc_align(
unsigned int size,
unsigned int osal_gfp_flag,
unsigned int boundary);
325void *
osal_ioremap(
unsigned long phys_addr,
unsigned long size);
unsigned long osal_copy_from_user(void *to, const void *from, unsigned long n)
copy_from_user.
Definition osal_addr.c:158
void osal_iounmap(void *addr, unsigned long size)
Free a IO remapping.
Definition osal_addr.c:149
void osal_pool_mem_free(void *pool, const void *addr)
Free dynamic memory.
Definition osal_addr.c:76
void * osal_kmalloc_align(unsigned int size, unsigned int osal_gfp_flag, unsigned int boundary)
alloc aligned dynamic memory.
Definition osal_addr.c:36
void * osal_kmalloc(unsigned long size, unsigned int osal_gfp_flag)
Alloc dynamic memory.
Definition osal_addr.c:20
void osal_vfree(void *addr)
release memory allocd by vmalloc().
Definition osal_addr.c:117
int osal_pool_mem_init(void *pool, unsigned int size)
Initialize dynamic memory.
Definition osal_addr.c:57
int osal_pool_mem_deinit(void *pool)
Deinitialize dynamic memory.
Definition osal_addr.c:81
void osal_blockmem_free(unsigned long phys_addr, unsigned long size)
Free the reserved memory which has been defined in product.
void * osal_vmalloc(unsigned long size)
alloc virtually contiguous memory.
Definition osal_addr.c:95
void osal_kfree(void *addr)
Free dynamic memory.
Definition osal_addr.c:52
void * osal_phys_to_virt(unsigned long addr)
Change physical addresses to virtual addresses.
Definition osal_addr.c:195
void * osal_pool_mem_alloc_align(void *pool, unsigned int size, unsigned int boundary)
alloc aligned memory.
Definition osal_addr.c:71
osal_blockmem_status osal_blockmem_get_status(unsigned long phyaddr, unsigned int size)
Get the block mem status.
unsigned long osal_virt_to_phys(const void *virt_addr)
Change virtual addresses to physical addresses.
Definition osal_addr.c:200
void * osal_kzalloc_align(unsigned int size, unsigned int osal_gfp_flag, unsigned int boundary)
alloc aligned dynamic memory.
Definition osal_addr.c:42
void * osal_vzalloc(unsigned long size)
alloc virtually contiguous memory.
Definition osal_addr.c:104
void * osal_blockmem_vmap(unsigned long phys_addr, unsigned long size)
Maps size from phys_addr into contiguous kernel virtual space.
void * osal_ioremap_cached(unsigned long phys_addr, unsigned long size)
Map bus memory into CPU space.
Definition osal_addr.c:144
void * osal_ioremap_wc(unsigned long phys_addr, unsigned long size)
map memory into CPU space write combined.
Definition osal_addr.c:139
int osal_access_ok(int type, const void *addr, unsigned long size)
Check whether the user space memory block is available.
Definition osal_addr.c:205
unsigned long osal_copy_to_user(void *to, const void *from, unsigned long n)
copy_to_user.
Definition osal_addr.c:178
void osal_blockmem_vunmap(const void *virt_addr)
Free the virtually contiguous memory area.
void * osal_pool_mem_alloc(void *pool, unsigned int size)
alloc dynamic memory.
Definition osal_addr.c:66
void * osal_kzalloc(unsigned long size, unsigned int osal_gfp_flag)
Alloc dynamic memory.
Definition osal_addr.c:26
void * osal_ioremap(unsigned long phys_addr, unsigned long size)
Map bus memory into CPU space.
Definition osal_addr.c:126
void * osal_ioremap_nocache(unsigned long phys_addr, unsigned long size)
Map bus memory into CPU space.
Definition osal_addr.c:135
osal_u8 type
Definition oal_net.h:0
osal_blockmem_status
Definition osal_addr.h:284
@ OSAL_BLOCKMEM_INVALID_PHYADDR
Definition osal_addr.h:286
@ OSAL_BLOCKMEM_INVALID_SIZE
Definition osal_addr.h:287
@ OSAL_BLOCKMEM_VALID
Definition osal_addr.h:285
@ OSAL_BLOCKMEM_MAX
Definition osal_addr.h:288