EDIT: Consegui chegar à parte rpi_3_config, mas o próximo comando deu um erro.
EDIT # 2: Agora eu sou capaz de compilar o u-boot com sucesso a partir do repositório oficial do u-boot git
EDIT # 3: Até agora parece bem sucedido com o arranque. Não posso testá-lo agora, mas tentarei com o MaaS mais tarde!
Embora você ainda não consiga inicializar o PXE em um Raspberry Pi 3 sem um cartão SD, é possível fazer parte do caminho com o u-boot carregado no cartão SD, configurado para inicialização PXE pela rede.
Infelizmente, eu estou exatamente na sua situação,
Tentando PXE boot tortas de framboesa para MaaS, no entanto eu fiquei um pouco preso quando o pi chegou a realmente arrancar. Consegui chegar ao ponto de obter um endereço via DHCP, no entanto, quando se trata de analisar o arquivo pxelinux, ele atingiu algum tipo de erro.
Caso você tenha mais sorte com suas tortas de framboesa, e tendo em mente que eu estava fazendo isso há muito tempo antes do Pi 3 ser lançado, vou descrever brevemente os passos que eu dei para chegar a esse estágio, embora Eu não posso te ajudar mais.
-
git clone git://git.denx.de/u-boot.git && cd u-boot
-
git checkout rpi_dev
- Neste ponto, eu fiz uma edição simples no arquivo de configuração para o pi do raspberry para inicializar automaticamente os dispositivos usb na inicialização, mas parece que a instrução
#DEFINE
apropriada já foi adicionada desde.
- Agora você precisa de um compilador cruzado para o pi de framboesa. A maneira mais simples de fazer isso é ir aqui no site do raspberry pi e seguir as etapas abaixo
INSTALL TOOLCHAIN
, para sua versão do pi. Lembre-se de adicionar as entradas de caminho, que são necessárias apenas para a próxima etapa, portanto, um export
será suficiente.
- Entre na raiz do repositório do git de u-boot e execute o seguinte, com o make instalado:
make CROSS_COMPILER=arm-linux-gnueabi- rpi_3_config
e, em seguida, para criar realmente: make CROSS_COMPILER=arm-linux-gnueabi-
- Agora você deve ter um arquivo
u-boot.bin
em seu diretório atual.
-
wget https://raw.githubusercontent.com/raspberrypi/linux/rpi-4.4.y/scripts/mkknlimg
-
./mkknlimg --dtok u-boot.bin kernel7.img
- Copie o kernel7.img para o seu sdcard
Boa sorte, e se você tiver sucesso, não deixe de postar sua própria resposta, declarando exatamente o que você fez, e aceite-a.