redchenjs / mt762x-wm8960

MT762X WM8960 ALSA SoC machine driver
GNU General Public License v2.0
27 stars 22 forks source link

openwrt master 分支移植错误 #3

Closed myzhang001 closed 4 years ago

myzhang001 commented 4 years ago

我按照你给的说明移植没有成功,是哪里漏了呢

[ 21.612366] mt76x8-wm8960 sound: failed to find audio codec device [ 21.618739] mt76x8-wm8960: probe of sound failed with error -22

redchenjs commented 4 years ago

你用的是哪块板呢? 试一下能不能手动加载:

modprobe snd-soc-wm8960
modprobe snd-soc-mt76x8-wm8960
myzhang001 commented 4 years ago

我使用的是widora neo

myzhang001 commented 4 years ago

root@OpenWrt:/# modprobe snd-soc-wm8960 failed to find a module named snd-soc-wm8960 root@OpenWrt:/# modprobe snd-soc-mt76x8-wm8960 snd-soc-mt76x8-wm8960 is already loaded

redchenjs commented 4 years ago

你是刷了整个固件还是只安装了这个驱动包?kmod-sound-mt7620这个依赖包有没有安装?

myzhang001 commented 4 years ago

我是刷了整个固件,kmod-sound-mt7620 我是安装了的

redchenjs commented 4 years ago
ls /lib/modules/4.xx.xx/ | grep wm8960

里面应该有

snd-soc-mt76x8-wm8960.ko
snd-soc-wm8960.ko

这两个模块,看是不是少了

myzhang001 commented 4 years ago

snd-soc-mt76x8-wm8960.ko 找到了有的 但是没有 snd-soc-wm8960.ko 这个

redchenjs commented 4 years ago

snd-soc-wm8960.ko这个模块是打包在kmod-sound-mt7620里面的,顺便看看有没有这几个模块

snd-soc-ralink-i2s.ko
snd-soc-simple-card-utils.ko
snd-soc-simple-card.ko

也是打包在kmod-sound-mt7620里面的

myzhang001 commented 4 years ago

image

myzhang001 commented 4 years ago

我编译了 komd-sound-mt7620 但是还是没有出来 snd-soc-wm8960.ko

myzhang001 commented 4 years ago

ymbol: DEFAULT_kmod-sound-mt7620 [=n] │
│ Type : boolean │
│ Defined at tmp/.config-target.in:172899 │
│ Selected by: TARGET_ramips_mt7620_DEVICE_dlink_dch-m225 [=n] && && TARGETramips
│ │
│ │
│ Symbol: MODULE_DEFAULT_kmod-sound-mt7620 [=n] │
│ Type : tristate │
│ Defined at tmp/.config-target.in:172902 │
│ Depends on: TARGET_PER_DEVICE_ROOTFS [=n] && m && MODULES [=y] │
│ Selects: PACKAGE_kmod-sound-mt7620 [=y] │
│ Selected by: TARGET_DEVICE_ramips_mt7620_DEVICE_dlink_dch-m225 [=n] && TARGET_MULTI_PROFIL │
│ │
│ │
│ Symbol: PACKAGE_kmod-sound-mt7620 [=y] │
│ Type : tristate │
│ Prompt: kmod-sound-mt7620............................. MT7620 PCM/I2S Alsa Driver │
│ Location: │
│ -> Kernel modules │
│ -> Sound Support │
│ (1) -> kmod-sound-core............................................ Sound support (PACKAG │
│ Defined at tmp/.config-package.in:15299 │
│ Depends on: !TARGET_ramips_rt288x [=n] && PACKAGE_kmod-sound-core [=y] && TARGET_ramips [= │
│ Selects: PACKAGE_kmod-regmap-i2c [=y] && PACKAGE_kmod-dma-ralink [=y] && PACKAGE_kmod-soun │
│ Selected by: MODULE_DEFAULT_kmod-sound-mt7620 [=n] && TARGET_PER_DEVICE_ROOTFS [=n] && m &

redchenjs commented 4 years ago

这就奇怪了,不知道你用的是哪个版本的OpenWrt源码,我编译试试 master的代码是没问题的:

[   36.799994] gdma-rt2880 10002800.gdma: revision: 3, channels: 16
[   36.858921] i2c-mt7621 10000900.i2c: clock 100KHz, re-start not support
[   36.878815] ralink-i2s 10000a00.i2s: mclk 480MHz
[   36.947892] mt76x8-wm8960 sound: wm8960-hifi <-> 10000a00.i2s mapping ok
myzhang001 commented 4 years ago

我用的是最新的 git 官方拉下来最新的master 分支的代码,你可以试试

redchenjs commented 4 years ago

不是说18.06吗?

myzhang001 commented 4 years ago

i2c-mt7621 10000900.i2c: clock 100KHz, re-start not support 这个我这边也没有看到,是缺了哪个配置呀

myzhang001 commented 4 years ago

我确认了下是master 分支

redchenjs commented 4 years ago

@myzhang001 确实是缺少i2c依赖的原因,最新代码已解决该问题。

myzhang001 commented 4 years ago

编译完了需要我单独安装么

redchenjs commented 4 years ago

更新代码后make menuconfig一下,依赖会自动选上,重新编译就行了,不用手动安装

myzhang001 commented 4 years ago

但是我重新编译了还是没有,尴尬了 我看了 ipk 包是有的

myzhang001 commented 4 years ago

snd-soc-wm8960.ko 一直没出来

redchenjs commented 4 years ago

Deepin 截圖_dde-desktop_20190919142221 kmod-i2c-mt7628这个模块没有自动勾选吗

myzhang001 commented 4 years ago

已经自动勾选了

myzhang001 commented 4 years ago

[ 0.541338] ALSA device list: [ 0.544357] No soundcards found. [ 0.555699] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.

[ 22.008095] gdma-rt2880 10002800.gdma: revision: 3, channels: 16 [ 22.038467] ralink-i2s 10000a00.i2s: mclk 480MHz [ 22.059821] mt76x8-wm8960 sound: failed to find audio codec device [ 22.066121] mt76x8-wm8960: probe of sound failed with error -22 [ 22.089938] Loading modules backported from Linux version v5.3-rc4-0-gd45331b00ddb [ 22.097698] Backport generated by backports.git v5.3-rc4-1-0-g4ec72687

这是logo

redchenjs commented 4 years ago

你试试make clean后再编译

myzhang001 commented 4 years ago

好的,我试试

myzhang001 commented 4 years ago

@redchenjs make clean 后 还是不行哦,不知道是什么原因

redchenjs commented 4 years ago

那用我的配置文件试试吧,测试过可用 Widora-NEO-16M.zip

myzhang001 commented 4 years ago

好的,非常感谢,您是否有csdn 或者博客 ,我好跟随你的脚步学习O(∩_∩)O哈哈~

redchenjs commented 4 years ago

暂时没有

myzhang001 commented 4 years ago

可以把你的dts 文件也发给我参考下不,mt7628an_widora_neo.dtsi mt7628an_widora_neo-16m.dts mt7628an.dtsi

myzhang001 commented 4 years ago

[ 86.835493] gdma-rt2880 10002800.gdma: revision: 3, channels: 16 [ 86.861157] ralink-i2s 10000a00.i2s: mclk 480MHz [ 86.896607] mt76x8-wm8960 sound: wm8960-hifi <-> 10000a00.i2s mapping ok

现在已经挂载成功了,但是没有声音

redchenjs commented 4 years ago

初始是静音的,需按readme中设置,如要保存设置可以添加到开机脚本中

myzhang001 commented 4 years ago

我按照readme 设置了,同样没有声音

redchenjs commented 4 years ago

@myzhang001 我把dts文件上传了,其实README中对MCLKADCLRC时钟的说明就是针对NEO这块板子的,不设置时钟是没有声音的,你可以参考一下上传的dts添加缺失的项。