Commit b719a08863dc865fbdd049f50eefeca52fc2cdcc
1 parent
476095772f
Exists in
v2017.01-smarct4x
and in
37 other branches
sama5d3xek: run PHY's config
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Cc: Bo Shen <voice.shen@atmel.com>
Showing 1 changed file with 20 additions and 9 deletions Side-by-side Diff
board/atmel/sama5d3xek/sama5d3xek.c
... | ... | @@ -17,6 +17,7 @@ |
17 | 17 | #include <lcd.h> |
18 | 18 | #include <atmel_lcdc.h> |
19 | 19 | #include <atmel_mci.h> |
20 | +#include <phy.h> | |
20 | 21 | #include <micrel.h> |
21 | 22 | #include <net.h> |
22 | 23 | #include <netdev.h> |
... | ... | @@ -273,15 +274,25 @@ |
273 | 274 | |
274 | 275 | int board_phy_config(struct phy_device *phydev) |
275 | 276 | { |
276 | - /* rx data delay */ | |
277 | - ksz9021_phy_extended_write(phydev, | |
278 | - MII_KSZ9021_EXT_RGMII_RX_DATA_SKEW, 0x2222); | |
279 | - /* tx data delay */ | |
280 | - ksz9021_phy_extended_write(phydev, | |
281 | - MII_KSZ9021_EXT_RGMII_TX_DATA_SKEW, 0x2222); | |
282 | - /* rx/tx clock delay */ | |
283 | - ksz9021_phy_extended_write(phydev, | |
284 | - MII_KSZ9021_EXT_RGMII_CLOCK_SKEW, 0xf2f4); | |
277 | + /* board specific timings for GMAC */ | |
278 | + if (has_gmac()) { | |
279 | + /* rx data delay */ | |
280 | + ksz9021_phy_extended_write(phydev, | |
281 | + MII_KSZ9021_EXT_RGMII_RX_DATA_SKEW, | |
282 | + 0x2222); | |
283 | + /* tx data delay */ | |
284 | + ksz9021_phy_extended_write(phydev, | |
285 | + MII_KSZ9021_EXT_RGMII_TX_DATA_SKEW, | |
286 | + 0x2222); | |
287 | + /* rx/tx clock delay */ | |
288 | + ksz9021_phy_extended_write(phydev, | |
289 | + MII_KSZ9021_EXT_RGMII_CLOCK_SKEW, | |
290 | + 0xf2f4); | |
291 | + } | |
292 | + | |
293 | + /* always run the PHY's config routine */ | |
294 | + if (phydev->drv->config) | |
295 | + return phydev->drv->config(phydev); | |
285 | 296 | |
286 | 297 | return 0; |
287 | 298 | } |