1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * System Control and Management Interface (SCMI) Message Protocol
4 * Raw mode support header.
5 *
6 * Copyright (C) 2022 ARM Ltd.
7 */
8#ifndef _SCMI_RAW_MODE_H
9#define _SCMI_RAW_MODE_H
10
11#include "common.h"
12
13enum {
14	SCMI_RAW_REPLY_QUEUE,
15	SCMI_RAW_NOTIF_QUEUE,
16	SCMI_RAW_ERRS_QUEUE,
17	SCMI_RAW_MAX_QUEUE
18};
19
20void *scmi_raw_mode_init(const struct scmi_handle *handle,
21			 struct dentry *top_dentry, int instance_id,
22			 u8 *channels, int num_chans,
23			 const struct scmi_desc *desc, int tx_max_msg);
24void scmi_raw_mode_cleanup(void *raw);
25
26void scmi_raw_message_report(void *raw, struct scmi_xfer *xfer,
27			     unsigned int idx, unsigned int chan_id);
28void scmi_raw_error_report(void *raw, struct scmi_chan_info *cinfo,
29			   u32 msg_hdr, void *priv);
30
31#endif /* _SCMI_RAW_MODE_H */
32