Pular para o conteúdo

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.

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

Seção intitulada “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.

Para prosseguir, você deve entender os conceitos básicos de device tree overlays e operações básicas de linha de comando no Linux.

Etapa 1: entre na sua conta FydeOS e acesse a área de trabalho

Seção intitulada “Etapa 1: entre na sua conta FydeOS e acesse a área de trabalho”

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 su não funcionará mais. Use sudo -i em vez disso. Esta mudança não afeta versões mais antigas.

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):

Janela do terminal
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.dtbo
rk3588-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.dtbo
rk3588-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.dtbo
rk3588-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.dtbo
rk3588-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.dtbo
rk3588-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.dtbo

Etapa 4: carregar os device tree overlays integrados

Seção intitulada “Etapa 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

    Janela do terminal
    mkdir -p /mnt/stateful_partition/fyde/
  • Use nano/vim para editar o arquivo Env.txt e adicione o nome do arquivo dtbo em overlays=, separando múltiplos overlays com um espaço

    Janela do terminal
    overlays=pwm-fan
  • Salve as alterações

Depois de fazer as alterações, reinicie o sistema para aplicá-las.

Etapa 6: adicionar arquivos device tree overlays personalizados

Seção intitulada “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

Seção intitulada “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 bar

Reinicie o sistema para aplicar as alterações.

  1. Os overlays ou user_overlays definidos para carregar o overlay não funcionam.

Verifique se a caixa de texto no arquivo Env.txt está 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/overlay sejam válidos.

  1. Por que alterar os overlays ou user_overlays fez 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.