Lines Matching refs:alu

475 				struct alu_struct *alu, bool *valid)
499 alu->mac[5] = (u8)data_lo;
500 alu->mac[4] = (u8)(data_lo >> 8);
501 alu->mac[3] = (u8)(data_lo >> 16);
502 alu->mac[2] = (u8)(data_lo >> 24);
503 alu->mac[1] = (u8)data_hi;
504 alu->mac[0] = (u8)(data_hi >> 8);
505 alu->port_forward =
508 alu->is_override = (data_hi & masks[STATIC_MAC_TABLE_OVERRIDE]) ? 1 : 0;
516 alu->is_static = true;
517 alu->is_use_fid = (data_hi & masks[STATIC_MAC_TABLE_USE_FID]) ? 1 : 0;
518 alu->fid = (data_hi & masks[STATIC_MAC_TABLE_FID]) >>
527 struct alu_struct *alu)
537 data_lo = ((u32)alu->mac[2] << 24) |
538 ((u32)alu->mac[3] << 16) |
539 ((u32)alu->mac[4] << 8) | alu->mac[5];
540 data_hi = ((u32)alu->mac[0] << 8) | alu->mac[1];
541 data_hi |= (u32)alu->port_forward << shifts[STATIC_MAC_FWD_PORTS];
543 if (alu->is_override)
545 if (alu->is_use_fid) {
547 data_hi |= (u32)alu->fid << shifts[STATIC_MAC_FID];
549 if (alu->is_static)
1005 struct alu_struct alu;
1009 alu.port_forward = 0;
1013 ret = ksz8_r_sta_mac_table(dev, index, &alu, &valid);
1023 if (!memcmp(alu.mac, addr, ETH_ALEN) && alu.fid == vid)
1034 memset(&alu, 0, sizeof(alu));
1035 memcpy(alu.mac, addr, ETH_ALEN);
1036 alu.is_static = true;
1038 alu.port_forward |= BIT(port);
1040 alu.is_use_fid = true;
1043 alu.fid = vid;
1046 return ksz8_w_sta_mac_table(dev, index, &alu);
1052 struct alu_struct alu;
1058 ret = ksz8_r_sta_mac_table(dev, index, &alu, &valid);
1064 if (!memcmp(alu.mac, addr, ETH_ALEN) && alu.fid == vid)
1073 alu.port_forward &= ~BIT(port);
1074 if (!alu.port_forward)
1075 alu.is_static = false;
1077 return ksz8_w_sta_mac_table(dev, index, &alu);
1381 struct alu_struct alu;
1384 memset(&alu, 0, sizeof(alu));
1385 ether_addr_copy(alu.mac, eth_stp_addr);
1386 alu.is_static = true;
1387 alu.is_override = true;
1388 alu.port_forward = dev->info->cpu_ports;
1390 return ksz8_w_sta_mac_table(dev, 0, &alu);