Gullik Posted February 17 Posted February 17 Since I am interested in the connection ability, I figured the info we gather should go into ONE thread. I have tried to build new kernels, but can only see USB controllers and devices two ports. I have seen a lot of work by Sebasitian Reichel @ Collabora, and his patches, but these do not seem to have the desired result on my test board. Orange PI 5. There seems to be an issue with the port mux, FUSB302, that either connects the last USB to the "vertical" port or to the "USB C" connector. I will comment my findings and attempts to correct this in this thread, and think we could find out where we are if you add your findings, successes and failures, rather than cluttering everywhere Regards, Gullik 0 Quote
Gullik Posted February 18 Author Posted February 18 This is a link to collaboras work on USB (and other issues) https://gitlab.collabora.com/hardware-enablement/rockchip-3588/notes-for-rockchip-3588/-/blob/main/mainline-status.md Item 3 is related to the rk3588s which is common. Item 8 describes the FUSB302 port select/detect chip. This is an issue in the Rock5b but the same chip is present in the OPI 5. However, it is not clear that the modifications will address the OPI5 correctly. Regards, G 0 Quote
sugatam Posted February 18 Posted February 18 I'm glad you started this thread Gullik. I too am keen to see the vertical port and USB-C work. So far, running 6.8rc1, they don't. I haven't tried the collabora kernel yet on my OPi5, have you? That is off of collabora's branch, so has the latest patches that haven't been upstreamed yet, but the latest release of that is on 6.7.0. Separately, I have an issue with even the two horizontal USB ports. When using a 2.5" portable HDD, normally things work ok, but heavy activity, usually when I'm rsync'ing, leads to USB disconnects. Is anyone seeing this? [1294682.126819] usb 2-1: USB disconnect, device number 8 [1294682.127247] sd 3:0:0:0: [sdf] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK cmd_age=0s [1294682.127256] sd 3:0:0:0: [sdf] tag#0 CDB: Read(10) 28 00 00 0e 59 d8 00 00 08 00 [1294682.127261] blk_print_req_error: 4 callbacks suppressed [1294682.127263] I/O error, dev sdf, sector 940504 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [1294682.139910] device offline error, dev sdf, sector 940504 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [1294682.139931] buffer_io_error: 256 callbacks suppressed [1294682.139934] Buffer I/O error on dev sdf1, logical block 117307, async page read [1294682.140082] device offline error, dev sdf, sector 361648 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [1294682.140105] device offline error, dev sdf, sector 361648 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [1294682.140109] Buffer I/O error on dev sdf1, logical block 44950, async page read [1294682.140442] device offline error, dev sdf, sector 2235835648 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [1294682.140461] device offline error, dev sdf, sector 2235835648 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [1294682.140464] Buffer I/O error on dev sdf1, logical block 279479200, async page read [1294682.140617] device offline error, dev sdf, sector 359856 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [1294682.140629] device offline error, dev sdf, sector 359856 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [1294682.140632] Buffer I/O error on dev sdf1, logical block 44726, async page read [1294682.141065] device offline error, dev sdf, sector 941832 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0 [1294682.141114] device offline error, dev sdf, sector 941832 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [1294682.141126] Buffer I/O error on dev sdf1, logical block 117473, async page read [1294682.141452] Buffer I/O error on dev sdf1, logical block 44798, async page read [1294682.159672] Buffer I/O error on dev sdf1, logical block 44683, async page read [1294682.162683] Buffer I/O error on dev sdf1, logical block 115454, async page read [1294682.164797] Buffer I/O error on dev sdf1, logical block 44930, async page read [1294682.170128] Buffer I/O error on dev sdf1, logical block 44756, async page read [1294683.623276] sd 3:0:0:0: [sdf] Synchronizing SCSI cache [1294683.623322] sd 3:0:0:0: [sdf] Synchronize Cache(10) failed: Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK [1294683.899994] usb 2-1: new SuperSpeed USB device number 9 using xhci-hcd [1294683.918703] usb 2-1: New USB device found, idVendor=0480, idProduct=0900, bcdDevice= 3.15 [1294683.918714] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [1294683.918720] usb 2-1: Product: External USB 3.0 0 Quote
Gullik Posted February 19 Author Posted February 19 Hello sugatam, I have tried all edge kernels, and built my own 6.8-rc4 kernel, but these patches does not seem to have made it into those branches yet. No cigar! I have not tried collaboras kernel yet, but that would be interesting. About your stability problems, I have only tried things like wifi, I might have observed instability, but did not connect it with the USB, but rather with wifi. I will check logs next time I observe it.... Regards, Gullik 0 Quote
Gullik Posted March 6 Author Posted March 6 Kernel 6.8-rc6 does not fix this, so it seems all patches have not had effect. Patches have been available for some time, but do not seem to have propagated up. https://lwn.net/Articles/962547/ This is probably the significant log from dmesg [ 17.339454] i2c 6-0022: deferred probe pending: typec_fusb302: cannot register tcpm port [ 17.339462] platform fc000000.usb: deferred probe pending: dwc3: failed to initialize core Gullik 0 Quote
Gullik Posted March 20 Author Posted March 20 And, now edge is kernel 6.8.1. However, no vertical USB . syslog: 2024-03-20T11:06:51.630382+01:00 orangepi5-2 kernel: platform fc000000.usb: deferred probe pending: dwc3: failed to initialize core 2024-03-20T11:06:51.630400+01:00 orangepi5-2 kernel: i2c 6-0022: deferred probe pending: typec_fusb302: cannot register tcpm port Is this just a lack of enabling Sebastian Reichels patches on the orange pi 5, or is there some component missing? Device tree?? Is there something I could do myself, I could spend some hours if I understood better where to start. Gullik 0 Quote
Gullik Posted March 20 Author Posted March 20 Well, I downloade and built a new armbian on my OPI 5. I selected the "vendor kernel" and I changed the dwc3 dual role to host only. The kernel that was built was 6.1.43, and I could finally see the missing USB port. I am right now rebuilding the "edge kernel" with the same host only mode, and will check and report back. So, a fall in the forward direction....... Gullik 0 Quote
Gullik Posted March 20 Author Posted March 20 And, I have now built jammy_desktop on kernel Armbian-unofficial_24.5.0-trunk_Orangepi5_jammy_vendor_6.1.43_xfce_desktop On this kernel usb also works. Besides, my 8821cu wifi adapter was generated in, so I did not have to add and compile driver, but it came alive automaticaly I will explore status in other areas, but this kernel seems best for Orange PI 5 so far.... Gullik 0 Quote
Gullik Posted March 20 Author Posted March 20 I am impressed with the quality of the build system, I did not have to change/edit a single file to build these. Best Regards, Gullik 0 Quote
Gullik Posted March 21 Author Posted March 21 For the orange pi 5, this kernel, 6.1.43-vendor-rk35xx, seems like the most complete. The 6.8 versions does not seem to have received all the patches. Would this now be the time to get rid of the 5.10 kernel, to bring more testing to the 6.X line? I have now upgraded my PI 5 computers to this, and will check out issues posted to see if there is anything else missing, or if there are stability problems. Gullik 0 Quote
Solution Gullik Posted March 22 Author Solution Posted March 22 And the Armbian_24.5.0-trunk.260_Orangepi5_noble_vendor_6.1.43_xfce_desktop.img also works wrt USB. Adding a second wifi card, it shows in lsusb, and the driver can be loaded, but there is no wlan interface. So, now this thread is obsolete..... Gullik 0 Quote
compent Posted March 23 Posted March 23 I tried Armbian_24.5.0-trunk.257_Orangepi5_noble_vendor_6.1.43_xfce_desktop.img but the USB port is still not accessible. The fact that there is a solution available is of course good though and will no doubt find it's way into new builds. 0 Quote
Gullik Posted March 25 Author Posted March 25 The patches to enable the USB have not propagated to the 6.8.1 kernel.... I downloaded and tested but no luck.... Gullik 0 Quote
Efe Çetin Posted March 27 Posted March 27 Unfortunately opi5 is not near me and can't make any test right now. I'll try to find what's wrong with usbc on 6.8 when i find a chance to try. 0 Quote
Gullik Posted March 28 Author Posted March 28 Is there something I could do to help? I have several opi 5, and can set one up... Gullik 0 Quote
Gullik Posted March 29 Author Posted March 29 FYI, Kernel 6.8.2 also does not handle usb correctly, so 6.1.43 is the most complete for OPI 5. This is with edge kernels dated Mars-28 Gullik 0 Quote
Gullik Posted April 5 Author Posted April 5 And the same goes for: Armbian-unofficial 24.5.0-trunk Jammy with bleeding edge Linux 6.8.4-edge-rockchip-rk3588 which I built. How to apply Sebastien Reichels USB patches to the 6.8 kernel? Do I put his patches in userpatches after cloning Armbian? Best Regards Gullik 0 Quote
sugatam Posted April 6 Posted April 6 Did you try the the latest 6.9rc collabora branch? The build was just moved by ColourfulRhino yesterday from 6.7.0 to 6.9.0rc2. This kernel should have all the USB patches. I'm not near my OPi5 otherwise I'd have tried it. 0 Quote
Gullik Posted April 7 Author Posted April 7 How do you build it? I have been using the "standard build procedure", and I only get an option to build standard, vendor or edge kernels, edge seems to be 6.8.4. Where do I modify for a different kernel git url? I could well spend the work and effort.... Gullik 0 Quote
sugatam Posted April 7 Posted April 7 I didn't build it, just installed the kernel it from the beta armbian repo via the following commands: apt-get install linux-dtb-collabora-rockchip-rk3588 linux-image-collabora-rockchip-rk3588 \ linux-headers-collabora-rockchip-rk3588 linux-u-boot-rock-5b-collabora \ armbian-bsp-cli-rock-5b-collabora My apt sources.list has: http://beta.armbian.com bookworm main bookworm-utils bookworm-desktop 0 Quote
Efe Çetin Posted April 9 Posted April 9 This PR should fix USBC on OPi5 -> https://github.com/armbian/build/pull/6485 1 Quote
Gullik Posted April 11 Author Posted April 11 Armbian 24.5.0-trunk.404 Noble ttyS2 has not fixed the USB. It only displays a black screen, so something is wrong with the HDMI also. With a serial console I can see it boot up. These are the USB related log entries from dmesg [ 17.123480] i2c 6-0022: deferred probe pending: typec_fusb302: cannot register tcpm port [ 17.123494] platform fc000000.usb: deferred probe pending: dwc3: failed to initialize core [ 32.053018] vdd_gpu_s0: disabling root@orangepi5:~# Regards, Gullik 0 Quote
Gullik Posted April 11 Author Posted April 11 An apt update/upgrade fixed the video problem, and upgraded to trunk.405. After that I have a seemingly working system, but lsusb only shows 6 ports. webjorn@orangepi5:~$ lsusb -t /: Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 480M /: Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 5000M /: Bus 003.Port 001: Dev 001, Class=root_hub, Driver=ehci-platform/1p, 480M |__ Port 001: Dev 002, If 0, Class=Vendor Specific Class, Driver=rtw_8821cu, 480M /: Bus 004.Port 001: Dev 001, Class=root_hub, Driver=ohci-platform/1p, 12M /: Bus 005.Port 001: Dev 001, Class=root_hub, Driver=ohci-platform/1p, 12M |__ Port 001: Dev 002, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 001: Dev 002, If 1, Class=Human Interface Device, Driver=usbhid, 12M /: Bus 006.Port 001: Dev 001, Class=root_hub, Driver=ehci-platform/1p, 480M webjorn@orangepi5:~$ webjorn@orangepi5:~$ dmesg | grep i2c [ 1.777030] i2c_dev: i2c /dev entries driver [ 16.267158] i2c 6-0022: deferred probe pending: typec_fusb302: cannot register tcpm port [ 18.392713] dwhdmi-rockchip fde80000.hdmi: i2c read time out! webjorn@orangepi5:~$ Regards G 0 Quote
Efe Çetin Posted April 11 Posted April 11 14 minutes ago, Gullik said: An apt update/upgrade fixed the video problem, and upgraded to trunk.405. It was just got merged recently. Wait for 406 or 407 to get the fix. 0 Quote
Gullik Posted April 11 Author Posted April 11 Hmmm..... There is no orangepi-5.dtb, but there is a ornangepi-5-plus.dtb Using armbian-config to browse the dtb, it looks as that one is used. Are they the same?? G 0 Quote
Gullik Posted April 11 Author Posted April 11 Hi efe, Yes, I understand, but it is ...edge... is'nt it? G 0 Quote
Efe Çetin Posted April 11 Posted April 11 2 minutes ago, Gullik said: Yes, I understand, but it is ...edge... is'nt it? Packages are built daily, not after every change on main. The current package on armbian beta repo was built on 8:22 11 April. The fix got merged after this build. If you want to try the fix, you can build package using Armbian build system 0 Quote
Gullik Posted April 11 Author Posted April 11 Right you are Efe, I am now running Armbian 24.5.0-trunk.407 Noble with bleeding edge Linux 6.8.5-edge-rockchip-rk3588 And, yes, I finally have all the USB ports.... On to development, and testing the functionality, hopefully on the route to mainline.... Regards, G 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.