Configuração da device tree do RK3588
Última atualização: 2024-03-13
O guia ou receita a seguir exige acesso ao shell na sua instalação do FydeOS; portanto, o modo de desenvolvedor deve estar ativado. Se for necessário alterar um arquivo de sistema, você também precisará desativar a verificação do sistema de arquivos raiz.
Introdução
O SoC RK3588 suporta o carregamento tanto dos arquivos device tree overlay integrados do FydeOS quanto de arquivos dtbo definidos pelo usuário durante a inicialização.
A importância de carregar overlays da device tree
Carregar overlays da device tree aumenta principalmente a flexibilidade da configuração de hardware, reduz os custos de manutenção do sistema e facilita a personalização das configurações de hardware pelo usuário. Também simplifica a solução de problemas e a depuração.
Ao aproveitar os overlays da device tree, os usuários podem configurar o hardware de acordo com suas necessidades sem modificar o código do kernel. Essa abordagem também simplifica o processo de identificar e resolver possíveis problemas. Por exemplo, os usuários podem ativar ou desativar periféricos específicos, como ventoinhas PWM ou dispositivos I2C, com base nos requisitos do projeto.
Pré-requisitos
Para prosseguir, você deve entender os conceitos básicos de device tree overlays e operações básicas de linha de comando no Linux.
Procedimento passo a passo
Etapa 1: entre na sua conta FydeOS e acesse a área de trabalho
Etapa 2: entre no ambiente de shell Bash
Para personalizar o carregamento de device tree overlays, entre em qualquer conta FydeOS e acesse a área de trabalho. Obtenha privilégios de administrador navegando pelo crosh (Control + Alt + T) ou tty e digitando sudo su.
Observação: a partir do FydeOS v17 e do openFyde r114,
sudo sunão funcionará mais. Usesudo -iem vez disso. Esta mudança não afeta versões mais antigas.
Etapa 3: veja os device tree overlays integrados
Os device tree overlays integrados estão localizados no diretório /boot/rockchip/overlay/. Depois de executar o comando ls /boot/rockchip/overlay/*dtbo, você verá a lista de arquivos, como mostrado abaixo (usando rock5b-fydeos como exemplo):
localhost ~ # ls /boot/rockchip/overlay/pwm-fan.dtbo rk3588-i2c8-m4.dtbo rk3588-pwm15-m0.dtbo rk3588-pwm6-m2.dtbo rk3588-spi1-m1-cs1-spidev.dtbo rk3588-uart7-m1.dtbo rock-5b-hdmi2-8k.dtbork3588-add-hdptxphy_hdmi_clk.dtbo rk3588-pwm12-m0.dtbo rk3588-pwm15-m1.dtbo rk3588-pwm7-m3.dtbo rk3588-uart2-m0.dtbo rk3588-uart7-m2.dtbo rock-5b-radxa-display-10fhd.dtbork3588-i2c0-m1.dtbo rk3588-pwm13-m0.dtbo rk3588-pwm15-m3.dtbo rk3588-pwm8-m0.dtbo rk3588-uart2-m2.dtbo rk3588-unlock-opps.dtbo rock-5b-sata.dtbork3588-i2c1-m0.dtbo rk3588-pwm13-m2.dtbo rk3588-pwm2-m1.dtbo rk3588-spi0-m2-cs0-spidev.dtbo rk3588-uart3-m1.dtbo rock-5a-radxa-display-10fhd.dtbork3588-i2c3-m1.dtbo rk3588-pwm14-m0.dtbo rk3588-pwm3-m1.dtbo rk3588-spi0-m2-cs1-spidev.dtbo rk3588-uart4-m2.dtbo rock-5ab-camera-imx415.dtbork3588-i2c7-m3.dtbo rk3588-pwm14-m1.dtbo rk3588-pwm5-m2.dtbo rk3588-spi1-m1-cs0-spidev.dtbo rk3588-uart7-m1-ctsn-rtsn.dtbo rock-5b-hdmi1-8k.dtboEtapa 4: carregar os device tree overlays integrados
FydeOS para a série RK3588 SoC, assim como o uEnv.txt do Armbian, oferece suporte ao Env.txt, localizado em /mnt/stateful_partition/fyde/Env.txt. Para usuários de primeira viagem, talvez seja necessário criar manualmente o diretório /mnt/stateful_partition/fyde/ e o arquivo /mnt/stateful_partition/fyde/Env.txt. Aqui está um exemplo usando o overlay de controle da ventoinha pwm-fan do rock5b:
-
Para o primeiro uso, crie a pasta fyde
Terminal window mkdir -p /mnt/stateful_partition/fyde/ -
Use nano/vim para editar o arquivo
Env.txte adicione o nome do arquivo dtbo emoverlays=, separando múltiplos overlays com um espaçoTerminal window overlays=pwm-fan -
Salve as alterações
Etapa 5: reiniciar o sistema
Depois de fazer as alterações, reinicie o sistema para aplicá-las.
Etapa 6: adicionar arquivos device tree overlays personalizados
O FydeOS exige que os device tree overlays definidos pelo usuário, ou arquivos .dtbo, sejam colocados na pasta /mnt/stateful_partition/fyde/user_overlay/. Se você estiver usando pela primeira vez e a pasta não existir, crie-a. Em seguida, copie os arquivos .dtbo relevantes para essa pasta.
Etapa 7: carregar arquivos device tree overlays personalizados
Carregar device tree overlays personalizados é semelhante a carregar os integrados. Você precisa modificar o arquivo /mnt/stateful_partition/fyde/Env.txt.
Use nano/vim para editar o arquivo Env.txt, adicione o nome do arquivo dtbo em user_overlays=, separando múltiplos overlays com um espaço
user_overlays=foo barEtapa 8: reiniciar o sistema
Reinicie o sistema para aplicar as alterações.
Solução de problemas
- Os
overlaysouuser_overlaysdefinidos para carregar o overlay não funcionam.
Verifique se a caixa de texto no arquivo
Env.txtestá correta e se os múltiplos overlays estão separados por um espaço em inglês. Para overlays personalizados, certifique-se de que os arquivos dtbo em/mnt/stateful_partition/fyde/overlaysejam válidos.
- Por que alterar os
overlaysouuser_overlaysfez com que o sistema não inicializasse?
Antes de fazer alterações, verifique se o overlay que você está carregando foi validado; caso contrário, ele pode fazer o sistema não inicializar. Se isso acontecer, você pode desfazer as alterações montando manualmente o arquivo /fyde/Env.txt correspondente à primeira partição do disco do sistema.