
Hi Filip,
On Sat, 17 Dec 2022 at 05:50, Filip Žaludek filip.zaludek@oracle.com wrote:
Hello, change seems to be unfriendly to RPi3B+, it allows to enter 'U-Boot>' shell but usb keyboard does not respond. Keyboard is detected by 'usb info' in v2023.01-rc3, not in v2022.10. When reverted, usb keyboard works as expected.
Anybody sitting front of RPi3B+ care to confirm?
Regards, Filip
Patch: https://github.com/u-boot/u-boot/commit/96991e652f541323a03c5b7e075d54a11709...
Debug: USB KBD: found interrupt EP: 0x81 USB KBD: set boot protocol dwc2_submit_control_msg: dev='usb@7e980000', udev=000000003af4be00, udev->dev='usb_kbd', portnr=3 USB KBD: set idle interval... dwc2_submit_control_msg: dev='usb@7e980000', udev=000000003af4be00, udev->dev='usb_kbd', portnr=3 USB KBD: enable interrupt pipe... usb_kbd usb_kbd: Timeout poll on interrupt endpoint
Tested: SW: v2022.10 & v2023.01-rc3 compiled from sources as 'rpiarm64' HW: USB 1.1 and 2.0 keyboards, RPi3B+ JeOS: http://download.opensuse.org/ports/aarch64/tumbleweed/appliances/openSUSE-Tu... (u-boot-rpiarm64-2022.10-1.1.aarch64)
This seems to work on current master:
do-try-int.sh rpi3 Revision 9bd3d354a1a0712ac27c717df9ad60566b0406ee, board rpi3
Checking revision 9bd3d354a1a0712ac27c717df9ad60566b0406ee /vid/software/devel/ubtest tbot starting ... ├─Parameters: │ rev = '9bd3d354a1a0712ac27c717df9ad60566b0406ee' │ clean = False ├─Calling uboot_build_and_flash ... │ ├─Calling uboot_build ... │ │ ├─Calling uboot_checkout ... │ │ │ ├─Builder: rpi3 │ │ │ └─Done. (0.181s) │ │ ├─Configuring build ... │ │ ├─Calling uboot_make ... │ │ │ └─Done. (1.504s) │ │ └─Done. (2.178s) │ ├─Calling uboot_flash ... │ │ ├─Calling copy ... │ │ │ └─Done. (0.004s) │ │ └─Done. (1.119s) │ └─Done. (3.663s) ├───────────────────────────────────────── └─SUCCESS (3.799s) tbot starting ... ├─Calling interactive_board ... │ ├─POWERON (rpi3) │ ├─Entering interactive shell (CTRL+D to exit) ...
U-Boot 2023.01-rc3-00057-g9bd3d354a1a (Dec 17 2022 - 15:23:14 -0700)
DRAM: 992 MiB RPI 3 Model B (0xa22082) Core: 66 devices, 14 uclasses, devicetree: embed MMC: mmc@7e202000: 0, mmc@7e300000: 1 Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1... In: serial Out: vidconsole Err: vidconsole Net: No ethernet found. starting USB... Bus usb@7e980000: USB DWC2 scanning bus usb@7e980000 for devices... usb_kbd usb_kbd: Timeout poll on interrupt endpoint Failed to get keyboard state from device 0c40:8000 6 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found Hit any key to stop autoboot: 0 U-Boot> usb info 1: Hub, USB Revision 1.10 - U-Boot Root Hub - Class: Hub - PacketSize: 8 Configurations: 1 - Vendor: 0x0000 Product 0x0000 Version 0.0 Configuration: 1 - Interfaces: 1 Self Powered 0mA Interface: 0 - Alternate Setting 0, Endpoints: 1 - Class Hub - Endpoint 1 In Interrupt MaxPacket 2 Interval 255ms
2: Hub, USB Revision 2.0 - Class: Hub - PacketSize: 64 Configurations: 1 - Vendor: 0x0424 Product 0x9514 Version 2.0 Configuration: 1 - Interfaces: 1 Self Powered Remote Wakeup 2mA Interface: 0 - Alternate Setting 0, Endpoints: 1 - Class Hub - Endpoint 1 In Interrupt MaxPacket 1 Interval 12ms - Endpoint 1 In Interrupt MaxPacket 1 Interval 12ms
3: Human Interface, USB Revision 1.10 - Logitech USB Keyboard - Class: (from Interface) Human Interface - PacketSize: 8 Configurations: 1 - Vendor: 0x046d Product 0xc31c Version 100.0 Configuration: 1 - Interfaces: 2 Bus Powered Remote Wakeup 90mA - String: "U64.00_B0001" Interface: 0 - Alternate Setting 0, Endpoints: 1 - Class Human Interface, Subclass: Boot Keyboard - String: "USB Keyboard" - Endpoint 1 In Interrupt MaxPacket 8 Interval 10ms Interface: 1 - Alternate Setting 0, Endpoints: 1 - Class Human Interface, Subclass: None - String: "USB Keyboard" - Endpoint 2 In Interrupt MaxPacket 4 Interval 255ms
4: Human Interface, USB Revision 0.1 - QDtech MPI5001 ? - Class: (from Interface) Human Interface - PacketSize: 64 Configurations: 1 - Vendor: 0x0483 Product 0x5750 Version 2.0 Configuration: 1 - Interfaces: 1 Bus Powered 64mA Interface: 0 - Alternate Setting 0, Endpoints: 1 - Class Human Interface, Subclass: None - Endpoint 2 In Interrupt MaxPacket 64 Interval 1ms - Endpoint 2 Out Interrupt MaxPacket 64 Interval 1ms
5: Vendor specific, USB Revision 2.0 - Class: Vendor specific - PacketSize: 64 Configurations: 1 - Vendor: 0x0424 Product 0xec00 Version 2.0 Configuration: 1 - Interfaces: 1 Self Powered Remote Wakeup 2mA Interface: 0 - Alternate Setting 0, Endpoints: 3 - Class Vendor specific - Endpoint 1 In Bulk MaxPacket 512 - Endpoint 2 Out Bulk MaxPacket 512 - Endpoint 3 In Interrupt MaxPacket 16 Interval 4ms
6: Mass Storage, USB Revision 2.10 - SanDisk USB Extreme Pro 513456791960 - Class: (from Interface) Mass Storage - PacketSize: 64 Configurations: 1 - Vendor: 0x0781 Product 0x5588 Version 1.0 Configuration: 1 - Interfaces: 1 Self Powered 0mA Interface: 0 - Alternate Setting 0, Endpoints: 2 - Class Mass Storage, Transp. SCSI, Bulk only - Endpoint 1 In Bulk MaxPacket 512 - Endpoint 2 Out Bulk MaxPacket 512
U-Boot> hello Unknown command 'hello' - try 'help' U-Boot> │ ├─POWEROFF (rpi3) │ ├─Exiting poweroff │ └─Done. (34.381s) ├───────────────────────────────────────── └─SUCCESS (34.481s)
(the 'hello' is typed on the keyboard)
Regards, Simon