hc
2024-10-12 a5969cabbb4660eab42b6ef0412cbbd1200cf14d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
sii902x HDMI bridge bindings
 
Required properties:
   - compatible: "sil,sii9022"
   - reg: i2c address of the bridge
 
Optional properties:
   - interrupts: describe the interrupt line used to inform the host
     about hotplug events.
   - reset-gpios: OF device-tree gpio specification for RST_N pin.
   - iovcc-supply: I/O Supply Voltage (1.8V or 3.3V)
   - cvcc12-supply: Digital Core Supply Voltage (1.2V)
 
   HDMI audio properties:
   - #sound-dai-cells: <0> or <1>. <0> if only i2s or spdif pin
      is wired, <1> if the both are wired. HDMI audio is
      configured only if this property is found.
   - sil,i2s-data-lanes: Array of up to 4 integers with values of 0-3
      Each integer indicates which i2s pin is connected to which
      audio fifo. The first integer selects i2s audio pin for the
      first audio fifo#0 (HDMI channels 1&2), second for fifo#1
      (HDMI channels 3&4), and so on. There is 4 fifos and 4 i2s
      pins (SD0 - SD3). Any i2s pin can be connected to any fifo,
      but there can be no gaps. E.g. an i2s pin must be mapped to
      fifo#0 and fifo#1 before mapping a channel to fifo#2. Default
      value is <0>, describing SD0 pin beiging routed to hdmi audio
      fifo #0.
   - clocks: phandle and clock specifier for each clock listed in
           the clock-names property
   - clock-names: "mclk"
      Describes SII902x MCLK input. MCLK can be used to produce
      HDMI audio CTS values. This property follows
      Documentation/devicetree/bindings/clock/clock-bindings.txt
      consumer binding.
 
   If HDMI audio is configured the sii902x device becomes an I2S
   and/or spdif audio codec component (e.g a digital audio sink),
   that can be used in configuring a full audio devices with
   simple-card or audio-graph-card binding. See their binding
   documents on how to describe the way the sii902x device is
   connected to the rest of the audio system:
   Documentation/devicetree/bindings/sound/simple-card.yaml
   Documentation/devicetree/bindings/sound/audio-graph-card.txt
   Note: In case of the audio-graph-card binding the used port
   index should be 3.
 
Optional subnodes:
   - video input: this subnode can contain a video input port node
     to connect the bridge to a display controller output (See this
     documentation [1]).
 
[1]: Documentation/devicetree/bindings/media/video-interfaces.txt
 
Example:
   hdmi-bridge@39 {
       compatible = "sil,sii9022";
       reg = <0x39>;
       reset-gpios = <&pioA 1 0>;
       iovcc-supply = <&v3v3_hdmi>;
       cvcc12-supply = <&v1v2_hdmi>;
 
       #sound-dai-cells = <0>;
       sil,i2s-data-lanes = < 0 1 2 >;
       clocks = <&mclk>;
       clock-names = "mclk";
 
       ports {
           #address-cells = <1>;
           #size-cells = <0>;
 
           port@0 {
               reg = <0>;
               bridge_in: endpoint {
                   remote-endpoint = <&dc_out>;
               };
           };
       };
   };