Post by samiamPost by BillWhat ***VERSION*** of VxWorks?
5.5
Post by BillWhich ***CPU ARCHITECTURE*** are you running it on?
PPC 74xx
Post by BillWhat ***BOARD/BSP*** are you using?
Actually I am adding it to the company' BSP for a ppc based SBC. I
wanted to make certain the existing gei85xxxEND driver works as
advertised, and all I need to do is initialize the ENdTbl(), compile
the source file and write the sys82543BoardInit() function.
Basically trying to make certain theres no "gotchas"
The gei driver in 5.5.x does support the 82546 chip. but I'm afraid
there is a gotcha.
The gei driver (like most PCI drivers in 5.5.x) has two pieces:
target/src/drv/end/gei82543End.c (the main driver source) and the BSP
stub (typically called sysGei82543End.c). The BSP stub is responsible
for probing the PCI bus, finding the device, and ultimately calling the
driver's load function and passing it resource info (base address,
interupt vector) via the load string. The GEI driver's stub serves an
additional purpose: it contains the code that reads the EEPROM to find
the NIC's station address. (Sometimes the NIC doesn't have an EEPROM:
the idea here is to give you the ability to supply a board-specific MAC
address from the BSP if accessing the EEPROM fails.)
Unfortunately, not all BSPs shipped with VxWorks support all possible
PCI devices. Usually the BSP writer will add support for whatever
device might actually be on board. Some of the more generous ones may
include support for other devices as a convenience, but this is more
the exception that the rule. The pcPentium BSPs happen to include
support for a large selection of drivers (including the gei) because
x86-based systems don't have a standard on-board ethernet device.
I don't think there are any 74xx BSPs that ship with support for the
gei driver. The sandpoint BSPs look like they support the fei, elPci
and dec drivers, but not gei. This means you'll likely have to write
your own BSP stub. Normally I'd say 'steal the one from pcPentium and
hack it to taste' except if you purchased VxWorks/Tornado for PPC only,
you won't have the x86 BSP CD.
If you have a support contract that gives you access to BSP updates on
Windsurf, I would see if there are any x86 BSPs there which might have
the sysGei82543End.c file and try downloading one. Otherwise, I would
contact WR support and ask if they can supply a copy to you. I don't
think there's any particular reason they'd refuse. Once you have the
file, you'll still need to tweak it to work with your BSP.
Sorry that it's not more painless. :(
-Bill