diff options
author | Angela Stegmaier <angelabaker@ti.com> | 2010-06-22 17:28:06 -0500 |
---|---|---|
committer | Sebastien Jan <s-jan@ti.com> | 2010-07-20 10:49:56 +0200 |
commit | 5ac341fe365d37fac1182fa051bfd64bd5f4af04 (patch) | |
tree | befcd8965460424ea119f114311bb9508f15bbd8 /arch | |
parent | dc9948296e042a410d747d48507f580432593584 (diff) |
SYSLINK: ipc- resource cleanup ioctl changes
Added the resource cleanup functionality to the ipc driver module and ioctl
so that the ipc components can add to the list their resource which
require cleaning.
Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/plat-omap/include/syslink/ipc_ioctl.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/arch/arm/plat-omap/include/syslink/ipc_ioctl.h b/arch/arm/plat-omap/include/syslink/ipc_ioctl.h index 6c16a3d22e12..07ab472ccf0b 100644 --- a/arch/arm/plat-omap/include/syslink/ipc_ioctl.h +++ b/arch/arm/plat-omap/include/syslink/ipc_ioctl.h @@ -87,6 +87,27 @@ enum ipc_command_ranges { NOTIFY_CMD_NOS - 1) }; -int ipc_ioc_router(u32 cmd, ulong arg); +struct resource_info { + struct list_head res; /* Pointer to res entry */ + unsigned int cmd; /* command */ + void *data; /* Some private data */ +}; + +/* Process Context */ +struct ipc_process_context { + /* List of Resources */ + struct list_head resources; + spinlock_t res_lock; + + struct ipc_device *dev; +}; + +void add_pr_res(struct ipc_process_context *pr_ctxt, unsigned int cmd, + void *data); + +void remove_pr_res(struct ipc_process_context *pr_ctxt, + struct resource_info *info); + +int ipc_ioc_router(u32 cmd, ulong arg, struct file *filp, bool user); #endif /* _IPC_IOCTL_H */ |