View Single Post
joerg_rw's Avatar
Posts: 2,222 | Thanked: 12,651 times | Joined on Mar 2010 @ SOL 3
#809
Originally Posted by egoshin View Post
OK, some success (at least I think so).

I used a wall-powered hub with USB memory stick and external USB hard drive. I applied 3.5V from TWL4030 to VBUS and set Host mode of operations in ARM CPU USB.

The result - in both cases a lot of communications (TX interrupts but no RX - ?) and finally the message -

Nokia-N900-42-11 kernel: [...] usb 1-1: device v04b4 p6560 is not supported <---- this is for USB Hub with USB memory stick

Nokia-N900-42-11 kernel: [...] usb 1-1: device v0bc2 p3000 is not supported <---- this is for USB hard disk.

EDIT: verified via SuSE notebook - Hard Disk is 0bc2:3000 Seagate RSS LLC, and HUB - 04b4:6560 Cypress Semiconductor Corp. CY7C65640 USB-2.0 "TetraHub"

Taking into account the different Vendor (v*) and Product (p*) values and the very remarkable Product value for HDisk - p3000, I assume that it is values read from devices.


I looked briefly in code - yes, there is no support for that kind of devices. But it should be supported via device class - hub at least for sure. So, some software debug print is needed to find out the whole info from device... tomorrow.
Egoshin,
That's great news for sure. That's working hostmode (to the definition of host talking to peripherals and reading replies), no matter if the devices are recognized / supported or not. Everything beyond is just a question of proper drivers, and hardware side is definitely confirmed to work for hostmode now.

I like to ask you for a few favours:
  1. Please publish the diffs of the patches you made to the kernel, and the exact procedure (echo x >y?) to make that happen.
    AIUI it's only a few files like musb_core.c or similar, so you could as well publish the complete file(s) as an attachment to your answer.
  2. Could you repeat the tests as done above, but prior to that you run a 'stop bme', so we find out if annoying bme_RX-51 has its fingers in there in any way. (I could imagine detection of VBUS in/for musb_hdrc somewhat fails without bme)
  3. And finally, maybe you can replace the TWL4030 VBUS boostmode call by a call to bq24150 (or a system() call [man 3 system] to invoke my above posted cmdline like
    Code:
     /bin/sh -c '/sbin/stop bme && sleep 3 && /usr/local/i2cset -y -m 0x07 2 0x6b 0x01 0x05 && while sleep 28; do /usr/local/i2cset -y -m 0x80 2 0x6b 0x00 0x80; done &'
    )

Congrats!
cheers
jOERG




[edit]
completely(?) unrelated, here some lines in http://mxr.maemo.org/fremantle/sourc...rx51_defconfig I found interesting or suspicious:
1436 # CONFIG_USB_MUSB_HOST is not set
1487 # CONFIG_USB_SERIAL is not set
1510 CONFIG_USB_TEST=m
1513 CONFIG_USB_GADGET=m
1514 # CONFIG_USB_GADGET_DEBUG is not set
1517 CONFIG_USB_GADGET_VBUS_DRAW=2
1523 # CONFIG_USB_GADGET_OMAP is not set
1540 # CONFIG_USB_G_SERIAL is not set
1544 CONFIG_USB_G_NOKIA=m

1551 # CONFIG_USB_GPIO_VBUS is not set
1553 CONFIG_TWL4030_USB=y

Last edited by joerg_rw; 2010-05-09 at 15:29.
 

The Following 17 Users Say Thank You to joerg_rw For This Useful Post: