Lines Matching refs:lif
96 #define q_to_tx_stats(q) (&(q)->lif->txqstats[(q)->index])
97 #define q_to_rx_stats(q) (&(q)->lif->rxqstats[(q)->index])
263 struct ionic_lif *lif; member
277 static inline void ionic_init_queue_params(struct ionic_lif *lif, in ionic_init_queue_params() argument
280 qparam->nxqs = lif->nxqs; in ionic_init_queue_params()
281 qparam->ntxq_descs = lif->ntxq_descs; in ionic_init_queue_params()
282 qparam->nrxq_descs = lif->nrxq_descs; in ionic_init_queue_params()
283 qparam->rxq_features = lif->rxq_features; in ionic_init_queue_params()
284 qparam->xdp_prog = lif->xdp_prog; in ionic_init_queue_params()
285 qparam->intr_split = test_bit(IONIC_LIF_F_SPLIT_INTR, lif->state); in ionic_init_queue_params()
286 qparam->cmb_tx = test_bit(IONIC_LIF_F_CMB_TX_RINGS, lif->state); in ionic_init_queue_params()
287 qparam->cmb_rx = test_bit(IONIC_LIF_F_CMB_RX_RINGS, lif->state); in ionic_init_queue_params()
290 static inline void ionic_set_queue_params(struct ionic_lif *lif, in ionic_set_queue_params() argument
293 lif->nxqs = qparam->nxqs; in ionic_set_queue_params()
294 lif->ntxq_descs = qparam->ntxq_descs; in ionic_set_queue_params()
295 lif->nrxq_descs = qparam->nrxq_descs; in ionic_set_queue_params()
296 lif->rxq_features = qparam->rxq_features; in ionic_set_queue_params()
299 set_bit(IONIC_LIF_F_SPLIT_INTR, lif->state); in ionic_set_queue_params()
301 clear_bit(IONIC_LIF_F_SPLIT_INTR, lif->state); in ionic_set_queue_params()
304 set_bit(IONIC_LIF_F_CMB_TX_RINGS, lif->state); in ionic_set_queue_params()
306 clear_bit(IONIC_LIF_F_CMB_TX_RINGS, lif->state); in ionic_set_queue_params()
309 set_bit(IONIC_LIF_F_CMB_RX_RINGS, lif->state); in ionic_set_queue_params()
311 clear_bit(IONIC_LIF_F_CMB_RX_RINGS, lif->state); in ionic_set_queue_params()
335 void ionic_link_status_check_request(struct ionic_lif *lif, bool can_sleep);
338 void ionic_lif_deferred_enqueue(struct ionic_lif *lif,
341 int ionic_lif_init(struct ionic_lif *lif);
342 void ionic_lif_free(struct ionic_lif *lif);
343 void ionic_lif_deinit(struct ionic_lif *lif);
345 int ionic_lif_addr_add(struct ionic_lif *lif, const u8 *addr);
346 int ionic_lif_addr_del(struct ionic_lif *lif, const u8 *addr);
348 void ionic_stop_queues_reconfig(struct ionic_lif *lif);
349 void ionic_txrx_free(struct ionic_lif *lif);
350 void ionic_qcqs_free(struct ionic_lif *lif);
351 int ionic_restart_lif(struct ionic_lif *lif);
353 int ionic_lif_register(struct ionic_lif *lif);
354 void ionic_lif_unregister(struct ionic_lif *lif);
360 void ionic_lif_hwstamp_replay(struct ionic_lif *lif);
361 void ionic_lif_hwstamp_recreate_queues(struct ionic_lif *lif);
362 int ionic_lif_hwstamp_set(struct ionic_lif *lif, struct ifreq *ifr);
363 int ionic_lif_hwstamp_get(struct ionic_lif *lif, struct ifreq *ifr);
364 ktime_t ionic_lif_phc_ktime(struct ionic_lif *lif, u64 counter);
365 void ionic_lif_register_phc(struct ionic_lif *lif);
366 void ionic_lif_unregister_phc(struct ionic_lif *lif);
367 void ionic_lif_alloc_phc(struct ionic_lif *lif);
368 void ionic_lif_free_phc(struct ionic_lif *lif);
370 static inline void ionic_lif_hwstamp_replay(struct ionic_lif *lif) {} in ionic_lif_hwstamp_replay() argument
371 static inline void ionic_lif_hwstamp_recreate_queues(struct ionic_lif *lif) {} in ionic_lif_hwstamp_recreate_queues() argument
373 static inline int ionic_lif_hwstamp_set(struct ionic_lif *lif, struct ifreq *ifr) in ionic_lif_hwstamp_set() argument
378 static inline int ionic_lif_hwstamp_get(struct ionic_lif *lif, struct ifreq *ifr) in ionic_lif_hwstamp_get() argument
383 static inline ktime_t ionic_lif_phc_ktime(struct ionic_lif *lif, u64 counter) in ionic_lif_phc_ktime() argument
388 static inline void ionic_lif_register_phc(struct ionic_lif *lif) {} in ionic_lif_register_phc() argument
389 static inline void ionic_lif_unregister_phc(struct ionic_lif *lif) {} in ionic_lif_unregister_phc() argument
390 static inline void ionic_lif_alloc_phc(struct ionic_lif *lif) {} in ionic_lif_alloc_phc() argument
391 static inline void ionic_lif_free_phc(struct ionic_lif *lif) {} in ionic_lif_free_phc() argument
394 int ionic_lif_create_hwstamp_txq(struct ionic_lif *lif);
395 int ionic_lif_create_hwstamp_rxq(struct ionic_lif *lif);
396 int ionic_lif_config_hwstamp_rxq_all(struct ionic_lif *lif, bool rx_all);
397 int ionic_lif_set_hwstamp_txmode(struct ionic_lif *lif, u16 txstamp_mode);
398 int ionic_lif_set_hwstamp_rxfilt(struct ionic_lif *lif, u64 pkt_class);
400 int ionic_lif_rss_config(struct ionic_lif *lif, u16 types,
402 void ionic_lif_rx_mode(struct ionic_lif *lif);
403 int ionic_reconfigure_queues(struct ionic_lif *lif,