Re: [PATCH 1/4] stmmac: pci: Add dwmac support for Loongson

From: Andrew Lunn
Date: Sun Jun 20 2021 - 22:56:30 EST


> +static int loongson_dwmac_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> +{
> + struct plat_stmmacenet_data *plat;
> + struct stmmac_resources res;
> + int ret, i, mdio;
> + struct device_node *np;
> +
> + np = dev_of_node(&pdev->dev);
> +
> + if (!np) {
> + pr_info("dwmac_loongson_pci: No OF node\n");
> + return -ENODEV;
> + }
> +
> + if (!of_device_is_compatible(np, "loongson, pci-gmac")) {
> + pr_info("dwmac_loongson_pci: Incompatible OF node\n");
> + return -ENODEV;
> + }
> +
> + plat = devm_kzalloc(&pdev->dev, sizeof(*plat), GFP_KERNEL);
> + if (!plat)
> + return -ENOMEM;
> +
> + if (plat->mdio_node) {
> + dev_err(&pdev->dev, "Found MDIO subnode\n");

It is an error is an MDIO node is found?

> + mdio = true;
> + }
> +

...

> +
> + plat->phy_interface = device_get_phy_mode(&pdev->dev);
> + if (plat->phy_interface < 0)
> + dev_err(&pdev->dev, "phy_mode not found\n");
> +
> + plat->interface = PHY_INTERFACE_MODE_GMII;

Seems odd you call device_get_phy_mode() but then have this hard coded
PHY_INTERFACE_MODE_GMII?

Andrew