Hello,

I'm trying to get an SMC 1211TX/WL with a EN5030C chip (labeled SMC, but
actually Accton?) (07294T1 030B) to work.
With a kernel having compiled in the rl device driver (as well as the
miibus) I get this boot message:

pci0: <unknown card> (vendor=0x1113, dev=0x1011) at 18.0 irq 11

So I thought I could just add the above details to the relevant if_rl.c
and if_rlreg.h files, as the EN5030C shouldn't be too different from the
EN5030 (for which there is support). The patches I came up with are
attached.

However, when the computer boots with the new kernel, even though it
recognizes the chip, it tells me:

rl0: <Accton MPX 5030C 10/100BaseTX> port 0x6000-0x60ff mem 0xe0000000-0xe00000ff irq 
11 at device 18.0 on pci0
rl0: Ethernet address: 04:20:00:00:15:10
rl0: unknown device ID: 0
device_probe_and_attach: rl0 attach returned 6

or on another boot:

rl0: <Accton MPX 5030C 10/100BaseTX> port 0x6000-0x60ff mem 0xe0000000-0xe00000ff irq 
11 at device 18.0 on pci0
rl0: Ethernet address: 00:02:01:41:00:43
rl0: unknown device ID: 1000
device_probe_and_attach: rl0 attach returned 6

Notice that both the 'unknown device ID' and the ethernet address
changes... I tried booting verbosely, but then for some reason I got a
fatal trap 12: page fault while in kernel mode (supervisor read, page not
present), and I was not able to get the relevant parts wrt. rl0.

# pciconf -l
chip0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x70308086 rev=0x01 hdr=0x00
isab0@pci0:7:0: class=0x060100 card=0x00000000 chip=0x70008086 rev=0x01 hdr=0x00
atapci0@pci0:7:1:       class=0x010180 card=0x00000000 chip=0x70108086 rev=0x00 
hdr=0x00
none0@pci0:18:0:        class=0x000000 card=0x10111113 chip=0x10111113 rev=0x10 
hdr=0x00

This is on a 4.4-STABLE system, cvsup'ed on Sep. 29.

Could anyone help out?

Thanks in advance.

Regards,
Are Bryne
-- 
Communiqu� DA                            Phone:        +47 22 44 33 99
Postboks 9050 Gr�nland                   E-mail:   [EMAIL PROTECTED]
N-0133 Oslo                              URL: http://www.communique.no
--- /usr/src/sys/pci/if_rlreg.h.orig    Fri Sep 21 23:10:07 2001
+++ /usr/src/sys/pci/if_rlreg.h Thu Oct 25 00:21:16 2001
@@ -413,6 +413,11 @@
 #define ACCTON_DEVICEID_5030                   0x1211
 
 /*
+ * Accton MPX 5030C device ID.
+ */
+#define ACCTON_DEVICEID_5030C                  0x1011
+
+/*
  * Delta Electronics Vendor ID.
  */
 #define DELTA_VENDORID                         0x1500
--- /usr/src/sys/pci/if_rl.c.orig       Fri Sep 21 23:10:07 2001
+++ /usr/src/sys/pci/if_rl.c    Thu Oct 25 00:28:22 2001
@@ -145,6 +145,8 @@
                "RealTek 8139 10/100BaseTX" },
        { ACCTON_VENDORID, ACCTON_DEVICEID_5030,
                "Accton MPX 5030/5038 10/100BaseTX" },
+       { ACCTON_VENDORID, ACCTON_DEVICEID_5030C,
+               "Accton MPX 5030C 10/100BaseTX" },
        { DELTA_VENDORID, DELTA_DEVICEID_8139,
                "Delta Electronics 8139 10/100BaseTX" },
        { ADDTRON_VENDORID, ADDTRON_DEVICEID_8139,
@@ -900,7 +902,8 @@
        rl_read_eeprom(sc, (caddr_t)&rl_did, RL_EE_PCI_DID, 1, 0);
 
        if (rl_did == RT_DEVICEID_8139 || rl_did == ACCTON_DEVICEID_5030 ||
-           rl_did == DELTA_DEVICEID_8139 || rl_did == ADDTRON_DEVICEID_8139 ||
+           rl_did == ACCTON_DEVICEID_5030C || rl_did == DELTA_DEVICEID_8139 ||
+           rl_did == ADDTRON_DEVICEID_8139 ||
            rl_did == DLINK_DEVICEID_530TXPLUS)
                sc->rl_type = RL_8139;
        else if (rl_did == RT_DEVICEID_8129)

Reply via email to