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

- From: Andrew Lunn \<andrew@lunn.ch\>
- Date: 2021-06-21 02:55:49 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/06/1420293
- Thread: https://ratatoskr.run/linux-mips/2021/06/1418580/t.md

```text
> +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
```
