Senhores,
Meu notebook é um Positivo C14 e este apresenta inicialmente alguns problemas de compatibilidade com GNU/Linux. Primeiro que neste modelo, na variante com Windows 11, pelo visto o GRUB é bloqueado via BIOS, não importa as configurações feitas no UEFI, nenhum Linux com GRUB será carregado (mesmo se diretamente usando ShellEFI por exemplo).
Para contornar esta questão inicial, consegui apenas usando o Solus OS,, o único que mantém o Secure Boot e é aceito sem passos extras. Pelo que já testei, também é possível com BSDs e o Arch Linux se usar o Bootstrap.
Com o SO instalado, restam dois problemas, este notebook usa o codec ES8336 e é bastante limitado, mesmo com o Kernel mais recente, e como podem ver neste link, dependendo da configuração do seu computador, algumas funcionalidades não estarão disponíveis por falta de suporte. Meu notebook usa a plataforma GeminiLake, usando o comando alsa-info.sh
, temos:
/sys/bus/acpi/devices/ESSX8326:00/status 15
Por padrão, o auto-falante e microfone do notebook não funcionam, assim como o som do HDMI. Para resumir, consegui contornar os 3 problemas, da seguinte forma:
- Crie um arquivo chamado
sound.conf
(por exemplo) na pasta/etc/modproble.d
, caso esta já não exista, pode criar sem medo; - No arquivo
sound.conf
, coloque:options snd_soc_sof_es8336 quirk=0x40
. Servirá para informar para o sistema que a lógica do conector P2/alto-falante do sistema está invertida. - Muito provável que já esteja instalado o UCM2 do Alsa, caso não esteja, instale usando o gerenciador de pacotes de seu SO;
- Na pasta
/usr/share/alsa/ucm2/Intel/sof-essx8336/
, faça backup dos arquivos e troque o arquivoHiFi.conf
para o texto abaixo:
SectionVerb {
EnableSequence [
# Setup funcional Positivo C14
]
}
SectionDevice."Mic" {
Comment "Analog Microphone"
EnableSequence [
cset "name='Internal Mic Switch' on"
cset "name='Headset Mic Switch' on"
]
DisableSequence [
]
Value {
CapturePriority 100
CapturePCM "hw:${CardId}"
CaptureMixerElem "ADC PGA Gain"
CaptureMasterElem "ADC"
}
}
SectionDevice."Speaker" {
Comment "Speakers"
ConflictingDevice [
"Headphones"
]
EnableSequence [
cset "name='Speaker Switch' on"
cset "name='Differential Mux' lin1-rin1"
]
DisableSequence [
cset "name='Speaker Switch' off"
cset "name='Differential Mux' lin2-rin2"
]
Value {
PlaybackPriority 100
PlaybackPCM "hw:${CardId}"
# The es8316 only has a HP-amp which is muxed to the speaker
# or to the headpones output
PlaybackMixerElem "Headphone Mixer"
PlaybackMasterElem "DAC"
}
}
SectionDevice."Headphones" {
Comment "Headphones"
ConflictingDevice [
"Speaker"
]
EnableSequence [
cset "name='Headset Mic Switch' on"
cset "name='Speaker Switch' off"
cset "name='Differential Mux' lin2-rin2"
]
DisableSequence [
cset "name='Differential Mux' lin1-rin1"
]
Value {
PlaybackPriority 300
PlaybackPCM "hw:${CardId}"
PlaybackMixerElem "Headphone Mixer"
PlaybackMasterElem "DAC"
JackControl "Headphone Jack"
JackHWMute "Speaker"
}
}
Include.hdmi.File "/Intel/sof-essx8336/Hdmi.conf"
- Execute o comando
alsaucm reload
e verifique se não retorna nenhum erro; - Reinicie o computador.
Se algo não funcionar, para entender as possíveis causas, verifique:
alsa-info.sh
;systemctl --user status wireplumber.service
Pode compartilhar aqui que tentamos ajudar.