N900 Hardware USB

(Merge info from 1707 page)
Line 1: Line 1:
-
#REDIRECT [[N900 Hardware USB Socket]]
+
The [http://www.nxp.com/ NXP] isp1707 is used as the USB PHY chip. [http://www.spinics.net/lists/linux-usb/msg25167.html].
 +
This rights to this part have been bought by ST-Ericson and some information is [http://www.stericsson.com/sales_marketing_resources/USB_transceiverBR_1.pdf available in a brief marketing sheet].
 +
 
 +
There is no published datasheet for this chip.
 +
It may be available under another name.
 +
 
 +
The device would normally be switched between host and device mode using the ID pin. This however is not connected externally.
 +
 
 +
Initially it was claimed that this made USB host mode impossible.
 +
 
 +
This however seems to be incorrect - it seems on a reading of similar device datasheets that yes, the ID pin is used on hardware that supports it to switch between host and device mode.
 +
 
 +
But, importantly, the ID pin does nothing directly to the state of the chip. It simply informs the CPU of the state of the ID pin, and leaves the driver to properly configure the chip.
 +
 
 +
So, if the kernel can be altered to ignore this pin - which should be trivial if there is host mode support for the chip in the kernel - then host mode works.
 +
 
 +
The current understanding by several people who are working on USB host mode is:
 +
 
 +
The USB port can supply power - at least 200mA. This is plenty for many devices - mice and keyboards.
 +
 
 +
It seems likely that a relatively simple kernel change should enable USB hostmode - http://focus.ti.com/lit/ug/spruf98d/spruf98d.pdf - search for FORCE_HOST - there may well be other cleaner solutions.
 +
 
 +
A possibly related errata is detailed at 3.1.3 in [http://focus.ti.com/lit/er/sprz278d/sprz278d.pdf this document] - this, and other erratas may or may not cause issues with implementing host mode.
 +
 
 +
 
 +
[[Category:N900_Hardware]]

Revision as of 10:11, 3 May 2010

The NXP isp1707 is used as the USB PHY chip. [1]. This rights to this part have been bought by ST-Ericson and some information is available in a brief marketing sheet.

There is no published datasheet for this chip. It may be available under another name.

The device would normally be switched between host and device mode using the ID pin. This however is not connected externally.

Initially it was claimed that this made USB host mode impossible.

This however seems to be incorrect - it seems on a reading of similar device datasheets that yes, the ID pin is used on hardware that supports it to switch between host and device mode.

But, importantly, the ID pin does nothing directly to the state of the chip. It simply informs the CPU of the state of the ID pin, and leaves the driver to properly configure the chip.

So, if the kernel can be altered to ignore this pin - which should be trivial if there is host mode support for the chip in the kernel - then host mode works.

The current understanding by several people who are working on USB host mode is:

The USB port can supply power - at least 200mA. This is plenty for many devices - mice and keyboards.

It seems likely that a relatively simple kernel change should enable USB hostmode - http://focus.ti.com/lit/ug/spruf98d/spruf98d.pdf - search for FORCE_HOST - there may well be other cleaner solutions.

A possibly related errata is detailed at 3.1.3 in this document - this, and other erratas may or may not cause issues with implementing host mode.