xref: /freebsd/sys/contrib/device-tree/Bindings/usb/hisilicon,histb-xhci.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotHiSilicon STB xHCI
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThe device node for HiSilicon STB xHCI host controller
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel VadotRequired properties:
6*c66ec88fSEmmanuel Vadot - compatible: should be "hisilicon,hi3798cv200-xhci"
7*c66ec88fSEmmanuel Vadot - reg: specifies physical base address and size of the registers
8*c66ec88fSEmmanuel Vadot - interrupts : interrupt used by the controller
9*c66ec88fSEmmanuel Vadot - clocks: a list of phandle + clock-specifier pairs, one for each
10*c66ec88fSEmmanuel Vadot	entry in clock-names
11*c66ec88fSEmmanuel Vadot - clock-names: must contain
12*c66ec88fSEmmanuel Vadot	"bus": for bus clock
13*c66ec88fSEmmanuel Vadot	"utmi": for utmi clock
14*c66ec88fSEmmanuel Vadot	"pipe": for pipe clock
15*c66ec88fSEmmanuel Vadot	"suspend": for suspend clock
16*c66ec88fSEmmanuel Vadot - resets: a list of phandle and reset specifier pairs as listed in
17*c66ec88fSEmmanuel Vadot	reset-names property.
18*c66ec88fSEmmanuel Vadot - reset-names: must contain
19*c66ec88fSEmmanuel Vadot	"soft": for soft reset
20*c66ec88fSEmmanuel Vadot - phys: a list of phandle + phy specifier pairs
21*c66ec88fSEmmanuel Vadot - phy-names: must contain at least one of following:
22*c66ec88fSEmmanuel Vadot	"inno": for inno phy
23*c66ec88fSEmmanuel Vadot	"combo": for combo phy
24*c66ec88fSEmmanuel Vadot
25*c66ec88fSEmmanuel VadotOptional properties:
26*c66ec88fSEmmanuel Vadot  - usb2-lpm-disable: indicate if we don't want to enable USB2 HW LPM
27*c66ec88fSEmmanuel Vadot  - usb3-lpm-capable: determines if platform is USB3 LPM capable
28*c66ec88fSEmmanuel Vadot  - imod-interval-ns: default interrupt moderation interval is 40000ns
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel VadotExample:
31*c66ec88fSEmmanuel Vadot
32*c66ec88fSEmmanuel Vadotxhci0: xchi@f98a0000 {
33*c66ec88fSEmmanuel Vadot	compatible = "hisilicon,hi3798cv200-xhci";
34*c66ec88fSEmmanuel Vadot	reg = <0xf98a0000 0x10000>;
35*c66ec88fSEmmanuel Vadot	interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
36*c66ec88fSEmmanuel Vadot	clocks = <&crg HISTB_USB3_BUS_CLK>,
37*c66ec88fSEmmanuel Vadot		 <&crg HISTB_USB3_UTMI_CLK>,
38*c66ec88fSEmmanuel Vadot		 <&crg HISTB_USB3_PIPE_CLK>,
39*c66ec88fSEmmanuel Vadot		 <&crg HISTB_USB3_SUSPEND_CLK>;
40*c66ec88fSEmmanuel Vadot	clock-names = "bus", "utmi", "pipe", "suspend";
41*c66ec88fSEmmanuel Vadot	resets = <&crg 0xb0 12>;
42*c66ec88fSEmmanuel Vadot	reset-names = "soft";
43*c66ec88fSEmmanuel Vadot	phys = <&usb2_phy1_port1 0>, <&combphy0 PHY_TYPE_USB3>;
44*c66ec88fSEmmanuel Vadot	phy-names = "inno", "combo";
45*c66ec88fSEmmanuel Vadot};
46