工具/软件:TI C/C++编译器
你好。 我使用的是 tlv320aic3106、我在 devicetree 中声明它与此类似。
声音{
兼容="简单音频卡";
simple-audio-card、name ="TLV320AIC3106";
simple-audio-card、format ="I2S";
简单音频卡、CPU{
Sound-Dai =<&SSI1>;
};
简单音频卡、编解码器{
sound-dai =<&codec>;
时钟=<&codec_clock>;
};
};
i2c1{(&I)
pinctrl-names ="default";
pinctrl-0 =<&pinctrl_i2c1_2>;
时钟频率=<100000 >;
状态="正常";
编解码器:编解码器@18{
#sound-di-cells =<0>;
兼容="ti、tlv320aic3106";
reg =<0x18>;
时钟=<&codec_clock>;
时钟名称="MCLK";
RESET-GPIOS=<&GPIO3 29 GPIO_ACTIVE_LOW>;
AVDD-SUPPLY =<_3p3v>;
IOVdd-supply =<_aud_IOVdd>;/* IOVDD:3.3V;DVDD:1.8V;DRVDD:3.3V;AVDD_DAC:3.3V; *
DRVDD-SUPPLY =<_drvdd>;
DVDD 电源=<_aud_DVDD>;
};
};
SSI1{(&S)
codec-handle =<编解码器>;
FSL、MODE ="I2S-SLAVE;//I2S-SLAVE
状态="正常";
};
时钟{
CODEC 时钟:clk12M{
兼容="固定时钟";
#clock-cells =<0>;
时钟频率=<12000000>;
};
};
使用这些规格、Linux 内核中的驱动程序会找到编解码器、并且还会检测到声卡、但当我执行播放命令时、I2S 信号不起作用。 如果有人知道我忘记在 devicetree 声音节点中声明什么、谢谢。
最好的酒店