1*c66ec88fSEmmanuel VadotSTMicroelectronics STi c8sectpfe binding
2*c66ec88fSEmmanuel Vadot============================================
3*c66ec88fSEmmanuel Vadot
4*c66ec88fSEmmanuel VadotThis document describes the c8sectpfe device bindings that is used to get transport
5*c66ec88fSEmmanuel Vadotstream data into the SoC on the TS pins, and into DDR for further processing.
6*c66ec88fSEmmanuel Vadot
7*c66ec88fSEmmanuel VadotIt is typically used in conjunction with one or more demodulator and tuner devices
8*c66ec88fSEmmanuel Vadotwhich converts from the RF to digital domain. Demodulators and tuners are usually
9*c66ec88fSEmmanuel Vadotlocated on an external DVB frontend card connected to SoC TS input pins.
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel VadotCurrently 7 TS input (tsin) channels are supported on the stih407 family SoC.
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel VadotRequired properties (controller (parent) node):
14*c66ec88fSEmmanuel Vadot- compatible	: Should be "stih407-c8sectpfe"
15*c66ec88fSEmmanuel Vadot
16*c66ec88fSEmmanuel Vadot- reg		: Address and length of register sets for each device in
17*c66ec88fSEmmanuel Vadot		  "reg-names"
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel Vadot- reg-names	: The names of the register addresses corresponding to the
20*c66ec88fSEmmanuel Vadot		  registers filled in "reg":
21*c66ec88fSEmmanuel Vadot			- c8sectpfe: c8sectpfe registers
22*c66ec88fSEmmanuel Vadot			- c8sectpfe-ram: c8sectpfe internal sram
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot- clocks	: phandle list of c8sectpfe clocks
25*c66ec88fSEmmanuel Vadot- clock-names	: should be "c8sectpfe"
26*c66ec88fSEmmanuel VadotSee: Documentation/devicetree/bindings/clock/clock-bindings.txt
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel Vadot- pinctrl-names	: a pinctrl state named tsin%d-serial or tsin%d-parallel (where %d is tsin-num)
29*c66ec88fSEmmanuel Vadot		   must be defined for each tsin child node.
30*c66ec88fSEmmanuel Vadot- pinctrl-0	: phandle referencing pin configuration for this tsin configuration
31*c66ec88fSEmmanuel VadotSee: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot
34*c66ec88fSEmmanuel VadotRequired properties (tsin (child) node):
35*c66ec88fSEmmanuel Vadot
36*c66ec88fSEmmanuel Vadot- tsin-num	: tsin id of the InputBlock (must be between 0 to 6)
37*c66ec88fSEmmanuel Vadot- i2c-bus	: phandle to the I2C bus DT node which the demodulators & tuners on this tsin channel are connected.
38*c66ec88fSEmmanuel Vadot- reset-gpios	: reset gpio for this tsin channel.
39*c66ec88fSEmmanuel Vadot
40*c66ec88fSEmmanuel VadotOptional properties (tsin (child) node):
41*c66ec88fSEmmanuel Vadot
42*c66ec88fSEmmanuel Vadot- invert-ts-clk		: Bool property to control sense of ts input clock (data stored on falling edge of clk).
43*c66ec88fSEmmanuel Vadot- serial-not-parallel	: Bool property to configure input bus width (serial on ts_data<7>).
44*c66ec88fSEmmanuel Vadot- async-not-sync	: Bool property to control if data is received in asynchronous mode
45*c66ec88fSEmmanuel Vadot			   (all bits/bytes with ts_valid or ts_packet asserted are valid).
46*c66ec88fSEmmanuel Vadot
47*c66ec88fSEmmanuel Vadot- dvb-card		: Describes the NIM card connected to this tsin channel.
48*c66ec88fSEmmanuel Vadot
49*c66ec88fSEmmanuel VadotExample:
50*c66ec88fSEmmanuel Vadot
51*c66ec88fSEmmanuel Vadot/* stih410 SoC b2120 + b2004a + stv0367-pll(NIMB) + stv0367-tda18212 (NIMA) DT example) */
52*c66ec88fSEmmanuel Vadot
53*c66ec88fSEmmanuel Vadot	c8sectpfe@8a20000 {
54*c66ec88fSEmmanuel Vadot		compatible = "st,stih407-c8sectpfe";
55*c66ec88fSEmmanuel Vadot		reg = <0x08a20000 0x10000>, <0x08a00000 0x4000>;
56*c66ec88fSEmmanuel Vadot		reg-names = "stfe", "stfe-ram";
57*c66ec88fSEmmanuel Vadot		interrupts = <GIC_SPI 34 IRQ_TYPE_NONE>, <GIC_SPI 35 IRQ_TYPE_NONE>;
58*c66ec88fSEmmanuel Vadot		interrupt-names = "stfe-error-irq", "stfe-idle-irq";
59*c66ec88fSEmmanuel Vadot		pinctrl-0	= <&pinctrl_tsin0_serial>;
60*c66ec88fSEmmanuel Vadot		pinctrl-1	= <&pinctrl_tsin0_parallel>;
61*c66ec88fSEmmanuel Vadot		pinctrl-2	= <&pinctrl_tsin3_serial>;
62*c66ec88fSEmmanuel Vadot		pinctrl-3	= <&pinctrl_tsin4_serial_alt3>;
63*c66ec88fSEmmanuel Vadot		pinctrl-4	= <&pinctrl_tsin5_serial_alt1>;
64*c66ec88fSEmmanuel Vadot		pinctrl-names	= "tsin0-serial",
65*c66ec88fSEmmanuel Vadot				  "tsin0-parallel",
66*c66ec88fSEmmanuel Vadot				  "tsin3-serial",
67*c66ec88fSEmmanuel Vadot				  "tsin4-serial",
68*c66ec88fSEmmanuel Vadot				  "tsin5-serial";
69*c66ec88fSEmmanuel Vadot		clocks = <&clk_s_c0_flexgen CLK_PROC_STFE>;
70*c66ec88fSEmmanuel Vadot		clock-names = "c8sectpfe";
71*c66ec88fSEmmanuel Vadot
72*c66ec88fSEmmanuel Vadot		/* tsin0 is TSA on NIMA */
73*c66ec88fSEmmanuel Vadot		tsin0: port@0 {
74*c66ec88fSEmmanuel Vadot			tsin-num		= <0>;
75*c66ec88fSEmmanuel Vadot			serial-not-parallel;
76*c66ec88fSEmmanuel Vadot			i2c-bus			= <&ssc2>;
77*c66ec88fSEmmanuel Vadot			reset-gpios		= <&pio15 4 GPIO_ACTIVE_HIGH>;
78*c66ec88fSEmmanuel Vadot			dvb-card		= <STV0367_TDA18212_NIMA_1>;
79*c66ec88fSEmmanuel Vadot		};
80*c66ec88fSEmmanuel Vadot
81*c66ec88fSEmmanuel Vadot		tsin3: port@3 {
82*c66ec88fSEmmanuel Vadot			tsin-num		= <3>;
83*c66ec88fSEmmanuel Vadot			serial-not-parallel;
84*c66ec88fSEmmanuel Vadot			i2c-bus			= <&ssc3>;
85*c66ec88fSEmmanuel Vadot			reset-gpios		= <&pio15 7 GPIO_ACTIVE_HIGH>;
86*c66ec88fSEmmanuel Vadot			dvb-card		= <STV0367_TDA18212_NIMB_1>;
87*c66ec88fSEmmanuel Vadot		};
88*c66ec88fSEmmanuel Vadot	};
89