linux/drivers/crypto/marvell/octeontx/otx_cptvf_mbox.c

// 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.
 */

#include <linux/delay.h>
#include "otx_cptvf.h"

#define CPT_MBOX_MSG_TIMEOUT

static char *get_mbox_opcode_str(int msg_opcode)
{}

static void dump_mbox_msg(struct otx_cpt_mbox *mbox_msg, int vf_id)
{}

static void cptvf_send_msg_to_pf(struct otx_cptvf *cptvf,
				     struct otx_cpt_mbox *mbx)
{}

/* Interrupt handler to handle mailbox messages from VFs */
void otx_cptvf_handle_mbox_intr(struct otx_cptvf *cptvf)
{}

static int cptvf_send_msg_to_pf_timeout(struct otx_cptvf *cptvf,
					struct otx_cpt_mbox *mbx)
{}

/*
 * Checks if VF is able to comminicate with PF
 * and also gets the CPT number this VF is associated to.
 */
int otx_cptvf_check_pf_ready(struct otx_cptvf *cptvf)
{}

/*
 * Communicate VQs size to PF to program CPT(0)_PF_Q(0-15)_CTL of the VF.
 * Must be ACKed.
 */
int otx_cptvf_send_vq_size_msg(struct otx_cptvf *cptvf)
{}

/*
 * Communicate VF group required to PF and get the VQ binded to that group
 */
int otx_cptvf_send_vf_to_grp_msg(struct otx_cptvf *cptvf, int group)
{}

/*
 * Communicate VF group required to PF and get the VQ binded to that group
 */
int otx_cptvf_send_vf_priority_msg(struct otx_cptvf *cptvf)
{}

/*
 * Communicate to PF that VF is UP and running
 */
int otx_cptvf_send_vf_up(struct otx_cptvf *cptvf)
{}

/*
 * Communicate to PF that VF is DOWN and running
 */
int otx_cptvf_send_vf_down(struct otx_cptvf *cptvf)
{}