Hi Peter,

The simplest way is to create for your driver special driver_libertas.c
layer that will forward all usual calls to driver_wext.c functions but for
private
will do special IOCTL that libertas driver "understands".
Or you can change kernel driver itself.

bcm4329 driver can be used as an example:
http://android.git.kernel.org/?p=kernel/msm.git;a=tree;f=drivers/net/wireless/bcm4329;h=a10842ca196951bc3399a8fa4cff09dce4ac305f;hb=refs/heads/android-msm-2.6.32

Thanks,

Dmitry

On Thu, Apr 1, 2010 at 12:36 AM, Peter Fortuin <[email protected]>wrote:

> Hi Dmitry,
>
> This information is very usefull. I investigated some further into the code
> and this is what I found out yet: The problem is in the calling of the ioctl
> function with SIOCSIWPRIV. I start searching in my wifi driver (libertas)
> and I found out that SIOCSIWPRIV is not supported in my driver. So that's
> why the function fails.
>
> As I see it now, I have 2 options:
>
> - Add a function to the libertas driver so that is resonds to SIOCSIWPRIV.
> - Change the wpa_driver_priv_driver_cmd function that he handles itself.
>
> Not sure what is more easy to do.
>
> Do you have any more detailed documentation (url?) about the different
> commands? Or do you know any wifi driver in the kernel that has implemented
> the SIOCSIWPRIV function?
>
> Kind regards,
>
> Peter
>
>
> 2010/3/31 Dmitry Shmidt <[email protected]>
>
> Hi Peter,
>>
>> Most important driver control functions:
>>  - RSSI                         -- get current Rssi value (used only for
>> signal icon strength)
>>    - Responce: SSID rssi value
>>  - LINKSPEED              -- get current Linkspeed value (can be ignored)
>>    - Responce:  LinkSpeed value
>>  - MACADDR                -- get wlan BSSID
>>    - Responce: Macaddr = XX:XX:XX:XX:XX:XX
>>  - START                      -- start wlan driver/FW
>>  - STOP                       --  stop wlan driver/FW - in the meaning of
>> turning it off
>>  - SCAN-CHANNELS    -- set proper regulatory domain
>>
>> Thanks,
>> Dmitry
>>
>>
>> On Wed, Mar 31, 2010 at 1:01 AM, Peter Fortuin 
>> <[email protected]>wrote:
>>
>>> Hi Dmitry,
>>>
>>> Thanks for the response. I found the wpa_driver_priv_driver_cmd function
>>> inside the driver_wext.c, but I have no idea what this function should do
>>> exactly or why it fails in my case. I'm going to add some debug statements
>>> in it to see where it exacly fails.
>>>
>>> Can you explain in a little bit more detail what this function does?
>>>
>>> Kind regards,
>>>
>>> Peter
>>>
>>> 2010/3/29 Dmitry Shmidt <[email protected]>
>>>
>>> Hi Peter,
>>>>
>>>> Android Network manager is sending special commands to the driver
>>>> through wpa_supplicant interface to do stuff like
>>>> start/stop the driver, get Rssi value and other things.
>>>> Please take a look on wpa_supplicant driver_wext.c file and look for
>>>> private function.
>>>>
>>>> Thanks,
>>>>
>>>> Dmitry
>>>>
>>>> On Mon, Mar 29, 2010 at 4:52 AM, Peter Fortuin <[email protected]
>>>> > wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I got my wpa_supplicant running and I can connect to different wireless
>>>>> networks. But I keep seeing the following message in the logs:
>>>>>
>>>>> wpa_driver_priv_driver_cmd failed
>>>>>
>>>>> I have been google'ing, but only found people with the same problem,
>>>>> but no solution.
>>>>>
>>>>> Can someone explain to me what the message means? And is this a problem
>>>>> that I need to solve?
>>>>>
>>>>> Kind regards,
>>>>>
>>>>> Peter
>>>>>
>>>>>  --
>>>>> unsubscribe: 
>>>>> [email protected]<android-porting%[email protected]>
>>>>> website: http://groups.google.com/group/android-porting
>>>>>
>>>>> To unsubscribe from this group, send email to android-porting+
>>>>> unsubscribegooglegroups.com or reply to this email with the words
>>>>> "REMOVE ME" as the subject.
>>>>>
>>>>
>>>>
>>>
>>
>

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to