mt7530_rmw(priv, MT7530_PPBV1_P(port), G0_PORT_VID_MASK,
                   G0_PORT_VID_DEF);
 
-       for (i = 0; i < MT7530_NUM_PORTS; i++) {
+       for (i = 0; i < priv->ds->num_ports; i++) {
                if (dsa_is_user_port(ds, i) &&
                    dsa_port_is_vlan_filtering(dsa_to_port(ds, i))) {
                        all_user_ports_removed = false;
        /* Enable and reset MIB counters */
        mt7530_mib_reset(ds);
 
-       for (i = 0; i < MT7530_NUM_PORTS; i++) {
+       for (i = 0; i < priv->ds->num_ports; i++) {
                /* Clear link settings and enable force mode to force link down
                 * on all ports until they're enabled later.
                 */
        mt7530_clear(priv, MT753X_MFC, BC_FFP_MASK | UNM_FFP_MASK |
                     UNU_FFP_MASK);
 
-       for (i = 0; i < MT7530_NUM_PORTS; i++) {
+       for (i = 0; i < priv->ds->num_ports; i++) {
                /* Clear link settings and enable force mode to force link down
                 * on all ports until they're enabled later.
                 */
        priv->p5_sgmii = !!(val & PAD_DUAL_SGMII_EN);
 
        /* Force link down on all ports before internal reset */
-       for (i = 0; i < MT7530_NUM_PORTS; i++)
+       for (i = 0; i < priv->ds->num_ports; i++)
                mt7530_write(priv, MT753X_PMCR_P(i), MT7531_FORCE_MODE_LNK);
 
        /* Reset the switch through internal reset */