TI E2E Community
partly functional Android Debug Bridge on AM3517 evm
I am wondering if anybody encountered any problems with ADB on AM3517evm. I have just build everything required to create Android SD card and successfully booted Android on the board. ADB's running on my Ubuntu 10.04 and sees the board alright (over USB). I can pull files from board filesystem to host and also pushed file from host to /sdcard folder on the board. However any application installation hangs and shell request hangs as well. The host side is fine as I was able to connect to another (non-TI) Android board and there everything works.
I am an Android first-timer, so any ideas will be greatly appreciated :)
guys, I keep playing with this and have some new findings to share: adb works fine over Ethernet, it is USB link that causes problems.
Also, the USB woes seem to be caused by the size of the file written TO the device. I was able to pull almost 700 Mbytes file from board, but when it comes to writing to the device only few Kbytes would go well. Anything bigger than that gets stuck and ones it is stuck no data transfer is possible anymore in either direction. The device is still visible by the adb though.
I started configuring USB Ethernet gadget to see whether USB hw or sw is at fault and found out that TI-Android-Éclair-DevKit-V1 User Guide is not in sync with actual kernel configurations provided in the kernel with this release. I will play with the drivers and keep everybody posted on my progress here. If anybody from the TI-Android-Éclair-DevKit-V1 development/testing team is watching this forum, I'd appreciate any comments on my findings so far.
We have validated ADB over USB and Ethernet. As you mentioned the ethernet is working fine, we are getting some issues reported on USB based ADB.
We have not investigated this so far, will give a try some time next week.
that TI-Android-Éclair-DevKit-V1 User Guide is not in sync with actual
kernel configurations provided in the kernel with this release
Thanks for the input, I will look into this as well.
We are suggesting customers to use Ethernet for now, we also have few customers who are using USB with out any issues, we will have to study the difference between the systems.
Will keep the list updated.
I looked into this a bit more, the USB based ADB on OMAP35x and AM37x seem to be working good, looks like there is some problem with AM35x. I forgot to note that the USB driver on AM35x is different from OMAP35x and AM37x there fore we see the difference in documentation.
I can spend some time to debug this out, is this a blocking item for you?
We found the solution for the problem, it is actually related to USB drivers.
I have attached the uImage and Default config with this post. Please read the README in this zip package.
We will add this in our upcoming release.
Thanks for pointing this out.
Thanks for prompt response. The answer is yes and no. It does not block my evaluation as I can use adb over Ethernet. The problem is that we evaluate AMxx processors for new design and the part we're looking at is actually AM3715. The reason we use AM3517evm is because we need to benchmark USB Host to USB device data throughput as it is major use case in our application (AM3715evm does not have both USB host and OTG exposed on the board). Currently the rate we measured using adb pull is ~42 Mbps which is fine. However, you said that USB drivers are different on AM3517 and AM3715, so now I am wondering if this measurement made on AM3517evm is applicable to AM3715 processor. I was assured by the TI support person we work with that USB silicon is identical on both, so my questions is why the drivers are different?
I'd appreciate you responding on this as soon as you can because this information is crucial for our processor picking decision.
P.S> I have received the fix, will give it a try and let you know. Thx.
Can you please evaluate with the fix that I have posted (attached) with my previous message - this fixes the ADB over USB problem for AM3517.
Software wise, the USB drivers are exactly same between AM35x and AM37x the difference between both is in the hardware where they both use different CPPI (USB) DMA IPs.
However we confirm that the performance on AM35x and AM37x for USB OTG is same in both the cases.
Hope this info and fix that I provided will help you in making the decision.
Let me know if you need any further inputs.
It seems to be working fine, thanks for quick resolution. I will get back here if any further questions arise.
Back to your statement about the AM3715 EVM. The Rev G Main Board has both host port and OTG port on it.
One follow-up question. I have measured transfer speed with the new driver again (using adb pull) and it is slightly slower then before (~38 Mbps as an opposite to ~43 Mbps with the old kernel configuration). The change in config file looks like it does not use DMA in the new configuration. Is this correct? If yes, will the driver be fixed in the future to use DMA properly without problem?
Does AM3715evm usb drivers use DMA? As Steve K mentioned later in the thread I apparently looked at incorrect description of the board and it does have both USB host and otg. I have a chance of getting a loaner to see performance on actual part we are going to use and would like to know how the driver works there.
Thanks a lot for pointing this out. Apparently I stumbled on inaccurate description of the board at one of distributors. I am going to get the right evm now.
We are working on the USB driver, the DMA usage will be fixed.Will keep you updated.
I got to know that you were looking for ADB over USB on Windows, I have updated the user guide with the procedure,
Let me know if you need any further info.
Thanks Khasim, I got it working. The procedure of the driver installation is somewhat different from what you described but I guess it is due to different versions of Windows or other environment differences. I have created/modified files according to the guide and rebooted board. Then after plugging in USB I just chose "Install from specific location" and pointed to the downloaded driver folder. That was it. It installed, required PC reboot and then worked fine.
Thanks again for you help,
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.