diff options
Diffstat (limited to 'qcom/rmtfs/qmi_rmtfs.qmi')
-rw-r--r-- | qcom/rmtfs/qmi_rmtfs.qmi | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/qcom/rmtfs/qmi_rmtfs.qmi b/qcom/rmtfs/qmi_rmtfs.qmi new file mode 100644 index 0000000..ca350d7 --- /dev/null +++ b/qcom/rmtfs/qmi_rmtfs.qmi @@ -0,0 +1,77 @@ +package rmtfs; + +const QMI_RMTFS_RESULT_SUCCESS = 0; +const QMI_RMTFS_RESULT_FAILURE = 1; + +const QMI_RMTFS_ERR_NONE = 0; +const QMI_RMTFS_ERR_INTERNAL = 1; +const QMI_RMTFS_ERR_MALFORMED_MSG = 2; + +const QMI_RMTFS_OPEN = 1; +const QMI_RMTFS_CLOSE = 2; +const QMI_RMTFS_RW_IOVEC = 3; +const QMI_RMTFS_ALLOC_BUFF = 4; +const QMI_RMTFS_GET_DEV_ERROR = 5; +const QMI_RMTFS_FORCE_SYNC_IND = 6; + +struct qmi_result { + u16 result; + u16 error; +}; + +struct iovec_entry { + u32 sector_addr; + u32 phys_offset; + u32 num_sector; +}; + +request open_req { + required string path = 1; +} = 1; + +response open_resp { + required qmi_result result = 2; + optional u32 caller_id = 0x10; +} = 1; + +request close_req { + required u32 caller_id = 1; +} = 2; + +response close_resp { + required qmi_result result = 2; +} = 2; + +request iovec_req { + required u32 caller_id = 1; + required u8 direction = 2; + required iovec_entry iovec(255) = 3; + required u8 is_force_sync = 4; +} = 3; + +response iovec_resp { + required qmi_result result = 2; +} = 3; + +request alloc_buf_req { + required u32 caller_id = 1; + required u32 buff_size = 2; +} = 4; + +response alloc_buf_resp { + required qmi_result result = 2; + optional u64 buff_address = 0x10; +} = 4; + +request dev_error_req { + required u32 caller_id = 1; +} = 5; + +response dev_error_resp { + required qmi_result result = 2; + optional u8 status = 0x10; +} = 5; + +indication force_sync { + required u32 caller_id(10) = 1; +} = 6; |