Lines Matching refs:mac

168 static int qeth_l2_send_setgroupmac(struct qeth_card *card, __u8 *mac)  in qeth_l2_send_setgroupmac()  argument
173 rc = qeth_setdel_makerc(card, qeth_l2_send_setdelmac(card, mac, in qeth_l2_send_setgroupmac()
177 mac, QETH_CARD_IFNAME(card)); in qeth_l2_send_setgroupmac()
180 mac, QETH_CARD_IFNAME(card), rc); in qeth_l2_send_setgroupmac()
184 static int qeth_l2_send_delgroupmac(struct qeth_card *card, __u8 *mac) in qeth_l2_send_delgroupmac() argument
189 rc = qeth_setdel_makerc(card, qeth_l2_send_setdelmac(card, mac, in qeth_l2_send_delgroupmac()
194 mac, QETH_CARD_IFNAME(card), rc); in qeth_l2_send_delgroupmac()
203 static int qeth_l2_write_mac(struct qeth_card *card, struct qeth_mac *mac) in qeth_l2_write_mac() argument
208 if (mac->is_uc) { in qeth_l2_write_mac()
210 qeth_l2_send_setdelmac(card, mac->mac_addr, in qeth_l2_write_mac()
214 qeth_l2_send_setgroupmac(card, mac->mac_addr)); in qeth_l2_write_mac()
221 struct qeth_mac *mac; in qeth_l2_del_all_macs() local
226 hash_for_each_safe(card->mac_htable, i, tmp, mac, hnode) { in qeth_l2_del_all_macs()
228 if (mac->is_uc) in qeth_l2_del_all_macs()
229 qeth_l2_send_setdelmac(card, mac->mac_addr, in qeth_l2_del_all_macs()
232 qeth_l2_send_delgroupmac(card, mac->mac_addr); in qeth_l2_del_all_macs()
234 hash_del(&mac->hnode); in qeth_l2_del_all_macs()
235 kfree(mac); in qeth_l2_del_all_macs()
612 static int qeth_l2_send_setdelmac(struct qeth_card *card, __u8 *mac, in qeth_l2_send_setdelmac() argument
624 memcpy(&cmd->data.setdelmac.mac, mac, OSA_ADDR_LEN); in qeth_l2_send_setdelmac()
628 static int qeth_l2_send_setmac(struct qeth_card *card, __u8 *mac) in qeth_l2_send_setmac() argument
633 rc = qeth_setdel_makerc(card, qeth_l2_send_setdelmac(card, mac, in qeth_l2_send_setmac()
637 memcpy(card->dev->dev_addr, mac, OSA_ADDR_LEN); in qeth_l2_send_setmac()
646 "MAC address %pM already exists\n", mac); in qeth_l2_send_setmac()
650 "MAC address %pM is not authorized\n", mac); in qeth_l2_send_setmac()
657 static int qeth_l2_send_delmac(struct qeth_card *card, __u8 *mac) in qeth_l2_send_delmac() argument
664 rc = qeth_setdel_makerc(card, qeth_l2_send_setdelmac(card, mac, in qeth_l2_send_delmac()
777 struct qeth_mac *mac; in qeth_l2_add_mac() local
779 hash_for_each_possible(card->mac_htable, mac, hnode, in qeth_l2_add_mac()
781 if (is_uc == mac->is_uc && in qeth_l2_add_mac()
782 !memcmp(ha->addr, mac->mac_addr, OSA_ADDR_LEN)) { in qeth_l2_add_mac()
783 mac->disp_flag = QETH_DISP_MAC_DO_NOTHING; in qeth_l2_add_mac()
788 mac = kzalloc(sizeof(struct qeth_mac), GFP_ATOMIC); in qeth_l2_add_mac()
790 if (!mac) in qeth_l2_add_mac()
793 memcpy(mac->mac_addr, ha->addr, OSA_ADDR_LEN); in qeth_l2_add_mac()
794 mac->is_uc = is_uc; in qeth_l2_add_mac()
795 mac->disp_flag = QETH_DISP_MAC_ADD; in qeth_l2_add_mac()
797 hash_add(card->mac_htable, &mac->hnode, in qeth_l2_add_mac()
798 qeth_l2_mac_hash(mac->mac_addr)); in qeth_l2_add_mac()
806 struct qeth_mac *mac; in qeth_l2_set_rx_mode() local
827 hash_for_each_safe(card->mac_htable, i, tmp, mac, hnode) { in qeth_l2_set_rx_mode()
828 if (mac->disp_flag == QETH_DISP_MAC_DELETE) { in qeth_l2_set_rx_mode()
829 if (!mac->is_uc) in qeth_l2_set_rx_mode()
831 mac->mac_addr); in qeth_l2_set_rx_mode()
833 rc = qeth_l2_send_setdelmac(card, mac->mac_addr, in qeth_l2_set_rx_mode()
837 hash_del(&mac->hnode); in qeth_l2_set_rx_mode()
838 kfree(mac); in qeth_l2_set_rx_mode()
840 } else if (mac->disp_flag == QETH_DISP_MAC_ADD) { in qeth_l2_set_rx_mode()
841 rc = qeth_l2_write_mac(card, mac); in qeth_l2_set_rx_mode()
843 hash_del(&mac->hnode); in qeth_l2_set_rx_mode()
844 kfree(mac); in qeth_l2_set_rx_mode()
846 mac->disp_flag = QETH_DISP_MAC_DELETE; in qeth_l2_set_rx_mode()
848 mac->disp_flag = QETH_DISP_MAC_DELETE; in qeth_l2_set_rx_mode()
1588 addr_lnid->mac); in qeth_bridge_emit_host_event()