#ifndef __OSP_MEM_H__
#define __OSP_MEM_H__

typedef struct tag_osp_im_mem_reg{
    uint32_t phy_addr;
    uint32_t len;
}osp_im_mem_reg;

extern char *osp_malloc(int size);
extern void  osp_free(char *p);
extern int   osp_mem_init(void);

/* 
实际IM的地址空间：0x0000 0000 -- 0x0003 FFFF，共256K
预留前128K，则平台实际使用的IM地址空间：0x0002 0000 -- 0x0003 FFFF，共128K
*/

//#define OSP_MEM_POOL_START  (0x00020000)    /* 平台内存管理的空间在IM内存空间 */
//#define OSP_MEM_POOL_SIZE     (0x00009400)    /* 平台可分配的IM内存空间大小[32K(任务栈)+5K(配置文件4K+预留1K)=37K] */
#define OSP_MEM_POOL_SIZE     (0x0000B400)    /* 平台可分配的IM内存空间大小[40K(任务栈)+5K(配置文件2K+预留3K)=45K] */

#endif /* __OSP_MEM_H__ */

