stihxxx-b2120.dtsi 4.1 KB
Newer Older
1 2 3 4 5 6 7 8
/*
 * Copyright (C) 2014 STMicroelectronics (R&D) Limited.
 * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */
9
#include <dt-bindings/clock/stih407-clks.h>
10
#include <dt-bindings/gpio/gpio.h>
11
#include <dt-bindings/media/c8sectpfe.h>
12
/ {
13 14 15 16 17 18 19 20 21 22 23 24 25
	leds {
		compatible = "gpio-leds";
		red {
			label = "Front Panel LED";
			gpios = <&pio4 1 GPIO_ACTIVE_HIGH>;
			linux,default-trigger = "heartbeat";
		};
		green {
			gpios = <&pio1 3 GPIO_ACTIVE_HIGH>;
			default-state = "off";
		};
	};

26 27 28 29
	sound: sound {
		compatible = "simple-audio-card";
		simple-audio-card,name = "STI-B2120";
		status = "okay";
30 31
		#address-cells = <1>;
		#size-cells = <0>;
32

33 34
		simple-audio-card,dai-link@0 {
			reg = <0>;
35 36 37 38 39 40 41 42 43 44 45 46
			/* HDMI */
			format = "i2s";
			mclk-fs = <128>;
			cpu {
				sound-dai = <&sti_uni_player0>;
			};

			codec {
				sound-dai = <&sti_hdmi>;
			};
		};

47 48
		simple-audio-card,dai-link@1 {
			reg = <1>;
49 50 51 52 53 54 55 56 57 58 59 60 61
			/* DAC */
			format = "i2s";
			mclk-fs = <256>;
			frame-inversion = <1>;
			cpu {
				sound-dai = <&sti_uni_player2>;
			};

			codec {
				sound-dai = <&sti_sasg_codec 1>;
			};
		};

62 63
		simple-audio-card,dai-link@2 {
			reg = <2>;
64 65 66 67 68 69 70 71 72 73 74 75 76
			/* SPDIF */
			format = "left_j";
			mclk-fs = <128>;
			cpu {
				sound-dai = <&sti_uni_player3>;
			};

			codec {
				sound-dai = <&sti_sasg_codec 0>;
			};
		};
	};

77 78 79 80 81
	soc {
		sbc_serial0: serial@9530000 {
			status = "okay";
		};

82 83 84 85 86 87 88 89
		pwm0: pwm@9810000 {
			status = "okay";
		};

		pwm1: pwm@9510000 {
			status = "okay";
		};

90
		ssc2: i2c@9842000 {
91
			status = "okay";
92 93 94
			clock-frequency = <100000>;
			st,i2c-min-scl-pulse-width-us = <0>;
			st,i2c-min-sda-pulse-width-us = <5>;
95 96
		};

97
		ssc3: i2c@9843000 {
98
			status = "okay";
99 100 101
			clock-frequency = <100000>;
			st,i2c-min-scl-pulse-width-us = <0>;
			st,i2c-min-sda-pulse-width-us = <5>;
102 103 104 105 106 107 108 109 110 111 112 113 114 115
		};

		i2c@9844000 {
			status = "okay";
		};

		i2c@9845000 {
			status = "okay";
		};

		i2c@9540000 {
			status = "okay";
		};

116
		mmc0: sdhci@9060000 {
117
			non-removable;
118 119 120
			status = "okay";
		};

121
		mmc1: sdhci@9080000 {
122 123 124
			status = "okay";
		};

125
		/* SSC11 to HDMI */
126
		hdmiddc: i2c@9541000 {
127 128 129 130 131 132
			status = "okay";
			/* HDMI V1.3a supports Standard mode only */
			clock-frequency = <100000>;
			st,i2c-min-scl-pulse-width-us = <0>;
			st,i2c-min-sda-pulse-width-us = <5>;
		};
133

134
		miphy28lp_phy: miphy28lp@0 {
135 136 137 138 139 140 141 142 143

			phy_port0: port@9b22000 {
				st,osc-rdy;
			};

			phy_port1: port@9b2a000 {
				st,osc-force-ext;
			};
		};
144 145 146 147 148

		st_dwc3: dwc3@8f94000 {
			status = "okay";
		};

149 150 151 152 153 154
		ethernet0: dwmac@9630000 {
			st,tx-retime-src = "clkgen";
			status = "okay";
			phy-mode = "rgmii";
			fixed-link = <0 1 1000 0 0>;
		};
155

156
		demux@8a20000 {
157 158 159 160 161
			compatible	= "st,stih407-c8sectpfe";
			status		= "okay";
			reg		= <0x08a20000 0x10000>,
					  <0x08a00000 0x4000>;
			reg-names	= "c8sectpfe", "c8sectpfe-ram";
162 163
			interrupts	= <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
					  <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179
			interrupt-names	= "c8sectpfe-error-irq",
					  "c8sectpfe-idle-irq";
			pinctrl-0	= <&pinctrl_tsin0_serial>;
			pinctrl-1	= <&pinctrl_tsin0_parallel>;
			pinctrl-2	= <&pinctrl_tsin3_serial>;
			pinctrl-3	= <&pinctrl_tsin4_serial_alt3>;
			pinctrl-4	= <&pinctrl_tsin5_serial_alt1>;
			pinctrl-names	= "tsin0-serial",
					  "tsin0-parallel",
					  "tsin3-serial",
					  "tsin4-serial",
					  "tsin5-serial";
			clocks		= <&clk_s_c0_flexgen CLK_PROC_STFE>;
			clock-names	= "c8sectpfe";

			/* tsin0 is TSA on NIMA */
180
			tsin0: port {
181 182 183
				tsin-num	= <0>;
				serial-not-parallel;
				i2c-bus		= <&ssc2>;
184
				reset-gpios	= <&pio15 4 GPIO_ACTIVE_HIGH>;
185 186 187
				dvb-card	= <STV0367_TDA18212_NIMA_1>;
			};
		};
188

189 190 191 192
		sti_uni_player0: sti-uni-player@8d80000 {
			status = "okay";
		};

193 194 195 196 197 198 199 200
		sti_uni_player2: sti-uni-player@8d82000 {
			status = "okay";
		};

		sti_uni_player3: sti-uni-player@8d85000 {
			status = "okay";
		};

201 202 203 204 205
		syscfg_core: core-syscfg@92b0000 {
			sti_sasg_codec: sti-sasg-codec {
				status = "okay";
				pinctrl-names = "default";
				pinctrl-0 = <&pinctrl_spdif_out>;
206 207
			};
		};
208 209
	};
};