NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: port-i386/40677: Some fxp network cards no longer work



   I think the general idea of moving feature determination to the
   frontend file is good.

yeah.  i just don't have the hardware to test the changes and there
is another bug already from them.  but maybe you can help fix me fix
them :-)
   
   It should be sufficient to change in fxp_pci_attach() in if_fxp_pci.c
   the default: branch of the switch, along the lines of the attached patch
   (compile tested only).

so, your card matches the first patch of this change:
   
   Index: if_fxp_pci.c
   ===================================================================
   RCS file: /cvsroot/src/sys/dev/pci/if_fxp_pci.c,v
   retrieving revision 1.61
   diff -b -u -r1.61 if_fxp_pci.c
   --- if_fxp_pci.c        18 Jan 2009 10:37:04 -0000      1.61
   +++ if_fxp_pci.c        17 Feb 2009 21:22:09 -0000
   @@ -373,16 +373,29 @@
           case PCI_PRODUCT_INTEL_82562EH_HPNA_2:
           case PCI_PRODUCT_INTEL_PRO_100_VM_2:
                   aprint_normal(": %s, rev %d\n", fpp->fpp_name, sc->sc_rev);
   +
   +               if (sc->sc_rev >= FXP_REV_82558_A4)
                   sc->sc_flags |= FXPF_FC|FXPF_EXT_TXCB;
   +
   +               if (sc->sc_rev == FXP_REV_82550 || sc->sc_rev == 
FXP_REV_82550_C)
   +                       sc->sc_flags |= FXPF_EXT_RFA|FXPF_IPCB;
                   /*
                    * The ICH-2 and ICH-3 have the "resume bug".
                    */
                   sc->sc_flags |= FXPF_HAS_RESUME_BUG;
                   break;

but what sort of testing did this part get?
   
   +
           default:
                   aprint_normal(": %s, rev %d\n", fpp->fpp_name, sc->sc_rev);
   -               sc->sc_flags |= FXPF_FC|FXPF_EXT_TXCB|FXPF_EXT_RFA|FXPF_IPCB;
   +
   +
   +               if (sc->sc_rev >= FXP_REV_82558_A4)
   +                       sc->sc_flags |= FXPF_FC|FXPF_EXT_TXCB;
   +
   +if (sc->sc_rev == FXP_REV_82550 || sc->sc_rev == FXP_REV_82550_C)
   +                       sc->sc_flags |= FXPF_EXT_RFA|FXPF_IPCB;
   +
                   break;
           }
   


thanks for your help,


.mrg.


Home | Main Index | Thread Index | Old Index