The Following 2 Users Say Thank You to daperl For This Useful Post: | ||
|
2010-05-07
, 18:37
|
|
Posts: 2,355 |
Thanked: 5,249 times |
Joined on Jan 2009
@ Barcelona
|
#772
|
To make TWL4030 configuration working I did some tricks - power registers are protected and you can't change some TWL4030 USB registers while it is sleeping.
The Following User Says Thank You to javispedro For This Useful Post: | ||
|
2010-05-07
, 18:38
|
|
Posts: 2,355 |
Thanked: 5,249 times |
Joined on Jan 2009
@ Barcelona
|
#773
|
|
2010-05-07
, 18:54
|
Posts: 1,258 |
Thanked: 672 times |
Joined on Mar 2009
|
#774
|
The Following 2 Users Say Thank You to shadowjk For This Useful Post: | ||
|
2010-05-07
, 18:57
|
|
Posts: 2,355 |
Thanked: 5,249 times |
Joined on Jan 2009
@ Barcelona
|
#775
|
4030 vbus sysnode flipped to 1 really easily when I was experimenting with charging (for minutes on just remaining voltage in small capacitors while battery charger is trying to charge from it). I wouldn't trust it as a measure that useful vbus is present.
The Following User Says Thank You to javispedro For This Useful Post: | ||
|
2010-05-07
, 19:45
|
Posts: 306 |
Thanked: 566 times |
Joined on Jan 2010
@ Romania
|
#776
|
When vbus is detected by twl3040 twl3040-usb fires a sysfs-node changed event (linkstat) which I believe bme is listening to, which then proceeds to read the charger sysfs node thus causing musb_verify_charger to run thus causing DP & DM pull downs to be disabled and strong pull up on DP to be enabled (thus entering gadget/peripheral mode).
The Following 4 Users Say Thank You to blue_led For This Useful Post: | ||
|
2010-05-07
, 20:52
|
Posts: 992 |
Thanked: 995 times |
Joined on Dec 2009
@ California
|
#777
|
But save for maybe id or vbus monitoring (not pumping since we can't use it) there's no other use for twl3040 in our current use case. Basically, twl3040 should be out of the picture, and we'd need only accesses either SoC registers (via mapped i/o) or isp1707 registers (via ulpi, either using Nokia's musb_ulpi accesor functions or manually writing the SoC registers).
Also more importantly and along the lines of what you noticed is that you cannot get to the isp1707 while it is in standby (/lowpower protocol) or entirely shut down.
The Following 2 Users Say Thank You to egoshin For This Useful Post: | ||
|
2010-05-07
, 21:10
|
|
Posts: 2,222 |
Thanked: 12,651 times |
Joined on Mar 2010
@ SOL 3
|
#778
|
The Following 5 Users Say Thank You to joerg_rw For This Useful Post: | ||
|
2010-05-07
, 21:23
|
Posts: 306 |
Thanked: 566 times |
Joined on Jan 2010
@ Romania
|
#779
|
The Following 2 Users Say Thank You to blue_led For This Useful Post: | ||
|
2010-05-07
, 21:23
|
|
Posts: 2,427 |
Thanked: 2,986 times |
Joined on Dec 2007
|
#780
|
I am already using my N810 for comparisons Of course a way more similar configuration is the Beagleboard -- and the reason execution traces of its driver would be much interesting.
The Following User Says Thank You to daperl For This Useful Post: | ||
Tags |
awesomeness in the works, boulevard of broken deals, host, i am the dealbreaker, inspector gadget lies, mobidapter is a scam, nokia fanbois, otg, over 9000, usb, usbcontrol |
Thread Tools | |
|
Isn't the n800 considered a "dumb" USB device? By "dumb," I mean that the hardware and the software (pre n810 kernel?) of an n800 knows nothing about USB OTG or USB charging.
If the above is true, and USB hardware and software is supposed to be backwards compatibile, I find it hard to believe that the USB chips are gonna try and be too smart. What I mean is, isn't it likely that the isp1707 and/or the TWL4030 are suppose to work in a scenario with two "dumb" USB devices?
Again, if the above is true, the hardware shouldn't care about what role the device it's in is playing. My n800's battery can power a USB music card and a pair of usb speakers at the same time!
So, once again, I think it's all about the software. Except this time, let's forget about the Beagleboard, let's make it all about the n800 and why it works. I realize there are crazy changes between 2.6.21 and 2.6.28, but the USB spec for "dumb" devices hasn't changed at all.
So, I agree with blue_led, let's turn of charger detection and roll back the n900 to the "dumb" USB device that it is. But looking too closely at the Fremantle USB kernel/driver code is muddying the waters, in my opinion. Quite frankly, that might be the last code you want to look at. Or at least do a diff with the 2.6.28 or the 2.6.27 baselines.
N9: Go white or go home