To get onboard sound working on Teclast F5 with ES8336 codec we needs to use Linux kernel patches from SOF Project and the latest sof-firmware (v1.9).
On NixOS modify your configuration.nix
like the following:
{ config, pkgs, lib, ... }:
{
imports = [
./hardware-configuration.nix
./hardware-fixes/asoc-es8336.nix
];
boot.kernelPackages = pkgs.linuxPackages_5_14;
}
First you need apply two patches to your linux kernel (I recommend use latest stable like 5.14.y):
Second you need install latest sof-firmware binaries (v1.9):
I'm not an expert in linux distributions, concrete instructions may differs for each, but in debian/ubuntu you can simply add patches to kernel package and rebuild it.
Of course, don't forget enable
ES8336
support in kernel config by adding something like thatCONFIG_SND_SOC_INTEL_SOF_ES8336_MACH m
.