Armbian on geniatech xpi-s905x3

Armbian on geniatech xpi-s905x3


16 de março de 2025 // Tinker, Homelab, Linux, SBC, Amlogic

Arquivado em Tinker

Estou escrevendo isso para mim, para minha própria sanidade, se precisar fazê -lo novamente, mas se ajudar alguém, melhor.

Alguns anos atrás, eu estava lendo o Cnx Software RSS Feed e eu vi este quadro. Realmente me tentou comprar. O geniatech XpiS905X3 é um formato de forma de Raspberry Pi Sbccom um chipset razoavelmente poderoso (amlogic s905x3), 2 GB de BATERAssim, USB3Gigabit Ethernet, e assim por diante. No momento da redação, ele vai para 52 EUR Para uma amostra, mas quando eu pedi em 2021, era um mero 37 USD. Ele veio com o Android 9.

Não verifiquei a compatibilidade ou algo assim (erro comum da minha parte, como minha gigantesca coleta de poeira Sbc A coleção pode testemunhar), mas fiquei emocionado por ter meu próprio cluster de Kubernetes minúsculos executando coisas pequenas de homelab, e saiu todo o resto da água na época em um preço, desempenho ou ambos (e até agora, com o preço original). Então eu comprei dois.

De qualquer forma, quando eu o recebi e finalmente tive algum tempo para brincar com ele, não havia como fazer essa coisa correr Linux, apenas Android.

Armbian não estava inicializando, *Elec Não foi inicializado, nada o faria.

Portanto, desculpe as notas abaixo, pois elas são para mim, mas se você lutou com este dispositivo, não precisará de muito outro contexto.

  1. Prepare um micro-Sd Cartão com comunidade armbiana construída para amlogic s9xx TV Caixa.

  2. Um erro é tentar usar um U-Boot da Manline para inicializar a coisa, não sou especialista em U-Boot, mas em algum momento eu gastei muitas horas para fazê-lo inicializar o kernel. Não funcionaria nesta placa. Então aqui você tem substituições para aml_autoscriptAssim, s905_autoscript e emmc_autoscript que usam o U-Boot da placa para fazer o carregamento. Substitua -os em seu /boot diretório do Sd cartão.

  3. O XpiS905X3 U-boot não carrega aml_autoscript por … razões. Ele tenta carregar outros arquivos (e falha porque eles não estão lá) e botas para Android ou recuperação. Então corra cp aml_autoscript factory_update_param.ubtporque isso factory_update_param.ubt é um dos arquivos que ele tenta.

  4. Árvore do dispositivo. Nenhuma das árvores de dispositivos incluídas é totalmente funcional. Para mim, as partes críticas eram Ethernet, USBe HDMI saída. Mas alguns deles estavam trabalhando majoritariamentealguns estavam faltando USBoutros HDMIoutros teriam que Ethernet parasse de funcionar se HDMI está desconectado … aquele que funcionou o melhor entre eles, meson-sm1-x96-air-gbit.dtbteve um problema, sendo o problema que só detectou 1 GB de memória em vez de 2 GB. Descompilar o dtb O arquivo é um beco sem saída devido à falta de rótulos e phandlers numéricos. Então, vamos gerá -lo a partir das fontes do kernel.

    • Inicialize a placa com essa árvore de dispositivo (ajustando armbianEnv.txt No entanto, é necessário).
    • Instale as fontes e o GNU Compilador C ++ apt install linux-source g++.
    • Pré -processo o arquivo: cpp -nostdinc -I /usr/src/linux-source-6.8.0/linux-source-6.8.0/include/ -I arch -undef -x assembler-with-cpp meson-sm1-x96-air-gbit.dts xpi.dts.preprocessed (ajuste os caminhos, etc).
    • Edite o arquivo de saída pré -processado das fontes Linux; Encontre o nó da memória.
      memory@0 {
      device_type = "memory";
      reg = <0x0 0x0 0x0 0x40000000>;
      };

      Substitua o 0x40000000 com 0x80000000
    • Compile com dtc (em device-tree-compiler pacote se você ainda não o tiver): dtc -O dtb -I dts xpi.dts.preprocessed -o xpi.dtb.
    • Atualizar armbianEnv.txt com o novo arquivo DTB.

Salvar, plugue (pressionando o botão Flash/Redefinição) e BOOM, tudo o que eu preciso está lá.

Agora, há muitas coisas que não tentei: EMMC (prefiro deixar a inicialização dupla), Wayland/X (será principalmente servidor sem cabeça), então você pode precisar experimentar outros DTBs e ver o que funciona e trazer ajustes de outras placas/caixas de TV para o arquivo pré -processado. Por isso é bom fazer dtc Descompilação e explorar a árvore do dispositivo, mas os arquivos descompilados não podem ser facilmente recompilados novamente (pelo menos os armbianos não têm rótulos).

Feliz hacking!



Source link

Postagens Similares

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *