On Thu, 15 Apr 2004, Steven Scholz wrote:
> > I asked several people to test that driver but didn't hear back from any
> > of them (sounds scary :-)), so I don't know if it actually works. I'll
> > appreciate if you share your experience in this mailing list.
>
> I finally got the driver
>
> http://www.agere.com/support/drivers/wl_lkm_718_release.tar.gz
>
> to work on my embedded PPC system.
Congratulation. You are the first person who returned after trying the
driver to tell us the story :-)
> I had to fix some small bits. HERMES-I and II work.
Great news. I hope to add generic firmware download support. I have two
Orinoco (Hermes I) cards to test it.
The biggest question is the architecture. While it would be nice to be
compatible with other drivers (hostap, hermesap, linux-wlan-ng), support
for embedded systems is a major concern that none of them addresses. I
know systems with one statically linked executable (busybox plus thttpd).
The requirement to process the PDA in userspace is not realistic for such
systems. This means that the driver should do plugging in the kernel
space. The code from spectrum_cs could be reused for that. Firmware
would be converted to Symbol "dblock" format in userspace, and loaded
using request_firmware() or prelinked. I think I'll stop here because it
should be a separate proposal.
> Although I don't know why the simple code
>
> lp->task.routine = (void (*)(void *))wl_isr_handler;
> lp->task.data = lp;
> lp->task.sync = 0; /* must be initialized to zero */
> ...
> queue_task( &( lp->task ), &tq_immediate );
> mark_bh( IMMEDIATE_BH );
>
> does _not_ work on my embedded system. I thought the code worked
> out-of-the-box on my x86 notebook. But on my PPC I had to add a
>
> run_task_queue(&tq_immediate);
>
> after mark_bh( IMMEDIATE_BH ) to made it work ...
>
> I decided to rewrite it to use tasklets instead.
Task queues are so 2.4! I don't use 2.4 kernels for anything but simple
testing. Still, it would be better to have the Agere driver in a good
shape so that we can use it as a working reference. Please submit your
changes to the driver developers (if you can find them :-/ ), they should
know better.
Tasklets are not necessarily better. In fact, the Orinoco driver is
likely to move towards work queues (2.6 term for task queues) to
accommodate USB support.
--
Regards,
Pavel Roskin
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
|