Decker Posted June 20, 2015 Posted June 20, 2015 Hi, just a quick question: Why is OTG disabled? I read some "performance issues" or "high CPU usage by OTG" etc... But can someone be more specific?
Igor Posted June 20, 2015 Posted June 20, 2015 Short version of answer is: to avoid questions - "why do we have a high load without running anything?" More specific:http://www.cubieforums.com/index.php/topic,1084.0.html 1
remsnet Posted June 20, 2015 Posted June 20, 2015 my answer for OTG disabling on OLD kernels : any ARM kernel below 3.11 known to have a lot of harsch bugs that make USB useless , system unstable. so STOP use kernel 3.4. - 0 read CERT allerts for OUTdated kernels - 0.1 most OTG bugs had been beed 2 years ago on ARM6 & 7 with kernel 3.12.x and up on rasberry PI's see at git //github.com/raspberrypi/linux.git for OTG armhf patches. -1 update kernel Kick the old 3.4.x kernels of your desk and servers. use https://github.com/igorpecovnik/lib, with KERNEL_ONLY="yes" and KERNEL_CONFIGURE="no" re-enable complete USB stuff , as modules , INCLUDE OTG - 2 if custom kernel modules , port them , give igor patches . 1
Decker Posted June 21, 2015 Author Posted June 21, 2015 Thanks Igor for that link. Now it is clear to me. remset, thank you too. I would correct your adwise to: KERNEL_ONLY="yes" and KERNEL_CONFIGURE="yes" //re-enable complete USB stuff , as modules , INCLUDE OTG I am working on re-enabling OTG in mainline, I am not done so I am not sure, but I think you also need to enable OTG in script.bin, right?
Igor Posted June 22, 2015 Posted June 22, 2015 I am working on re-enabling OTG in mainline, I am not done so I am not sure, but I think you also need to enable OTG in script.bin, right? Mainline doesn't have script.bin any more but Device Tree which has similar role but completely different structure. Sources are located in /arch/arm/boot/dts/ ... compiled under /boot/dtb Documentation: http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf 1
Decker Posted June 22, 2015 Author Posted June 22, 2015 Mainline doesn't have script.bin any more but Device Tree which has similar role but completely different structure. Sources are located in /arch/arm/boot/dts/ ... compiled under /boot/dtb Documentation: http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf Well, interesting. Any way or link to "how to enable OTG in mainline"? I have not found anything useful (for OTG) in /arch/arm/boot/dts/. I enabled needed things (later also not needed things to be sure) in .config, but that is not enough. Maybe I will find something helpful in that pdf.
chradev Posted March 22, 2016 Posted March 22, 2016 Hi to All, I have read this and other discussions on the USB OTG issue in old kernels but the need to use legacy kernel 3.4 and 2+ USB Hosts on Lime 2 without hub force me to test system behavior with USB0 enabled as host only (usb_port_type = 1 and usb_detect_type = 0). The result is good for "high CPU usage at OTG detect enabled" phenomena. In the beginning the CPU load average is relatively high but less than 1.0. It goes down and become close to 0 after short time without heavy system load. As I read there is other "performance issues" and many bugs but the truth is that I use on A20-SOM Olimex image with kernel 3.4 for months without any problems even did not notice high the CPU load average reported by tools like top and htop. My question is about other side effects, issues and instability in case of usb_port_type = 1 and usb_detect_type = 0 setup? Regards Chris
Recommended Posts