Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

radxa-RockPi4: Fix USB keyboard not working #199

Closed
wants to merge 2 commits into from

Conversation

jirutka
Copy link
Contributor

@jirutka jirutka commented Oct 3, 2022

Note: On ROCK Pi 4B+, the keyboard must be connected to one of the blue USB ports.

Fixes #147

@samueldr
Copy link
Contributor

samueldr commented Oct 3, 2022

This change AFAICT should only change the operating system boot order, it shouldn't affect USB functionality in other ways. Unless for some reason looking for a USB boot device works around a problem.

Have you tested the upcoming update (#178) to see if there is some issues that got solved by upstream? There might be, considering other RK3399 had some USB-related issues fixed by it.

Note that it would be undesirable to prefer booting operating system form USB within Tow-Boot. The order is to first boot internal storage, then external storage, on a "gradient". E.g. eMMC is internal, NVMe is internal, SD is kinda internal, USB is not internal. [though yes, currently rockchip targets would prefer SD over NVMe.]

@jirutka
Copy link
Contributor Author

jirutka commented Oct 3, 2022

This change AFAICT should only change the operating system boot order, it shouldn't affect USB functionality in other ways.

Yeah, it’s weird, but it really fixed the problem with USB keyboard.

Have you tested the upcoming update (#178) to see if there is some issues that got solved by upstream?

Yes, that was the first thing I did.

Note that it would be undesirable to prefer booting operating system form USB within Tow-Boot.

I know, it’s suboptimal but still better than the current state in which Tow-Boot is unusable on this device. I’ll try to find another way though.

Note: On ROCK Pi 4B+, the keyboard must be connected to one of the
*blue* USB ports.

Fixes Tow-Boot#147
@jirutka
Copy link
Contributor Author

jirutka commented Oct 3, 2022

Okay, I found a better way, CONFIG_PREBOOT="usb start". I’ve also backported a patch from u-boot (u-boot/u-boot@d5daa02) to fix a reboot loop occuring with some USB devices.

@samueldr samueldr added this to the 2022.07-006 milestone Nov 3, 2022
@samueldr
Copy link
Contributor

samueldr commented Nov 4, 2022

Notes to self: the changes to drivers/usb/host/xhci-ring.c are part of 2022.07, so the patch is not needed.

The radxa-rockpi4 still doesn't enable PREBOOT with usb start, so this will be needed to be addressed.

--
From: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Date: Wed, 3 Jan 2020 12:45:26 +0700
Subject: [PATCH] rockchip: rockpro64: initialize USB in preboot
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sneaky!

I found "this patch", and got confused seeing it was accepted and merged in 2020.

Note to anyone missing the sneaky bits: this is an edited patch for another board.

We probably should instead move this to Tow-Boot config, since as-this-is it won't be inherited by the 4C, since it uses a different defconfig.

(Still notes to me)

samueldr added a commit to samueldr/Tow-Boot that referenced this pull request Nov 4, 2022
See Tow-Boot#199

Co-authored-by: Jakub Jirutka <jakub@jirutka.cz>
samueldr added a commit to samueldr/Tow-Boot that referenced this pull request Nov 4, 2022
See Tow-Boot#199

Co-authored-by: Jakub Jirutka <jakub@jirutka.cz>
@samueldr samueldr added 9. status: superseded Another issue or pull request replaces this issue or pull request 1. family: rockchip labels Nov 4, 2022
@samueldr samueldr closed this Nov 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1. family: rockchip 9. status: superseded Another issue or pull request replaces this issue or pull request
Development

Successfully merging this pull request may close these issues.

None yet

2 participants