|
3 | 3 |
|
4 | 4 | #include <dt-bindings/input/linux-event-codes.h> |
5 | 5 | #include <dt-bindings/input/gpio-keys.h> |
| 6 | +#include <dt-bindings/sound/rt5640.h> |
6 | 7 |
|
7 | 8 | #include "tegra234-p3701-0000.dtsi" |
8 | 9 | #include "tegra234-p3737-0000.dtsi" |
|
49 | 50 |
|
50 | 51 | i2s1_dap: endpoint { |
51 | 52 | dai-format = "i2s"; |
52 | | - /* placeholder for external codec */ |
| 53 | + remote-endpoint = <&rt5640_ep>; |
53 | 54 | }; |
54 | 55 | }; |
55 | 56 | }; |
|
2017 | 2018 | status = "okay"; |
2018 | 2019 | }; |
2019 | 2020 |
|
| 2021 | + i2c@31e0000 { |
| 2022 | + status = "okay"; |
| 2023 | + |
| 2024 | + audio-codec@1c { |
| 2025 | + compatible = "realtek,rt5640"; |
| 2026 | + reg = <0x1c>; |
| 2027 | + interrupt-parent = <&gpio>; |
| 2028 | + interrupts = <TEGRA234_MAIN_GPIO(AC, 5) GPIO_ACTIVE_HIGH>; |
| 2029 | + clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>; |
| 2030 | + clock-names = "mclk"; |
| 2031 | + realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>; |
| 2032 | + realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>; |
| 2033 | + realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>; |
| 2034 | + sound-name-prefix = "CVB-RT"; |
| 2035 | + |
| 2036 | + port { |
| 2037 | + rt5640_ep: endpoint { |
| 2038 | + remote-endpoint = <&i2s1_dap>; |
| 2039 | + mclk-fs = <256>; |
| 2040 | + }; |
| 2041 | + }; |
| 2042 | + }; |
| 2043 | + }; |
| 2044 | + |
2020 | 2045 | pwm@32a0000 { |
2021 | 2046 | assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>; |
2022 | 2047 | assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; |
|
2073 | 2098 | usb2-0 { |
2074 | 2099 | mode = "host"; |
2075 | 2100 | status = "okay"; |
| 2101 | + port { |
| 2102 | + hs_typec_p1: endpoint { |
| 2103 | + remote-endpoint = <&hs_ucsi_ccg_p1>; |
| 2104 | + }; |
| 2105 | + }; |
2076 | 2106 | }; |
2077 | 2107 |
|
2078 | 2108 | usb2-1 { |
2079 | 2109 | mode = "host"; |
2080 | 2110 | status = "okay"; |
| 2111 | + port { |
| 2112 | + hs_typec_p0: endpoint { |
| 2113 | + remote-endpoint = <&hs_ucsi_ccg_p0>; |
| 2114 | + }; |
| 2115 | + }; |
2081 | 2116 | }; |
2082 | 2117 |
|
2083 | 2118 | usb2-2 { |
|
2093 | 2128 | usb3-0 { |
2094 | 2129 | nvidia,usb2-companion = <1>; |
2095 | 2130 | status = "okay"; |
| 2131 | + port { |
| 2132 | + ss_typec_p0: endpoint { |
| 2133 | + remote-endpoint = <&ss_ucsi_ccg_p0>; |
| 2134 | + }; |
| 2135 | + }; |
2096 | 2136 | }; |
2097 | 2137 |
|
2098 | 2138 | usb3-1 { |
2099 | 2139 | nvidia,usb2-companion = <0>; |
2100 | 2140 | status = "okay"; |
| 2141 | + port { |
| 2142 | + ss_typec_p1: endpoint { |
| 2143 | + remote-endpoint = <&ss_ucsi_ccg_p1>; |
| 2144 | + }; |
| 2145 | + }; |
2101 | 2146 | }; |
2102 | 2147 |
|
2103 | 2148 | usb3-2 { |
|
2190 | 2235 | phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4", |
2191 | 2236 | "p2u-5", "p2u-6", "p2u-7"; |
2192 | 2237 | }; |
| 2238 | + |
| 2239 | + i2c@c240000 { |
| 2240 | + status = "okay"; |
| 2241 | + typec@8 { |
| 2242 | + compatible = "cypress,cypd4226"; |
| 2243 | + reg = <0x08>; |
| 2244 | + interrupt-parent = <&gpio>; |
| 2245 | + interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>; |
| 2246 | + firmware-name = "nvidia,jetson-agx-xavier"; |
| 2247 | + status = "okay"; |
| 2248 | + #address-cells = <1>; |
| 2249 | + #size-cells = <0>; |
| 2250 | + ccg_typec_con0: connector@0 { |
| 2251 | + compatible = "usb-c-connector"; |
| 2252 | + reg = <0>; |
| 2253 | + label = "USB-C"; |
| 2254 | + data-role = "host"; |
| 2255 | + ports { |
| 2256 | + #address-cells = <1>; |
| 2257 | + #size-cells = <0>; |
| 2258 | + port@0 { |
| 2259 | + reg = <0>; |
| 2260 | + hs_ucsi_ccg_p0: endpoint { |
| 2261 | + remote-endpoint = <&hs_typec_p0>; |
| 2262 | + }; |
| 2263 | + }; |
| 2264 | + port@1 { |
| 2265 | + reg = <1>; |
| 2266 | + ss_ucsi_ccg_p0: endpoint { |
| 2267 | + remote-endpoint = <&ss_typec_p0>; |
| 2268 | + }; |
| 2269 | + }; |
| 2270 | + }; |
| 2271 | + }; |
| 2272 | + ccg_typec_con1: connector@1 { |
| 2273 | + compatible = "usb-c-connector"; |
| 2274 | + reg = <1>; |
| 2275 | + label = "USB-C"; |
| 2276 | + data-role = "dual"; |
| 2277 | + ports { |
| 2278 | + #address-cells = <1>; |
| 2279 | + #size-cells = <0>; |
| 2280 | + port@0 { |
| 2281 | + reg = <0>; |
| 2282 | + hs_ucsi_ccg_p1: endpoint { |
| 2283 | + remote-endpoint = <&hs_typec_p1>; |
| 2284 | + }; |
| 2285 | + }; |
| 2286 | + port@1 { |
| 2287 | + reg = <1>; |
| 2288 | + ss_ucsi_ccg_p1: endpoint { |
| 2289 | + remote-endpoint = <&ss_typec_p1>; |
| 2290 | + }; |
| 2291 | + }; |
| 2292 | + }; |
| 2293 | + }; |
| 2294 | + }; |
| 2295 | + }; |
2193 | 2296 | }; |
2194 | 2297 |
|
2195 | 2298 | gpio-keys { |
|
2293 | 2396 | <&dmic3_port>; |
2294 | 2397 |
|
2295 | 2398 | label = "NVIDIA Jetson AGX Orin APE"; |
| 2399 | + |
| 2400 | + widgets = "Microphone", "CVB-RT MIC Jack", |
| 2401 | + "Microphone", "CVB-RT MIC", |
| 2402 | + "Headphone", "CVB-RT HP Jack", |
| 2403 | + "Speaker", "CVB-RT SPK"; |
| 2404 | + |
| 2405 | + routing = /* I2S1 <-> RT5640 */ |
| 2406 | + "CVB-RT AIF1 Playback", "I2S1 DAP-Playback", |
| 2407 | + "I2S1 DAP-Capture", "CVB-RT AIF1 Capture", |
| 2408 | + /* RT5640 codec controls */ |
| 2409 | + "CVB-RT HP Jack", "CVB-RT HPOL", |
| 2410 | + "CVB-RT HP Jack", "CVB-RT HPOR", |
| 2411 | + "CVB-RT IN1P", "CVB-RT MIC Jack", |
| 2412 | + "CVB-RT IN2P", "CVB-RT MIC Jack", |
| 2413 | + "CVB-RT SPK", "CVB-RT SPOLP", |
| 2414 | + "CVB-RT SPK", "CVB-RT SPORP", |
| 2415 | + "CVB-RT DMIC1", "CVB-RT MIC", |
| 2416 | + "CVB-RT DMIC2", "CVB-RT MIC"; |
2296 | 2417 | }; |
2297 | 2418 | }; |
0 commit comments