我正在尝试在我的湾径- 过去几周在 Ubuntu 16.04 上使用 rt5640。但即使安装了内核补丁,也没有声音4.10-Rc5 +Ubuntu 16.04
由于我的 DSDT 表没有关于设备 (RTEK) 的 CHAN 信息,因此我重建了内核。我从 Windows 中获取了 chan 信息。
请检查日志。
有什么建议么??
请查看我的内核日志
[ 6.427853] Audio Probbed BIOS Routing: AIF1 connected
[ 6.427858] bytcr_rt5640 bytcr_rt5640: quirk IN1_MAP enabled
[ 6.427861] bytcr_rt5640 bytcr_rt5640: quirk DIFF_MIC enabled
[ 6.427863] bytcr_rt5640 bytcr_rt5640: quirk SSP0_AIF1 enabled
[ 6.427865] bytcr_rt5640 bytcr_rt5640: quirk MCLK_EN enabled
[ 6.427867] Audio Probbed byt_rt5640_cpu_dai_name ssp0-port
[ 6.427875] bytcr_rt5640 bytcr_rt5640: Failed to get MCLK from pmc_plt_clk_3: -2
[ 6.431975] Audio Probbed Failed to get MCLK from pmc_plt_clk_3: -2
[ 6.439096] rt5640_probe snd_soc_codec_force_bias_level
[ 6.442536] rt5640_probe sRT5640_ID_5640
[ 6.442758] rt5640_probe return Success now
[ 6.443609] bytcr_rt5640 bytcr_rt5640: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
[ 6.443678] bytcr_rt5640 bytcr_rt5640: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok
[ 6.443724] compress asoc: snd-soc-dummy-dai <-> compress-cpu-dai mapping ok
[ 6.444599] bytcr_rt5640 bytcr_rt5640: rt5640-aif1 <-> ssp0-port mapping ok
[ 6.447420] devm_snd_soc_register_card Success call platform_set_drvdata 0
[ 6.447422] Audio Probbed snd_byt_rt5640_mc_probe returns
[ 10.603446] ASoC: Baytrail Audio Port no valid capture route
[ 10.603455] soc_pcm_open caled
[ 10.603457] ASoC: cpu_dai->name media-cpu-dai
[ 10.654754] SST_IPC ***IPC_IA_FW_INIT_CMPLT_MRFLD: RX ***
[ 10.654757] SST_IPC *** FW Init msg came***
[ 10.654765] intel_sst_acpi 80860F28:00: FW Version 01.0c.00.01
[ 10.654766] FW Version RX 01.0c.00.01
[ 10.654768] Build date RX Mar 4 2015 Time 22:09:57
[ 10.654797] platform->component.name = sst-mfld-platform
[ 10.654800] ASoC: start codec cpu_dai->name media-cpu-dai
[ 10.655173] Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port
[ 10.655711] Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port
[ 10.655970] Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port
----------------------------------------------------
答案1
在 GPD Pocket 上安装 Gentoo 时我遇到了同样的问题,奇怪的是,我发现这pulseaudio
可以解决问题...运行它后它会因错误而退出,但之后您可以用来aplay
播放 wav 文件。
我运行时脉冲音频的输出:
W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).
Killed
如果我在运行之前dmesg
尝试使用,这是我的输出,我正在使用内核 4.14.0(在撰写本文时刚刚发布):aplay
pulseaudio
[ 98.209199] hci_uart_bcm serial0-0: BCM irq: 134
[ 98.209250] usb 1-3: USB disconnect, device number 3
[ 98.283103] Error: Driver 'pcspkr' is already registered, aborting...
[ 98.350269] rt5645 i2c-10EC5645:00: i2c-10EC5645:00 supply avdd not found, using dummy regulator
[ 98.350316] rt5645 i2c-10EC5645:00: i2c-10EC5645:00 supply cpvdd not found, using dummy regulator
[ 98.431735] Bluetooth: hci0: BCM: chip id 101
[ 98.432058] Bluetooth: hci0: BCM: features 0x2f
[ 98.433075] Bluetooth: hci0: BCM4354A2
[ 98.433080] Bluetooth: hci0: BCM4356A2 (001.003.015) build 0000
[ 98.442394] bluetooth hci0: Direct firmware load for brcm/BCM4356A2.hcd failed with error -2
[ 98.442398] Bluetooth: hci0: BCM: Patch brcm/BCM4356A2.hcd not found
[ 98.547281] intel_sst_acpi 808622A8:00: LPE base: 0xa1600000 size:0x200000
[ 98.547284] intel_sst_acpi 808622A8:00: IRAM base: 0xa16c0000
[ 98.547346] intel_sst_acpi 808622A8:00: DRAM base: 0xa1700000
[ 98.547359] intel_sst_acpi 808622A8:00: SHIM base: 0xa1740000
[ 98.547366] intel_sst_acpi 808622A8:00: Mailbox base: 0xa1744000
[ 98.547370] intel_sst_acpi 808622A8:00: DDR base: 0x20000000
[ 98.547598] intel_sst_acpi 808622A8:00: Got drv data max stream 25
[ 98.612056] cht-bsw-rt5645 cht-bsw-rt5645: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
[ 98.612107] cht-bsw-rt5645 cht-bsw-rt5645: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok
[ 98.612131] compress asoc: snd-soc-dummy-dai <-> compress-cpu-dai mapping ok
[ 98.612461] cht-bsw-rt5645 cht-bsw-rt5645: rt5645-aif1 <-> ssp2-port mapping ok
[ 98.668833] input: chtrt5645 Headset as /devices/pci0000:00/808622A8:00/cht-bsw-rt5645/sound/card1/input14
[ 99.043453] hpet1: lost 9601 rtc interrupts
[ 190.221386] intel_sst_acpi 808622A8:00: FW Version 01.0b.02.02
[ 190.222291] Audio Port: ASoC: no backend DAIs enabled for Audio Port
[ 230.054571] Audio Port: ASoC: no backend DAIs enabled for Audio Port
如果我尝试播放普通的 WAV 文件,aplay -D hw:1,0 /file.wav
则会收到以下错误消息:
Playing WAVE '/file.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Warning: rate is not accurate (requested = 44100Hz, got = 48000Hz)
please, try the plug plugin
aplay: set_params:1361: Unable to install hw params:
ACCESS: RW_INTERLEAVED
FORMAT: S16_LE
SUBFORMAT: STD
SAMPLE_BITS: 16
FRAME_BITS: 32
CHANNELS: 2
RATE: 48000
PERIOD_TIME: 125000
PERIOD_SIZE: 6000
PERIOD_BYTES: 24000
PERIODS: 4
BUFFER_TIME: 500000
BUFFER_SIZE: 24000
BUFFER_BYTES: 96000
TICK_TIME: 0
用 plughw 替换 hw 不会带来太大的区别。
我将尝试找出 pulseaudio 的哪个部分解决了该问题...这一定很容易,因为修复问题后它就因错误而退出。