Source-Changes-HG archive

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

[src/netbsd-1-6]: src/sys Pull up revision 1.5 (requested by chris in ticket ...



details:   https://anonhg.NetBSD.org/src/rev/de8ba4988d2b
branches:  netbsd-1-6
changeset: 529206:de8ba4988d2b
user:      tron <tron%NetBSD.org@localhost>
date:      Fri Nov 01 11:13:36 2002 +0000

description:
Pull up revision 1.5 (requested by chris in ticket #120):
Substantial overhaul of podule IDs.  Unlike on PCI or USB, podule IDs are
assigned by RISCOS Ltd (and were assigned by Acorn) to be unique across all
manufacturers.  This means that associating each one with a manufacturer (and
checking the manufacturer when attaching) is bogus.  Thus, we don't do that
any more.
This should have the pleasant side-effect of getting APDL IDE interfaces
working, since they're just ICS ones with a different manufacturer ID.

diffstat:

 sys/arch/acorn32/podulebus/if_ne_pbus.c |  19 ++++++++-----------
 sys/dev/podulebus/if_ei.c               |   6 +++---
 2 files changed, 11 insertions(+), 14 deletions(-)

diffs (109 lines):

diff -r e63ad7335235 -r de8ba4988d2b sys/arch/acorn32/podulebus/if_ne_pbus.c
--- a/sys/arch/acorn32/podulebus/if_ne_pbus.c   Fri Nov 01 11:13:20 2002 +0000
+++ b/sys/arch/acorn32/podulebus/if_ne_pbus.c   Fri Nov 01 11:13:36 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_ne_pbus.c,v 1.4 2001/12/16 00:23:59 bjh21 Exp $     */
+/*     $NetBSD: if_ne_pbus.c,v 1.4.12.1 2002/11/01 11:13:36 tron Exp $ */
 
 /*
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -128,7 +128,6 @@
  * that we can handle via the MI NE2000 driver.
  */
 struct ne_clone {
-       int             manufacturer;   /* podule manufacturer id */
        int             product;        /* podule product id */
        unsigned int    cookie;         /* podulebus space cookie */
        unsigned int    nicbase;        /* byte offset of NIC */
@@ -162,7 +161,7 @@
 } ne_clones[] = {
        /* ANT EtherM netslot interface */
        {
-         MANUFACTURER_ANT, PODULE_ANT_ETHERM, EM_REGSHIFT,
+         PODULE_ETHERM, EM_REGSHIFT,
          EM_NIC_OFFSET, EM_NIC_SIZE, EM_ASIC_OFFSET, EM_ASIC_SIZE,
          0,0, NE_SPACE_FAST,
          NE_SPACE_FAST, NE_SPACE_FAST, 0,
@@ -171,7 +170,7 @@
        },
        /* ICubed EtherLan EtherH netslot interface */
        {
-         MANUFACTURER_ICUBED, PODULE_ICUBED_ETHERLAN600, EH600_REGSHIFT,
+         PODULE_ETHERLAN600, EH600_REGSHIFT,
          EH600_NIC_OFFSET, EH600_NIC_SIZE, EH600_ASIC_OFFSET, EH600_ASIC_SIZE,
          EH600_CONTROL_OFFSET, EH600_CONTROL_SIZE, NE_SPACE_FAST,
          NE_SPACE_FAST, NE_SPACE_FAST, 0,
@@ -181,7 +180,7 @@
        },
        /* Acorn EtherLan EtherH netslot interface */
        {
-         MANUFACTURER_ICUBED, PODULE_ICUBED_ETHERLAN600AEH, EH600_REGSHIFT,
+         PODULE_ETHERLAN600AEH, EH600_REGSHIFT,
          EH600_NIC_OFFSET, EH600_NIC_SIZE, EH600_ASIC_OFFSET, EH600_ASIC_SIZE,
          EH600_CONTROL_OFFSET, EH600_CONTROL_SIZE, NE_SPACE_FAST,
          NE_SPACE_FAST, NE_SPACE_FAST, 0,
@@ -191,7 +190,7 @@
        },
        /* Irlam EtherN podule. (supplied with NC) */
        {
-         MANUFACTURER_IRLAM ,PODULE_IRLAM_ETHERN ,EN_REGSHIFT,
+         PODULE_ETHERN ,EN_REGSHIFT,
          EN_NIC_OFFSET, EN_NIC_SIZE, EN_ASIC_OFFSET, EN_ASIC_SIZE,
          0,0, NE_SPACE_EASI,
          NE_SPACE_EASI, NE_SPACE_EASI, 0,
@@ -201,7 +200,7 @@
        },
        /* Acorn EtherI podule. (supplied with NC) */
        {
-         MANUFACTURER_ACORN ,PODULE_ACORN_ETHERI ,EN_REGSHIFT,
+         PODULE_ETHERI ,EN_REGSHIFT,
          EN_NIC_OFFSET, EN_NIC_SIZE, EN_ASIC_OFFSET, EN_ASIC_SIZE,
          0,0, NE_SPACE_EASI,
          NE_SPACE_EASI, NE_SPACE_EASI, 0,
@@ -226,8 +225,7 @@
        /* Scan the list of known interfaces looking for a match */
        for (loop = 0; loop < sizeof(ne_clones) / sizeof(struct ne_clone);
            ++loop) {
-               if (matchpodule(pa, ne_clones[loop].manufacturer,
-                   ne_clones[loop].product, 0) != 0)
+               if (pa->pa_product == ne_clones[loop].product)
                        return(1);
        }
        return(0);
@@ -266,8 +264,7 @@
        /* Scan the list of known interfaces for a match */
        for (loop = 0; loop < sizeof(ne_clones) / sizeof(struct ne_clone);
            ++loop) {
-               if (IS_PODULE(pa, ne_clones[loop].manufacturer,
-                   ne_clones[loop].product)) {
+               if (pa->pa_product == ne_clones[loop].product) {
                        ne = &ne_clones[loop];
                        break;
                }
diff -r e63ad7335235 -r de8ba4988d2b sys/dev/podulebus/if_ei.c
--- a/sys/dev/podulebus/if_ei.c Fri Nov 01 11:13:20 2002 +0000
+++ b/sys/dev/podulebus/if_ei.c Fri Nov 01 11:13:36 2002 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ei.c,v 1.4 2001/12/21 22:33:28 bjh21 Exp $ */
+/* $NetBSD: if_ei.c,v 1.4.10.1 2002/11/01 11:13:37 tron Exp $ */
 
 /*-
  * Copyright (c) 2000, 2001 Ben Harris
@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ei.c,v 1.4 2001/12/21 22:33:28 bjh21 Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ei.c,v 1.4.10.1 2002/11/01 11:13:37 tron Exp $");
 
 #include <sys/param.h>
 
@@ -108,7 +108,7 @@
 {
        struct podulebus_attach_args *pa = aux;
 
-       return IS_PODULE(pa, MANUFACTURER_ACORN, PODULE_ACORN_ETHER1);
+       return pa->pa_product == PODULE_ETHER1;
 }
 
 static void



Home | Main Index | Thread Index | Old Index