plbossart / UCM

UCM files for Intel platforms
104 stars 48 forks source link

cht-bsw-rt5672 not working #44

Open t-moe opened 6 years ago

t-moe commented 6 years ago

I downloaded the files from cht-bsw-rt5672 and copied them to /usr/share/alsa/ucm afterwards i ran

alsaucm -c cht-bsw-rt5672 set _verb HiFi set _enadev Speaker

which gave me

ALSA lib utils.c:67:(uc_mgr_config_load) could not open configuration file /usr/share/alsa/ucm/GETAC-T800G2--T800G2/GETAC-T800G2--T800G2.conf ALSA lib parser.c:1421:(load_master_config) error: could not parse configuration for card GETAC-T800G2--T800G2

t-moe commented 6 years ago

Alsa info: alsa-info.htERmx8k7T.txt

jimmyjimjames commented 4 years ago

@t-moe, did you ever get this working?

I too am trying to get audio working on the Getac T800G2 tablet and saw the same thing as t-moe did.

Here was my alsa debug script output:
http://alsa-project.org/db/?f=16eb1e700f8ca3cd948b661f73c9eeeff409cd75

I first added downloaded and added the ucm files/directory for cht-bsw-rt5672 which didn't work.

So, I copied over the ucm files/directory for cht-bsw-rt5672 with the the name it is expecting:

cd /usr/share/alsa/ucm/
cp -arp cht-bsw-rt5672 GETAC-T800G2--T800G2
cd GETAC-T800G2--T800G2/
mv cht-bsw-rt5672.conf GETAC-T800G2--T800G2.conf

Now the alsaucm command shows:

alsaucm -c cht-bsw-rt5672 set _verb HiFi set _enadev Speaker
ALSA lib main.c:438:(execute_sequence) unable to execute cset 'name='media2_in Gain 0 Switch' off'

ALSA lib main.c:1698:(set_verb_user) error: failed to initialize new use case: HiFi
alsaucm: error failed to set _verb=HiFi: Device or resource busy

I get some of this in syslog:

Sep 23 13:58:58 al528 kernel: [ 1265.476822] intel_sst_acpi 808622A8:00: FW Version 01.0b.02.02
Sep 23 13:58:58 al528 kernel: [ 1265.508608]  Audio Port: ASoC: no backend DAIs enabled for Audio Port
Sep 23 13:59:05 al528 kernel: [ 1271.983824]  Audio Port: ASoC: no backend DAIs enabled for Audio Port
Sep 23 14:00:00 al528 kernel: [ 1327.012156]  Audio Port: ASoC: no backend DAIs enabled for Audio Port
Sep 23 14:00:22 al528 kernel: [ 1349.721215]  Audio Port: ASoC: no backend DAIs enabled for Audio Port
Sep 23 14:01:09 al528 kernel: [ 1395.802821]  Deep-Buffer Audio Port: ASoC: no backend DAIs enabled for Deep-Buffer Audio Port
dmesg | grep rt567
[   10.476762] cht-bsw-rt5672 cht-bsw-rt5672: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
[   10.476812] cht-bsw-rt5672 cht-bsw-rt5672: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok
[   10.477755] cht-bsw-rt5672 cht-bsw-rt5672: rt5670-aif1 <-> ssp2-port mapping ok
[   10.482698] input: cht-bsw-rt5672 Headset as /devices/pci0000:00/808622A8:00/cht-bsw-rt5672/sound/card1/input18
[   10.742723] rt5670 i2c-10EC5672:00: Failed to set DMIC clock
[   10.745194] rt5670 i2c-10EC5672:00: ASoC: PRE_PMU: DMIC CLK event failed: -22

I'm not sure why the rt5670 driver is doing stuff when we have the rt5672.

Doing modinfos on both of them shows:

modinfo snd-soc-rt5670
    filename:       /lib/modules/5.0.0-29-generic/kernel/sound/soc/codecs/snd-soc-rt5670.ko
    license:        GPL v2
    author:         Bard Liao <bardliao@realtek.com>
    description:    ASoC RT5670 driver
    srcversion:     21FD17B5A6F5C4939D61CE3
    alias:          acpi*:10EC5640:*
    alias:          acpi*:10EC5672:*
    alias:          acpi*:10EC5670:*
    alias:          i2c:rt5672
    alias:          i2c:rt5671
    alias:          i2c:rt5670
    depends:        snd-pcm,snd-soc-core,snd-soc-rl6231
    retpoline:      Y
    intree:         Y
    name:           snd_soc_rt5670
    vermagic:       5.0.0-29-generic SMP mod_unload 
    signat:         PKCS#7
    signer:         
    sig_key:        
    sig_hashalgo:   md4
    parm:           quirk:Board-specific quirk override (uint)

modinfo snd_soc_sst_cht_bsw_rt5672
    filename:       /lib/modules/5.0.0-29-generic/kernel/sound/soc/intel/boards/snd-soc-sst-cht-bsw-rt5672.ko
    alias:          platform:cht-bsw-rt5672
    license:        GPL v2
    author:         Subhransu S. Prusty, Mengdong Lin
    description:    ASoC Intel(R) Baytrail CR Machine driver
    srcversion:     5F5836B3D656227FB734A0D
    depends:        snd-soc-core,snd-soc-rt5670,snd,snd-pcm
    retpoline:      Y
    intree:         Y
    name:           snd_soc_sst_cht_bsw_rt5672
    vermagic:       5.0.0-29-generic SMP mod_unload 
    signat:         PKCS#7
    signer:         
    sig_key:        
    sig_hashalgo:   md4

Do I maybe need to remove the rt5672 alias from snd-soc-rt5670 ? Is there a quirk that I need to pass to the kernel for snd_soc_sst_cht_bsw_rt5672 ?