| .. | .. |
|---|
| 1845 | 1845 | return err; |
|---|
| 1846 | 1846 | } |
|---|
| 1847 | 1847 | |
|---|
| 1848 | + /* |
|---|
| 1849 | + * SynQuacer is physically configured with TX and RX delays |
|---|
| 1850 | + * but the standard firmware claimed otherwise for a long |
|---|
| 1851 | + * time, ignore it. |
|---|
| 1852 | + */ |
|---|
| 1853 | + if (of_machine_is_compatible("socionext,developer-box") && |
|---|
| 1854 | + priv->phy_interface != PHY_INTERFACE_MODE_RGMII_ID) { |
|---|
| 1855 | + dev_warn(&pdev->dev, "Outdated firmware reports incorrect PHY mode, overriding\n"); |
|---|
| 1856 | + priv->phy_interface = PHY_INTERFACE_MODE_RGMII_ID; |
|---|
| 1857 | + } |
|---|
| 1858 | + |
|---|
| 1848 | 1859 | priv->phy_np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); |
|---|
| 1849 | 1860 | if (!priv->phy_np) { |
|---|
| 1850 | 1861 | dev_err(&pdev->dev, "missing required property 'phy-handle'\n"); |
|---|