i.MX6 Ultra Lite EK - WM8960 issue with amixer

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

i.MX6 Ultra Lite EK - WM8960 issue with amixer

跳至解决方案
2,690 次查看
shashankkulkarn
Contributor I

Hi,

 

I am using i.MX6 Ultra Lite Evaluation Kit for evaluating this series of processors. I used the image with kernel version 3.14.38 from freescale's software resources. More specifically, the board boots from micro SD card.

 

I wanted to evaluate the sound functionality of the board and used amixer from the terminal for the same. The codec is detected correctly as WM8960. I simply enabled the headphone output and tried the speaker-test. It seems to work as I hear pink noise. Then I decided to test sine wave by using arguments --test sine --frequency 5000 and I hear the same pink noise. I confirmed that something is amiss when I tried aplay <local wav file> and heard the same pink noise.

 

I decided to examine the default driver settings closely by using amixer scontents. Based on the datasheet and this great post by a Mr. Jimmy Chan (WM8960 audio codec ), I could verify that most of the default settings should be able to play correctly from the headphone. I am unclear about a couple of things though:

 

1) The LD2LO and RD2RO switches - which simple mixer control closes these switches? My understanding is that the Left Output Mixer PCM and Right Output Mixer PCM are mapped to these switches respectively.

2) The Right and Left Boost Mixers are ON - what switches do these map to?

 

Attached is the log from amixer scontents command.

 

Please help me solve this issue. I will move to a C++ application that uses alsalib only after the amixer-aplay-speaker-test works properly.

Thanks!

 

Regards,

Shashank

Original Attachment has been moved to: log.txt.zip

标记 (2)
0 项奖励
回复
1 解答
1,468 次查看
jimmychan
NXP TechSupport
NXP TechSupport
1) The LD2LO and RD2RO switches - which simple mixer control closes these switches? My understanding is that the Left Output Mixer PCM and Right Output Mixer PCM are mapped to these switches respectively.

2) The Right and Left Boost Mixers are ON - what switches do these map to?

Ans 1) yes, your understanding is right

Ans 2) You can read the "After created all the controls, we can start to create the switches." in my post. I used the same name of each switch in my driver. So, the switches can be easily to find out in the amixer or alsamixer.  You can go into the driver and find the switches and then modify the name.

e.g.

SOC_DAPM_SINGLE("<- LD2LO", WM8960_LOUTMIX, 8, 1, 0), //LD2LO

SOC_DAPM_SINGLE("<- RD2RO", WM8960_ROUTMIX, 8, 1, 0), //RD2RO

{ "Left Output Mixer", "<- LD2LO", "Left DAC" },

{ "Right Output Mixer", "<- RD2RO", "Right DAC" },

Hope this information can help you.

在原帖中查看解决方案

0 项奖励
回复
3 回复数
1,469 次查看
jimmychan
NXP TechSupport
NXP TechSupport
1) The LD2LO and RD2RO switches - which simple mixer control closes these switches? My understanding is that the Left Output Mixer PCM and Right Output Mixer PCM are mapped to these switches respectively.

2) The Right and Left Boost Mixers are ON - what switches do these map to?

Ans 1) yes, your understanding is right

Ans 2) You can read the "After created all the controls, we can start to create the switches." in my post. I used the same name of each switch in my driver. So, the switches can be easily to find out in the amixer or alsamixer.  You can go into the driver and find the switches and then modify the name.

e.g.

SOC_DAPM_SINGLE("<- LD2LO", WM8960_LOUTMIX, 8, 1, 0), //LD2LO

SOC_DAPM_SINGLE("<- RD2RO", WM8960_ROUTMIX, 8, 1, 0), //RD2RO

{ "Left Output Mixer", "<- LD2LO", "Left DAC" },

{ "Right Output Mixer", "<- RD2RO", "Right DAC" },

Hope this information can help you.

0 项奖励
回复
1,468 次查看
shashankkulkarn
Contributor I

Hi all,

We are stuck at this juncture - even the unit tests given the in Freescale docs don't work. We are looking forward to finalizing an application processor. It would be great if someone can help us in this regard.

Thanks!

Regards,

Shashank

0 项奖励
回复
1,468 次查看
shashankkulkarn
Contributor I

Bump!

Can someone please guide me to resolve this issue?

Thanks!

Regards,

Shashank

0 项奖励
回复