Will hostap work on 386sx??

Pavel Roskin proski at gnu.org
Tue Apr 20 01:03:01 EDT 2004


On Mon, 19 Apr 2004, AST 386sx wrote:

> Oh..  I don't know it is that easy to decode the trace.  It is the output.   I am looking around the source; but, not really know anything....
>
> Thanks.
>
> KK
>
> >>EIP; c18397af <[hostap_cs]prism2_enable_genesis+53/104>   <=====

It's in hostap_download.c.  The easiest solution would be to disable
PRISM2_DOWNLOAD_SUPPORT in hostap_config.h.  I doubt you really need it on
a true i386.

If you need firmware download support or if you want to debug this problem
just for fun, you need to find the exact place in prism2_enable_genesis()
where the crash happens.  The trick I use is to place a statement that
would print the line number between all statements when possible:

#define MARK printk("%s:%d %s()\n", __FILE__, __LINE__, __FUNCTION__);
static int prism2_enable_genesis(local_info_t *local, int hcr)
{
MARK
        struct net_device *dev = local->dev;
MARK
        u8 initseq[4] = { 0x00, 0xe1, 0xa1, 0xff };
MARK
        u8 readbuf[4];
MARK

and so on.  With old gcc versions you'll need to split declarations from
initialization:

struct net_device *dev;
u8 initseq[4] = { 0x00, 0xe1, 0xa1, 0xff };
u8 readbuf[4];
MARK
dev = local->dev;
MARK

and so on.  You get the idea.  Then your see the last line before the
crash.  Look at the code again and think what can be wrong.  Add more
detailed printk() for the data used at that line.  At this point you can
post your results.

It's possible that hfa384x_to_aux() gets inlined, so you may want to put
markers there as well. it it's the line where the driver crashes.

-- 
Regards,
Pavel Roskin



More information about the HostAP mailing list