On Tue, Nov 18, 2025 at 05:11:13PM +0100, Johan Hovold wrote:
On Mon, Nov 17, 2025 at 11:48:05PM +0530, Ayaan Mirza Baig wrote:
Hi Greg and all,
This series performs a set of cleanups, correctness fixes, and remaining TODO removals across the Greybus drivers in drivers/staging/greybus.
Greybus has existed in staging for a long time, and many FIXMEs, outdated comments, and partial implementations had accumulated over the years.
These haven't accumulated in staging, but during development as the git logs should tell you.
While reviewing and compile-testing the drivers I found a number of places where the comments were obsolete, logic was incomplete, or newer subsystem APIs had evolved.
This series addresses those issues without changing any fundamental design or architecture. All changes are self-contained, straightforward, and focues on improving correctness and maintainability.
The patches include:
- Removal of obsolete FIXMEs that no longer reflect the current code or hardware behavior.
- Correctness fixes in several protocol drivers (UART, RAW, USB, Loopback, Firmware core, Audio).
- Small improvements to error handling and shutdown paths.
- Cleanup of commented-out or dead code.
- Removal of the now-completed GPIO and PWM TODO items.
- Removal of the empty Greybus TODO file.
All patches were compile-tested with COMPILE_TEST=y and all Greybus options enabled. Runtime smoke testing was performed where possible.
This series does not attempt to graduate Greybus out of staging; these changes are preparatory cleanups only.
Thanks for your time and review.
Ayaan Mirza Baig (13): staging: greybus: Remove completed GPIO conversion TODO item staging: greybus: pwm: move activation into pwm apply and remove request() staging: greybus: remove empty TODO file staging: greybus: audio: remove obsolete INPUT_PROP_NO_DUMMY_RELEASE FIXME staging: greybus: audio: remove obsolete FIXME and document topology ownership staging: greybus: bootrom: remove obsolete FIXME about SVC parallel event handling staging: greybus: bootrom: remove obsolete FIXME around firmware filename logging staging: greybus: fw-core: remove obsolete S2 Loader runtime PM FIXME staging: greybus: loopback: remove incorrect FIXME about async wait staging: greybus: raw: handle disconnect while chardev is open staging: greybus: uart: clear unsupported termios bits staging: greybus: usb: validate hub control response length staging: greybus: usb: remove obsolete FIXME about bridged-PHY support
I only skimmed some of these and there are so many bugs and misunderstandings here that I can only imagine what's lurking in the remaining ones.
The basic misunderstanding seems to be that FIXMEs can and should be removed without addressing the underlying issues.
Johan
Hi Johan,
Thank you for taking the time to review the series, and thank you for being direct about the issues. I want to apologize for the misunderstandings and for removing FIXMEs that should not have been touched. That was my mistake, and I should have taken more care before modifying areas of the subsystem I don't fully understand yet.
I also want to be transparent: I'm an undergraduate student who is just starting to learn kernel development. I'm very interested in Linux and want to contribute seriously, but I clearly approached this series with more confidence than understanding, and I am sorry for the noise that caused.
I'll resend only a very small, focused series once I have properly analysed the code. Before I send a v2, I want to make sure I am going in the right direction.
If you have any guidance on how I can improve - in terms of approach, review process, or how to evaluate FIXMEs and TODOs correctly - I would really appreciate it. I'm trying to learn the right way to contribute and I don't want to repeat the same mistakes.
I also want to double-check whether the PWM apply() changes (one of the TODO items) were done correctly, also if there are any issues in [PATCH 10/13], apart from what Abdun suggested. I'm willing to redo the work properly.
Again, apologies for the errors. I appreciate your time and feedback.
Thanks, Ayaan