| 
 
新手入门 
 
	积分4金钱4 注册时间2020-8-31在线时间11 小时 | 
 
33金钱 
| 移植wm8978芯片驱动到stm32mp157上面报错 ![@]BLDE1)5CA}F5GBVJPD{_4.jpg @]BLDE1)5CA}F5GBVJPD{_4.jpg](data/attachment/forum/202112/30/143217f4fl48ana9n49dx8.jpg)  
 不知道什么原因
 设备树配置附上
 sound: sound {
 compatible = "audio-graph-card";
 label = "wm8978-audio";
 //routing =
 //"Playback" , "LHP",
 //"Capture" , "LHP";
 //"LMICN" , "Mic Bias",
 //"LMICP" , "Mic Bias";
 dais = <&sai2a_port &sai2b_port>;
 status = "okay";
 };
 
 
 
 &i2c4 {
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&i2c4_pins_a>;
 pinctrl-1 = <&i2c4_pins_sleep_a>;
 status = "okay";
 /delete-property/dmas;
 /delete-property/dma-names;
 codec: wm8978@1a {
 compatible = "wlf,wm8978";
 reg = <0x1a>;
 #sound-dai-cells = <0>;
 status = "okay";
 //wlf,shared-lrclk;
 port {
 #address-cells = <1>;
 #size-cells = <0>;
 
 wm8978_tx_endpoint: endpoint@0{
 reg = <0>;
 remote-endpoint = <&sai2a_endpoint>;
 };
 
 wm8978_rx_endpoint: endpoint@1{
 reg = <1>;
 remote-endpoint = <&sai2b_endpoint>;
 };
 
 };
 };
 };
 
 &sai2 {
 clocks = <&rcc SAI2>, <&rcc PLL3_Q>, <&rcc PLL3_R>;
 clock-names = "pclk", "x8k", "x11k";
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&sai2a_pins_a>, <&sai2b_pins_b>;
 pinctrl-1 = <&sai2a_sleep_pins_a>, <&sai2b_sleep_pins_b>;
 status = "okay";
 
 sai2a: audio-controller@4400b004 {
 #clock-cells = <0>;
 dma-names = "tx";
 clocks = <&rcc SAI2_K>;
 clock-names = "sai_ck";
 status = "okay";
 
 sai2a_port: port {
 sai2a_endpoint: endpoint{
 remote-endpoint = <&wm8978_tx_endpoint>;
 format = "i2s";
 mclk-fs = <256>;
 dai-tdm-slot-num = <2>;
 dai-tdm-slot-width = <16>;
 };
 };
 };
 
 sai2b: audio-controller@4400b024 {
 dma-names = "rx";
 st,sync = <&sai2a 2>;
 clocks = <&rcc SAI2_K>, <&sai2a>;
 clock-names = "sai_ck";
 status = "okay";
 
 sai2b_port: port {
 sai2b_endpoint: endpoint{
 remote-endpoint = <&wm8978_rx_endpoint>;
 format = "i2s";
 mclk-fs = <256>;
 dai-tdm-slot-num = <2>;
 dai-tdm-slot-width = <16>;
 };
 };
 };
 };
 
 
 
 
 | 
 |