Back to home page

OSCL-LXR

 
 

    


0001 /**********************************************************************
0002  * Author: Cavium, Inc.
0003  *
0004  * Contact: support@cavium.com
0005  *          Please include "LiquidIO" in the subject.
0006  *
0007  * Copyright (c) 2003-2017 Cavium, Inc.
0008  *
0009  * This file is free software; you can redistribute it and/or modify
0010  * it under the terms of the GNU General Public License, Version 2, as
0011  * published by the Free Software Foundation.
0012  *
0013  * This file is distributed in the hope that it will be useful, but
0014  * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
0015  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
0016  * NONINFRINGEMENT.  See the GNU General Public License for more
0017  * details.
0018  *
0019  * This file may also be available under a different license from Cavium.
0020  * Contact Cavium, Inc. for more information
0021  **********************************************************************/
0022 
0023 /*! \file octeon_vf_main.h
0024  *  \brief Host Driver: This file defines vf_rep related macros and structures
0025  */
0026 #ifndef __LIO_VF_REP_H__
0027 #define __LIO_VF_REP_H__
0028 #define LIO_VF_REP_REQ_TMO_MS 5000
0029 #define LIO_VF_REP_STATS_POLL_TIME_MS 200
0030 
0031 struct lio_vf_rep_desc {
0032     struct net_device *parent_ndev;
0033     struct net_device *ndev;
0034     struct octeon_device *oct;
0035     struct lio_vf_rep_stats stats;
0036     struct cavium_wk stats_wk;
0037     atomic_t ifstate;
0038     int ifidx;
0039 };
0040 
0041 struct lio_vf_rep_sc_ctx {
0042     struct completion complete;
0043 };
0044 
0045 int lio_vf_rep_create(struct octeon_device *oct);
0046 void lio_vf_rep_destroy(struct octeon_device *oct);
0047 int lio_vf_rep_modinit(void);
0048 void lio_vf_rep_modexit(void);
0049 #endif