Bug 115531

Summary: Missing codec driver cx2072x, add support for it
Product: Drivers Reporter: Gianmaria Scorza (scogiam95)
Component: Sound(ALSA)Assignee: Jaroslav Kysela (perex)
Status: RESOLVED CODE_FIX    
Severity: blocking CC: andy.shevchenko, bill.666, billehhg1, caitlynmmartin, chericpraise, combeynot, Franmaxpoke, ftg, galyo, gav, gerhard.poul, gm89, heliotrop, howerkraft, jacek.jagosz, jeremiah.summers, jiapulidoar, js, laurentcharles, lcdatti, lionelmiquel, luca_zerb, marcin.net, max1riesewijk, me, medicmomcilo, mirh, mitmtestandroid, monkeygre7, nekit1000, newman1097, nicholrusan, phasesweeper, pierre-louis.bossart, poprocks, reghe, ric-82, rjhowardmiller, rubensdeveloper, russianneuromancer, scogiam95, simon.ho, sournois, thomasnak, tiwai, v, xose.rabade, yevgeniy.melnichuk, yugiohjcj
Priority: P1    
Hardware: Intel   
OS: Linux   
Kernel Version: Linux version 4.6.0-040600rc1-generic (kernel@tangerine) (gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2) ) #201603261930 SMP Sat Mar 26 23:32:43 UTC 2016 Subsystem:
Regression: No Bisected commit-id:
Attachments: DSDT table of asus e200ha
Found windows driver of this codec
dmesg extract HP608
UCM config files
Revised UCM profile
Takashi cx2072x patch against 4.20

Description Gianmaria Scorza 2016-03-30 17:34:40 UTC
I've recently bought an Asus e200ha.
Sound in this laptop doesn't work.
The sound card is an intel sst with codec conexant cx2072x

aplay -l:
aplay: device_list:268: no soundcard found...
in the sound setting there is a "Dummy output"

dmesg say :
[ 12.270548] intel_sst_acpi 808622A8:00: No matching machine driver found
Comment 1 Pierre Bossart 2016-03-30 18:45:17 UTC
can you please share the DSDT table to help dig deeper? 
see https://01.org/linux-acpi/documentation/overriding-dsdt for pointers

It's not clear if there is a driver for this codec and clearly the intel drivers don't know which HID they should look for.
Comment 2 Gianmaria Scorza 2016-03-30 19:30:09 UTC
Created attachment 211121 [details]
DSDT table of asus e200ha
Comment 3 Pierre Bossart 2016-03-30 19:57:15 UTC
You have 2 devices listed in the BIOS under I2C2:
Name (_HID, "14F10720")  : connexant
Name (_HID, "10EC5648")  : realtek

Can you look at /sys/bus/acpi/devices/<HID>:<xx>/status to see which one is actually activated? if the value of status is not 0xf the device is not used
Comment 4 Gianmaria Scorza 2016-03-30 20:26:34 UTC
giamma1295@Power-Netbook / $ cat /sys/bus/acpi/devices/14F10720\:00/status 15

giamma1295@Power-Netbook / $ cat /sys/bus/acpi/devices/10EC5648\:00/status 0

is used the conexant
Comment 5 Pierre Bossart 2016-03-30 20:31:01 UTC
thanks for confirming. to the best of my knowledge there is no codec driver for this device in the mainline kernel. it's complicated enough when we have codec drivers, this may take a while to get support for this platform unfortunately.
Comment 6 Gianmaria Scorza 2016-03-30 23:12:28 UTC
Created attachment 211141 [details]
Found windows driver of this codec

I do not know if it helps, but I found the inf of the codec driver for windows
Comment 7 xose.rabade 2016-07-15 17:19:39 UTC
I think here this people solve the same problem but I don't know how to do it:
http://forum.kodi.tv/showthread.php?tid=261371&page=4

Regards.
Comment 8 RussianNeuroMancer 2016-08-12 01:29:29 UTC
No, this thread about HDMI audio.
Comment 9 Thomas 2016-09-15 15:26:30 UTC
I have this same device. Anything I can do to help?

It's a really nice little on-the-road laptop, so I'll still use it even without sound, but it would be the perfect lightweight cheap machine if it had working sound.
Comment 10 Thomas 2016-09-18 06:15:29 UTC
There are Android tablets available using these same SoC's. Any chance there's a driver to be found there?
Comment 11 gav 2016-09-19 17:27:24 UTC
I can confirm that I am also experiencing the same problem with my ASUS E200HA Laptop.

dmesg reports:
[    6.822519] intel_sst_acpi 808622A8:00: No matching machine driver found

This results in no audio being available. I understand from the above thread that this is due to a missing codec for the Conexant cx2072x.

It would be great to get support for this in the kernel. This is the only device on my laptop that is missing support.

Can I do anything further to help? Should I provide further information here, if so please do let me know.

Thanks in advance!
Comment 12 Heliotrop 2016-09-21 10:03:27 UTC
Same here.
FN-keys F10, F11, F12 show audio functionality but the audio device is not found
Comment 13 Heliotrop 2016-09-21 14:37:33 UTC
(In reply to Heliotrop from comment #12)
> Same here.
> FN-keys F10, F11, F12 show audio functionality but the audio device is not
> found

Don't know if it helps but there is a Windows 10 audio driver:
http://www.asus.com/Notebooks/ASUS-Vivobook-E200HA/HelpDesk_Download/

called Audio_Conexant_Win10_64_VER162058.zip It contains 11 files called

cx2072x.cat
cx2072x.inf
cx2072x.sys
CXAPOAgent64.exe
inst_sa3.ini
SA3.cab
Setup.bat
Setup.exe
UCI64A101.dll
UIUs.exe
WdfCoinstaller01011.dll

Is there a way to make use of this?
Comment 14 gav 2016-09-22 14:36:07 UTC
There is a patch that seems to reference the device id of the intel sst audio found in the Asus e200ha.

https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/soc/intel?id=bd01fdc3aa63b7ba0b035f9196d80551ad03f5d4

If i execute dmesg I can see:
[ 6.822519] intel_sst_acpi 808622A8:00: No matching machine driver found ...

... and id 808622A8 seems to be handled by this patch?
Comment 15 Jeremiah 2016-10-26 01:41:58 UTC
Multiple Cherry Trail based devices have need this codec for sound to work at all.

So far I know of 3.
1. ASUS A200HA
2. ASUS T100HA
3. HP Pavilion X2 10-N109

I am sure there is more, or at least will be more. These little Cherry Trail latops though poorly supported hardware. Make great little Linux Laptops. It would be great if we could get them to work. What more would be needed to help? Thanks
Comment 16 Caitlyn Martin 2016-12-04 02:19:32 UTC
I can confirm that the HP x2 Detachable 10-p010nr is also affected.  No sound output device is recognized using a 4.8.0 kernel.  I'm running Ubuntu and the build I am using is Ian Morrison's (linuxium) patched for the Cherry Trail SOC.  I also see the following in dmesg:

[   5.432616] intel_sst_acpi 808622A8:00: No matching machine driver found ...

same device id gav*flydando referenced back in September.
Comment 17 combeynot 2016-12-05 09:40:47 UTC
HP Pro 608 G1 is also affected. (Cherry trail tablet)
Same conexant codec on intel sst is missing.
Comment 18 reghe 2016-12-06 20:57:24 UTC
Affects also ASUS X206HA. No sound card detected.
Comment 19 Pierre Bossart 2016-12-06 23:17:19 UTC
(In reply to Jeremiah from comment #15)
> Multiple Cherry Trail based devices have need this codec for sound to work
> at all.
> 
> So far I know of 3.
> 1. ASUS A200HA
> 2. ASUS T100HA
> 3. HP Pavilion X2 10-N109

T100HA does not use this codec, I have one and it uses the ALC3270 which is compatible with RT5645.
Comment 20 Pierre Bossart 2016-12-19 18:57:52 UTC
Simon Ho from Conexant released a first codec driver on the ALSA mailing list today. Expect an update soonish and a follow-up machine driver soon from Intel.
Merry Xmas.
Comment 21 gav 2016-12-19 20:37:31 UTC
That's amazing news. Merry Xmas indeed!

Thank you for the update Pierre, it's most appreciated.
Comment 22 combeynot 2016-12-21 11:42:26 UTC
Yes, that's really great, thanks a lot for this work !

A few days ago, someone published some of your preliminary work here:
https://github.com/openlab-aux/vuizvui/blob/master/modules/hardware/t100ha/sound.patch

I made some little try on android x86 with k4.9.
Card detected without problem but of course no sound, as I need asound.state file. Anyway i suppose it's at a very early stage and it's better to wait...

Thanks again !

Joyeux Noël !
Comment 23 Jimmy Pulido 2017-01-07 04:19:28 UTC
That's really awesome! Also, The ASUS HID devices' problem with touch pad has been fixed by Victor Vlasenko and his ASUS HID DKMS driver, more info here:
 
https://github.com/vlasenko/hid-asus-dkms 

I proved it, and I'm using it. It works really good on my e200ha Asus.  

The  Cherry Trail based devices are really great running GNU/Linux. And now they'll be the best cheap and portable devices that can run Linux !  

Thanks all of you!!
 
¡¡Gracias a todos!!
Comment 24 xose.rabade 2017-01-07 15:45:16 UTC
Is it working with multitouch?
Comment 25 Jimmy Pulido 2017-01-09 23:32:22 UTC
Yes, it is working with multitouch. 2,3,4... fingers.
Comment 26 Vladimir Musikhin 2017-01-12 14:56:23 UTC
The 4.10-rc3 kernel has support for the touchpad.
Comment 27 Luca Datti 2017-01-15 17:12:35 UTC
Does audio work via headphones?
Comment 28 Pierre Bossart 2017-01-16 00:08:25 UTC
(In reply to Luca Datti from comment #27)
> Does audio work via headphones?

not yet, still issues with jack detection and routing.
Comment 29 Laurent 2017-01-18 12:13:30 UTC
Hi,

I'm interested in this patch...

(In reply to combeynot from comment #22)
> Yes, that's really great, thanks a lot for this work !
> A few days ago, someone published some of your preliminary work here:
> https://github.com/openlab-aux/vuizvui/blob/master/modules/hardware/t100ha/
> sound.patch
> (...)

...but I'm not familiar with the way to proceed.

- Is there any kernel delivery including the patch?
- If not, any workaround/alternative?
- I'm planning to use Mint or Ubuntu. Do you know how do I properly compile the kernel with respect to the environment?

Thanks a lot for your help

NB: I am able to compile de kernel. Not expert, but skilled enough to have it running.

-- Laurent
Comment 30 combeynot 2017-01-20 10:28:47 UTC
(In reply to Laurent from comment #29)
> Hi,
> 
> I'm interested in this patch...
> 
Hi Laurent,

I'll reply to you directly by email, in order not to be off topic.
Anyhow, it's probably better to wait as audio routing is not working for the moment...

Combeynot
Comment 31 Franmaxpoke 2017-02-02 18:18:41 UTC
Hi there,

Do you have any update on the codec driver for conexant cx2072x, please? I'd love to get the sound working on my little Asus x206ha :-)
Comment 32 sournois 2017-02-11 17:26:32 UTC
This is also an issue on my Asus E200HA. I'm running Elementary OS, generic x64 Linux version 4.4.0-62. Eager to know of a solution.
Comment 33 combeynot 2017-02-12 17:34:11 UTC
Created attachment 254715 [details]
dmesg extract HP608

On HP 608, I can't get latest version (Ubuntu experimental codecs from P.L. Bossart) working. Still have:

Audio Port: ASoC: no backend DAIs enabled for Audio Port

Attached an extract from dmesg
I'm not skilled to go further...
Comment 34 Pierre Bossart 2017-02-12 21:18:05 UTC
it's on the todo list, Conexant submitted a first version of their driver on alsa-devel and are working on corrections while I also fix stuff on the Intel side. There are still some issues with more common platforms that we want to fix first so it's not my immediate priority and it's not going to land in the kernel before 4.12
Comment 35 Yevgeniy 2017-02-12 21:25:54 UTC
> it's on the todo list
glat to hear that!

> it's not my immediate priority and it's not going to land in the kernel
> before 4.12
that is a pity. Thank you anyway for the effort.
Comment 36 combeynot 2017-02-13 10:13:51 UTC
Ok, thanks a lot for the work.
Comment 37 billehhg1 2017-02-14 15:31:54 UTC
I just stumbles upon this wiki page on how to patch your kernel and make sound work until it can be build into kernel.  (or by downloading a package from aur on arch distros)   https://aur.archlinux.org/packages/linux-ct/
Comment 38 billehhg1 2017-02-14 15:32:45 UTC
I just stumbled upon this wiki page on how to patch your kernel and make sound work until it can be build into kernel.  (or by downloading a package from aur on arch distros)   https://aur.archlinux.org/packages/linux-ct/
Comment 39 combeynot 2017-02-18 08:07:24 UTC
(In reply to billehhg1 from comment #38)
> I just stumbled upon this wiki page on how to patch your kernel and make
> sound work until it can be build into kernel.  (or by downloading a package
> from aur on arch distros)   https://aur.archlinux.org/packages/linux-ct/


This seems to be HDMI sound. USB or Bluetooth sound already works too. Most of our devices are compact (tablet/laptop) so we really need internal asoc sound...
Comment 40 billehhg1 2017-02-18 12:48:12 UTC
Aha. I am a complete newb to linux and completely missed that... Mine is also a tablet/laptop and I was trying to figure out why even after that patch it still didn't work... I guess that explains it
Comment 41 Takashi Iwai 2017-02-23 19:23:47 UTC
I got an ASUS E200H now, and played a bit.  With Simon's two patches and Pierre's two SST patches, and with two MCLK patches -- now I could hear and record.  Not a bad start :)

However, the audio quality is bad: it plays almost only from the left channel, and at the end of playback it gradually to the right.  Also a lot of crackling noise, especially at recording.  Pierre, do you have any hint?
I'm looking at the clocking stuff, and CX codec driver looks a bit different from others...

Another issue is that a loud pop noise at the start of the playback.  I'm not sure whether it's the same problem as the above, or a different issue.

And, a good news is: I hacked quickly the jack detection, and it seems working.  The only problem with the jack detection is that PA doesn't mute the speaker when I boot with the headphone plugged.  The ALSA jack element shows the correct value, so I suppose it rather a PA issue with UCM.
Comment 42 Takashi Iwai 2017-02-23 19:33:24 UTC
I put my test branch to topic/asus-e100h-4.10 of sound git tree.
  git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
It's based on v4.10.

There you can find a few more fixes:

ef88a22f6f56132275f437df06e9c1532104ba31
    ASoC: cx2072x: Fix printf int argument

0868279a1361676bd99a17dd11a1aa6005a86643
    ASoC: cx2072x: Fix unexpected error code at no MCLK fallback

f3fa30fa2615c7fd2d3e4650f6b378d70b15e797
    ASoC: intel: Don't print FW version repeatedly

aee0489bfd9622543fa9cea95d29df174df9e8bf
    ASoC: intel: Fix kconfig dependency

97539f56e8c917c8b50004bb27159a80722a9469
    ASoC: intel: Add headset jack support to cht-cx2072x

... and another bonus for E200H(A) user :)

c86c0067e6111324a39f523c250c8b1089b1d822
    HID: asus: Add missing Fn key maps on ASUS E200H
Comment 43 Takashi Iwai 2017-02-23 19:36:18 UTC
Created attachment 254903 [details]
UCM config files

Extract this under /usr/share/alsa/ucm/chtcx2072x/ directory.
Comment 44 Takashi Iwai 2017-02-24 14:27:14 UTC
I change the branch management a bit.  From now on,

- topic/soc-cx2072x branch contains the ASoC codecs and SST patches.
- topic/clk-cherrytrail branch contains two MCLK patches the CX codec requires.
- topic/i2c-cherrytrail branch contains the patches for i2c designware, required for Cherrytrail-based machines.

And,
- topic/asus-e100h-4.10 branch merges the changes from various branches.
Comment 45 Pierre Bossart 2017-02-24 15:01:19 UTC
Nice work Takashi.
I see that you took the machine driver from my experimental/codecs branch, which controls the mclk as in all previous cases. 
From email discussions with Simon Ho, it appears problematic, Simon wanted to control the clock from his codec driver based on the codec state, not the stream state and that's the reason why I recently submitted the patch to create an "mclk" alias. This disconnect is likely the reason for the quality issue. 
While I think of it, the codec driver may need to set the mclk rate as well, if we want to reuse the machine driver on baytrail platforms then it has to be explicitly configured to 19.2MHz (default is 25).
Comment 46 combeynot 2017-02-27 11:08:27 UTC
Thanks a lot Pierre and Takashi.
Tested topic/asus-e100h-4.10 today on HP608

Got saturated sound on the tablet speakers. But I didn't test a lot on tablet speakers...

On headphones, got good sound on left speaker and very noisy on right speaker.
I had to lower a lot "codec_out0 Gain 0" from 25 to 2 or 3 to have some even better sound. But right speaker is always louder. And I still have some white noise on both speakers.

Thanks again.
Comment 47 Takashi Iwai 2017-02-27 11:15:28 UTC
(In reply to combeynot from comment #46)
> Got saturated sound on the tablet speakers. But I didn't test a lot on
> tablet speakers...
> 
> On headphones, got good sound on left speaker and very noisy on right
> speaker.
> I had to lower a lot "codec_out0 Gain 0" from 25 to 2 or 3 to have some even
> better sound. But right speaker is always louder. And I still have some
> white noise on both speakers.

Yeah, these are the very same behavior on my ASUS E200H, too.  So you're on the right track :)
Comment 48 combeynot 2017-02-27 20:06:15 UTC
Latest codec version and some useful doc here:
https://github.com/Conexant-SW/CX2072X
Comment 49 Takashi Iwai 2017-02-28 10:32:37 UTC
(In reply to combeynot from comment #48)
> Latest codec version and some useful doc here:
> https://github.com/Conexant-SW/CX2072X

Thanks, I took a look at it and compared the source, but there is no significant part.  I modified the code to follow to this one, but it's still failing.
Comment 50 billehhg1 2017-03-01 15:41:25 UTC
Thank you so much for putting this together. I am so excited to get sound on my laptop. Unfortunately I'm in a bit over my head. I have been attempting to install the patch using Arch Build System using various Arch-Wiki entries but feel I am floundering. Is there any tutorial you could point to that explains how to incorporate your patch and set up the kernel or is there any way you could give a step by step? Thank you so much for any help anyone can offer.
Comment 51 Johannes Stezenbach 2017-03-01 19:43:15 UTC
@Takashi: Thanks for working on it, I tried topic/asus-e100h-4.10
on Asus E200HA:
- firmware load fails when driver is built-in,
  need to set CONFIG_SND_SOC=m to get CONFIG_SND_SOC_INTEL_SST=m
  so it is loaded after / is mounted
- looks good in /proc/asound
- tried to play a wav file with aplay and an mp3 with mpg321
  and both failed
- alsamixer looks pretty confusing to me (many controls, but
  only two are visible in one screen so lots of scrolling needed)

some dmesg FWIW:

[   28.308150] intel_sst_acpi 808622A8:00: LPE base: 0x91000000 size:0x200000
[   28.308153] intel_sst_acpi 808622A8:00: IRAM base: 0x910c0000
[   28.308200] intel_sst_acpi 808622A8:00: DRAM base: 0x91100000
[   28.308208] intel_sst_acpi 808622A8:00: SHIM base: 0x91140000
[   28.308216] intel_sst_acpi 808622A8:00: Mailbox base: 0x91144000
[   28.308223] intel_sst_acpi 808622A8:00: DDR base: 0x20000000
[   28.311543] intel_sst_acpi 808622A8:00: Got drv data max stream 25
[   28.544881] cht-cx2072x cht-cx2072x: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
[   28.547758] cht-cx2072x cht-cx2072x: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok
[   28.550493] compress asoc: snd-soc-dummy-dai <-> compress-cpu-dai mapping ok
[   28.553339] cherryview-pinctrl INT33FF:01: request pin 6 (GPIO_DFX_8) for INT33FF:01:403
[   28.553559] cht-cx2072x cht-cx2072x: cx2072x-hifi <-> ssp2-port mapping ok
[   28.553743] cx2072x i2c-14F10720:00: ASoC: Failed to create PortG debugfs file
[   28.553803] cx2072x i2c-14F10720:00: ASoC: Failed to create Playback debugfs file
[   28.558649] input: chtcx2072x Headset as /devices/pci0000:00/808622A8:00/cht-cx2072x/sound/card0/input9
[  705.057216] intel_sst_acpi 808622A8:00: FW Version 01.0b.02.02
[  705.058513]  Audio Port: ASoC: no backend DAIs enabled for Audio Port
[ 1065.872750]  Audio Port: ASoC: no backend DAIs enabled for Audio Port

Not sure if any of this is useful to you but I just wanted to let you know.
Comment 52 Pierre Bossart 2017-03-02 18:54:31 UTC
to solve the "Audio Port: ASoC: no backend DAIs enabled for Audio Port" issue you need to set the mixers for the Intel DSP, which are unfortunately not set by default. You can take a look at my UCM files at https://github.com/plbossart/UCM and start building one for cx1072, or just use a script such as https://bugzilla.kernel.org/attachment.cgi?id=246651 (only the Intel part matters)
Comment 53 billehhg1 2017-03-03 07:25:01 UTC
(In reply to Takashi Iwai from comment #44)
> - topic/asus-e100h-4.10 branch merges the changes from various branches.

I downloaded this as tarball from https://kernel.googlesource.com/pub/scm/linux/kernel/git/tiwai/sound/+/topic/asus-e100h-4.10  I wasn't entirely sure how to install just one topic from kernel.org. I am not successfully running this on my computer (tried one as is and one with 4.10.1 patched in) and dmesg doesn't list any missing sound firmware however aplay -l still does not detect any sound card.
Sorry to use you guys for what I'm sure is basic stuff but, what am I doing wrong? Should I get the firmware from kernel.org?
Does it not work to directly make firmware and should i instead create patch with diff then install the firmware?
Comment 54 billehhg1 2017-03-03 07:33:43 UTC
could the problem be that I used a default arch config file? 

zcat /proc/config.gz > .config
Comment 55 Johannes Stezenbach 2017-03-03 07:44:21 UTC
You certainly need to enable kernel config options related to
INTEL_SST and the CX2072X codec.  If your dmesg doesn't have
messages related to sst you failed.  The sst firmware should be
in the distribution's linux-firmware package, if not you
can get it here:
https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/tree/intel
You don't mention your hardware platform, for my Asus E200HA
it is fw_sst_22a8.bin.
Comment 56 billehhg1 2017-03-03 09:26:19 UTC
I am also running Asus E200HA. Thank you, I generated another kernel .config file and enabled all options mentioning INTEL_SST that I saw. CX2072X was not there in the config for but I added a line based on the ones next to it. I am compiling now. Thank you for the help, I am slowly learning
Comment 57 billehhg1 2017-03-03 10:52:00 UTC
So this time I have compiled the "linux-4.10" firmware from kernel.org. I then patched with this:
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/patch/?id=cdab466510de978221804b65b32ff7a58624186d
I also patched it to 4.10.1
I then changed n to y in .config for all mentions of INTEL_SST.
There was no mention however of CX2072X in .config at all

[   10.444148] intel_sst_acpi 808622A8:00: LPE base: 0x91000000 size:0x200000
[   10.444153] intel_sst_acpi 808622A8:00: IRAM base: 0x910c0000
[   10.444218] intel_sst_acpi 808622A8:00: DRAM base: 0x91100000
[   10.444227] intel_sst_acpi 808622A8:00: SHIM base: 0x91140000
[   10.444236] intel_sst_acpi 808622A8:00: Mailbox base: 0x91144000
[   10.444243] intel_sst_acpi 808622A8:00: DDR base: 0x20000000
[   10.446790] intel_sst_acpi 808622A8:00: Got drv data max stream 25
[   10.447113] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[   10.447444] lpc_ich 0000:00:1f.0: No MFD cells added
[   10.447795] proc_thermal 0000:00:0b.0: enabling device (0000 -> 0002)

nor is there one in dmesg
My computer is ASUS E200HA
Comment 58 Johannes Stezenbach 2017-03-03 12:16:58 UTC
I'd recommend you use the search function in menuconfig (/ key).
You need
CONFIG_SND_SOC_INTEL_CHT_CX2072X_MACH=m
CONFIG_SND_SOC_CX2072X=m

@Pierre: The reason I tried is Takashi saying "now the audio works
more or less" in Bug 193891, but I guess it is a bit too early
for general consumption so I'll just wait for Takashi to be back,
no need to hurry it.
One question though about the SST controls visible in alsamixer:
From a user perspective, does it make sense to expose these and
require UCM to configure it, wouldn't it be better if e.g.
sound/soc/intel/boards/cht_cx2072x.c would handle the internal
settings and only expose the usual "Master Volume" etc.
(My knowledge about sound/soc is pretty low, obviously.)
Comment 59 billehhg1 2017-03-03 23:01:07 UTC
Thank you, I have managed to properly generate the config file. I now am detecting my sound card and have all relevant dmesg output. 
after running the script that pierre mentioned there is no "no backend DAI" message.
The only difference is I hear no sound even after playing with the alsamixer
I hate to be a nuisance but the problem is so specific I am hardpressed to find any pointers anywhere else
Comment 60 combeynot 2017-04-04 19:09:49 UTC
Hi,

I tested today last topic/asus-e100h-4.10 from Takashi, with bclk_ratio commit from Pierre Louis.
Sound seems to work perfect now ! Perfect on headphones on HP608 (Ubuntu), both right and left ! On my speakers it's a bit low volume, but I'll play with alsamixer, it's a tablet...
Thanks a lot Pierre Louis and Takashi for this work !
Comment 61 Pierre Bossart 2017-04-05 08:58:53 UTC
nice. If you can create a UCM file it'd be great. Just clone my UCM repository on Github (plbossart) and add the relevant settings and share it back.
Comment 62 combeynot 2017-04-07 17:55:35 UTC
May be I spoke too fast. Sound is really perfect on headphones, but on speakers, I can only hear right channel, not left. (Speakers are ok, I could check both right and left on Windows...) Playing with alsamixer makes me able to hear left but then I can't hear right. Quite strange...
Comment 63 Rubens García 2017-04-08 17:12:42 UTC
I have an e200ha and I wonder if you could help me to get the sound working, at least by the headphones. I'm using an audio bluetooth device for now, but it would be nice if I can get the sound working with the headphones.

I'm running the 4.11-rc5 kernel on ubuntu 16.04 and everything is working fine except the audio. 

Keep the good work and thank you!
Comment 64 combeynot 2017-04-09 18:14:52 UTC
Hi Rubens,

The shortest way could be:

(You should do 1 and 2 on a faster computer because it could take a lot of time on asus e200ha...)

1- Download Takashi's kernel (see Comment 42):
git clone git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git -b topic/asus-e100h-4.10

2- Build this kernel with a cx2072x enabled defconfig:
https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel

3- Install .deb created files on your e200ha (see wiki)

4- Install UCM files from Takashi (see attached in Comment 43) in
/usr/share/alsa/ucm/chtcx2072x/

5- Boot on new kernel and test

Hope it will help.
Comment 65 Rubens García 2017-04-09 18:27:13 UTC
Thank you combeynot ;-). I will try!
Comment 66 Rubens García 2017-04-10 11:39:57 UTC
Awwwww, yes, guys!

Speakers and headphones working! Sound quality is good (in my opinion). Finally I can get rid of the audio bluetooth device! Thank you so much!

The headphone detection is not working, I have to change it manually, but... I can't be more thankful!
Comment 67 Takashi Iwai 2017-04-12 11:51:18 UTC
FWIW, I updated my branches for 4.10 and 4.11 in topic/asus-e100h-4.10 and topic/asus-e100h-4.11 branches, respectively, based on the latest driver code from Simon (with a few fixes).

(Note that topic/asus-* branches are the results of merges from some branches.  The branches dedicated for Conexant codec changes are in topic/soc-cx2072x-4.10 and topic/soc-cx2072x branches.)

This update requires also the update of UCM profile.  The revised profile is attached below.
Comment 68 Takashi Iwai 2017-04-12 11:52:19 UTC
Created attachment 255861 [details]
Revised UCM profile
Comment 69 sournois 2017-04-17 13:51:20 UTC
Update: I have sound working on Elementary OS 0.4 with PulseAudio 8.0. I upgraded from the stock kernel to 4.10 and did not need to upgrade PulseAudio despite a bug warning suggesting I do. I can confirm sound works consistently through the laptop speakers and can test the headphone jack as soon as I am home. The sound is coming through at adequate levels and is not dropping off or having any issues as of writing this.

For the less-technical among us, install the patch through Grippentech's excellent scripts here: https://github.com/Grippentech/Asus-E200HA-Linux-Post-Install-Script

This is a much simpler, more automated method which will upgrade your kernel and install the sound driver in one step. A HUGE thank you to Takashi, Pierre-Louis, and Grippentech for the dedication and hard work getting this driver out to everyone. Excellent work.
Comment 70 rjhowardmiller 2017-05-11 10:31:21 UTC
Hi all, 

I'm new to Linux and have installed the latest Lubuntu on my E200HA. I have followed through the thread and decided to try the "idiot-proof" method as in the last post at this link (https://github.com/Grippentech/Asus-E200HA-Linux-Post-Install-Script).

I have gone through the installation package and still no sound will work. No card is showing as recognised in PulseAudio. Which package should I be trying as I have done them all. None would work for me.

Thanks,

Rob.
Comment 71 billehhg1 2017-06-12 08:08:26 UTC
> I have gone through the installation package and still no sound will work.
> No card is showing as recognised in PulseAudio. Which package should I be
> trying as I have done them all. None would work for me.

What distro of linux are you using? if you look at the script itself it has commands specific to distros using apt-get which i believe is only debian and debian-based distros. If you're running something with a different package manager those commands will not work
Comment 72 Johannes Stezenbach 2017-07-31 09:37:02 UTC
Hi Takashi,

it seeems your topic/soc-cx2072x branch still isn't on its way
into upstream kernel, is there anything still missing that is
keeping you from pushing it forward?

FWIW, I now got it working and the issue I had was that I had
no clue about UCM and was just assuming libasound and/or aplay
would handle it automatically.  But not so.  Since I don't use
pulseaudio or anything else that would call snd_use_case_mgr_open() etc.,
the UCM config wasn't applied.
Eventually I found out I could do it manually using
"alsaucm -c chtcx2072x set _verb HiFi".

Thanks,
Johannes
Comment 73 Takashi Iwai 2017-07-31 09:43:21 UTC
We've been waiting for the re-submission of the revised patch(es) from Conexant, as the current patch has a few minor issues.

Please try to ping the original author.
Comment 74 Takashi Iwai 2017-08-20 07:55:54 UTC
I noticed that the headset jack detection got broken on 4.13-rc.
After bisection, it's spotted at:
  commit f10e4bf6632b5be11cea875b66ba959833a69258
    gpio: acpi: Even more tighten up ACPI GPIO lookups

Indeed, reverting this commit made it working again.

Andy, this looks like a regression.  Could you check it?
DSDT found in this bugzilla.
Comment 75 Andy Shevchenko 2017-08-20 09:45:10 UTC
Yeah, it requires GPIO ACPI mapping table to be present. I missed this driver by some reason. Basically what you need is something like https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/commit/?h=for-next&id=7c197881e163f34679b941c75500a6c85560b7c9
Comment 76 Andy Shevchenko 2017-08-20 09:49:43 UTC
Also, why on the earth the codec refers to Merrifield (MERR_* definitions) when it's clearly for CherryTrail?
Comment 77 Andy Shevchenko 2017-08-20 09:56:16 UTC
Sorry, s/codec/board/ in previous comment. 
So, I have looked to DSDT, what you basically need is to add a GPIO binding with correct name (hp-gpios, for example) and append GPIO ACPI mapping table as I pointed in example patch for byt-max98090.
Comment 78 Takashi Iwai 2017-08-20 14:39:53 UTC
(In reply to Andy Shevchenko from comment #75)
> Yeah, it requires GPIO ACPI mapping table to be present. I missed this
> driver by some reason.

Maybe just because the driver hasn't been merged to upstream yet :)

> Basically what you need is something like
> https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/commit/
> ?h=for-next&id=7c197881e163f34679b941c75500a6c85560b7c9

OK, I'll check that.  Thanks!
Comment 79 Takashi Iwai 2017-08-20 15:06:04 UTC
(In reply to Andy Shevchenko from comment #76)
> Also, why on the earth the codec refers to Merrifield (MERR_* definitions)
> when it's clearly for CherryTrail?

Just because the common code was written for older Atom chips.
Can be corrected later.
Comment 80 Takashi Iwai 2017-08-21 12:42:26 UTC
(In reply to Takashi Iwai from comment #78)
> > Basically what you need is something like
> > https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/commit/
> > ?h=for-next&id=7c197881e163f34679b941c75500a6c85560b7c9
> 
> OK, I'll check that.  Thanks!

Now fixed in topic/soc-cx2072x-4.13 branch.
Comment 81 Andy Shevchenko 2017-08-21 13:23:47 UTC
Takashi, thanks! That's exactly what was needed. Feel free to add my Reviewed-by tag for that patch whenever you will send it upstream.
Comment 82 Pierre Bossart 2017-08-21 15:26:02 UTC
Interesting, I also saw some GPIO issues with a rt5670 device using the latest broonie/for-next kernel. Wondering if I was missing a Kconfig or if the gpio support did change.
Comment 83 Johannes Stezenbach 2017-08-21 17:59:25 UTC
I tried topic/soc-cx2072x-4.13, sound works well for me on
speaker and headphones.  However, plugging in headphones does
not turn off the speaker, is this supposed to be handled by PA
or other userspace?
Comment 84 Andy Shevchenko 2017-08-21 19:00:58 UTC
(In reply to Pierre Bossart from comment #82)
> Interesting, I also saw some GPIO issues with a rt5670 device using the
> latest broonie/for-next kernel. Wondering if I was missing a Kconfig or if
> the gpio support did change.

GPIO ACPI lib has been changed, now we require to either use _CRS indexes only (no GPIO names allowed) or use GPIO with name and _DSD or hard coded mapping table provided.

I just looked to rt5670.c and noticed an ugly is_valleyview() function. Can you utilize power resources instead if they are available? For example in DSDT attached to this bug we see 

Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
{
    CLK3
})

I'm pretty sure it's about the same PMC PLT clock. I think entire approach with clocks might be revisited after reading ACPI DSDT tables carefully.

Care to check?

(In reply to Johannes Stezenbach from comment #83)
> I tried topic/soc-cx2072x-4.13, sound works well for me on
> speaker and headphones.  However, plugging in headphones does
> not turn off the speaker, is this supposed to be handled by PA
> or other userspace?

You may check how pin is utilized. Mount debugfs and check status of pin in /sys/kernel/debug/gpio and /sys/kernel/debug/pinctrl/<HID:UID>/pins, where <HID> is a HID of pin control device. From DSDT it looks like it should be under INT33FF:02.
Comment 85 Andy Shevchenko 2017-08-21 19:05:29 UTC
(In reply to Johannes Stezenbach from comment #83)
> I tried topic/soc-cx2072x-4.13, sound works well for me on
> speaker and headphones.  However, plugging in headphones does
> not turn off the speaker, is this supposed to be handled by PA
> or other userspace?

Forgot to say that pin number is 6 (in pins file) and GPIO pin is mapped accordingly to /sys/kernel/debug/pinctrl/gpio-ranges file.

Also, you may check output of
 % cat /proc/interrupts
since pin should be a wake source, and thus should have been able generate an event (interrupt).
Comment 86 Pierre Bossart 2017-08-21 19:39:08 UTC
(In reply to Andy Shevchenko from comment #84)
> (In reply to Pierre Bossart from comment #82)
> > Interesting, I also saw some GPIO issues with a rt5670 device using the
> > latest broonie/for-next kernel. Wondering if I was missing a Kconfig or if
> > the gpio support did change.
> 
> GPIO ACPI lib has been changed, now we require to either use _CRS indexes
> only (no GPIO names allowed) or use GPIO with name and _DSD or hard coded
> mapping table provided.

in sound/soc/codecs/rt5670.c there is GPIO name:

rt5670.c:570:	rt5670->hp_gpio.name = "headphone detect";

Are you saying this needs to be replaced by something else?

> 
> I just looked to rt5670.c and noticed an ugly is_valleyview() function. Can
> you utilize power resources instead if they are available? For example in
> DSDT attached to this bug we see 
> 
> Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
> {
>     CLK3
> })
> 
> I'm pretty sure it's about the same PMC PLT clock. I think entire approach
> with clocks might be revisited after reading ACPI DSDT tables carefully.
> 
> Care to check?

I have no idea what you're asking for, it's probably a different point anyways unrelated to GPIOs. There is no is_valleyview() in the codec driver, but there are some in the machine drivers. if you check your email, you'll see a question from me last week asking how I am supposed to know if the firmware manages the clock or not. I ended-up calling devm_clk_get() unconditionally, assuming that there is no harm and that if the clock is firmware controlled it will not be gated on clk_disable/unprepare. see https://github.com/plbossart/sound/commit/233602172d97270dfc47222fa5805b8dabd4b1ce


> 
> (In reply to Johannes Stezenbach from comment #83)
> > I tried topic/soc-cx2072x-4.13, sound works well for me on
> > speaker and headphones.  However, plugging in headphones does
> > not turn off the speaker, is this supposed to be handled by PA
> > or other userspace?
> 
> You may check how pin is utilized. Mount debugfs and check status of pin in
> /sys/kernel/debug/gpio and /sys/kernel/debug/pinctrl/<HID:UID>/pins, where
> <HID> is a HID of pin control device. From DSDT it looks like it should be
> under INT33FF:02.
Comment 87 Johannes Stezenbach 2017-08-21 19:54:27 UTC
Hi Andy,

gpio seems to work, the question was more if I should expect
the sound driver to switch off the speaker when headphones
are connected, or if I need a userspace daemon like PA for that.
So it's a question for Takashi about policy.

/sys/kernel/debug/gpio
gpiochip1: GPIOs 397-455, parent: platform/INT33FF:01, INT33FF:01:
 gpio-403 (                    |headset             ) in  lo IRQ

/sys/kernel/debug/pinctrl/INT33FF\:01/gpio-ranges
0: INT33FF:01 GPIOS [397 - 405] PINS [0 - 8]

grep head | /proc/interrupts
 177:         12          0          0          0  chv-gpio    6  headset

/sys/kernel/debug/pinctrl/INT33FF\:01/pins
pin 6 (GPIO_DFX_8) GPIO 0x40108202 0x04c00003

And also:

input-events 13
/dev/input/event13
   bustype : (null)
   vendor  : 0x0
   product : 0x0
   version : 0
   name    : "chtcx2072x Headset"
   phys    : "ALSA"
   bits ev : (null) (null) (null)

waiting for events
21:34:51.111138: (null) ??? 1
21:34:51.111138: (null) ??? 1
21:34:51.111138: (null) code=0 value=0
21:34:54.542011: (null) ??? 0
21:34:54.542011: (null) ??? 0
21:34:54.542011: (null) code=0 value=0
timeout, quitting

Looks a bit strange ??? but the event fires.

I noticed no event happens when the button on the headset
is pressed, is it supposed to work?

I also checked output of "amixer contents" and diffed
unplugged with headphones and headset plugged, it recognizes
both headphones (no mic) and headset (with mic).

Didn't check if recording works.
Comment 88 Takashi Iwai 2017-08-21 20:54:57 UTC
(In reply to Johannes Stezenbach from comment #83)
> I tried topic/soc-cx2072x-4.13, sound works well for me on
> speaker and headphones.  However, plugging in headphones does
> not turn off the speaker, is this supposed to be handled by PA
> or other userspace?
Right, it's PA's task.  The ASoC kernel driver doesn't do anything automatic by itself unlike HD-audio driver (the latter has its own auto-mute handling).
Comment 89 Takashi Iwai 2017-08-21 21:03:23 UTC
... or, did you mean that it's a regression?  There shouldn't be difference in (user-space) behavior of the sound driver between topic/soc-cx2072x-4.12 and *-4.13 branches.
Comment 90 Johannes Stezenbach 2017-08-21 22:04:46 UTC
I didn't test headphones before, so no regression, I just wanted
clarification if this is how it's supposed to be.
Comment 91 Andy Shevchenko 2017-08-22 09:54:45 UTC
(In reply to Pierre Bossart from comment #86)
> (In reply to Andy Shevchenko from comment #84)
> > (In reply to Pierre Bossart from comment #82)

> > I just looked to rt5670.c and noticed an ugly is_valleyview() function. Can
> > you utilize power resources instead if they are available? For example in
> > DSDT attached to this bug we see 
> > 
> > Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
> > {
> >     CLK3
> > })
> > 
> > I'm pretty sure it's about the same PMC PLT clock. I think entire approach
> > with clocks might be revisited after reading ACPI DSDT tables carefully.
> > 
> > Care to check?
> 
> I have no idea what you're asking for, it's probably a different point
> anyways unrelated to GPIOs.

Yes, it's an offtopic here.

> There is no is_valleyview() in the codec driver,
> but there are some in the machine drivers. if you check your email, you'll
> see a question from me last week asking how I am supposed to know if the
> firmware manages the clock or not. I ended-up calling devm_clk_get()
> unconditionally, assuming that there is no harm and that if the clock is
> firmware controlled it will not be gated on clk_disable/unprepare. see
> https://github.com/plbossart/sound/commit/
> 233602172d97270dfc47222fa5805b8dabd4b1ce

That's good stuff! Thanks.
Comment 92 Jakub K. 2018-04-12 19:48:54 UTC
Hi, I have the same problem with Kernel 4.16.0 in hp pavilion x2 detachable.
What is the state of bugs?
Thanks. 
Have a nice day.
Comment 93 Caitlyn Martin 2018-04-12 20:01:25 UTC
It is working perfectly well in Ubuntu 18.04 beta 2.  Please remember that it's not just a newer kernel that's needed.  ALSA may need to be upgraded as well and the required codec has to be present.
Comment 94 Jakub K. 2018-04-13 06:29:04 UTC
Yes, it is working in Ubuntu 18.04. Thanks you. 
Have a nice day
Comment 95 Luca Datti 2018-04-13 06:36:37 UTC
(In reply to Jakub K. from comment #94)
> Yes, it is working in Ubuntu 18.04. Thanks you. 
> Have a nice day

(In reply to Caitlyn Martin from comment #93)
> It is working perfectly well in Ubuntu 18.04 beta 2.  Please remember that
> it's not just a newer kernel that's needed.  ALSA may need to be upgraded as
> well and the required codec has to be present.

Do you mean that it works "out of the box"? The bug has been fixed in the new version of Ubuntu?
Comment 96 Caitlyn Martin 2018-04-13 16:35:13 UTC
> Do you mean that it works "out of the box"? The bug has been fixed in the
> new version of Ubuntu?

Yes, that is exactly what I mean.  It just works immediately after installation.  Having said that, you still have to use the Linuxium image or remaster the iso to get the installer to work, unlike Fedora and SUSE which have installers that support Atom and Apollo Lake devices.  A working iso is at: http://linuxiumcomau.blogspot.com/2018/04/fourth-look-at-ubuntu-1804-lts-bionic.html
Comment 97 liberodark 2018-07-14 08:15:56 UTC
Hi,

But not work on manjaro 17.1.11 !
The bug is not fixed is not integrated to kernel no ?
Have possibility to merge driver on kernel 4.18 ?

https://www.manjaro.fr/forum/viewtopic.php?f=19&t=8812&hilit=asus
https://forum.manjaro.org/t/asus-e200ha-no-sound/44205/7
https://bugzilla.kernel.org/show_bug.cgi?id=200491

Cordialy
Comment 98 Caitlyn Martin 2018-07-14 16:54:06 UTC
It is fixed in the 4.18 kernel but more than an updated kerne is
required.  You also need an up to date version of alsa and the new
codec to be included when the kernel is compiled.  The problem with
Manjaro is almost certainly a Manjaro problem, not an upstream
problem.

On Sat, Jul 14, 2018 at 4:15 AM,  <bugzilla-daemon@bugzilla.kernel.org> wrote:
> https://bugzilla.kernel.org/show_bug.cgi?id=115531
>
> liberodark (bill.666@live.fr) changed:
>
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                  CC|                            |bill.666@live.fr
>
> --- Comment #97 from liberodark (bill.666@live.fr) ---
> Hi,
>
> But not work on manjaro 17.1.11 !
> The bug is not fixed is not integrated to kernel no ?
> Have possibility to merge driver on kernel 4.18 ?
>
> https://www.manjaro.fr/forum/viewtopic.php?f=19&t=8812&hilit=asus
> https://forum.manjaro.org/t/asus-e200ha-no-sound/44205/7
> https://bugzilla.kernel.org/show_bug.cgi?id=200491
>
> Cordialy
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
Comment 99 mirh 2018-09-09 14:21:58 UTC
(In reply to Caitlyn Martin from comment #98)
> It is fixed in the 4.18 kernel but more than an updated kerne is
> required.  You also need an up to date version of alsa and the new
> codec to be included when the kernel is compiled.  The problem with
> Manjaro is almost certainly a Manjaro problem, not an upstream
> problem.

I'm not sure what you are talking about, I also checked ubuntu source but there's really no sign of the driver having ever landed farther than the majestic tree by Heiko 
https://github.com/heikomat/linux/tree/cx2072x
(in the Asus-E200HA specific repo in fact, they mention xubuntu 18.04 still require patching and all)

The 808622A8 id you reported above is the just the Intel "Smart Sound Technology" device.  
But the actual audio codec is another thing. In fact windows driver pack just has an AudioRealtek folder. 

Nothing to do with this issue. 

https://support.hp.com/us-en/drivers/selfservice/swdetails/hp-x2-10-p000-notebook-pc/12499232/model/13443302/swItemId/ob-201938-1
https://wiki.debian.org/InstallingDebianOn/HP/Pavilion%20x2%2010%20(2015%20model)/Jessie
Comment 100 Johannes Stezenbach 2018-09-09 15:54:27 UTC
See comment #73. FWIW I pinged someone at Conexant one year ago,
the answer was essentially "no time, but soon".  I guess it will
never happen. IMHO Takeshi should just submit his version even if it
has minor issues.
Comment 101 mirh 2018-09-09 16:16:07 UTC
Well, that explains the pitiful situation. Let's see if CCing the conexant author solves anything. 

It did actually improve something on their own repo.. Not sure why he never got back
https://github.com/conexant/codec_drivers/commits/rpi-4.4.y
Comment 102 liberodark 2018-09-13 07:40:32 UTC
Hi is not merged on 4.16 / 4.17 / 4.18 / 4.19 for what ?


https://forum.manjaro.org/t/asus-e200ha-no-sound/44205/17
marcin19883 say : Kernel 4.19 RC1 Audio not working. No codec include. :(
Comment 103 liberodark 2018-09-13 07:43:15 UTC
(In reply to Caitlyn Martin from comment #98)
> It is fixed in the 4.18 kernel but more than an updated kerne is
> required.  You also need an up to date version of alsa and the new
> codec to be included when the kernel is compiled.  The problem with
> Manjaro is almost certainly a Manjaro problem, not an upstream
> problem.
> 
> On Sat, Jul 14, 2018 at 4:15 AM,  <bugzilla-daemon@bugzilla.kernel.org>
> wrote:
> > https://bugzilla.kernel.org/show_bug.cgi?id=115531
> >
> > liberodark (bill.666@live.fr) changed:
> >
> >            What    |Removed                     |Added
> >
> ----------------------------------------------------------------------------
> >                  CC|                            |bill.666@live.fr
> >
> > --- Comment #97 from liberodark (bill.666@live.fr) ---
> > Hi,
> >
> > But not work on manjaro 17.1.11 !
> > The bug is not fixed is not integrated to kernel no ?
> > Have possibility to merge driver on kernel 4.18 ?
> >
> > https://www.manjaro.fr/forum/viewtopic.php?f=19&t=8812&hilit=asus
> > https://forum.manjaro.org/t/asus-e200ha-no-sound/44205/7
> > https://bugzilla.kernel.org/show_bug.cgi?id=200491
> >
> > Cordialy
> >
> > --
> > You are receiving this mail because:
> > You are on the CC list for the bug.

And have view is not officialy merged arch and majanro is not implicated for this problem.

Please make a official merge to add audio codec.

Cordialy
Comment 104 marcin19883 2018-11-10 12:09:37 UTC
https://github.com/conexant/codec_drivers/commits/rpi-4.4.y

Autor adding support linux kernel 4.18.
Comment 105 Jacek Jagosz 2018-12-28 11:42:46 UTC
(In reply to marcin19883 from comment #104)
> https://github.com/conexant/codec_drivers/commits/rpi-4.4.y
> 
> Autor adding support linux kernel 4.18.

Sorry for bothering, but did he try to merge it to the main kernel? Or do we have to compile it ourselves from this branch?
Comment 106 marcin19883 2019-01-04 01:40:19 UTC
(In reply to Jacek Jagosz from comment #105)
> (In reply to marcin19883 from comment #104)
> > https://github.com/conexant/codec_drivers/commits/rpi-4.4.y
> > 
> > Autor adding support linux kernel 4.18.
> 
> Sorry for bothering, but did he try to merge it to the main kernel? Or do we
> have to compile it ourselves from this branch?

I have no idea. I'm a beginning linux user. I am currently using Arch Linux and the cx2072x kernel from AUR. It works great. Everything works, even better than on ubuntu 18.04.
Comment 107 RussianNeuroMancer 2019-01-25 18:49:22 UTC
> Or do we have to compile it ourselves from this branch?

There is prebuilt packages, if you need them: https://github.com/heikomat/linux/releases

By the way, is UCM from Comment 68 is recent, or there is newer version somewhere?
Comment 108 Logan Rathbone 2019-01-27 07:29:39 UTC
Created attachment 280807 [details]
Takashi cx2072x patch against 4.20

I've had a bit of trouble following this discussion in terms of what has been added by Takashi et al's patches. So here is a diff against vanilla kernel 4.20.0 to see what the changes and additions are, for ease of reference.
Comment 109 howerkraft 2019-01-27 10:59:15 UTC
> Or do we have to compile it ourselves from this branch?

If you use debian or derivatives, you can find the releases in Heikomat's repo.

 
If you use ArchLinux or derivitives, you can use AUR (https://aur.archlinux.org/packages/linux-cx2072x/) to build your own packages, or you can use my prebuilt packages (built from AUR) from here: https://files.linux365.ro/linux-cx2072x/
Comment 110 Logan Rathbone 2019-01-27 19:57:00 UTC
In case anyone is searching the web to seek solutions, I'll put on the record that 4.20.4, with the patch as generated above, along with the UCM files that have been posted on git at https://github.com/heikomat/linux/tree/cx2072x/cx2072x_fixes_and_manual/chtcx2072x - sound is now functioning on my Asus Transformer Mini T103HA.

Shouldn't really matter as I am using an updated but otherwise vanilla kernel from ftp.kernel.org, but again, for the record, this is under Slackware Current (live ISO from alienBob 1.3.0.2, 20190117).

Thanks all. I hope these efforts can be merged into mainline Linux and ALSA, but I'm sure there are reasons above my head as to why they have not.
Comment 111 Mitm 2019-02-03 05:49:08 UTC
*** Bug 200431 has been marked as a duplicate of this bug. ***
Comment 112 Riccardo 2019-07-02 10:43:58 UTC
> I hope these efforts can be merged into mainline Linux and ALSA.

Me too: I lack the know-how to fix the kernel myself, unfortunately...
Comment 113 mirh 2019-07-02 11:47:24 UTC
https://mailman.alsa-project.org/pipermail/alsa-devel/2019-May/149706.html

CX2072X is landing in 5.3.
Comment 114 Riccardo 2019-07-02 11:50:48 UTC
(In reply to mirh from comment #113)
> https://mailman.alsa-project.org/pipermail/alsa-devel/2019-May/149706.html
> 
> CX2072X is landing in 5.3.

That's good news! I'll look forward to it, thanks :)
Comment 115 Logan Rathbone 2019-10-07 19:20:03 UTC
This driver (along with necessary alsa ucm files) as now included with 5.3.x is working on my system (vanilla 5.3.4). I'd recommend closing this bug as FIXED.
Comment 116 Riccardo 2019-12-11 12:59:39 UTC
Why the latest Androidx86 release (9.0-rc1) it's still based on kernel 4.19.80 (https://www.android-x86.org/releases/releasenote-9-0-rc1.html)?

How am I supposed to upgrade to v 5.3.x?
Comment 117 Andy Shevchenko 2019-12-11 13:25:23 UTC
(In reply to Riccardo from comment #116)
> Why the latest Androidx86 release (9.0-rc1) it's still based on kernel
> 4.19.80 (https://www.android-x86.org/releases/releasenote-9-0-rc1.html)?
> 
> How am I supposed to upgrade to v 5.3.x?

Riccardo, this bug tracker is related to upstream developing of Linux kernel. Perhaps you have to ask this via Android issue tracker.
Comment 118 Andy Shevchenko 2019-12-11 13:30:39 UTC
Close as fixed based on comment #115.
Comment 124 Miquel Lionel 2020-04-15 18:01:03 UTC
Hello,
  I know this issue is closed, but should I post
in this thread if I got a problem with my microp
hone on a E200HA, Ubuntu 18.04, custom kernel bas
ed on 5.6.3 with cx2072x support compiled in and 
right UCM files ?
Or should I create a bug report ?

Thanks.
Comment 125 Miquel Lionel 2020-04-29 11:38:24 UTC
Hello,

  I fixed my problem from last comment, here's how I did it:
For the backstory, I have a E200HA Asus Notebook/EEePC.

1. Get kernel with cx2072x support, enable it and update grub to boot into it.
2. Get alsa-lib-1.2.2 (or any stable release I guess) from https://github.com/alsa-project/alsa-lib
3. ./gitcompile --libdir=/usr/lib/x86_64-linux-gnu (or ./configure --libdir=/usr/lib/x86_64-linux-gnu if it didn't work) followed by make && make install
4. Get alsa-ucm-conf from https://github.com/alsa-project/alsa-ucm-conf (again, matching the release number of alsa-lib you compiled, in our case it's 1.2.2)
5. Rename your /usr/share/alsa/ucm into ucm.old directory and create /usr/share/alsa/ucm2 directory
6. Copy ucm2 directory from cloned alsa-ucm-conf git repo into /usr/share/alsa/
7. Reboot