qeth_l2.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright IBM Corp. 2013
  4. * Author(s): Eugene Crosser <[email protected]>
  5. */
  6. #ifndef __QETH_L2_H__
  7. #define __QETH_L2_H__
  8. #include "qeth_core.h"
  9. extern const struct attribute_group *qeth_l2_attr_groups[];
  10. int qeth_bridgeport_query_ports(struct qeth_card *card,
  11. enum qeth_sbp_roles *role,
  12. enum qeth_sbp_states *state);
  13. int qeth_bridgeport_setrole(struct qeth_card *card, enum qeth_sbp_roles role);
  14. int qeth_bridgeport_an_set(struct qeth_card *card, int enable);
  15. int qeth_l2_vnicc_set_state(struct qeth_card *card, u32 vnicc, bool state);
  16. int qeth_l2_vnicc_get_state(struct qeth_card *card, u32 vnicc, bool *state);
  17. int qeth_l2_vnicc_set_timeout(struct qeth_card *card, u32 timeout);
  18. int qeth_l2_vnicc_get_timeout(struct qeth_card *card, u32 *timeout);
  19. bool qeth_bridgeport_allowed(struct qeth_card *card);
  20. struct qeth_mac {
  21. u8 mac_addr[ETH_ALEN];
  22. u8 disp_flag:2;
  23. struct hlist_node hnode;
  24. };
  25. static inline bool qeth_bridgeport_is_in_use(struct qeth_card *card)
  26. {
  27. return card->options.sbp.role ||
  28. card->options.sbp.reflect_promisc ||
  29. card->options.sbp.hostnotification;
  30. }
  31. #endif /* __QETH_L2_H__ */