Lines Matching refs:alu_table
592 u32 alu_table[4];
618 ksz9477_read_table(dev, alu_table);
621 alu_table[0] = ALU_V_STATIC_VALID;
622 alu_table[1] |= BIT(port);
624 alu_table[1] |= ALU_V_USE_FID;
625 alu_table[2] = (vid << ALU_V_FID_S);
626 alu_table[2] |= ((addr[0] << 8) | addr[1]);
627 alu_table[3] = ((addr[2] << 24) | (addr[3] << 16));
628 alu_table[3] |= ((addr[4] << 8) | addr[5]);
630 ksz9477_write_table(dev, alu_table);
649 u32 alu_table[4];
674 ksz_read32(dev, REG_SW_ALU_VAL_A, &alu_table[0]);
675 if (alu_table[0] & ALU_V_STATIC_VALID) {
676 ksz_read32(dev, REG_SW_ALU_VAL_B, &alu_table[1]);
677 ksz_read32(dev, REG_SW_ALU_VAL_C, &alu_table[2]);
678 ksz_read32(dev, REG_SW_ALU_VAL_D, &alu_table[3]);
681 alu_table[1] &= ~BIT(port);
684 if ((alu_table[1] & ALU_V_PORT_MAP) == 0) {
685 alu_table[0] = 0;
686 alu_table[1] = 0;
687 alu_table[2] = 0;
688 alu_table[3] = 0;
691 alu_table[0] = 0;
692 alu_table[1] = 0;
693 alu_table[2] = 0;
694 alu_table[3] = 0;
697 ksz9477_write_table(dev, alu_table);
712 static void ksz9477_convert_alu(struct alu_struct *alu, u32 *alu_table)
714 alu->is_static = !!(alu_table[0] & ALU_V_STATIC_VALID);
715 alu->is_src_filter = !!(alu_table[0] & ALU_V_SRC_FILTER);
716 alu->is_dst_filter = !!(alu_table[0] & ALU_V_DST_FILTER);
717 alu->prio_age = (alu_table[0] >> ALU_V_PRIO_AGE_CNT_S) &
719 alu->mstp = alu_table[0] & ALU_V_MSTP_M;
721 alu->is_override = !!(alu_table[1] & ALU_V_OVERRIDE);
722 alu->is_use_fid = !!(alu_table[1] & ALU_V_USE_FID);
723 alu->port_forward = alu_table[1] & ALU_V_PORT_MAP;
725 alu->fid = (alu_table[2] >> ALU_V_FID_S) & ALU_V_FID_M;
727 alu->mac[0] = (alu_table[2] >> 8) & 0xFF;
728 alu->mac[1] = alu_table[2] & 0xFF;
729 alu->mac[2] = (alu_table[3] >> 24) & 0xFF;
730 alu->mac[3] = (alu_table[3] >> 16) & 0xFF;
731 alu->mac[4] = (alu_table[3] >> 8) & 0xFF;
732 alu->mac[5] = alu_table[3] & 0xFF;
741 u32 alu_table[4];
769 ksz9477_read_table(dev, alu_table);
771 ksz9477_convert_alu(&alu, alu_table);