Please Help: Can't get Macronix 98713 to Work

Robert McNally ironwolf@lightside.com
Fri Feb 12 02:31:25 1999


At 10:00 PM -0800 2/11/99, Donald Becker wrote:
>On Thu, 11 Feb 1999, Robert McNally wrote:
>
>> Subject: Please Help: Can't get Macronix 98713 to Work
>..
>> is a NDC Communications Sohoware Fast Auto 10/100 PCI adapter.
>>
>> The manufacturer tells me it uses Tulip-compatible chips. My attempts
>
>The Macronix chip is a Tulip work-alike, with some changes in the media
>selection registers.  The first 12 registers are very similar to the 21140.
>
>> to use the tulip driver included with Red Hat 5.2 have so far been
>> unsuccessful, however. I have downloaded and installed the most recent
>> test version of tulip.c (v0.90k), but also with no success.
>>
>> I have been unable to compile tulip-diag.c, as it appears to call for
>> "cc", a compiler I don't have (Red Hat seems to only come with gcc,
>
>Usually 'cc' is a link to gcc
>beta$ ls -atlr /usr/bin/cc
>lrwxrwxrwx   1 root     root            3 Oct  3 11:38 /usr/bin/cc -> gcc*

OK, I see that. Now, unfortunately, I'm getting a large number of compiler
errors that look like I may have something misconfigured. Whether I try

cc -O -Wall -o tulip-diag tulip-diag.c

or

cc -O -Wall -o tulip-diag tulip-diag.c -DLIBMII libmii.c

I get a stream of errors which starts:

tulip-diag.c:1: parse error before `#'
tulip-diag.c:1: parse error before `#'
tulip-diag.c:1: elements of array `longopts' have incomplete type
tulip-diag.c:1: warning: excess elements in struct initializer afer
`longopts[0]'
tulip-diag.c:1: warning: excess elements in struct initializer afer
`longopts[0]'
tulip-diag.c:1: warning: excess elements in struct initializer afer
`longopts[0]'
...

BTW, I'm also not sure which version I should be attempting to build for my
card.


>>   The PCI BIOS has not enable the device at 0/72!  Updating PCI command
>>0084->0085.
>> tulip.c:v0.90k 2/1/99 becker@cesdis.gsfc.nasa.gov
>> eth0: Macronix 98713 PMAC rev 17 at 0xd800, 00 80 c6 f7 6f 0c, IRQ 255.
>> SIOCSIFFLAGS: Resource temporarily unavailable
>...
>>     Ethernet controller: Unknown vendor MX98713 (rev 17).
>>       Medium devsel.  Fast back-to-back capable.  IRQ 255.  Master
>>Capable.  Latency=66.  Min Gnt=8.Max Lat=56.
>>       I/O at 0xd800.
>
>Your BIOS isn't assigning an IRQ.  Change the "PnP OS" (a misnomer) field,
>or a field that relates to IRQ assignment, in the BIOS setup.
>
>It's curious that your PCI BIOS uses IRQ255 to mean no IRQ assignment.  This
>is the correct value, but most x86 BIOSes use IRQ0.

OK, I found the setting in the BIOS setup and changed it. Now the Linux
boot sequence reads:

tulip.c:v0.90k 2/1/99 becker@cesdis.gsfc.nasa.gov
eth0: Macronix 98713 PMAC rev 17 at 0xd800, 00 80 c6 f7 6f 0c, IRQ 11.

It is also no longer saying "SIOCSIFFLAGS: Resource temporarily
unavailable". But the same thing happens-- the link light goes out and
stays out.

BTW, can you think of any reason I need to switch the PnP OS BIOS setting
each time I switch between Windows 98 and Linux?

Thanks for your continued help.

Robert