1 /********************************************************************** 2 * Author: Cavium, Inc. 3 * 4 * Contact: support@cavium.com 5 * Please include "LiquidIO" in the subject. 6 * 7 * Copyright (c) 2003-2017 Cavium, Inc. 8 * 9 * This file is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License, Version 2, as 11 * published by the Free Software Foundation. 12 * 13 * This file is distributed in the hope that it will be useful, but 14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty 15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or 16 * NONINFRINGEMENT. See the GNU General Public License for more 17 * details. 18 * 19 * This file may also be available under a different license from Cavium. 20 * Contact Cavium, Inc. for more information 21 **********************************************************************/ 22 23 /*! \file octeon_vf_main.h 24 * \brief Host Driver: This file defines vf_rep related macros and structures 25 */ 26 #ifndef __LIO_VF_REP_H__ 27 #define __LIO_VF_REP_H__ 28 #define LIO_VF_REP_REQ_TMO_MS 5000 29 #define LIO_VF_REP_STATS_POLL_TIME_MS 200 30 31 struct lio_vf_rep_desc { 32 struct net_device *parent_ndev; 33 struct net_device *ndev; 34 struct octeon_device *oct; 35 struct lio_vf_rep_stats stats; 36 struct cavium_wk stats_wk; 37 atomic_t ifstate; 38 int ifidx; 39 }; 40 41 struct lio_vf_rep_sc_ctx { 42 struct completion complete; 43 }; 44 45 int lio_vf_rep_create(struct octeon_device *oct); 46 void lio_vf_rep_destroy(struct octeon_device *oct); 47 int lio_vf_rep_modinit(void); 48 void lio_vf_rep_modexit(void); 49 #endif 50