Arge1 link status is not updated

Pham Viet Ha hapvbk at yahoo.co.uk
Sat Aug 24 13:13:28 UTC 2013


Hi Louiz,

Yes, the LAN ports are on arge0 with 4 PHY ports (0-3). The WAN port is on arge1 with PHY4. This is an AG300H board from Buffalo.

At this time I am using phymask 0x0f for arge0. It looks like that we should use phymask 0x00 for this interface as when the etherswitch/arswitch is enabled, it will attach and manage the 4 LAN ports correctly. 

If I need to update the arge1 link status from inside the switch driver, what should I do? 

Also, the ifnet interfaces are also created during the switch init. How can I make these interfaces available for infconfig command? 


Thanks so much. 


Viet-Ha 


________________________________
 From: Luiz Otavio O Souza <lists.br at gmail.com>
To: Pham Viet Ha <hapvbk at yahoo.co.uk> 
Cc: freebsd-embedded <freebsd-embedded at freebsd.org> 
Sent: Friday, 23 August 2013, 21:06
Subject: Re: Arge1 link status is not updated
 


On 23 August 2013 17:28, Pham Viet Ha <hapvbk at yahoo.co.uk> wrote:

Hi there,
>
>I am running nanobsd on a MIPS platform, which is an AR7161 CPU with AR8316 switch. Both arge interfaces show up however the link status is not correctly updated. 
>
>arge1 (the WAN interface) always show active, even there is no ethernet cable plugged in. 
>
>In a post, Adrian mentioned this (http://lists.freebsd.org/pipermail/freebsd-embedded/2013-July/001871.html):
>
>Then arge1 is glued to this "WAN" PHY. It's not owned by arswitch (but
>it could be!) as then arge1 couldn't link to it to get notifications
>about link, speed/duplex changes.
>
>My question is how can we make arge1 update its link status (no carrier/active) when the link is disconnected/connected? 
>
>Should it be in arge driver or in the switch driver? 
>
>At this time I compiled and load the switch in a separated module. 
>
>
>The log from boot: 
>argemdio0: <Atheros AR71xx built-in ethernet interface, MDIO controller> at mem 0x19000000-0x19000fff on nexus0
>mdio0: <MDIO> on argemdio0
>mdioproxy0: <MII/MDIO proxy, MDIO side> on mdio0
>arge0: <Atheros AR71xx built-in ethernet interface> at mem 0x19000000-0x19000fff irq 2 on nexus0
>arge0: Overriding MAC from EEPROM
>arge0: arge_attach: overriding MII mode to 'RGMII'
>arge0: sc->arge_mac_unit 0 phymask 15
>arge0: finishing attachment, phymask 000f, proxy null
>miibus0: <MII bus> on arge0
>ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
>ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
>ukphy1: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
>ukphy1:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
>ukphy2: <Generic IEEE 802.3u media interface> PHY 2 on miibus0
>ukphy2:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
>ukphy3: <Generic IEEE 802.3u media interface> PHY 3 on miibus0
>ukphy3:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
>arge0: Ethernet address: 00:03:7f:12:20:00
>arge1: <Atheros AR71xx built-in ethernet interface> at mem 0x1a000000-0x1a000fff irq 3 on nexus0
>arge1: arge_attach: overriding MII mode to 'RGMII'
>arge1: sc->arge_mac_unit 1 phymask 16
>arge1: finishing attachment, phymask 0010, proxy null
>arge1: No PHY, use hard-coded values: arge_multiphy_mediachange, arge_multiphy_mediastatus.
>arge1: Ethernet address: 00:03:7f:12:20:01
>

Looks like your setup is somewhat different or misconfigured because you have 4 PHYs on arge0 (which is not common).

Can you share your board model and you setup ? We maybe able to help you get it right.

Regards,
Luiz 


More information about the freebsd-embedded mailing list