Changeset 40509


Ignore:
Timestamp:
2014-04-13T22:41:52+02:00 (4 years ago)
Author:
juhosg
Message:

ar71xx: rb91x: fix ethernet packet loss issues

The RB91x boards are suffering from ethernet packet loss after a cold
boot. The cause of the problem is that the AR8035 PHYs requires special
register settings to work reliably on these boards.

Enable the RGMII TX, RX delays and disable SmartEE functionality of
the AR8035 PHYs. Also enable the RXD delay in the ETH_CFG register
to fix the issue.

Signed-off-by: Gabor Juhos <juhosg@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ar71xx/files/arch/mips/ath79/mach-rb91x.c

    r39704 r40509  
    2525#include <linux/platform_data/gpio-latch.h> 
    2626#include <linux/platform_data/rb91x_nand.h> 
     27#include <linux/platform_data/phy-at803x.h> 
    2728 
    2829#include <asm/prom.h> 
     
    224225}; 
    225226 
     227static struct at803x_platform_data rb91x_at803x_data = { 
     228        .disable_smarteee = 1, 
     229        .enable_rgmii_rx_delay = 1, 
     230        .enable_rgmii_tx_delay = 1, 
     231}; 
     232 
     233static struct mdio_board_info rb91x_mdio0_info[] = { 
     234        { 
     235                .bus_id = "ag71xx-mdio.0", 
     236                .phy_addr = 0, 
     237                .platform_data = &rb91x_at803x_data, 
     238        }, 
     239}; 
     240 
    226241static void __init rb711gr100_init_partitions(const struct rb_info *info) 
    227242{ 
     
    294309 
    295310        ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0 | 
     311                                   AR934X_ETH_CFG_RXD_DELAY | 
    296312                                   AR934X_ETH_CFG_SW_ONLY_MODE); 
    297313 
    298314        ath79_register_mdio(0, 0x0); 
     315 
     316        mdiobus_register_board_info(rb91x_mdio0_info, 
     317                                    ARRAY_SIZE(rb91x_mdio0_info)); 
    299318 
    300319        ath79_init_mac(ath79_eth0_data.mac_addr, ath79_mac_base, 0); 
Note: See TracChangeset for help on using the changeset viewer.