On Wed, May 16, 2012 at 03:14:12PM -0600, James Shaw wrote: > I posted this issue on daemonforums.org and they sent me to this address.. > So here it goes. > > I have a pair of Sun Cassini Quad Port Gigabit cards in an i386 box. The > issue is that the MAC address is not being found on any of the cas ports. > I'll attach the dmesg to this email for a description of the system. For > now, here's a sample of the issue:
See if this helps.. Index: if_cas.c =================================================================== RCS file: /home/cvs/src/sys/dev/pci/if_cas.c,v retrieving revision 1.30 diff -u -p -r1.30 if_cas.c --- if_cas.c 19 May 2010 15:27:35 -0000 1.30 +++ if_cas.c 17 Jul 2010 16:24:41 -0000 @@ -173,6 +173,11 @@ static const u_int8_t cas_promdat[] = { PCI_VENDOR_SUN & 0xff, PCI_VENDOR_SUN >> 8, PCI_PRODUCT_SUN_CASSINI & 0xff, PCI_PRODUCT_SUN_CASSINI >> 8 }; +static const u_int8_t cas_promdat_ns[] = { + 'P', 'C', 'I', 'R', + PCI_VENDOR_NS & 0xff, PCI_VENDOR_NS >> 8, + PCI_PRODUCT_NS_SATURN & 0xff, PCI_PRODUCT_NS_SATURN >> 8 +}; static const u_int8_t cas_promdat2[] = { 0x18, 0x00, /* structure length */ @@ -212,7 +217,8 @@ cas_pci_enaddr(struct cas_softc *sc, str goto fail; bus_space_read_region_1(romt, romh, dataoff, buf, sizeof(buf)); - if (bcmp(buf, cas_promdat, sizeof(cas_promdat)) || + if ((bcmp(buf, cas_promdat, sizeof(cas_promdat)) && + bcmp(buf, cas_promdat_ns, sizeof(cas_promdat_ns))) || bcmp(buf + PROMDATA_DATA2, cas_promdat2, sizeof(cas_promdat2))) goto fail; > ppb0 at pci1 dev 2 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci2 at ppb0 bus 8 > ppb1 at pci2 dev 0 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci3 at ppb1 bus 10 > cas0 at pci3 dev 0 function 0 "NS Saturn" rev 0x30: apic 5 int 5, > address 00:00:00:00:00:00 > gentbi0 at cas0 phy 0: Generic ten-bit interface, rev. 0 > cas1 at pci3 dev 1 function 0 "NS Saturn" rev 0x30: apic 5 int 15, > address 00:00:00:00:00:00 > gentbi1 at cas1 phy 0: Generic ten-bit interface, rev. 0 > ppb2 at pci2 dev 4 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci4 at ppb2 bus 9 > cas2 at pci4 dev 2 function 0 "NS Saturn" rev 0x30: apic 5 int 13, > address 00:00:00:00:00:00 > gentbi2 at cas2 phy 0: Generic ten-bit interface, rev. 0 > cas3 at pci4 dev 3 function 0 "NS Saturn" rev 0x30: apic 5 int 14, > address 00:00:00:00:00:00 > gentbi3 at cas3 phy 0: Generic ten-bit interface, rev. 0 > ppb3 at pci1 dev 3 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci5 at ppb3 bus 5 > ppb4 at pci5 dev 0 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci6 at ppb4 bus 7 > cas4 at pci6 dev 0 function 0 "NS Saturn" rev 0x30: apic 5 int 6, > address 00:00:00:00:00:00 > gentbi4 at cas4 phy 0: Generic ten-bit interface, rev. 0 > cas5 at pci6 dev 1 function 0 "NS Saturn" rev 0x30: apic 5 int 14, > address 00:00:00:00:00:00 > gentbi5 at cas5 phy 0: Generic ten-bit interface, rev. 0 > ppb5 at pci5 dev 4 function 0 "Intel 21154AE/BE PCI-PCI" rev 0x00 > pci7 at ppb5 bus 6 > cas6 at pci7 dev 2 function 0 "NS Saturn" rev 0x30: apic 5 int 15, > address 00:00:00:00:00:00 > gentbi6 at cas6 phy 0: Generic ten-bit interface, rev. 0 > cas7 at pci7 dev 3 function 0 "NS Saturn" rev 0x30: apic 5 int 13, > address 00:00:00:00:00:00 > gentbi7 at cas7 phy 0: Generic ten-bit interface, rev. 0 > > > I did not have this issue with FreeBSD or Gentoo. I was wondering if there > is a bug in the cas* driver for i386. There is. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.