/* SPDX-License-Identifier: GPL-2.0 * Marvell OcteonTX CPT driver * * Copyright (C) 2019 Marvell International Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __OTX_CPT_COMMON_H #define __OTX_CPT_COMMON_H #include <linux/types.h> #include <linux/delay.h> #include <linux/device.h> #define OTX_CPT_MAX_MBOX_DATA_STR_SIZE 64 enum otx_cptpf_type { OTX_CPT_AE = 2, OTX_CPT_SE = 3, BAD_OTX_CPTPF_TYPE, }; enum otx_cptvf_type { OTX_CPT_AE_TYPES = 1, OTX_CPT_SE_TYPES = 2, BAD_OTX_CPTVF_TYPE, }; /* VF-PF message opcodes */ enum otx_cpt_mbox_opcode { OTX_CPT_MSG_VF_UP = 1, OTX_CPT_MSG_VF_DOWN, OTX_CPT_MSG_READY, OTX_CPT_MSG_QLEN, OTX_CPT_MSG_QBIND_GRP, OTX_CPT_MSG_VQ_PRIORITY, OTX_CPT_MSG_PF_TYPE, OTX_CPT_MSG_ACK, OTX_CPT_MSG_NACK }; /* OcteonTX CPT mailbox structure */ struct otx_cpt_mbox { u64 msg; /* Message type MBOX[0] */ u64 data;/* Data MBOX[1] */ }; #endif /* __OTX_CPT_COMMON_H */