O kernel Linux 5.7 que será lançado até meados deste ano está pronto para ter o suporte ao carregamento rápido via USB para dispositivos Apple iOS. Atualmente, ao carregar um aparelho da Apple (iPhone ou iPad) a partir de uma porta USB por padrão, ele não consumirá mais de 500mA por especificações. No entanto, os dispositivos iOS podem consumir mais energia quando comunicados pelo protocolo da Apple. Com o Linux 5.7, um novo driver “apple-mfi-fastcharge” permitirá esse recurso de até 2500mA.
O driver apple-mfi-fastcharge permitirá definir a propriedade da fonte de alimentação via sysfs como “rápida“. Por sua vez, permite que o dispositivo iOS consuma mais energia da porta USB, semelhante ao comportamento dos carregadores certificados MFi.
Este possui mais de 200 linhas de código escritas por Bastien Nocera e que foram colocadas na fila USB-next por Greg Kroah-Hartman para introdução no Linux 5.7. Sem surpresas, este driver de carregamento rápido USB para dispositivos iOS foi escrito sem o suporte da Apple. Com o trabalho de recursos do Linux 5.6 acabando de terminar no fim de semana passado, esta é uma das primeiras grandes adições de USB que já estão na fila pelo ramo “-next” do subsistema para finalmente chegar na próxima série de kernel.
Linux 5.7 obtém um driver “Tiny Power Button”
Um novo driver já na fila do código de gerenciamento de energia para o ciclo do Linux 5.7, que não será aberto até abril, é um driver “tiny power button”.
Esse driver de botão do tipo liga e desliga pequeno da ACPI não é para um botão liga/desliga fisicamente pequeno, mas sim um driver simples de botão ACPI da Intel destinado a máquinas virtuais e mais básico que o driver de botão ACPI genérico, devido ao conjunto limitado das VMs.
As máquinas virtuais tendem a contar com eventos simulados do botão liga/desliga da APCI para desligar a VM normalmente, mas podem contar com um daemon como acpid ou systemd-logind para processar o referido evento. Com o pequeno driver de botão liga/desliga da APCI, o funcionamento da VM é tratado diretamente e sinaliza imediatamente o processo de inicialização. O objetivo do driver é diminuir o tempo de inicialização e reduzir a complexidade da imagem da VM.
Mais detalhes através da série de patches. Isso também serve como um exemplo básico de um driver de kernel Linux com apenas 46 linhas de código.
Fonte: Phoronix