Messages in this thread | | | Date | Fri, 3 Feb 2023 23:56:22 +0200 | From | Vladimir Oltean <> | Subject | Re: [PATCH 8/9] net: ethernet: mtk_eth_soc: switch to external PCS driver |
| |
On Fri, Feb 03, 2023 at 07:06:10AM +0000, Daniel Golle wrote: > int mtk_sgmii_init(struct mtk_sgmii *ss, struct device_node *r, u32 ana_rgc3) > { > struct device_node *np; > int i; > + u32 flags; > + struct regmap *regmap; > > for (i = 0; i < MTK_MAX_DEVS; i++) { > np = of_parse_phandle(r, "mediatek,sgmiisys", i); > if (!np) > break; > > - ss->pcs[i].ana_rgc3 = ana_rgc3; > - ss->pcs[i].regmap = syscon_node_to_regmap(np); > - > - ss->pcs[i].flags = 0; > + flags = 0; > if (of_property_read_bool(np, "pn_swap")) > - ss->pcs[i].flags |= MTK_SGMII_FLAG_PN_SWAP; > + flags |= MTK_SGMII_FLAG_PN_SWAP; > > of_node_put(np); > - if (IS_ERR(ss->pcs[i].regmap)) > - return PTR_ERR(ss->pcs[i].regmap); > > - ss->pcs[i].pcs.ops = &mtk_pcs_ops; > - ss->pcs[i].pcs.poll = true; > - ss->pcs[i].interface = PHY_INTERFACE_MODE_NA; > + regmap = syscon_node_to_regmap(np);
Not supposed to use "np" after of_node_put().
> + if (IS_ERR(regmap)) > + return PTR_ERR(regmap); > + > + ss->pcs[i] = mtk_pcs_create(ss->dev, regmap, ana_rgc3, flags); > }
| |