[LINUX] Jusqu'à ce que OSD335X exécute U-boot sur une carte personnalisée (Remarque)

2020/07/25 Première description

Synopsis jusqu'à présent

J'ai acheté OSD3358-512M-BCB. https://www.mouser.jp/ProductDetail/415-OSD3358-512M-BCB

J'ai fait une planche. https://twitter.com/nonNoise/status/1278465569499447298?s=20

Mis en œuvre. https://www.youtube.com/watch?v=acrJceh3bkU

115929400_3171100156300596_3359527061697752589_o.jpg

Allumer

Ça a marché.

Une grande quantité de CCCCCCC ... provient de la série (UART0).

Le paramètre série est *Baud rate: 115,200 *Data bits: 8 *Parity: None *Stop bits: 1 *Flow control: None

Préparation des données binaires U-boot

Apparemment, il doit être compilé.

Compilez dans l'environnement Ubuntu. L'environnement Ubuntu a été nouvellement préparé avec Vertual Box.

Configuration de l'environnement ARM GCC

wget -c https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/arm-linux-gnueabihf/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

tar xf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

export CC=[PWD]/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-

Compiler U-Boot

git clone https://github.com/u-boot/u-boot cd u-boot/ git checkout v2018.01 -b tmp

Appliquer un correctif à U-Boot

wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2018.01/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2018.01/0002-U-Boot-BeagleBone-Cape-Manager.patch wget -c https://raw.githubusercontent.com/RobertCNelson/Bootloader-Builder/master/patches/v2018.03-rc1/0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch

patch -p1 < 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch patch -p1 < 0002-U-Boot-BeagleBone-Cape-Manager.patch patch -p1 < 0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch

Faites U-Boot.

export CC=[PWD]/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-

make ARCH=arm CROSS_COMPILE={CC} distclean make ARCH=arm CROSS_COMPILE={CC} am335x_evm_defconfig make ARCH=arm CROSS_COMPILE=${CC}

Remettez les fichiers nécessaires à Windows

Deux types de fichiers sont requis pour U-Boot d'ARM u-boot-spl.bin (pour le démarrage de la première étape) et u-boot.img (pour le démarrage de la prochaine étape)

u-boot-spl.bin est dans u-boot / spl.

Écrire avec TeraTerm

Les étrangers utilisent également TeraTerm.

Vérifiez que CCC CC ..... et C circulent dans le terminal.

Fichier-> Transfert-> XMODEM-> Envoyer Sélectionnez u-boot-spl.bin Vérifiez 1K en bas à gauche Transféré.

コメント 2020-07-25 014135.png

Fichier-> Transfert-> YMODEM-> Envoyer Sélectionnez u-boot.img Transféré. コメント 2020-07-25 014502.png Au début, il sera de 0% pendant un moment, mais soyez patient (environ 1 minute) jusqu'à ce que la barre bouge.

sans encombre? commencer. コメント 2020-07-25 014806.png

Et alors?

Cependant, dans cet état, les deux programmes U-Boot sont toujours étendus dans la RAM, donc lorsque vous réinitialisez ou redémarrez, CCCC .... s'affiche à nouveau. C'est la meilleure façon de déboguer U-Boot.

En regardant le journal U-Boot, il se plaint que l'EEPROM est une erreur ou qu'il n'y a pas d'USB ou d'Ethernet. Il ne peut pas être laissé tel quel, il semble donc que la personnalisation d'U-Boot soit nécessaire. Pour le moment, je viens de choisir la procédure d'écriture d'U-Boot.

La destination semble longue. (J'attends avec impatience) Fufufu.

Les références

https://processors.wiki.ti.com/index.php?title=AM335x_U-Boot_User%27s_Guide&oldid=151545#Boot_Over_UART

https://octavosystems.com/forums/topic/osd3358-boot/

Véritable mémo (1)

Je l'ai traité parce que j'ai une erreur, mais je vais la laisser juste au cas où.

bad value (‘armv5’) for ‘-march=’ switch

Erreur avec make ARCH = arm CROSS_COMPILE = $ {CC} lorsque cet article est correct ou lorsque j'essaye de recompiler

Il semble que l'exportation a été effacée en redémarrant Ubuntu. (Hé ~) Donc avant de compiler export CC=[PWD]/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- Changé l'article pour écrire à nouveau.

Véritable mémo (2)

Lors de l'écriture de U-Boot en série, X-MODEM et Y-MODEM sont sortis, et je me suis demandé pourquoi, alors j'ai cherché. https://ja.wikipedia.org/wiki/XMODEM https://ja.wikipedia.org/wiki/YMODEM Je ne savais pas (je suis désolé je suis désolé) TeraTerm est pratique et facile à utiliser, mais j'ai du mal lorsque je veux l'automatiser, alors j'ai cherché une bibliothèque en Python. https://pythonhosted.org/xmodem/ https://github.com/alexwoo1900/ymodem Je vois?

Recommended Posts

Jusqu'à ce que OSD335X exécute U-boot sur une carte personnalisée (Remarque)
Comment personnaliser U-Boot avec une carte personnalisée pour OSD335X (Remarque)
Jusqu'à ce que PythonCGI s'exécute sur UbuntuServer18.04 + Apache2
Un mémo contenant Python2.7 et Python3 dans CentOS
Un mémo qui a fait un tutoriel pour exécuter python sur heroku