Related
Now that the 2.6.32 kernel is out. Can we patch the kernel with Sven's patch to enable ush host on the incredible?
Patch Applies...
The patch applies cleanly to the source for the latest HTC 2.6.32 kernel we have on our phones. I have the equipment to test this, but the weather is too nice today to stay inside to configure and compile a kernel. I'll start building later.
This will be my first time modifying a kernel on an Android device. Fastboot sounds like it would be helpful here, but last I checked the Incredible doesn't have fastboot.
Any Incredible kernel hackers out there have links or advice for how to go about testing an updated kernel?
Cheers,
-Slick
Still working on it...
Unfortunately, getting the kernel to compile with EHCI (host controller) instead of USB gadget support is not as easy. HTC's patches to the kernel assume USB gadget support and all the callbacks that it provides (e.g. usb_register_notifier, usb_get_connect_type).
(If these callbacks were required for charging to occur (e.g. in htc_battery.c) when USB is plugged, that would kind of stink.)
Progress
Even after I got the kernel compiling, the new EHCI driver wouldn't load (probe() wasn't being called). Then I realized -- after several hours -- that the USB device was no longer being registered (thanks to more HTC-kernel awesomeness). So, I had to carefully go in and set CONFIG_USB_ANDROID to be Y without enabling any other USB gadget drivers. This allows the USB controller device to be registered with the Linux kernel, but without a driver claiming it yet. That's the EHCI driver's job. And then you see:
Code:
<6>[ 247.267852] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
<7>[ 247.268096] ehci_hcd: block sizes: qh 60 qtd 96 itd 160 sitd 96
<7>[ 247.268615] msm_hsusb msm_hsusb: initializing MSM7201/QSD8X50 USB Controller
<6>[ 247.287658] msm_hsusb msm_hsusb: Qualcomm MSM7201/QSD8X50 On-Chip EHCI Host Controller
<7>[ 247.287994] drivers/usb/core/inode.c: creating file 'devices'
<7>[ 247.288391] drivers/usb/core/inode.c: creating file '001'
<6>[ 247.288604] msm_hsusb msm_hsusb: new USB bus registered, assigned bus number 1
<7>[ 247.288970] msm_hsusb msm_hsusb: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT
<7>[ 247.289733] msm_hsusb msm_hsusb: park 0
<7>[ 247.289947] msm_hsusb msm_hsusb: reset command 080b02 park=3 ithresh=8 period=1024 Reset HALT
<6>[ 247.290313] msm_hsusb_phy_reset
<7>[ 247.347717] msm_hsusb msm_hsusb: ...powerdown ports...
<6>[ 247.377807] msm_hsusb msm_hsusb: irq 58, io mem 0xa0800000
<7>[ 247.397918] usb usb1: default language 0x0409
<7>[ 247.398406] usb usb1: udev 1, busnum 1, minor = 0
<6>[ 247.399108] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
<6>[ 247.399505] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
<6>[ 247.400207] usb usb1: Product: Qualcomm MSM7201/QSD8X50 On-Chip EHCI Host Controller
<6>[ 247.400939] usb usb1: Manufacturer: Linux 2.6.32.15-hg000000000000 ehci_hcd
<6>[ 247.401306] usb usb1: SerialNumber: msm_hsusb
<7>[ 247.402893] usb usb1: uevent
<7>[ 247.409057] usb usb1: usb_probe_device
<6>[ 247.409484] usb usb1: configuration #1 chosen from 1 choice
<7>[ 247.410278] usb usb1: adding 1-0:1.0 (config #1, interface 0)
<7>[ 247.410980] usb 1-0:1.0: uevent
<7>[ 247.417358] hub 1-0:1.0: usb_probe_interface
<7>[ 247.417938] hub 1-0:1.0: usb_probe_interface - got id
<6>[ 247.418304] hub 1-0:1.0: USB hub found
<6>[ 247.419189] hub 1-0:1.0: 1 port detected
<7>[ 247.419586] hub 1-0:1.0: standalone hub
<7>[ 247.419982] hub 1-0:1.0: individual port power switching
<7>[ 247.420684] hub 1-0:1.0: individual port over-current protection
<7>[ 247.421051] hub 1-0:1.0: Single TT
<7>[ 247.421752] hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns)
<7>[ 247.422149] hub 1-0:1.0: power on to power good time: 20ms
<7>[ 247.422882] hub 1-0:1.0: local power source is good
<7>[ 247.423278] hub 1-0:1.0: enabling power on all ports
<7>[ 247.428955] drivers/usb/core/inode.c: creating file '001'
<4>[ 247.429718] ------------[ cut here ]------------
<4>[ 247.430175] WARNING: at kernel/irq/manage.c:274 enable_irq+0x4c/0xa0()
<4>[ 247.430877] Unbalanced enable for IRQ 58
<4>[ 247.431274] Modules linked in: ehci_hcd(+) usbcore bcm4329
<4>[ 247.433502] [<c002d7f8>] (unwind_backtrace+0x0/0xd8) from [<c0063e34>] (warn_slowpath_common+0x48/0x60)
<4>[ 247.434265] [<c0063e34>] (warn_slowpath_common+0x48/0x60) from [<c0063e84>] (warn_slowpath_fmt+0x24/0x30)
<4>[ 247.434997] [<c0063e84>] (warn_slowpath_fmt+0x24/0x30) from [<c00979f0>] (enable_irq+0x4c/0xa0)
<4>[ 247.435516] [<c00979f0>] (enable_irq+0x4c/0xa0) from [<bf064988>] (usb_hcd_msm7201_probe+0x23c/0x2fc [ehci_hcd])
<4>[ 247.436279] [<bf064988>] (usb_hcd_msm7201_probe+0x23c/0x2fc [ehci_hcd]) from [<c01b2dc4>] (platform_drv_probe+0x18/0x1c)
<4>[ 247.437042] [<c01b2dc4>] (platform_drv_probe+0x18/0x1c) from [<c01b1f84>] (driver_probe_device+0xa0/0x14c)
<4>[ 247.437805] [<c01b1f84>] (driver_probe_device+0xa0/0x14c) from [<c01b2090>] (__driver_attach+0x60/0x84)
<4>[ 247.438568] [<c01b2090>] (__driver_attach+0x60/0x84) from [<c01b17f8>] (bus_for_each_dev+0x48/0x84)
<4>[ 247.439331] [<c01b17f8>] (bus_for_each_dev+0x48/0x84) from [<c01b114c>] (bus_add_driver+0x9c/0x218)
<4>[ 247.440093] [<c01b114c>] (bus_add_driver+0x9c/0x218) from [<c01b235c>] (driver_register+0xa8/0x134)
<4>[ 247.440551] [<c01b235c>] (driver_register+0xa8/0x134) from [<bf0700ac>] (ehci_hcd_init+0xac/0x12c [ehci_hcd])
<4>[ 247.441314] [<bf0700ac>] (ehci_hcd_init+0xac/0x12c [ehci_hcd]) from [<c002836c>] (do_one_initcall+0x5c/0x1b4)
<4>[ 247.442077] [<c002836c>] (do_one_initcall+0x5c/0x1b4) from [<c008d368>] (sys_init_module+0xb0/0x1dc)
<4>[ 247.442840] [<c008d368>] (sys_init_module+0xb0/0x1dc) from [<c0028f00>] (ret_fast_syscall+0x0/0x2c)
<4>[ 247.443542] ---[ end trace 1b75b31a2719ed1f ]---
<7>[ 247.518524] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
A comment in the code seems to indicate that the WARNING from the kernel is normal (?).
So the USB controller is up, but it's not detecting any devices plugged into it. Rather, when I plug a hub in, the Incredible detects it as a start-charging-the-battery event.
(Note: When I removed the callbacks, plugging in the phone to upstream power doesn't necessarily cause it to start charging. But when an attached hub is disconnected and reconnected, it sometimes starts charging. But then I see things like:
Code:
<6>[ 2183.727874] batt: M2A_RPC: set_charging: 1 at 2180262071950 (2010-08-17 06:08:47.707000720 UTC)
<6>[ 2183.742767] batt: M2A_RPC: cable_update: USB at 2180276934011 (2010-08-17 06:08:47.721923817 UTC)
<6>[ 2183.743865] batt: htc_cable_status_update: 1 -> 1
<6>[ 2183.744323] batt: batt:(htc_cable_status_update)power_supply_changed: OverVoltage at 2180278520925 (2010-08-17 06:08:47.723510731 UTC)
<6>[ 2183.749298] batt: SMEM_BATT: get_batt_info: batt_id=2, batt_vol=3966, batt_temp=324, batt_current=417, eval_current=92, level=75, charging_source=1, charging_enabled=1, full_bat=1300000, over_vchg=0 at 2180283892020 (2010-08-17 06:08:47.728454579 UTC)
<6>[ 2183.751159] batt: SMEM_BATT: get_batt_info: batt_id=2, batt_vol=3966, batt_temp=324, batt_current=417, eval_current=92, level=75, charging_source=1, charging_enabled=1, full_bat=1300000, over_vchg=0 at 2180285723074 (2010-08-17 06:08:47.730316152 UTC)
<6>[ 2183.752838] batt: SMEM_BATT: get_batt_info: batt_id=2, batt_vol=3966, batt_temp=324, batt_current=417, eval_current=92, level=75, charging_source=1, charging_enabled=1, full_bat=1300000, over_vchg=0 at 2180287401541 (2010-08-17 06:08:47.731994618 UTC)
OverVoltage? That doesn't sound good -- I hope I'm not killing the poor USB port!
Thanks, for the update. I have another friend of mine, who is taking as shot at this. Can you post the changes you made. Maybe its helpful for other ppl trying to get this to work.
Sent from my ADR6300 using XDA App
I would like to help.
Let me know the steps to get the lastest kernal and what setup you are using.
I got a USB OTG cable, Y cable, Kenington USB HUB. Looking to get Keyboard, Mouse (Could we use the port of the mouse pointer from x86 port in CM6 ROM), USB Drive and I hope USB VGA out.
Sure, here's the "link":
linuxbeast.net/incredible_host
You'll need:
- the "stock" 2.6.32 Incredible kernel from HTC's website (unpack it)
- sonic74's patch (apply it with 'patch -p1' in the kernel directory)
- the config file from the above link as '.config'
Then apply one of the two patches from the above link, again with 'patch -p1'. One of the patches modifies the EHCI driver files to give you more debug output (#define DEBUG -- so you get the same output I did above), while the other does not.
As you can see, it didn't take too many changes to get the kernel to compile. The harder part was figuring out that I still needed to select CONFIG_USB_ANDROID to get the msm_hsusb platform device (i.e. the USB controller hardware interface) defined... and then avoid selecting/compiling the USB gadget driver (msm72k_udc), which would have then claimed that resource (as in stock).
Thanks so much for your interest. I won't have time to work on this for at least several days, so... good luck!
-Slick
P.S. I also included two kernel updater .ZIPs for the impatient. One lets you try the current state of things, and the other reverts back to stock. Use at your own risk!
Will try to load the new kernel and try to debug. If you need help in testing the changes, i am more that happy to risk my incredible. I got an extra one to play with.
It would be nice to at least see confirmation of the behavior I'm seeing; it's painfully close to working. Once you insmod the usbcore and echi-hcd modules, the USB controller appears to initialize and recognize the internal USB (host) port. But it doesn't seem to recognize the presence of any USB devices I plug in (besides, say, beginning to charge once I plug in a hub).
I recompiled the kernel by applying you patch. Here is the dmesg output.
Code:
<6>[ 241.454376] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
<7>[ 241.454650] ehci_hcd: block sizes: qh 60 qtd 96 itd 160 sitd 96
<7>[ 241.455200] initializing MSM7201/QSD8X50 USB Controller
<6>[ 241.471252] msm_hsusb msm_hsusb: Qualcomm MSM7201/QSD8X50 On-Chip EHCI Host Controller
<7>[ 241.472045] drivers/usb/core/inode.c: creating file 'devices'
<7>[ 241.472412] drivers/usb/core/inode.c: creating file '001'
<6>[ 241.473083] msm_hsusb msm_hsusb: new USB bus registered, assigned bus number 1
<7>[ 241.473785] msm_hsusb msm_hsusb: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT
<7>[ 241.474548] msm_hsusb msm_hsusb: park 0
<7>[ 241.475189] msm_hsusb msm_hsusb: reset command 080b02 park=3 ithresh=8 period=1024 Reset HALT
<6>[ 241.475555] msm_hsusb_phy_reset
<7>[ 241.531097] msm_hsusb msm_hsusb: ...powerdown ports...
<6>[ 241.561157] msm_hsusb msm_hsusb: irq 58, io mem 0xa0800000
<7>[ 241.581268] usb usb1: default language 0x0409
<7>[ 241.581390] usb usb1: udev 1, busnum 1, minor = 0
<6>[ 241.581512] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
<6>[ 241.581695] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
<6>[ 241.581909] usb usb1: Product: Qualcomm MSM7201/QSD8X50 On-Chip EHCI Host Controller
<6>[ 241.582000] usb usb1: Manufacturer: Linux 2.6.32.15-g7507bb0 ehci_hcd
<6>[ 241.582214] usb usb1: SerialNumber: msm_hsusb
<7>[ 241.582550] usb usb1: uevent
<7>[ 241.584045] usb usb1: usb_probe_device
<6>[ 241.584167] usb usb1: configuration #1 chosen from 1 choice
<7>[ 241.584289] usb usb1: adding 1-0:1.0 (config #1, interface 0)
<7>[ 241.584564] usb 1-0:1.0: uevent
<7>[ 241.585845] hub 1-0:1.0: usb_probe_interface
<7>[ 241.586059] hub 1-0:1.0: usb_probe_interface - got id
<6>[ 241.586181] hub 1-0:1.0: USB hub found
<6>[ 241.586364] hub 1-0:1.0: 1 port detected
<7>[ 241.586547] hub 1-0:1.0: standalone hub
<7>[ 241.586639] hub 1-0:1.0: individual port power switching
<7>[ 241.586761] hub 1-0:1.0: individual port over-current protection
<7>[ 241.586944] hub 1-0:1.0: Single TT
<7>[ 241.587066] hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns)
<7>[ 241.587249] hub 1-0:1.0: power on to power good time: 20ms
<7>[ 241.587371] hub 1-0:1.0: local power source is good
<7>[ 241.587585] hub 1-0:1.0: enabling power on all ports
<7>[ 241.588592] drivers/usb/core/inode.c: creating file '001'
<4>[ 241.588897] ------------[ cut here ]------------
<4>[ 241.589019] WARNING: at kernel/irq/manage.c:274 enable_irq+0x4c/0xa0()
<4>[ 241.589202] Unbalanced enable for IRQ 58
<4>[ 241.589324] Modules linked in: ehci_hcd(+) usbcore
<4>[ 241.589782] [<c002d7f8>] (unwind_backtrace+0x0/0xd8) from [<c0063e34>] (warn_slowpath_common+0x48/0x60)
<4>[ 241.589996] [<c0063e34>] (warn_slowpath_common+0x48/0x60) from [<c0063e84>] (warn_slowpath_fmt+0x24/0x30)
<4>[ 241.590209] [<c0063e84>] (warn_slowpath_fmt+0x24/0x30) from [<c00979f0>] (enable_irq+0x4c/0xa0)
<4>[ 241.590423] [<c00979f0>] (enable_irq+0x4c/0xa0) from [<bf021978>] (usb_hcd_msm7201_probe+0x22c/0x2cc [ehci_hcd])
<4>[ 241.590637] [<bf021978>] (usb_hcd_msm7201_probe+0x22c/0x2cc [ehci_hcd]) from [<c01b2dc4>] (platform_drv_probe+0x18/0x1c)
<4>[ 241.590850] [<c01b2dc4>] (platform_drv_probe+0x18/0x1c) from [<c01b1f84>] (driver_probe_device+0xa0/0x14c)
<4>[ 241.591064] [<c01b1f84>] (driver_probe_device+0xa0/0x14c) from [<c01b2090>] (__driver_attach+0x60/0x84)
<4>[ 241.591186] [<c01b2090>] (__driver_attach+0x60/0x84) from [<c01b17f8>] (bus_for_each_dev+0x48/0x84)
<4>[ 241.591400] [<c01b17f8>] (bus_for_each_dev+0x48/0x84) from [<c01b114c>] (bus_add_driver+0x9c/0x218)
<4>[ 241.591613] [<c01b114c>] (bus_add_driver+0x9c/0x218) from [<c01b235c>] (driver_register+0xa8/0x134)
<4>[ 241.591827] [<c01b235c>] (driver_register+0xa8/0x134) from [<bf02d0ac>] (ehci_hcd_init+0xac/0x108 [ehci_hcd])
<4>[ 241.592041] [<bf02d0ac>] (ehci_hcd_init+0xac/0x108 [ehci_hcd]) from [<c002836c>] (do_one_initcall+0x5c/0x1b4)
<4>[ 241.592254] [<c002836c>] (do_one_initcall+0x5c/0x1b4) from [<c008d368>] (sys_init_module+0xb0/0x1dc)
<4>[ 241.592376] [<c008d368>] (sys_init_module+0xb0/0x1dc) from [<c0028f00>] (ret_fast_syscall+0x0/0x2c)
<4>[ 241.592590] ---[ end trace 1b75b31a2719ed1f ]---
<7>[ 241.681396] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
OK good, so you're seeing the same behavior I was.
Do you have the right cables to test plugging anything in? If so, what (if anything) happens when you plug in, say, a hub?
This would let us plug SD card readers externally and read/write to it right?
Sent from my ADR6300 using XDA App
drawde said:
This would let us plug SD card readers externally and read/write to it right?
Sent from my ADR6300 using XDA App
Click to expand...
Click to collapse
Yes, pretty much any USB device (that Linux supports) would work.
No interrupts yet
Check out this line from /proc/interrupts:
Code:
58: 0 msm ehci_hcd:usb1
Yeah, we're not getting any interrupts sent to the driver. That would be one reason why it's not working yet...
sorry, i have not been able to test, was busy. from monday, i can help you test any new changes.
That's assuming that a) I find time to work on this, and b) I figure out why the EHCI driver isn't receiving interrupts
Sent from my ADR6300 using XDA App
Very cool. I am very interested in this. I have an idea for a project in my security class and if I could get usb host working on my incredible it would have much more impact then using a netbook.
I look forward to seeing a how to.
Slick1123 said:
Yes, pretty much any USB device (that Linux supports) would work.
Click to expand...
Click to collapse
i'm assuming that anything that can work in linux but isn't supported by default would have to have a custom compiled kernel with those drivers included right?
i'm very interested in this, i've been trying to find some way to enable rs232-usb communication on a droid device and im pretty sure the ftdi based ones work with linux
Using a USB Keyboard?
what does one have to do to use an HID device with Incredible?
From the HTC support forum, it appears the device has the correct type port
and the hardware support. Would I need special support in the kernal?
I was told Android's std kernal had support for USB-OTG (both device
and Host mode port use).
http://community.htc.com/na/htc-forums/android/f/91/t/2122.aspx
My problem is that the soft keyboards are too small for my fingers
and Incredible doesn't come with a stylus.
Thanks
<Deleted> 1234567890
Hi Guys!
I have a self powered: FTDI(FT232R) - micro USB-A (Nokia OTG CA-157) - Archos 70
with custom kernel. It works like a charm BUT
The driver picks the FT232R only if I connect it in the following sequence:
1. First connect the micro USB-A dongle (FT232 not attached)
2. As second connect FT232R to the USB dongle
Then I got the following dmesg:
1.
Code:
Code:
usb_switch_print_state: 3 ATTACHED_HOST
usb_switch_print_state: 3 ATTACHED_HOST
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb1v5 enabled 0
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb1v8 enabled 0
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb3v1 enabled 0
musb_hdrc: version 6.0, musb-dma, peripheral, debug=0
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb3v1 enabled 1
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb1v8 enabled 1
twl4030_usb twl4030_usb: regulator_enable twl4030_usb-usb1v5 enabled 1
musb_hdrc: USB Host mode controller at fa0ab000 using DMA, IRQ 92
musb_hdrc musb_hdrc: MUSB HDRC host driver
/home/archos/kernel/gen8/gen8-gpl-froyo/linux/drivers/usb/core/inode.c: creating file '002'
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 2
usb usb2: default language 0x0409
usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: MUSB HDRC host driver
usb usb2: Manufacturer: Linux 2.6.29-omap1 musb-hcd
usb usb2: SerialNumber: musb_hdrc
usb usb2: uevent
usb usb2: usb_probe_device
usb usb2: configuration #1 chosen from 1 choice
usb usb2: adding 2-0:1.0 (config #1, interface 0)
usb 2-0:1.0: uevent
hub 2-0:1.0: usb_probe_interface
hub 2-0:1.0: usb_probe_interface - got id
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
hub 2-0:1.0: standalone hub
hub 2-0:1.0: individual port power switching
hub 2-0:1.0: no over-current protection
hub 2-0:1.0: power on to power good time: 10ms
hub 2-0:1.0: 100mA bus power budget for each child
hub 2-0:1.0: local power source is good
hub 2-0:1.0: enabling power on all ports
/home/archos/kernel/gen8/gen8-gpl-froyo/linux/drivers/usb/core/inode.c: creating file '001'
hub 2-0:1.0: state 7 ports 1 chg 0000 evt 0000
hub 2-0:1.0: hub_suspend
usb usb2: bus auto-suspend
2.
Code:
Code:
usb usb2: usb resume
hub 2-0:1.0: hub_resume
hub 2-0:1.0: port 1: status 0101 change 0001
hub 2-0:1.0: state 7 ports 1 chg 0002 evt 0000
hub 2-0:1.0: port 1, status 0101, change 0000, 12 Mb/s
usb 2-1: new full speed USB device using musb_hdrc and address 2
usb 2-1: ep0 maxpacket = 8
usb 2-1: default language 0x0409
usb 2-1: New USB device found, idVendor=0403, idProduct=6001
usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-1: Product: RFID_EM
usb 2-1: Manufacturer: FTDI
usb 2-1: SerialNumber: A9UMG98I
usb 2-1: uevent
usb 2-1: usb_probe_device
usb 2-1: configuration #1 chosen from 1 choice
usb 2-1: adding 2-1:1.0 (config #1, interface 0)
usb 2-1:1.0: uevent
usbserial_generic 2-1:1.0: usb_probe_interface
usbserial_generic 2-1:1.0: usb_probe_interface - got id
ftdi_sio 2-1:1.0: usb_probe_interface
ftdi_sio 2-1:1.0: usb_probe_interface - got id
ftdi_sio 2-1:1.0: FTDI USB Serial Device converter detected
usb 2-1: Detected FT232RL
usb 2-1: FTDI USB Serial Device converter now attached to ttyUSB0
/home/archos/kernel/gen8/gen8-gpl-froyo/linux/drivers/usb/core/inode.c: creating file '002'
hub 2-0:1.0: 100mA power budget left
hub 2-0:1.0: state 7 ports 1 chg 0000 evt 0002
hub 2-0:1.0: port 1 enable change, status 00000103
This is a very verbose fine dmesg showing ttyUSB0 is created.
My problem is that if I connect the micro-A dongle with FT232R already connected, then just the 1st sequence runs (till bus suspend) the second not. The same thing is with soft reboot, it is not working I need to manually disconnect then connect dongle first then FT232R.
I tried to tune msusb_hdrc config but with no sucess. What is the problem, what causes to stuck at suspend when it is not attached in 2 step??????
I have a pic from the hw look but yet I can't post it (till 8 posts) if needed I can in private.
UPDATE is that I tried to disable auto suspend and it is still not working. The general thing is that the musb_hdrc host driver recognizes the OTG as a hub with one port and if the peripherial (FT232R in this case) is already attached it is not enumarated and picked by the FTDI driver. Furthermore the state switching is not done properly. If the periph. is not attached it goes to a_idle but if yes it stays in b_idle mode (sys/devices/platform/musb_hdrc/mode).
Thanks, cheers
sodjas
As the title states, I have installed 4.0.4 Tegraowners ICS ROM v170 and see that i have a 3g signal bar, however no connection. I am not sure how to check and see if my 3g dongle is even being seen correctly other than the green lights on the device it self.
**edit**
O.K. a little more information:
Qualcomm 3g device
dmesg log shows device seen, connected, and drivers loaded: See below
Code:
[ 3982.060685] usb 1-1.2: new full speed USB device number 8 using tegra-ehci
[ 3982.092684] usb 1-1.2: New USB device found, idVendor=1199, idProduct=0301
[ 3982.092791] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=4
[ 3982.092968] usb 1-1.2: Product: Sierra Wireless Device
[ 3982.093067] usb 1-1.2: Manufacturer: Sierra Wireless, Incorporated
[ 3982.093246] usb 1-1.2: SerialNumber: 4Vx«Íïÿÿÿÿ
[ 3982.096237] sierra 1-1.2:1.0: Sierra USB modem converter detected
[ 3982.097713] usb 1-1.2: Sierra USB modem converter now attached to ttyUSB0
[ 3982.098625] usb 1-1.2: Sierra USB modem converter now attached to ttyUSB1
[ 3982.101019] usb 1-1.2: Sierra USB modem converter now attached to ttyUSB2
[ 3982.102181] usb 1-1.2: Sierra USB modem converter now attached to ttyUSB3
[ 3983.590674] usb 1-1.1: new high speed USB device number 9 using tegra-ehci
[ 3983.622387] usb 1-1.1: New USB device found, idVendor=198f, idProduct=0220
[ 3983.622694] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3983.623193] usb 1-1.1: Product: Mobile WiMax SS
[ 3983.623471] usb 1-1.1: Manufacturer: Beceem Communications Inc.
Now I have tried adding sprint APN in via the GUI but nothing stays. I guess i need to figure out how to add it to the APN file and upload it that way to my device.
O.K. maybe i am missing something.
Do I need to add an app, or turn something else on to have the ROM use the 3g dongle for connectivity? I am on an A500 so I do not think i need to make this change "a501 3g modem(comment ro.carrier=wifi-only in /system/build.prop)" as stated i have the 3g bars with an x through them even when the dongle is plugged in. Anyone familiar with this willing to try and help me figure this out.
I am not a noob to android just a noob to modding my tablet.
Still any help would be appreciated, even if its to tell me i need some kind of app to enable the modem.:silly:
For support on tegraowners Rom, you need to go to their site.
Thank you for the reply ....
The same post has been on the tegraowners support forum for about a week. Almost 100 views, and only my 1 reply to my self with the extra information. Was hoping someone over here could help me out.
Alas, the TO ROM is kinda persona non-grata around here, due to the lack of GPL compliance. We're really not generally meant to discuss it all that much as it usually devolves into a slanging match.
TO is the best place to go to get support.
FloatingFatMan said:
Alas, the TO ROM is kinda persona non-grata around here, due to the lack of GPL compliance. We're really not generally meant to discuss it all that much as it usually devolves into a slanging match.
TO is the best place to go to get support.
Click to expand...
Click to collapse
Gotcha, and thanks for the info. I will keep trying over there, unless someone can point to another a500 rom supports the 3g dongle.
If u have an android phone get foxfi app from market and use ur phone as modem. I who needs a Dingle.
Flashed the latest Pure Nexus last night and sideloaded Hangouts today. Both working great, except!
the AOSP base for Pure Nexus says it supports webcams for hangouts. I get no mic or video. If i try to take a picture in the hangouts app and get a "couldn't launch camera" message. a test video call got no audio or video.
I'm using a Logitech Webcam Pro 9000, i ran dmseg with it unplugged and plugged-in and ran diff on the output files and got
> [ 5140.962790] usb 2-1.4: new high-speed USB device number 13 using dwc3-host
> [ 5141.109753] usb 2-1.4: New USB device found, idVendor=046d, idProduct=0990
> [ 5141.109809] usb 2-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=2
> [ 5141.109842] usb 2-1.4: SerialNumber: BC054521
> [ 5141.133395] uvcvideo: Found UVC 1.00 device <unnamed> (046d:0990)
> [ 5141.165663] input: UVC Camera (046d:0990) as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb2/2-1/2-1.4/2-1.4:1.0/input/input32
> [ 5141.585485] usb_audio: Warning! Unlikely big volume range (=3072), cval->res is probably wrong.
> [ 5141.585529] usb_audio: [5] FU [Mic Capture Volume] ch = 1, val = 4608/7680/1<6>[ 5152.100119] atvr_remove: hdev->name = Nexus Remote removed, num 1->0
Click to expand...
Click to collapse
So I know it's seeing the camera. Tried a couple camera apps but nothing comes up.
ideas?
I saw in a different thread that you need to change the camera defaults it uses... now if I could find that thread.
Found: http://forum.xda-developers.com/showpost.php?p=63229199&postcount=2
To fix the webcam in hangouts
edit the build.prop and change:
ro.camera.number=2
ro.camera.0.devname=/dev/video0
ro.camera.0.facing=back
ro.camera.0.orientation=0
ro.camera.1.devname=/dev/video0
ro.camera.1.facing=front
ro.camera.1.orientation=0
in -------------------->
ro.camera.number=1
ro.camera.0.devname=/dev/video0
ro.camera.0.facing=back
ro.camera.0.orientation=0
Is implied that you must start the device with the camera connected to have the webcam working
Asitaka said:
I saw in a different thread that you need to change the camera defaults it uses... now if I could find that thread.
Found: http://forum.xda-developers.com/showpost.php?p=63229199&postcount=2
To fix the webcam in hangouts
edit the build.prop and change:
ro.camera.number=2
ro.camera.0.devname=/dev/video0
ro.camera.0.facing=back
ro.camera.0.orientation=0
ro.camera.1.devname=/dev/video0
ro.camera.1.facing=front
ro.camera.1.orientation=0
in -------------------->
ro.camera.number=1
ro.camera.0.devname=/dev/video0
ro.camera.0.facing=back
ro.camera.0.orientation=0
Is implied that you must start the device with the camera connected to have the webcam working
Click to expand...
Click to collapse
I tried that. no luck. thanks!
Mic works fine, just no video.
skunkfifty said:
I tried that. no luck. thanks!
Mic works fine, just no video.
Click to expand...
Click to collapse
Any progress on this? I'm trying to see if I can get a webcam working on this ROM. So far no luck.
petermg said:
Any progress on this? I'm trying to see if I can get a webcam working on this ROM. So far no luck.
Click to expand...
Click to collapse
Nothing. I haven't had time to poke at it since my last post.
I can get audio but no video. I was able to get low quality video using a webcam app before I started messing with anything but that's it.
skunkfifty said:
Nothing. I haven't had time to poke at it since my last post.
I can get audio but no video. I was able to get low quality video using a webcam app before I started messing with anything but that's it.
Click to expand...
Click to collapse
ro.camera.0.facing=back
Change this line from "back" to "front". Make sure the camera is connected. Reboot.
shdware said:
ro.camera.0.facing=back
Change this line from "back" to "front". Make sure the camera is connected. Reboot.
Click to expand...
Click to collapse
I will try this later today and post back.
petermg said:
I will try this later today and post back.
Click to expand...
Click to collapse
If you're not too attached to this custom rom, you can try the roms developed by Zulu99. His lollipop and marshmallow based roms both support hangouts and skype, with some tweaks in build prop like above and separate camera and mic like you have. But this roms are far from the guidelines imposed by google in android tv
pisicuta said:
If you're not too attached to this custom rom, you can try the roms developed by Zulu99. His lollipop and marshmallow based roms both support hangouts and skype, with some tweaks in build prop like above and separate camera and mic like you have. But this roms are far from the guidelines imposed by google in android tv
Click to expand...
Click to collapse
Yeah I tried his ROM only thing is that the mic on the remote doesn't work so I went to Pure ROM. Getting a webcam to work isn't a high priority to me. It's more important to me for the mic in the remote to work. Thanks for your suggestion though.
---------- Post added at 02:45 AM ---------- Previous post was at 02:44 AM ----------
shdware said:
ro.camera.0.facing=back
Change this line from "back" to "front". Make sure the camera is connected. Reboot.
Click to expand...
Click to collapse
I still got nuthin'. This doesn't do anything for me. Thanks though.
---------- Post added at 02:48 AM ---------- Previous post was at 02:45 AM ----------
Here is the dmesg output for my cameras
Code:
dmesg |grep cam
[ 0.708100] info[ 6]: name = camera_full, gpio = -1
[ 0.708108] info[ 7]: name = camera_half, gpio = -1
[ 0.708133] info[10]: name = cam_capture, gpio = -1
[ 0.708141] info[11]: name = cam_focus, gpio = -1
[ 0.708199] info[18]: name = camera0_sb1, gpio = -1
[ 0.708207] info[19]: name = camera0_sb2, gpio = -1
[ 2.360149] usb 2-1.3: Product: HP Webcam 3110
[ 2.440263] uvcvideo: Found UVC 1.00 device HP Webcam 3110 (03f0:8d07)
[ 2.445466] input: HP Webcam 3110 as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb2/2-1/2-1.3/2-1.3:1.0/input/input2
[ 8.170892] usb 2-1.4: Product: HD Pro Webcam C920
[ 8.201974] uvcvideo: Found UVC 1.00 device HD Pro Webcam C920 (046d:082d)
[ 8.203654] input: HD Pro Webcam C920 as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb2/2-1/2-1.4/2-1.4:1.0/input/input3
Code:
dmesg |grep video
[ 0.112578] Linux video capture interface: v2.00
[ 0.388324] usbcore: registered new interface driver uvcvideo
[ 2.440263] uvcvideo: Found UVC 1.00 device HP Webcam 3110 (03f0:8d07)
[ 8.201974] uvcvideo: Found UVC 1.00 device HD Pro Webcam C920 (046d:082d)
Code:
dmesg |grep usb
[ 0.112235] usbcore: registered new interface driver usbfs
[ 0.112274] usbcore: registered new interface driver hub
[ 0.112415] usbcore: registered new device driver usb
[ 0.347779] usbcore: registered new interface driver kaweth
[ 0.347825] usbcore: registered new interface driver pegasus
[ 0.347859] usbcore: registered new interface driver rtl8150
[ 0.347894] usbcore: registered new interface driver r8152
[ 0.347934] usbcore: registered new interface driver asix
[ 0.347970] usbcore: registered new interface driver ax88179_178a
[ 0.348005] usbcore: registered new interface driver cdc_ether
[ 0.348040] usbcore: registered new interface driver cdc_eem
[ 0.348075] usbcore: registered new interface driver smsc75xx
[ 0.348110] usbcore: registered new interface driver smsc95xx
[ 0.348148] usbcore: registered new interface driver plusb
[ 0.362532] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 0.362546] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 0.362556] usb usb1: Product: EHCI Host Controller
[ 0.362566] usb usb1: Manufacturer: Linux 3.10.20-gc298bbc ehci_hcd
[ 0.362576] usb usb1: SerialNumber: 0000:00:10.0
[ 0.386650] usbcore: registered new interface driver usb-storage
[ 0.386756] usbcore: registered new interface driver usbserial
[ 0.386791] usbcore: registered new interface driver ftdi_sio
[ 0.386827] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 0.386886] usbcore: registered new interface driver pl2303
[ 0.386924] usbserial: USB Serial support registered for pl2303
[ 0.386967] usbcore: registered new interface driver usb_tm
[ 0.387312] usbcore: registered new interface driver xpad
[ 0.388324] usbcore: registered new interface driver uvcvideo
[ 0.388384] usbcore: registered new interface driver cx231xx
[ 0.551962] usbcore: registered new interface driver usbhid
[ 0.551971] usbhid: USB HID core driver
[ 0.702251] usbcore: registered new interface driver snd-usb-audio
[ 1.375803] android_usb gadget: Mass Storage Function, version: 2009/09/11
[ 1.375821] android_usb gadget: Number of LUNs=1
[ 1.376411] android_usb gadget: android_usb ready
[ 1.669083] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.669108] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.669129] usb usb2: Product: xHCI Host Controller
[ 1.669148] usb usb2: Manufacturer: Linux 3.10.20-gc298bbc dwc-xhci
[ 1.669167] usb usb2: SerialNumber: dwc3-host.2
[ 1.670908] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[ 1.670934] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.670955] usb usb3: Product: xHCI Host Controller
[ 1.670974] usb usb3: Manufacturer: Linux 3.10.20-gc298bbc dwc-xhci
[ 1.670993] usb usb3: SerialNumber: dwc3-host.2
[ 2.032714] usb 2-1: new full-speed USB device number 2 using dwc3-host
[ 2.050257] usb 2-1: New USB device found, idVendor=05e3, idProduct=0606
[ 2.050292] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2.050313] usb 2-1: Product: USB Hub 2.0
[ 2.050332] usb 2-1: Manufacturer: ALCOR
[ 2.050796] usb 2-1: ep 0x81 - rounding interval to 1024 microframes, ep desc says 2040 microframes
[ 2.243090] init: (Parsing /init.usb.rc took 0.00s.)
[ 2.243487] init: (Parsing init.fugu.usb.rc took 0.00s.)
[ 2.243842] init: (Parsing /init.usb.configfs.rc took 0.00s.)
[ 2.328442] usb 2-1.3: new full-speed USB device number 3 using dwc3-host
[ 2.345416] usb 2-1.3: not running at top speed; connect to a high speed hub
[ 2.360131] usb 2-1.3: New USB device found, idVendor=03f0, idProduct=8d07
[ 2.360143] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2.360149] usb 2-1.3: Product: HP Webcam 3110
[ 2.360154] usb 2-1.3: Manufacturer: HP
[ 2.445466] input: HP Webcam 3110 as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb2/2-1/2-1.3/2-1.3:1.0/input/input2
[ 8.076253] usb_audio: Warning! Unlikely big volume range (=7680), cval->res is probably wrong.
[ 8.076266] usb_audio: [5] FU [Mic Capture Volume] ch = 1, val = 512/8192/1<6>[ 8.146364] usb 2-1.4: new full-speed USB device number 4 using dwc3-host
[ 8.162618] usb 2-1.4: not running at top speed; connect to a high speed hub
[ 8.170872] usb 2-1.4: New USB device found, idVendor=046d, idProduct=082d
[ 8.170885] usb 2-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=1
[ 8.170892] usb 2-1.4: Product: HD Pro Webcam C920
[ 8.170897] usb 2-1.4: SerialNumber: D98ED55F
[ 8.203654] input: HD Pro Webcam C920 as /devices/pci0000:00/0000:00:11.0/dwc3-host.2/usb2/2-1/2-1.4/2-1.4:1.0/input/input3
Hi all. I've tried using USB joysticks and gamepads with my G5+, but without success. They are detected (i.e. by looking at logcat/dmesg), and they power off (lights go on), but I can't actually use them in any way. I've tested by using a Joystick test app, and a couple of games. In all cases there is no joystick detected.
I tried this with stock unrooted before, and again now under Lineage 14.1. Has anyone had any luck with this? Could another kernel enable joysticks? Other USB peripherals work fine, e.g. keyboard/mice/USB sticks.
Also, has anyone tried bluetooth joysticks/gamepads? If I'm out of luck with USB joysticks, might consider just getting a bluetooth one if I know they work.
Here's an example of the output from dmesg:
[ 126.407593,3] usb 1-1: new low-speed USB device number 3 using xhci-hcd
[ 126.557281,3] usb 1-1: New USB device found, idVendor=046d, idProduct=c20a
[ 126.557328,3] usb 1-1: New USB device strings: Mfr=4, Product=32, SerialNumber=0
[ 126.557347,3] usb 1-1: Product: WingMan RumblePad
[ 126.557364,3] usb 1-1: Manufacturer: Logitech Inc.
[ 126.558716,3] usb 1-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
[ 126.558778,3] usb 1-1: ep 0x1 - rounding interval to 64 microframes, ep desc says 80 microframes
[ 126.868193,2] QSEECOM: qseecom_load_app: App (cppf) does'nt exist, loading apps for first time
[ 126.871609,2] QSEECOM: qseecom_load_app: App with id 19 (cppf) now loaded
Well I've used all sorts of peripherials on stock, including a universal gamepad. It works flawlessly and gets detected, though I do have to add a keylayout file for it to work with games in its native mode. When switching to xbox input mode it's supported natively on Android.
Mine uses a 2.4GHz usb dongle which uses very little power, maybe it's a power draw related thing?
I had considered of it was a power drain issue as well. I tried hooking up the same gamepad to an old Samsung galaxy s3, and it worked fine. Not sure that that tells us much.
In any case I decided to purchase a cheap Bluetooth gamepad to test, and I can use it with my laptop if it doesn't work with my g5+. So when it arrives, hopefully I can get it working.