NetBSD-Users archive

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

Re: iwn 5100AGN for netbsd-5 limited success



Well I need to do more work on this...

I got a chance to test netbsd-5 my iwn patch on a real wireless network and it was not functional on netbsd-5. I could get a dhcp lease, but no functional connection. When I tried to ping the router, I got the following message on the console:

arpresolve: can't allocate llinfo on iwn0 for 192.168.6.1

I used a netbsd-current kernel using the same version of if_iwn.c as in my patch to netbsd-5 (netbsd-current kernel from late September 2009) on the same wireless network and it is functional with full internet connectivity on iwn0.


-----Original Message-----
From: Chuck Zmudzinski <brchuckz%netscape.net@localhost>
To: netbsd-users%netbsd.org@localhost
Sent: Fri, Dec 10, 2010 11:55 am
Subject: iwn 5100AGN for netbsd-5 success


I saw in the mailing list archives a few weeks back that iwn(4) for 5100/5300 AGN devices was working in netbsd-current but hasn't been ported to netbsd-5 yet. I decided to try and get it working in netbsd-5 with minimal changes to the netbsd-5 kernel sources and have had some success.Â
Â
Seven files were patched in src/sys/dev/pci: if_iwn.c, if_iwnreg.h if_iwnvar.h, pcidevs, pcidevs.h pcidevs_data.h, and pcireg.h.Â
Â
The details:Â
Â
1. Used the first of version of src/sys/dev/if_iwn.c that works with the 5100/5300 iwn devices from the current branch (revision 1.33), but removed the two lines associated with revision 1.25 of src/sys/dev/if_iwn.c. The iwn(4) driver failed in netbsd-5 with that revision included - that revision was part of a major commit to the netbsd-current kernel networking code.Â
Â
2. Used the first version of src/sys/dev/if_iwnreg.h that works with the 5100/5300 iwn devices from the current branch (revision 1.6).Â
Â
3. Used the first version of src/sys/dev/if_iwnvar.h that works with the 5100/5300 iwn devices from the current branch (revision 1.6).)Â
Â
4. Edited the src/sys/dev/pcidevs file to add the new iwn devices (these changes are derived from additions to pcidevs between revision 1.967 and 1.968 of src/sys/dev/pcidevs, but I changed "Pro/Wireless" to "PRO/Wireless" for consistency with the other devices):Â
Â
product INTEL PRO_WL_5100AGN_1 0x4232 PRO/Wireless LAN 5100AGN Mini-PCI Adapter product INTEL PRO_WL_5300AGN_1 0x4235 PRO/Wireless LAN 5300AGN Mini-PCI Adapter product INTEL PRO_WL_5300AGN_2 0x4236 PRO/Wireless LAN 5300AGN Mini-PCI Adapter product INTEL PRO_WL_5100AGN_2 0x4237 PRO/Wireless LAN 5100AGN Mini-PCI Adapter product INTEL PRO_WL_5350AGN_1 0x423a PRO/Wireless LAN 5350AGN Mini-PCI Adapter product INTEL PRO_WL_5350AGN_2 0x423b PRO/Wireless LAN 5350AGN Mini-PCI AdapterÂ
Â
5. Regenerated src/sys/dev/pcidevs.h and src/sys/dev/pcidevs_data.h using 'make -f Makefile.pcidevs'Â
Â
6. Edited the src/sys/dev/pcireg.h file to add the changes that were included in the changes to pcireg.h when the support was added for the new iwn(4) devices in netbsd-current. It is essentially revision 1.57 (the netbsd-5 version) of pcireg.h patched with the changes between revision 1.60 and 1.61 of pcireg.h.Â
Â
7. Added the updated firmware for the 5100 AGN to my filesystem.Â
Â
The 5100 iwn(4) device in my Toshiba laptop successfully runs 'dhclient iwn0' in my patched netbsd-5 kernel (I am using the 5.0.2 release) where it listened for dhcp offers, but I haven't tested it with an actual wireless network in range yet to see if it makes a connection - I assume it will work with a network in range; if it doesn't when I try it I'll post a followup message.Â
Â
The actual patchfile against the netbsd-5 kernel is too big to post here (about 300K) because the difference in if_iwn.c between the netbsd-5 version (revision 1.22.4.3 I think) and revision 1.33 is rather large.Â
Â
Â



Home | Main Index | Thread Index | Old Index