ndis(4): BCM4328 driver from Apple - dies in pe_translate_addr

Ed Schouten ed at fxq.nl
Mon Dec 3 04:13:44 PST 2007


Hello everyone,

Because FreeBSD does not (yet) support the BCM4328 Wifi card, I want to
use ndis(4) to use this wireless NIC. I extracted the
BroadcomInstaller.exe from the Apple Leopard install disk, which gave me
a .inf and .sys. I had to patch the .inf slightly, because the IBSSMode
switch missed a default value, which caused ndiscvt to spit out a
faultly line in the array declaration.

When I load the .ko file, nothing happens. Nothing is shown in my dmesg.
I added a lot of printf's to the source and it seems it goes wrong like
this:

windrv_load()
pe_patch_imports(img, "NDIS", ndis_functbl)
pe_get_import_descriptor(imgbase, &imp_desc, module)
pe_directory_offset(imgbase, IMAGE_DIRECTORY_ENTRY_IMPORT);
pe_translate_addr(imgbase, dir)

pe_translate_addr() returns 0, because (i > sections). I'm a real newbie
when it comes to binary formats, but is there someone who knows more
about this?

-- 
 Ed Schouten <ed at fxq.nl>
 WWW: http://g-rave.nl/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20071203/158e2257/attachment.pgp


More information about the freebsd-current mailing list