Closed ShellAlbert closed 4 years ago
pinctrl@3520000 {
compatible = "nvidia,tegra186-xusb-padctl";
reg = <0x0 0x3520000 0x0 0x1000 0x0 0x3540000 0x0 0x1000>;
reg-names = "padctl", "ao";
resets = <0x10 0x37>;
reset-names = "padctl_rst";
clocks = <0x10 0x6f 0x10 0x215 0x10 0x87 0x10 0x86>;
clock-names = "xusb_clk", "utmipll", "usb2_trk", "hsic_trk";
interrupts = <0x0 0xa7 0x4>;
mboxes = <0xb5>;
mbox-names = "xusb";
#phy-cells = <0x1>;
status = "okay";
vbus-0-supply = <0xb0>;
vbus-1-supply = <0xb1>;
vbus-2-supply = <0xb2>;
vbus-3-supply = <0x26>;
vddio-hsic-supply = <0x26>;
avdd_usb-supply = <0x13>;
vclamp_usb-supply = <0x12>;
avdd_pll_erefeut-supply = <0x12>;
pinctrl-0 = <0xb6>;
pinctrl-1 = <0xac>;
pinctrl-2 = <0xad>;
pinctrl-3 = <0xae>;
pinctrl-4 = <0xaf>;
pinctrl-5 = <0xaa>;
pinctrl-6 = <0xab>;
pinctrl-names = "default", "vbus_en0_sfio_tristate", "vbus_en1_sfio_tristate", "vbus_en0_sfio_passthrough", "vbus_en1_sfio_passthrough", "vbus_en0_default", "vbus_en1_default";
linux,phandle = <0xa9>;
phandle = <0xa9>;
usb2-0 {
status = "okay";
mode = "otg";
vbus-supply = <0xb0>;
nvidia,oc-pin = <0x0>;
};
regulator@4 {
compatible = "regulator-fixed-sync";
reg = <0x4>;
regulator-name = "vdd-usb0-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
gpio = <0x1b 0x5c 0x0>;
gpio-open-drain;
enable-active-high;
regulator-enable-ramp-delay = <0x3b1>;
regulator-disable-ramp-delay = <0xa5a>;
linux,phandle = <0xb0>;
phandle = <0xb0>;
};
regulator@5 {
compatible = "regulator-fixed-sync";
reg = <0x5>;
regulator-name = "vdd-usb1-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
gpio = <0x1b 0x5d 0x0>;
gpio-open-drain;
enable-active-high;
regulator-enable-ramp-delay = <0x320>;
regulator-disable-ramp-delay = <0x32c8>;
linux,phandle = <0xb1>;
phandle = <0xb1>;
};
regulator@17 {
compatible = "regulator-fixed-sync";
reg = <0x11>;
regulator-name = "vdd-usb2-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
gpio = <0xed 0x0 0x0>;
linux,phandle = <0xb2>;
phandle = <0xb2>;
};
regulator@0 {
compatible = "regulator-fixed";
reg = <0x0>;
regulator-name = "vdd-ac-bat";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-always-on;
linux,phandle = <0x26>;
phandle = <0x26>;
};
pinmux { linux,phandle = <0xb6>; phandle = <0xb6>;
usb2-micro-AB {
nvidia,lanes = "otg-0";
nvidia,function = "xusb";
nvidia,port-cap = <0x3>;
nvidia,oc-pin = <0x0>;
};
usb2-std-A-port2 {
nvidia,lanes = "otg-1";
nvidia,function = "xusb";
nvidia,port-cap = <0x1>;
nvidia,oc-pin = <0x1>;
};
usb3-std-A-port2 {
nvidia,lanes = "usb3-0";
nvidia,port-cap = <0x1>;
nvidia,oc-pin = <0x1>;
};
e3325-usb3-std-A-HS {
nvidia,lanes = "otg-2";
nvidia,function = "xusb";
nvidia,port-cap = <0x1>;
status = "disabled";
};
e3325-usb3-std-A-SS {
nvidia,lanes = "usb3-0";
nvidia,port-cap = <0x1>;
status = "disabled";
};
};
vbus_en0_oc_tristate {
linux,phandle = <0xac>;
phandle = <0xac>;
usb_vbus_en0_pl4 {
nvidia,pins = "usb_vbus_en0_pl4";
nvidia,function = "usb";
nvidia,tristate = <0x1>;
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
vbus_en1_oc_tristate {
linux,phandle = <0xad>;
phandle = <0xad>;
usb_vbus_en1_pl5 {
nvidia,pins = "usb_vbus_en1_pl5";
nvidia,function = "usb";
nvidia,tristate = <0x1>;
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
vbus_en0_oc_passthrough {
linux,phandle = <0xae>;
phandle = <0xae>;
usb_vbus_en0_pl4 {
nvidia,pins = "usb_vbus_en0_pl4";
nvidia,function = "usb";
nvidia,tristate = <0x0>;
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
vbus_en1_oc_passthrough {
linux,phandle = <0xaf>;
phandle = <0xaf>;
usb_vbus_en1_pl5 {
nvidia,pins = "usb_vbus_en1_pl5";
nvidia,function = "usb";
nvidia,tristate = <0x0>;
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
vbus_en0_default {
linux,phandle = <0xaa>;
phandle = <0xaa>;
usb_vbus_en0_pl4 {
nvidia,pins = "usb_vbus_en0_pl4";
nvidia,function = "rsvd1";
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
vbus_en1_default {
linux,phandle = <0xab>;
phandle = <0xab>;
usb_vbus_en1_pl5 {
nvidia,pins = "usb_vbus_en1_pl5";
nvidia,function = "rsvd1";
nvidia,io-high-voltage = <0x1>;
nvidia,enable-input = <0x1>;
};
};
zhangshaoyan@YNT5:~$ cat playmusic.sh
while true do aplay fo.wav echo "play done" sleep 3 done zhangshaoyan@YNT5:~$
zhangshaoyan@YNT5:~$ cat debug.sh echo 0 | sudo tee /sys/kernel/debug/tracing/trace echo 0 | sudo tee /sys/kernel/debug/tracing/events/enable echo 1 | sudo tee /sys/kernel/debug/tracing/tracing_on echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_widget_power/enable echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_path/enable echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_start/enable echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_walk_done/enable zhangshaoyan@YNT5:~$
yntp16@yntp16:/home/zhangshaoyan$ sudo ./i2s0_in_i2s1_out.sh Simple mixer control 'I2S1 Mux',0 Capabilities: enum Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6' Item0: 'ADMAIF1' Simple mixer control 'ADMAIF1 Mux',0 Capabilities: enum Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6' Item0: 'I2S1' Simple mixer control 'ADMAIF2 Mux',0 Capabilities: enum Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6' Item0: 'I2S2' Simple mixer control 'I2S2 Mux',0 Capabilities: enum Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6' Item0: 'ADMAIF2' numid=1081,iface=MIXER,name='I2S1 codec frame mode' ; type=ENUMERATED,access=rw------,values=1,items=6 ; Item #0 'None' ; Item #1 'i2s' ; Item #2 'right-j' ; Item #3 'left-j' ; Item #4 'dsp-a' ; Item #5 'dsp-b' : values=1 numid=1083,iface=MIXER,name='I2S2 codec frame mode' ; type=ENUMERATED,access=rw------,values=1,items=6 ; Item #0 'None' ; Item #1 'i2s' ; Item #2 'right-j' ; Item #3 'left-j' ; Item #4 'dsp-a' ; Item #5 'dsp-b' : values=1 numid=853,iface=MIXER,name='I2S1 codec bit format' ; type=ENUMERATED,access=rw------,values=1,items=3 ; Item #0 'None' ; Item #1 '16' ; Item #2 '32' : values=1 numid=864,iface=MIXER,name='I2S2 codec bit format' ; type=ENUMERATED,access=rw------,values=1,items=3 ; Item #0 'None' ; Item #1 '16' ; Item #2 '32' : values=1 numid=1082,iface=MIXER,name='I2S1 codec master mode' ; type=ENUMERATED,access=rw------,values=1,items=5 ; Item #0 'None' ; Item #1 'cbm-cfm' ; Item #2 'cbs-cfm' ; Item #3 'cbm-cfs' ; Item #4 'cbs-cfs' : values=1 numid=1084,iface=MIXER,name='I2S2 codec master mode' ; type=ENUMERATED,access=rw------,values=1,items=5 ; Item #0 'None' ; Item #1 'cbm-cfm' ; Item #2 'cbs-cfm' ; Item #3 'cbm-cfs' ; Item #4 'cbs-cfs' : values=4 Bank: 0 Reg: 0x02431028 Val: 0x00000400 -> dap1_fs_pj3 Bank: 0 Reg: 0x02431030 Val: 0x00000458 -> dap1_din_pj2 Bank: 0 Reg: 0x02431038 Val: 0x00000400 -> dap1_dout_pj1 Bank: 0 Reg: 0x02431040 Val: 0x00000400 -> dap1_sclk_pj0 Bank: 0 Reg: 0x02434000 Val: 0x00000458 -> dap2_din_pc3 Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2 Bank: 0 Reg: 0x02434010 Val: 0x00000400 -> dap2_fs_pc4 Bank: 0 Reg: 0x02434018 Val: 0x00000400 -> dap2_sclk_pc1 Bank: 0 Reg: 0x02434000 Val: 0x00000400 -> dap2_din_pc3 Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2 Bank: 0 Reg: 0x02434010 Val: 0x00000400 -> dap2_fs_pc4 Bank: 0 Reg: 0x02434018 Val: 0x00000400 -> dap2_sclk_pc1