ath9k usb Wi-Fi driver

Josef Söntgen josef.soentgen at genode-labs.com
Mon Jan 23 11:38:35 CET 2023


Hello Colin,

> Good to hear. Was this done with the changes I made to the supplicant
> interface? I'm curious if those break the existing wifi functionality,
> which I can't test other than to say it compiles successfully.

No, in this case I simply enabled the driver in the vanilla
'pc_wifi_drv' driver component.


> At some point I believe this was re-named by me to pc_lx_ath9k_extras. You
> should find it in world/lib/mk and the import file in world/lib/import. The
> only point as I remember is to add the necessary files from the linux
> contrib dir. Since the ath9k driver sits in world, rather than in "pc", the
> corresponding source.list and dep.list files are not imported automatically
> by pc_linux API, hence the need for the pc_lx_ath9k_extras API for depot
> builds, and the import-pc_lx_ath9k_extras file to correctly locate the
> imported files. But, I am a genode build/depot build newbie, so perhaps I
> made this too complicated? If you want to build in the "pc" repo itself I
> suppose it isn't needed.

Nevermind, I did not pay close attention and misread the
'LX_SOURCE_EXTRAS' usage. (For additional changes see the Ralink comment
below.)


> […] Admittedly I was also thinking of some unusual scenarios, such as
> multiple wifi adapters where it makes sense to have one supplicant and
> multiple drivers. But that's strange enough maybe it doesn't need to
> be supported.

At least from my perspective I would rather treat the supplicant as a
“minor” detail of the driver itself. So each instance has its own
supplicant and a management component could take care of the overall
configuration on the system level for multiple wireless devices.


> BTW, were you able to build the wifi_ath9k_drv component? I hope that I
> have a version that is suitable for others to try. Well, if anyone has the
> hardware, which maybe is not as common as I thought since i bought it a
> while ago.

After adapting your commit - my 'world' repo is symlinked rather cloned
in place - I was able to build the driver. Due to the lack of HW I did
not test it though.

However, I enabled the RT2800USB driver [0], added a 'wifi_ath9k.run'
run script based on 'pc/run/wifi.run' to ease testing and will use this
for further testing and development before tackling the Sculpt
integration. I also had to adapt the test-bed somewhat [1] as the driver
still requires the Platform session - removing this hard dependency is
one of the tasks I implied by the PCI/USB split.

[0] https://github.com/cnuke/genode/commits/ath9k_driver_support-2023-01-22
[1] https://github.com/cnuke/genode-world/commits/ath9k_driver_support-2023-01-22


So far the RT2800USB driver is non-working and the next step is figuring
out why. For that I will take a closer look at your USB back-end work
and its integration into the kernel.

(Bare with me as this is done in my spare time, it might take a while.)


Regards
Josef

-- 
Josef Söntgen
Genode Labs

http://www.genode-labs.com/ · http://genode.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.genode.org/pipermail/users/attachments/20230123/69a53af6/attachment.sig>


More information about the users mailing list