On 2020-11-08 6:00 PM, Greg KH wrote:
On Sun, Nov 08, 2020 at 04:17:16PM +0000, Rojewski, Cezary wrote:
On 2020-11-04 12:58 PM, Greg KH wrote:
On Wed, Nov 04, 2020 at 12:46:36PM +0100, Gorski, Mateusz wrote:
[ Upstream commit 1b290ef023b3eeb4f4688b582fecb773915ef937 ]
Add alternative topology binary file name based on used machine driver and fallback to use this name after failed attempt to load topology file with name based on NHLT. This change addresses multiple issues with current mechanism, for example - there are devices without NHLT table, and that currently results in tplg_name being empty.
...
What problems are people facing, and what kernel(s) are you asking for this to be ported to, and why can't people just use 5.8 or newer if they have this new hardware?
I forgot to add - I wanted this change to be merged to stable 5.4 kernel. Please let me know if I should resend this patch with this information included.
As for the user issues - topology binary file name is currently created according to information from NHLT. The problem is, that some laptops (for example Dell XPS 13) do not have NHLT at all. This results in topology binary name being empty (" "). This patch adds alternative name based on loaded machine driver.
It applies not only to new hardware, please note that the mentioned Dell XPS 13 is based on Kabylake. This issue existed on upstream from the beginning of Skylake driver and was only recently addressed.
When was that laptop released and is this the only change that is needed in order for the 5.4.y kernel to work properly on it?
Sorry for the late answer, Greg. To address your concerns and questions let me elaborate:
Indeed, this change is not the only one required to enable DMIC + HDA configuration for customers. The following series is essential:
[PATCH 0/7] ASoC: Intel: Skylake: Fix HDaudio and Dmic https://lore.kernel.org/alsa-devel/20200305145314.32579-1-cezary.rojewski@in...
Great, then they should just use a newer kernel version. It's crazy to think that you can go back in time and get older kernels working for newer hardware :)
Skylake and Kabylake-based platforms are few years old already, that's not exactly a "newer hardware". Icelake and such are and these are not part of /skylake driver. Fact is, this should all be part of 4.19 or earlier since DMIC + HDA configuration are available even there. And receiving laptop with such kernel and no patches fails miserably ; (
Unfortunately, kernels 4.19 and below need many more changes than "just" 6 fixes as HDA-generic soundcard isn't available there. That, however, can easily be called "a new feature" so stopping at 5.4 is a fair call.
Thanks, Czarek