- O Kernel Linux 7.0 introduz suporte nativo à tecla Fn para Chromebooks através do driver cros_ec_keyb.
- A atualização permite que teclas de hardware tenham dupla função dinâmica, como o uso de F1-F12 em teclados ChromeOS.
- Desenvolvido por Fabio Baltieri, o patch v7 otimiza a comunicação com o Embedded Controller do sistema.
- A implementação inclui uma nova camada de mapeamento (fn-map) que reage em tempo real ao pressionamento da tecla.
- A novidade deve chegar às distribuições estáveis entre abril e maio de 2026, junto ao lançamento final do Kernel 7.0.
O ecossistema de hardware do Google está prestes a ganhar um refinamento importante na sua interação com o usuário. O desenvolvedor Fabio Baltieri enviou a sétima versão de um conjunto de patches que adiciona suporte completo à tecla “Fn” e a uma camada de funções dedicada para teclados controlados pelo ChromeOS Embedded Controller (EC). A mudança, integrada ao subsistema de entrada, é um dos destaques técnicos para o ciclo do Kernel Linux 7.0.
Este refinamento técnico chega em um momento crucial, já que, como acompanhamos no SempreUpdate, o Google prepara o Aluminium OS como o sucessor do ChromeOS, o que exige drivers de hardware cada vez mais padronizados para a nova arquitetura unificada.
O que isso significa na prática
Para o usuário final, especialmente aqueles que utilizam Chromebooks com distribuições Linux tradicionais, essa atualização resolve uma limitação histórica de mapeamento. Anteriormente, o driver do teclado ChromeOS lidava com uma matriz de teclas mais rígida. Com o novo patch, o sistema agora reconhece a tecla Fn como um modificador real. Isso permite que uma única tecla física tenha duas funções distintas: uma normal e outra acionada ao segurar o Fn, permitindo, por exemplo, que as teclas de brilho ou volume funcionem como F1-F12 de forma muito mais fluida, como ocorre em notebooks convencionais.
Detalhes da implementação
Tecnicamente, o trabalho de Baltieri foi dividido em duas frentes. Primeiro, o patch exporta a função input_default_setkeycode, permitindo que drivers específicos chamem o manipulador padrão enquanto executam ações customizadas. No driver cros_ec_keyb, foi implementada uma lógica que monitora o estado da tecla Fn (fn_key_pressed) para decidir qual scancode enviar ao sistema em tempo de execução.
A implementação utiliza uma “camada Fn” (fn-map) que expande a matriz de busca de teclas. Quando a tecla Fn é detectada, o driver redireciona a busca para uma linha virtual superior na matriz de códigos. Se nenhuma tecla for pressionada junto com o Fn, o sistema ainda é capaz de reportar o evento da tecla Fn isolada, garantindo que atalhos de sistema não sejam quebrados.
| Característica | Antes do Patch | Depois do Patch |
| Mapeamento Fn | Estático/Limitado | Dinâmico via fn-map |
| Matriz de Teclas | 18 colunas simples | Suporte a camada dupla (Fn) |
| Flexibilidade | Fixa no hardware | Recomputada em tempo de execução |
Curiosidades e bastidores da discussão
Chegar à versão 7 (v7) do patch não foi uma tarefa simples. A discussão na LKML revelou um cuidado minucioso com a eficiência do código. Dmitry Torokhov, o mantenedor do subsistema de input, interveio para sugerir simplificações importantes na forma como o driver varre a matriz de teclas. Em vez de loops complexos, Dmitry propôs uma varredura linear mais direta, o que reduz o overhead de processamento a cada pressionamento de tecla. Essa “fofoca técnica” mostra que, para os mantenedores, não basta a funcionalidade existir; ela precisa ser elegante o suficiente para não desperdiçar ciclos de CPU.
Quando isso chega no meu PC?
O Kernel Linux 7.0 está iniciando seu ciclo de desenvolvimento. A expectativa é que a versão estável seja lançada entre o final de abril e o início de maio de 2026. Usuários de distribuições rolling release, como Arch Linux e openSUSE Tumbleweed, devem receber a novidade logo após o lançamento. Usuários de distribuições com ciclos fixos, como o futuro Ubuntu 26.10 ou as revisões do Fedora 44, terão o suporte integrado assim que adotarem a base 7.0.
