Hello Manas,

On 04.08.25 04:48, manas gupta wrote:
hi all,

I'm Manas, a GSoC 2025 contributor @BeagleBoard org working on the
project upstream wpanusb bcferial as part of my efforts I am aiming to
upstream these drivers to simplify on-going support.

I'm writing to this list to introduce the project, share the progress
made so far, and respectfully ask for your guidance on the best path
forward for upstreaming the drivers.

The drivers have had multiple functional gaps before they can be
upstreamed, over the past few weeks I have been working on quite a few
of them.

To address the first major gap, I have spent the initial phase of the
project implementing the missing driver operations. The driver now has
functional implementations for:
set_txpower(), set_lbt(), set_cca_mode(), set_cca_ed_level(),
set_csma_params(), set_frame_retries(), set_promiscuous_mode(),


Good so you filled up some of the gaps for driver ops.

Enhanced parameter validation per IEEE 802.15.4 standard, Improved
error handling and debug logging and worked on the zephyr application.
Currently I am working on generic aspects which are hardcoded and
Dynamic device capabilities.

Here you refer to the part where the Zephyr application would query the the hardware and set bands, channels, power levels, etc dynamically from the radio API of Zephyr? This should really be generic. It should work with any 15.4 transceiver supported by Zephyr, and expose the right capabilities for the hardware.

Stefan's notes mentioned heavy work on management frames and scanning. Are 
there any new driver ops or architectural changes on the horizon that I should 
be aware of and plan for in this driver?

Not at the moment. Scanning, beaconing, etc has landed and the latest wpan-tools release has support for it as well.

I am eager to contribute and follow the best practices of the kernel
community. Any feedback on the work so far, patch submission
strategies and guidance would be incredibly valuable.

A first start would be to get all the pieces together that are involved, e.g. zephyr wpanusb application, bfcserial, wpanusb linux driver and describe how they are supposed to work together. Having a clear description on this would actually help us to give you feedback if that is a good way forward.

Based on community feedback, I plan to:
   1. Address any architectural concerns raised
   2. Implement suggested improvements
   3. Prepare formal patch series for submission

This part is something you should start as early as possible. As Alex mentioned you can just have the series send out as RFC. No harm in showing us your working prototypes to get feedback. The doc how it fits together and how to test it would be part of your series cover-letter.

   4. Coordinate hardware testing with BeagleConnect devices
   5. Document any remaining limitations

I would greatly appreciate any guidance on:
   - Code review and architectural feedback
   - Upstreaming process and requirements

Please read up on submitting patches on the Linux kernel. There is plenty of docs for this, no need to repeat all of it.

This could be a start: https://docs.kernel.org/process/submitting-patches.html

I would encourage you to use b4 for handling your patch series. If you are familiar with teh kernel development process plain git can also work, but b4 is taking some problems off your plate.

   - Testing strategies and requirements

You should always amke sure that your prototype works on your setup. (mention the setup in your cover-letter). I would assume for you that might be two BeagleConnect Freedom boards. Running tests with creating a PAN, scanning, joining, raw 15.4 frames transfer as well as 6lowpan communication would be the tests we are looking for.

Once we reached a state where we are happy with the driver code I can also give it a go.


Thank you for your time and consideration. I look forward to contributing to
the Linux IEEE 802.15.4 subsystem.

project forum link:
https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186

gsoc page- https://summerofcode.withgoogle.com/programs/2025/projects/xZofecH8
org repo link: https://openbeagle.org/beagleconnect/linux

my repo links
wpanusb driver: https://github.com/manas-gupta-3131/bb-gsoc-wpanusb
bcfserial driver: https://github.com/manas-gupta-3131/bb-gsoc-bcfserial

This one is empty.

wpanusb_bc(zephyr application):
https://github.com/manas-gupta-3131/bb-gsoc-wpanusb_bc

regards
Stefan Schmidt

Reply via email to