On 30.05.2016 11:31, Mason wrote:
Hello Felipe,

On 30/05/2016 08:58, Felipe Balbi wrote:

Mason writes:

I'm working on a SoC which embeds an IP block from GDA Technologies
labeled "Pravega USB3 SuperSpeed Controller" (data-sheet is v0.99r
dated 2014-01-29). A cursory search returns:

http://www.sourcing.co.jp/prod_ip.htm
http://www.sourcing.co.jp/prod_ip/usb_host_pb.pdf

In the compliance section, the data-sheet lists:

- USB 3.0 Revision 1.0 and all associated ECNs
- Inter-Chip Supplement to the USB Revision 3.0 Specification, Revision 1.02
- Backward compatible with USB2.0 Revision 2.0 and all associated ECNs
- High Speed Inter Chip Specification, Rev 1.0 and associated ECNs
- USB 2.0 Link Power Management Addendum and associated Erratas
- xHCI specification version 1.0 (in host mode)

My question is: should I be able to use the generic XHCI driver to
drive this controller?

yes, you should. BUT... is this controller dual-role? If it is, then
it'd be nice to support both roles.

Dual-role means OTG? or just static host/device?
AFAIU, my version of the controller only supports host-mode.

(The Makefile builds xhci-plat-hcd.o but I don't see xhci-plat-hcd.c
Is it a generated file?)

The makefile is smart enough to figure it out. Don't worry. Kernel's
build system knows that it needs xhci-plat-hcd.c in order to build
xhci-plat-hcd.o

Oh, I wasn't worried. I was curious how/where that file is generated.

One more thing: AFAIU, the USB PHY is made by Synopsys.
Do I need a driver for that too? (I should examine 7b8ef22ea547)

IIRC there are no registers to be configured on Synopsys PHY, so no.

I looked more closely at the SoC documentation, which lists registers
such as

0x0     CONFIG
0x4     CONTROL
0x8     TEST
0xC     STATUS
0x10    CLK_RST_0
0x14    CLK_RST_1
0x18    PARAM_0
0x1C    PARAM_1
0x20    PARAM_2
0x80    SNPS_CR_ADD
0x84    SNPS_CR_DATA
0xC0    RESET_CTRL

For example, PARAM_1 contains a field "TX De-emphasis at 6 dB".
That's PHY stuff, right?

Are registers such as PHY_TIMER_REGISTER or LTSSM_* standard in USB3/XHCI,
or is that PHY stuff too?

Not part of xhci standard at least,

http://www.intel.com/content/www/us/en/io/universal-serial-bus/extensible-host-controler-interface-usb-xhci.html

-Mathias

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to