ThinkPads com Snapdragon ficam melhores no Linux com novo driver para o controlador embarcado

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...

Backlight, LEDs e teclas Fn: suporte do EC chega ao T14s com Snapdragon

Boas notícias para quem apostou em Linux no ThinkPad T14s Gen6 com Snapdragon: chegou uma série de patches que introduz um driver dedicado para o Embedded Controller (EC) do modelo — exatamente a peça que faltava para acender o caminho rumo à paridade com os ThinkPads x86. Na prática, isso libera no ARM aquilo que todo mundo espera num ThinkPad: controle da retroiluminação do teclado, LEDs de status (inclusive os de mudo do microfone/alto-falante) e teclas de função extras. A proposta — enviada por Sebastian Reichel — já chegou à v5 e acumula revisões e testes da turma de sempre em ARM/Qualcomm e Lenovo, sinal de que o trabalho está maduro e bem revisado (exemplo de iteração anterior da série, além da versão v4 com DT-bindings].

Por que um novo driver? A diferença entre ACPI e device tree

Pintou a dúvida: se o EC “parece” compatível com o thinkpad_acpi, por que não estender o driver antigo? A resposta é curta — e muito prática. Os ThinkPads Snapdragon inicializam via Device Tree (DT), enquanto o thinkpad_acpi fala ACPI (como nos x86). No mundo ACPI, o DSDT da Lenovo já traz um monte de funções de mapeamento que traduzem mensagens I²C de baixo nível para a interface que o driver entende. Reimplementar essa “tradução” para DT dentro do thinkpad_acpi seria quase o mesmo trabalho que escrever um driver novo, com o risco de complicar ainda mais um código já grande. Decisão da comunidade? Criar um driver limpo e específico para DT, alocado sob drivers/platform/arm64/. É a solução que evita “gambiarras” e respeita a topologia ARM moderna — e está muito bem explicada na justificativa da série (resumo em LWN e discussão no LKML com a mesma linha de raciocínio aqui).

Funcionalidades habilitadas e o que ainda falta

nTvh3079 image 1
ThinkPads com Snapdragon ficam melhores no Linux com novo driver para o controlador embarcado 3

O que já funciona hoje, com o novo driver do EC para o T14s Gen6 (X1 Elite):

  • Teclas extras: as famosas teclas Fn especiais passam a gerar eventos previsíveis no Linux, prontos para você mapear no desktop/window manager.
  • LEDs do sistema: incluindo LED de power, indicadores de carga (âmbar/branco) e o “ponto” do logo na tampa — tudo exposto via subsistema de LEDs.
  • LEDs de áudio: mute do microfone e mute dos alto-falantes passam a ser controláveis; integração automática depende de pequenos ajustes no ALSA UCM, já apontados na série.
  • Teclado retroiluminado: controle direto da retroiluminação do teclado, com feedback de hardware quando você alterna pelos níveis.

Ou seja: aquilo que define a “sensação ThinkPad” — atalhos, luzinhas que informam o estado, teclado que responde — finalmente cai como uma luva no Linux ThinkPad Snapdragon. E sem acrobacias de user space: é suporte de kernel, do jeito certo.

Ainda em andamento: há indícios de que o EC participa de bits térmicos e suspensão do sistema; por ora, o autor desabilitou wake por IRQ para evitar que o notebook acorde ao fechar a tampa (queda de braço típica quando a gente está decifrando o comportamento do EC). Esses tópicos devem evoluir com documentação e experimentação — e a boa notícia é que a maior parte do controle térmico/fans parece ficar com outro controlador dedicado, então o básico de estabilidade não depende desse pedaço.

O que isso significa para quem tem um T14s ARM no Linux?

Significa que o T14s Gen6 virou a aposta mais segura para quem quer um ThinkPad ARM bem-suportado. Já havia um esforço consistente no device tree desse modelo, e o EC era o “chefe da orquestra” que faltava para a experiência ficar redondinha. Se você vive de atalhos de produtividade, apresenta em salas escuras (alô, teclado retroiluminado) ou só curte ver os LEDs conversando com o sistema, essa série de patches entrega exatamente o que importa no dia a dia.

E quando isso chega no seu kernel? A série está ativa, com várias revisões e tags de Reviewed-by/Tested-by de nomes conhecidos. Dado o calendário (setembro/2025) e o ciclo do kernel, é razoável esperar entrada numa janela de merge próxima (provavelmente 6.18) — mas, como sempre, sujeito à revisão final dos mantenedores. Quer acompanhar de perto ou testar via árvores -next? Vale seguir os patches no LKML e no Patchwork (links abaixo).

Compartilhe este artigo