msm-4.14/include/uapi/linux/hab_ioctl.h
Zhiqiang Tu dc8efee553 soc: qcom: Add support for HAB
Add snapshot for hab from msm-4.4 commit cf41f3e0d3c2
(soc: qcom: hab: refine hab virtual channel's resource free).

Change-Id: If1c202467d4f83a9f9f7e23308ca68f78497329f
Signed-off-by: Zhiqiang Tu <ztu@codeaurora.org>
2018-11-19 11:16:57 +08:00

101 lines
1.6 KiB
C

#ifndef _HAB_IOCTL_H
#define _HAB_IOCTL_H
#include <linux/types.h>
struct hab_send {
__u64 data;
__s32 vcid;
__u32 sizebytes;
__u32 flags;
};
struct hab_recv {
__u64 data;
__s32 vcid;
__u32 sizebytes;
__u32 flags;
};
struct hab_open {
__s32 vcid;
__u32 mmid;
__u32 timeout;
__u32 flags;
};
struct hab_close {
__s32 vcid;
__u32 flags;
};
struct hab_export {
__u64 buffer;
__s32 vcid;
__u32 sizebytes;
__u32 exportid;
__u32 flags;
};
struct hab_import {
__u64 index;
__u64 kva;
__s32 vcid;
__u32 sizebytes;
__u32 exportid;
__u32 flags;
};
struct hab_unexport {
__s32 vcid;
__u32 exportid;
__u32 flags;
};
struct hab_unimport {
__s32 vcid;
__u32 exportid;
__u64 kva;
__u32 flags;
};
struct hab_info {
__s32 vcid;
__u64 ids; /* high part remote; low part local */
__u64 names;
__u32 namesize; /* single name length */
__u32 flags;
};
#define HAB_IOC_TYPE 0x0A
#define IOCTL_HAB_SEND \
_IOW(HAB_IOC_TYPE, 0x2, struct hab_send)
#define IOCTL_HAB_RECV \
_IOWR(HAB_IOC_TYPE, 0x3, struct hab_recv)
#define IOCTL_HAB_VC_OPEN \
_IOWR(HAB_IOC_TYPE, 0x4, struct hab_open)
#define IOCTL_HAB_VC_CLOSE \
_IOW(HAB_IOC_TYPE, 0x5, struct hab_close)
#define IOCTL_HAB_VC_EXPORT \
_IOWR(HAB_IOC_TYPE, 0x6, struct hab_export)
#define IOCTL_HAB_VC_IMPORT \
_IOWR(HAB_IOC_TYPE, 0x7, struct hab_import)
#define IOCTL_HAB_VC_UNEXPORT \
_IOW(HAB_IOC_TYPE, 0x8, struct hab_unexport)
#define IOCTL_HAB_VC_UNIMPORT \
_IOW(HAB_IOC_TYPE, 0x9, struct hab_unimport)
#define IOCTL_HAB_VC_QUERY \
_IOWR(HAB_IOC_TYPE, 0xA, struct hab_info)
#endif /* _HAB_IOCTL_H */