D-Link 650P - getting closer

Jouni Malinen jkmaline
Tue Dec 23 11:33:39 PST 2003

On Sun, Dec 21, 2003 at 01:26:59AM -0500, Pavel Roskin wrote:

> I just want to post what I have achieved so far with D-Link 650P.  I'm
> using the CVS version of hostap with the two patches I've just posted.
> What I run:
> cardctl eject
> modprobe hostap_cs no_primary=1
> cardctl insert
> prism2_srec -g wifi0 pm010102.hex

I would assume you would need to add '-s' flag for this command to skip
PDA reading.

> The kernel log is attached.  I added the commands to make it clear which
> command causes which messages.
> The output of "prism2_srec -g wifi0 pm010102.hex":
> srec summary for pm010102.hex
> Included file name: PM010102.HEX
> Component: 0x0015 1.1.2 (primary firmware)
> ioctl[PRISM2_IOCTL_HOSTAPD]: Connection timed out
> Missing wlan component info
> Could not read wlan RIDs

This RID read should be disabled for the case where the card does not
have primary firmware. Unfortunately, this also means that there may
not be any way of verifying whether the primary image is valid for the
hardware other than just blindly trying.. Anyway, since it is RAM
download, this should not cause permanent damage.

> 0xFD0B is HFA384X_RID_NICID.  I'm actually not sure that pm010102.hex is
> what I should load.

Do you know what the NICID is? If it is 8024, that image seems to be

> It should be possible to make no_primary a per-device setting and set it
> automatically for known cards without flash.

It could be automatically tried if the normal initialization fails.
Other than that, there may not be much else that can be done to identify
the cards unless they have unique manfids..

> hostap_cs: assuming no Primary image in flash - card initialization not completed
> wifi0: prism2_enable_aux_port - timeout - reg=0x8cd5

That timeout should be fine; Aux port is probably already enabled.

> wifi0: hfa384x_cmd_issue: cmd reg was busy for 5000 usec
> wifi0: hfa384x_cmd_issue - timeout - reg=0x8a32

.. and these errors are expected, but of course there is not much point
trying to continue trying new commands if the first one is failing. The
driver should just wait for the download command.

> # prism2_srec -g wifi0 pm010102.hex
> wifi0: hfa384x_cmd_issue: cmd reg was busy for 5000 usec
> wifi0: hfa384x_cmd_issue - timeout - reg=0x8ce2
> wifi0: hfa384x_cmd: entry still in list? (entry=f1070f78, type=0, res=-1)
> wifi0: hfa384x_cmd: interrupted; err=-110
> wifi0: hfa384x_get_rid: CMDCODE_ACCESS failed (res=-110, rid=fd0b, len=1008)

This is due to prism2_srec trying to read the RID. This should be
skipped. In addition, download code may need some changes so that it
will continue even if something fails in the beginning (only for RAM
downloads, though).

Jouni Malinen                                            PGP id EFC895FA

More information about the Hostap mailing list