... aliases { rtc0 = &mcp_rtc; rtc1 = &tps659038_rtc; rtc2 = &rtc; display0 = &hdmi0; sound0 = &sound0; sound1 = &hdmi; }; ... sound0: sound@0 { compatible = "simple-audio-card"; simple-audio-card,name = "BeagleBoard-X15"; simple-audio-card,widgets = "Line", "Line Out", "Line", "Line In"; simple-audio-card,routing = "Line Out", "LLOUT", "Line Out", "RLOUT", "MIC2L", "Line In", "MIC2R", "Line In"; simple-audio-card,format = "dsp_b"; simple-audio-card,bitclock-master = <&sound0_master>; simple-audio-card,frame-master = <&sound0_master>; simple-audio-card,bitclock-inversion; simple-audio-card,cpu { sound-dai = <&mcasp3>; }; sound0_master: simple-audio-card,codec { sound-dai = <&tlv320aic3104>; clocks = <&clkout2_clk>; }; }; ... &hdmi { status = "ok"; vdda-supply = <&ldo4_reg>; port { hdmi_out: endpoint { remote-endpoint = <&tpd12s015_in>; }; }; }; ... &mcasp3 { #sound-dai-cells = <0>; assigned-clocks = <&mcasp3_ahclkx_mux>; assigned-clock-parents = <&sys_clkin2>; status = "okay"; op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; /* 4 serializers */ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 1 2 0 0 >; tx-num-evt = <32>; rx-num-evt = <32>; }; ... tlv320aic3104: tlv320aic3104@18 { #sound-dai-cells = <0>; compatible = "ti,tlv320aic3104"; reg = <0x18>; assigned-clocks = <&clkoutmux2_clk_mux>; assigned-clock-parents = <&sys_clk2_dclk_div>; adc-settle-ms = <40>; AVDD-supply = <&vdd_3v3>; IOVDD-supply = <&vdd_3v3>; DRVDD-supply = <&vdd_3v3>; DVDD-supply = <&aic_dvdd>; status = "okay"; }; ... tpd12s015: encoder { compatible = "ti,tpd12s015"; gpios = <&gpio7 10 GPIO_ACTIVE_HIGH>, /* gpio7_10, CT CP HPD */ <&gpio6 28 GPIO_ACTIVE_HIGH>, /* gpio6_28, LS OE */ <&gpio7 12 GPIO_ACTIVE_HIGH>; /* gpio7_12/sp1_cs2, HPD */ ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; tpd12s015_in: endpoint { remote-endpoint = <&hdmi_out>; }; }; port@1 { reg = <1>; tpd12s015_out: endpoint { remote-endpoint = <&hdmi_connector_in>; }; }; }; }; ...