各位好,我在zedboard板上加载驱动后,可以正常播放和录音。
但是我需要增加2个adau1761芯片,共三个adau1761 芯片,修改了设备树,加载驱动,用aplay播放不出声音。各位帮忙看看,十分感谢!
看资料好像给pl用的dma就4个通道,所以第一个adau1761配的dma 0和dma1,第二个adau1761配的dma2,第三个adau1761配的dma3。
设备树如下:
/ {
amba_pl: amba_pl {
#address-cells = <1>;
#size-cells = <1>;
compa
tible = "simple-bus";
范围;
exi_ i2s_ adi_ 0: exi_ i2s_ adi@ 43c00000 {
compatible = "xlnx,axi-i2s-adi-1.0";
reg = <0x43c00000 0x10000>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ i2s_ adi_ 1: exi_ i2s_ adi@ 43c1000 {
compatible = "xlnx,axi-i2s-adi-1.0";
reg = <0x43c10000 0x10000>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ i2s_ adi_ 2: exi_ i2s_ adi@ 43c20000 {
compatible = "xlnx,axi-i2s-adi-1.0";
reg = <0x43c20000 0x10000>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ iic_ 0: i2c@ 41600000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "xlnx,xps-iic-2.00.a";
interrupt-parent = < intc>;
interrupts = <0 29 4>;
reg = <0x41600000 0x10000>;
================================================================================================================================================================================================================================================================================================================================================================================
compatible = "adi,adau1761";
reg = <0x3b>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
axi_iic_ 1 : i2c@ 4161000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "xlnx,xps-iic-2.00.a";
interrupt-parent = < intc>;
interrupts = <0 30 4>;
reg = <0x41610000 0x10000>;
adau1761_1: adau1761_1@3b {
compatible = "adi,adau1761";
reg = <0x3b>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
axi_ iic_ 2: i2c@ 41620000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "xlnx,xps-iic-2.00.a";
interrupt-parent = < intc>;
interrupts = <0 31 4>;
reg = <0x41620000 0x10000>;
adau1761_2: adau1761_2@3b{
compatible = "adi,adau1761";
reg = <0x3b>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
音频时钟: 音频时钟 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <12288000>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ i2s_ 0: exi- i2s@ 0x43c000 {
compatible = "adi,axi-i2s-1.00.a";
reg = <0x43c00000 0x1000>;
dmas = < dmac_s 0 dmac_s 1>;
dma-names = "tx", "rx";
clocks = < clkc 15>, < audio_clock>;
clock-names = "axi", "ref";
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ i2s_ 1: exi- i2s@ 0x43c1000 {
compatible = "adi,axi-i2s-1.00.a";
reg = <0x43c10000 0x1000>;
dmas = < dmac_s 2>;
dma-names = "rx";
clocks = < clkc 15>, < audio_clock>;
clock-names = "axi", "ref";
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
exi_ i2s_ 2: exi- i2s@ 0x43c20000 {
compatible = "adi,axi-i2s-1.00.a";
reg = <0x43c20000 0x1000>;
dmas = < dmac_s 3>;
dma-names = "rx";
clocks = < clkc 15>, < audio_clock>;
clock-names = "axi", "ref";
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
zed_sound_0:zed_sound_0 {
compatible = "digilent,zed-sound";
audio-codec = < adau1761_0>;
cpu-dai = < axi_i2s_0>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
zed_ sound_ 1 : zed_ sound_ 1 {
compatible = "digilent,zed-sound";
audio-codec = < adau1761_1>;
cpu-dai = < axi_i2s_1>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
zed_ sound_ 2 : zed_ sound_ 2 {
compatible = "digilent,zed-sound";
audio-codec = < adau1761_2>;
cpu-dai = < axi_i2s_2>;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
};
加载也可以正常打印3个设备:
ALSA 设备列表 :
根@ root3adadu1761_ project:/
** PlayBack硬件设备清单* * * *
0:AAAU1761[ZEDAAA1761],装置0:Adau1761 adau1761 adau-hifi-0[]
子设备:1/1
子设备
[ZED AAAA1761_1],设备0: adau1761 adau-hifi-0[]
子设备:1/1
子设备
[ZED AAAA1761_2 [ZED AAA1761],设备0: adau1761 adau-hifi-0[]
子设备:1/1
子设备
配置card 0: alsactl restore -c 0 -f adau1761.state
根@ root3adadu1761_ project:/
Playing WAVE 'Front_Center.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
但是没有声音。