打印
[i.MX]

imx6q移植wm8960出现问题,求帮忙解决

[复制链接]
9596|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wsk311728|  楼主 | 2015-1-19 10:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 wsk311728 于 2015-1-19 11:02 编辑

参照E9给出的内核的里board-mx6q_sabresd.c和board-mx6q_sabresd.h文件,在飞思卡尔官方给出的BSP里,修改内核里的board-mx6q_sabresd.c文件,把wm8962的驱动改成wm8960的驱动。
思路如下:
1、修改arch/arm/mach-mx6/board-mx6q_sabresd.h里的配置
2、修改arch/arm/mach-mx6/board-mx6q_sabresd.c里关于wm8962的部分修改成wm8960
3.在include/sound/wm8960.h文件里,添加加如下内容(红色部分):
...
#define WM8960_DRES_MAX  3
#define WM8960_GPIO_FN_DMICCLK         19
#define WM8960_GPIO_FN_DMICDAT         20
struct wm8960_data {
bool capless;  /* Headphone outputs configured in capless mode */

int dres;  /* Discharge resistance for headphone outputs */
int gpio_base;
u32 gpio_init[WM8960_MAX_GPIO];


/* Setup for microphone detection, raw value to be written to
  * R48(0x30) - only microphone related bits will be updated.
  * Detection may be enabled here for use with signals brought
  * out on the GPIOs. */
u32 mic_cfg;


bool irq_active_low;


bool spk_mono;   // Speaker o
};

4、下载imx-wm8960.c文件,放到sound/soc/imx/目录下

5、修改sound/soc/imx/Makefile

snd-soc-imx-wm8960-objs := imx-wm8962.o
改成
snd-soc-imx-wm8960-objs := imx-wm8960.o

obj-$(CONFIG_SND_SOC_IMX_WM8962) += snd-soc-imx-wm8962.o
改成
obj-$(CONFIG_SND_SOC_IMX_WM8960) += snd-soc-imx-wm8960.o


6、修改sound/soc/imx/Kconfig
将以下这段
config SND_SOC_IMX_WM8962
tristate "SoC Audio support for IMX boards with WM8962"
select SND_MXC_SOC_MX2
select SND_SOC_WM8962
help
   Say Y if you want to add support for SoC audio on an i.MX board with
   a WM8962 codec.
改成
config SND_SOC_IMX_WM8960
tristate "SoC Audio support for IMX boards with WM8960"
select SND_MXC_SOC_MX2
select SND_SOC_WM8960
help
   Say Y if you want to add support for SoC audio on an i.MX board with
   a WM8960 codec.
7、关于sound/soc/imx/imx-ssi文件和sound/soc/codecs目录下的wm8960.c和wm8960.h文件官方原来的BSP里就带有,没作更改
8、重新编译内核,没有出现错误,下载到E9开发板中,执行
aplay -l
后,提示:
$ aplay -l
aplay: device_list:240: no soundcards found...
$ alsamixer
cannot open mixer: No such file or directory



由于篇幅过长,有限制,具体请看附件,请大神们给个指点,接下来该怎么做。谢谢!




在E9开发板上移植wm8960驱动.pdf

153.94 KB

imx-wm8960.zip

2.72 KB

相关帖子

沙发
FSL_TICS_Rita| | 2015-1-19 17:09 | 只看该作者
楼主你好,这个我需要帮你看一下,请耐心等待哈~~

使用特权

评论回复
板凳
wsk311728|  楼主 | 2015-1-21 10:27 | 只看该作者
FSL_TICS_Rita 发表于 2015-1-19 17:09
楼主你好,这个我需要帮你看一下,请耐心等待哈~~

好的,谢谢!

使用特权

评论回复
地板
qrgccmmtt| | 2015-1-22 08:55 | 只看该作者
hardware\imx\alsa\tinyalsa_hal.c文件中,声卡列表里有加入wm8960_card吗?每一个这样的结构体在hardware\imx\alsa\目录下都对应着一个头文件的,

struct audio_card *audio_card_list[SUPPORT_CARD_NUM] = {
    &sgtl5k_card,
    &wm8958_card,
    &wm8960_card,//add by cai,
    &wm8962_card,
    &hdmi_card,
    &usbaudio_card,
    &spdif_card,
    &cs42888_card,
    &null_card,
};

使用特权

评论回复
5
zhaohu1218| | 2015-3-23 17:05 | 只看该作者
兄弟,最后怎么样?E9里面提供有8960的源码吗?
E9 在sound/soc/codecs下没有提供wm8960的源码,只有一个wm8960.moudle。

使用特权

评论回复
6
zyh2015| | 2015-4-1 16:54 | 只看该作者
谁有wm8960源码,发一份上来

使用特权

评论回复
7
mini1986| | 2015-4-4 10:58 | 只看该作者
wm8962不兼容wm8960么?

使用特权

评论回复
8
xlb7679| | 2015-4-7 16:23 | 只看该作者
@wsk311728   我也找了网上的那份imx-wm8960.c源码,放到sound/soc/imx/下,Makefile里的规则是有.c的时候优先对.c进行编译,,可是我的生成uImage就是烧到板子上,cat  /proc/asound/cards  devices  都是空的,没有声卡设备,我是不是还是少了哪些步骤?
还有请教下@qrgccmmtt  你说的hardware\imx\alsa\tinyalsa_hal.c这个文件是在哪?找半天也没找到…………

使用特权

评论回复
9
lin亮财| | 2015-12-31 11:33 | 只看该作者
楼主你好,请问你在IMX6Q上移植wm8960,成功了吗?问题是怎么解决的,感谢

使用特权

评论回复
10
aiweixin| | 2016-2-27 11:23 | 只看该作者

使用特权

评论回复
11
sx_freescale| | 2016-3-20 17:52 | 只看该作者
qrgccmmtt 发表于 2015-1-22 08:55
hardware\imx\alsa\tinyalsa_hal.c文件中,声卡列表里有加入wm8960_card吗?每一个这样的结构体在hardware\ ...

你好,我想问下,你那里有config_wm8960.h文件吗?能否帮忙提供一下,这样    &wm8960_card,//add by cai,这个才可以添加

使用特权

评论回复
12
tosave| | 2016-4-11 16:19 | 只看该作者
参照修改 能发出声音  但是声音不正常  查看是位时钟问题 ,怎么着手呢

使用特权

评论回复
13
tosave| | 2016-4-13 16:26 | 只看该作者
tosave 发表于 2016-4-11 16:19
参照修改 能发出声音  但是声音不正常  查看是位时钟问题 ,怎么着手呢

芯片给出的MCLK=24MHz,目前不知道怎么执行手册上的PLL前的2分频,求大神指导

使用特权

评论回复
14
韬铸88| | 2016-8-13 10:20 | 只看该作者
关注参考中

使用特权

评论回复
15
leon_w| | 2016-8-18 17:31 | 只看该作者
请请问楼主解决了吗?我也在移植I2S。目前驱动还没成功,播发提示pcm_write  error

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

27

帖子

0

粉丝