USB WiFi adapter for PBs
Jason DeVita
jdevita at umich.edu
Wed Jul 26 07:23:54 MDT 2006
On Tue, 25 Jul 2006, Ebrahim Mayat wrote:
>
> On Jul 24, 2006, at 8:28 PM, Jason DeVita wrote:
>
>> On Mon, 24 Jul 2006, Ebrahim Mayat wrote:
>>> Since it is not possible to have YDL drivers for the AirPort Extreme card
>>> in Powerbooks, the
>>> <http://www.terrasoftsolutions.com/support/solutions/ydl_4.1/usb-802.11b-key.shtml>
>>> suggests using the D-Link DWL-122 (prism3 chipset) adapter for enabling
>>> WiFi. The DWL-122 is however currently discontinued by D-Link. D-Link
>>> suggest the DWL-G122 as a replacement product for the DWL-122. Questions
>>> is does the driver for the DWL-122 work for the DWL-G122? or
>>> alternatively, is there another USB WiFi adapter with associated YDL
>>> driver that I could use with my PB 12"?
>>
>> According to http://bcm43xx.berlios.de/ there is a driver for the airport
>> extreme cards included in linux kernel, starting with 2.6.17-rc2. There is
>> a thread on the Gentoo forums about it:
>> http://forums.gentoo.org/viewtopic-t-409194.html
>>
>> I've never tried it, as my G3 ibook has a non-extreme airport card. It
>> does seem to require compiling the kernel, which may seem daunting to a
>> newbie. But it really isn't that scary, and you'll sound really cool when
>> you tell people you compiled your own kernel. Anyway, it's something to
>> consider.
>>
>> Hope that helps,
>> Jason
>
> Hi Jason
>
> Yes, this does help. The following URLs should provide what I need for
> preparing a custom kernel :-)
>
> <http://www.terrasoftsolutions.com/support/solutions/ydl_general/kernels.shtml>
> and <http://ppckernel.org>
>
> If I understand correctly, the driver for the AirPort Extreme cards should
> already be in the latest kernel so there should be no need to compile the
> driver separately?
Ebrahim,
Sorry to be so slow on the response. I haven't had much free time lately.
You are indeed correct that you won't need to download a driver
separately. It should be included with the kernel source. However,
according to the berlios.de site pointed to above, there is a separate
tool that is required to run the airport card, after the kernel has been
installed. I don't know anything about this, but that's what site says.
So you may want to read about that. One more thing to note, according to
the site, is that the main kernel doesn't fully support WPA (only WEP).
Though it sounds like there is another kernel branch that fully supports
WPA, if necessary.
You mentioned ppckernel.org. I looked at the config files for some of the
pre-built kernels there, and I couldn't find any that include the BCM43xx
drivers. So it seems you will have to build your own. You can get the
kernel source from http://www.kernel.org. (in the old days, ppc specific
features were difficult to get into the main kernel tree, so separate ppc
kernel trees were maintained. Nowadays however, most of the ppc
development is put directly into the main tree. Thus, you can just
download the main kernel without having to worry about ppc patches or
whatever)
As for building the kernel, it's been a while since I've done it,
especially on YDL (I mostly run Debian-x86 now...). So you might want to
google-check what I say. Or maybe someone else reading this can
fact-check.
The terrasoft link you provided is for 2.2 and 2.4 kernels, and is
outdated. There are small but important differences between compiling the
2.4 and 2.6 kernels. For the most part, the instructions will be the same
for YDL versus other distros. So you can just google for a good kernel
building how-to. This:
http://www.digitalhermit.com/linux/Kernel-Build-HOWTO.html
is sort of the standard how-to. It is very comprehensive. So if you want
to really understand what you're doing, it could be a good place to start.
I'll attempt here an executive summary:
=====================================
[1] Download the kernel source from www.kernel.org. Get the latest stable
version (currently 2.6.17.7). Make sure to get the full source and not
just the patch.
(from here on out, I'll assume we're running as root. It is not necessary
to do so until later, but this will simplify things.)
[2] Unpack the kernel
# mv /PATH_TO_WHERE_YOU_DOWNLOADED_IT/linux_2.6.17.7.tar.bz2 /usr/src/
# cd /usr/src
# bunzip2 linux_2.6.17.7.tar.bz2
# tar xf linux_2.6.17.7.tar
# cd linux_2.6.17.7
[3] Configure the kernel. Since you are only changing one thing, it's
best to start with the default YDL kernel config.
# cp /boot/config-2.6.xx-blah-blah .config
# make mrproper
# make menuconfig
A menu-based configurator will come up -- this is where you need to tell
the kernel to compile support for the bcm driver. For this step, follow
the instructions from the gentoo forum page listed above.
[4] Build and install the kernel and modules
# make vmlinux
(go get a snack)
# make modules
(go have some coffee)
Assuming no errors above
# make modules_install
# cp arch/ppc/boot/vmlinux /boot/vmlinux-2.6.17.7
# cp System.map /boot/System.map-2.6.17.7
# ln -s /boot/System.map-2.6.17.7 /boot/System.map
[5] Configure yaboot. Open up /etc/yaboot.conf in a text editor, and copy
the section that starts with
image=/vmlinux-2.6.xx-blah
including all the indented lines below it. In the (now) second instance,
change "image=/boot/vmvlinux-2.6-xx-blah" to
"image=/boot/vmlinux-2.6.17.7" and change "label=linux" to
"label=myhairisonfire" (or whatever name you desire). Then run
# /sbin/ybin
to set the changes.
[6] Reboot and pray. Upon rebooting, you'll get the normal choice of
cdrom, osx, or linux. After you choose linux, yaboot will give you a
prompt (only for a couple seconds -- so be ready, or else it will boot the
old kernel). Type "myhairisonfire" (or whatever name you chose) at the
prompt and you will boot the new kernel. If things go bad, you can return
to the old kernel by rebooting.
=====================================
Well, hopefully I haven't made any mistakes. Report back with any
question or problems! The nice thing about building a kernel for the
first time is that it is a win-win situation. Either everything will work
just fine, or you'll get to learn a lot about how linux works!
-J
More information about the yellowdog-newbie
mailing list