[illumos-Developer] Illumos device drivers (Was: Solaris Future?)

Garrett D'Amore garrett at damore.org
Fri Jul 29 22:31:19 BST 2011


On 07/29/2011 02:27 PM, Gary Mills wrote:
> On Thu, Jul 28, 2011 at 09:09:08PM -0700, Garrett D'Amore wrote:
>> It sounds like this would be a good thing to fix in the phy driver
>> in the MII layer.  Ask me if you need some hints... I am pretty
>> familiar with the MII layer.  :-)
> Before I went further, I decided to install oi_148b on my ASUS laptop
> and see if the existing `atge' driver handled the AR8132 ethernet
> adapter.  I used this command to add an alias for it:
>
>      update_drv -a -i '"pciex1969,1062"' atge
>
> That produced these messages:
>
>      Jul 29 15:46:14 asus atge: [ID 451854 kern.warning] WARNING: atge0: atge driver is attaching to unknown pci6505,4194 vendor/device-id card
>      Jul 29 15:46:14 asus pcplusmp: [ID 805372 kern.info] pcplusmp: pciex1969,1062 (atge) instance 0 irq 0x19 vector 0x61 ioapic 0xff intin 0xff is bound to cpu 0
>      Jul 29 15:46:14 asus mac: [ID 469746 kern.info] NOTICE: atge0 registered
>      Jul 29 15:46:14 asus mii: [ID 427086 kern.info] atge0: Using 1000BASE-T Ethernet PHY at 1: Atheros/Attansic PHY
>
> Does that all look reasonable?  Then I plumbed atge0 and configured it
> with an IP address.  That produced this message:
>
>      Jul 29 15:46:26 asus mac: [ID 435574 kern.info] NOTICE: atge0 link up, 100 Mbps, full duplex
>
> `ifconfig -a' and `netstat -rn' both looked correct, but I couldn't get
> any traffic through it with `ping' from either end.  `netstat -i' showed
> only zeros after the initial traffic, 38 output and zero input.  What
> could be wrong?
>

This looks normal.  The part you have uses the same registers for PHY 
communication, but requires modifications for actually moving packets 
through the DMA engine.  You're on the right path, but real code changes 
are required.  The good news is that the PHY layer (which can be one of 
the more annoying ones to deal with) will Just Work for you.

     - Garrett





More information about the Developer mailing list