Lines Matching refs:partner
554 struct dsa_port *partner = NULL, *dp; in xrs700x_hsr_join() local
578 partner = dp; in xrs700x_hsr_join()
586 if (!partner) in xrs700x_hsr_join()
589 regmap_fields_write(priv->ps_forward, partner->index, in xrs700x_hsr_join()
593 regmap_write(priv->regmap, XRS_HSR_CFG(partner->index), in xrs700x_hsr_join()
603 val &= ~BIT(partner->index); in xrs700x_hsr_join()
608 regmap_write(priv->regmap, XRS_PORT_FWD_MASK(partner->index), val); in xrs700x_hsr_join()
611 regmap_fields_write(priv->ps_forward, partner->index, in xrs700x_hsr_join()
620 ret = xrs700x_port_add_hsrsup_ipf(ds, partner->index, fwd ? port : -1); in xrs700x_hsr_join()
624 ret = xrs700x_port_add_hsrsup_ipf(ds, port, fwd ? partner->index : -1); in xrs700x_hsr_join()
629 XRS_ETH_ADDR_CFG(partner->index, 1), 1, 1); in xrs700x_hsr_join()
633 hsr_pair[1] = partner->index; in xrs700x_hsr_join()
645 struct dsa_port *partner = NULL, *dp; in xrs700x_hsr_leave() local
653 partner = dp; in xrs700x_hsr_leave()
658 if (!partner) in xrs700x_hsr_leave()
661 regmap_fields_write(priv->ps_forward, partner->index, in xrs700x_hsr_leave()
665 regmap_write(priv->regmap, XRS_HSR_CFG(partner->index), 0); in xrs700x_hsr_leave()
671 regmap_write(priv->regmap, XRS_PORT_FWD_MASK(partner->index), val); in xrs700x_hsr_leave()
674 regmap_fields_write(priv->ps_forward, partner->index, in xrs700x_hsr_leave()
683 XRS_ETH_ADDR_CFG(partner->index, 1), 1, 0); in xrs700x_hsr_leave()
687 hsr_pair[1] = partner->index; in xrs700x_hsr_leave()