Subject: Re: kern/18051: tlp doesn't configure media, faults on apm reset
To: None <stephen@degler.net, chuq@chuq.com, bouyer@antioche.eu.org>
From: Ken Raeburn <raeburn@raeburn.org>
List: netbsd-bugs
Date: 08/25/2002 23:54:17
Thanks for all the responses.

Manuel Bouyer's suggestion of adding the "nsphyter*" device to my
config file seems to have fixed the problem.  Which leads to the
question of whether this should be required (in which case config
should have complained) or not (in which case the driver should cope).

With that entry added, the kernel seems pretty happy with my DEC
4-port card.  (Sorry, don't remember the exact model, but I'm pretty
sure it was sold as a DEC card.)

    # dmesg | egrep 'ppb0|pci1|tlp|phy' 
    ppb0 at pci0 dev 19 function 0: Digital Equipment DECchip 21152 PCI-PCI Bridge (rev. 0x03)
    pci1 at ppb0 bus 1
    pci1: i/o space, memory space enabled
    tlp0 at pci1 dev 4 function 0: DECchip 21143 Ethernet, pass 4.1
    tlp0: interrupting at irq 11
    tlp0: Ethernet address 00:80:c8:f8:72:54
    nsphyter0 at tlp0 phy 1: DP83843 10/100 media interface, rev. 0
    nsphyter0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    tlp1 at pci1 dev 5 function 0: DECchip 21143 Ethernet, pass 4.1
    tlp1: interrupting at irq 11
    tlp1: Ethernet address 00:80:c8:f8:72:55
    nsphyter1 at tlp1 phy 1: DP83843 10/100 media interface, rev. 0
    nsphyter1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    tlp2 at pci1 dev 6 function 0: DECchip 21143 Ethernet, pass 4.1
    tlp2: interrupting at irq 11
    tlp2: Ethernet address 00:80:c8:f8:72:56
    nsphyter2 at tlp2 phy 1: DP83843 10/100 media interface, rev. 0
    nsphyter2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    tlp3 at pci1 dev 7 function 0: DECchip 21143 Ethernet, pass 4.1
    tlp3: interrupting at irq 11
    tlp3: Ethernet address 00:80:c8:f8:72:57
    nsphyter3 at tlp3 phy 1: DP83843 10/100 media interface, rev. 0
    nsphyter3: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

All the devices appear to configure properly; pcictl shows these
devices:

    000:19:0: Digital Equipment DECchip 21152 PCI-PCI Bridge (PCI bridge, revision 0x03)

    001:04:0: Digital Equipment DECchip 21142/21143 10/100 Ethernet (ethernet network, revision 0x41)
    001:05:0: Digital Equipment DECchip 21142/21143 10/100 Ethernet (ethernet network, revision 0x41)
    001:06:0: Digital Equipment DECchip 21142/21143 10/100 Ethernet (ethernet network, revision 0x41)
    001:07:0: Digital Equipment DECchip 21142/21143 10/100 Ethernet (ethernet network, revision 0x41)

And ifconfig shows the correct media for everything:

    tlp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            address: 00:80:c8:f8:72:54
            media: Ethernet autoselect (100baseTX)
            status: active
            inet [...]
    tlp1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
            address: 00:80:c8:f8:72:55
            media: Ethernet autoselect (none)
            status: no carrier
    tlp2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            address: 00:80:c8:f8:72:56
            media: Ethernet autoselect (10baseT)
            status: active
            inet [...]
    tlp3: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
            address: 00:80:c8:f8:72:57
            media: Ethernet autoselect (none)
            status: no carrier
    [...]

As far as I can tell, everything looks good now, aside from the
occasional "transmit underrun" messages; but if not having any PHY
entries with a tulip device is an error, config should let me know
that.  And if it isn't, the kernel shouldn't crash if I do it.

Ken