#7973 BLOC 8.2.0 (: libertas unknown event IDs and hang
Zarro Boogs per Child
bugtracker at laptop.org
Tue Aug 26 05:11:35 EDT 2008
#7973: libertas unknown event IDs and hang
------------------------+---------------------------------------------------
Reporter: cjb | Owner: dsaxena
Type: defect | Status: new
Priority: blocker | Milestone: 8.2.0 (was Update.2)
Component: kernel | Version: not specified
Resolution: | Keywords: blocks:8.2.0
Next_action: diagnose | Verified: 0
Blockedby: | Blocking:
------------------------+---------------------------------------------------
Comment(by ashish):
Replying to [comment:43 dcbw]:
> We need documentation of these internal firmware dependencies then. The
specs don't say much here, except in section 2.2 (Driver and Firmware
After Card Insertion) which _might_ indicate how it's supposed to work but
is highly unclear with respect to post-insertion operations.
>
> A few questions:
>
> - Is a scan required after every CMD_802_11_DEAUTHENTICATE command?
No.
> - What is the host driver supposed to do if the DEAUTH command returns
an error? Retry the command after a timeout? If so, how long should that
timeout be?
The probability of getting non-zero deauth reason code in the deauth
command response from the firmware is very low. Ideally, driver should
retry when it happens. A typical retry timeout could be 100ms.
> - Do any of the Marvell-provided drivers handle an error response from
DEAUTHENTICATE?
>
> I checked the original 8388 code drop, the
SD-8686-FEDORA26-8.73.7.p3-26340P58 driver, and the moblin.org v9 driver,
and the gumstix cf8385 5.0.13 driver, and none of them do anything
different from the libertas driver after failure of a DEAUTHENTICATE
command. They don't even run the code that resets the internal driver
state to disconnected. What should be happening here in the driver?
>
> If the driver requires certain steps to be performed in a specific
order, or the commands have interdependencies, then those need to be
documented in the specification much like the sequence of RSN setup is
documented in v5.1 section 7.1.1. Otherwise, there's no way we can ever
figure out how to work correctly with binary firmware drops.
Nothing is required from the driver except to check for reasoncode field
of cmd_ds_802_11_deauthenticate.
If the deauth command fails, deauth command respone contains non-zero
response code, and firmware works fine. However, if driver gets sucessful
deauth command response, which is zero, but the deauth reason code (member
{{{
reasoncode
}}}
of struct
{{{
cmd_ds_802_11_deauthenticate
}}}
) non-zero firmware may be still in associated state.
--
Ticket URL: <http://dev.laptop.org/ticket/7973#comment:44>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list