Outils pour utilisateurs

Outils du site


francois:beaglebone_black

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
francois:beaglebone_black [2017/09/17 08:47] – [Flasher U-Boot sur une carte SD] francoisfrancois:beaglebone_black [2017/09/17 14:44] (Version actuelle) – francois
Ligne 1: Ligne 1:
 ====== Développer avec la carte Beaglebone black ====== ====== Développer avec la carte Beaglebone black ======
  
-===== Compiler U-Boot =====+===== Le cross-compiler =====
  
 <code> <code>
-sudo apt install gcc-arm-linux-gnueabi +wget -c https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/arm-linux-gnueabihf/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz 
-git clone git://git.denx.de/u-boot.git && cd u-boot +tar xf gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz 
-make am335x_boneblack_defconfig +export CC=`pwd`/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- 
-ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make+</code> 
 + 
 +===== Compiler U-Boot ===== 
 +<code> 
 +git clone https://github.com/u-boot/u-boot 
 +cd u-boot/ 
 +git checkout v2017.09 -b tmp 
 + 
 +wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.09/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch 
 +wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.09/0002-U-Boot-BeagleBone-Cape-Manager.patch 
 +   
 +patch -p1 < 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch 
 +patch -p1 < 0002-U-Boot-BeagleBone-Cape-Manager.patch 
 + 
 +make ARCH=arm CROSS_COMPILE=${CC} distclean 
 +make ARCH=arm CROSS_COMPILE=${CC} am335x_evm_defconfig 
 +make ARCH=arm CROSS_COMPILE=${CC}
 </code> </code>
  
Ligne 18: Ligne 34:
 sudo dd if=./u-boot/MLO of=${DISK} count=1 seek=1 bs=128k sudo dd if=./u-boot/MLO of=${DISK} count=1 seek=1 bs=128k
 sudo dd if=./u-boot/u-boot.img of=${DISK} count=2 seek=1 bs=384k sudo dd if=./u-boot/u-boot.img of=${DISK} count=2 seek=1 bs=384k
 +</code>
  
 +Creation of the partition next to U-Boot
 +<code>
 sudo sfdisk ${DISK} <<-__EOF__ sudo sfdisk ${DISK} <<-__EOF__
 4M,,L,* 4M,,L,*
 __EOF__ __EOF__
 </code> </code>
 +
 +For mkfs.ext4 >= 1.43
 +  sudo mkfs.ext4 -L rootfs -O ^metadata_csum,^64bit ${DISK}p1
 +
 +===== Compiler le noyau =====
 +
 +<code>
 +git clone https://github.com/RobertCNelson/bb-kernel
 +cd bb-kernel/
 +
 +git checkout origin/am33x-v4.9 -b tmp
 +
 +./build_kernel.sh
 +
 +export kernel_version=4.9.50-bone7
 +</code>
 +Replace the kernel version by the one returned by the ''build_kernel.sh'' script
 +
 +===== Ecrire le rootfs =====
 +<code>
 +mkdir rootfs
 +sudo mount /dev/mmcblk0p1 rootfs
 +
 +wget -c https://rcn-ee.com/rootfs/eewiki/minfs/debian-9.1-minimal-armhf-2017-08-08.tar.xz
 +tar xfvp debian-9.1-minimal-armhf-2017-08-08.tar.xz
 +sudo tar xfvp ./*-*-*-armhf-*/armhf-rootfs-*.tar -C rootfs/
 +
 +sudo chown root.root rootfs
 +sudo chmod 755 rootfs/
 +
 +sudo sh -c "echo 'uname_r=${kernel_version}' >> rootfs/boot/uEnv.txt"
 +sudo cp -v ./bb-kernel/deploy/${kernel_version}.zImage rootfs/boot/vmlinuz-${kernel_version}
 +sudo mkdir -p rootfs/boot/dtbs/${kernel_version}/
 +sudo tar xfv ./bb-kernel/deploy/${kernel_version}-dtbs.tar.gz -C rootfs/boot/dtbs/${kernel_version}/
 +sudo tar xfv ./bb-kernel/deploy/${kernel_version}-modules.tar.gz -C rootfs/
 +
 +sudo sh -c "echo '/dev/mmcblk0p1  /  auto  errors=remount-ro  0  1' >> rootfs/etc/fstab"
 +</code>
 +
 +===== Configurer le réseau =====
 +Ajouter à ''/etc/network/interfaces''
 +<code>
 +auto lo
 +iface lo inet loopback
 +  
 +auto eth0
 +iface eth0 inet dhcp
 +</code>
 +
 +==== USB Gadget ====
 +Provides http access to beaglebone black over usb.
 +Install udhcpd
 +  sudo apt-get install udhcpd
 +
 +Edit: /etc/network/interfaces and add
 +
 +<code>
 +# Ethernet/RNDIS gadget (g_ether)
 +# ... or on host side, usbnet and random hwaddr
 +iface usb0 inet static
 +        address 192.168.7.2
 +        netmask 255.255.255.252
 +        network 192.168.7.0
 +        gateway 192.168.7.1
 +</code>
 +
 +  wget -c https://raw.github.com/RobertCNelson/tools/master/scripts/beaglebone-black-g-ether-load.sh
 +  chmod +x beaglebone-black-g-ether-load.sh
 +  sudo ./beaglebone-black-g-ether-load.sh
 +
 +===== eMMC =====
 +Script to copy your microSD card to eMMC: (this will need these packages installed: initramfs-tools dosfstools rsync)
 +
 +  wget https://raw.githubusercontent.com/RobertCNelson/boot-scripts/master/tools/eMMC/bbb-eMMC-flasher-eewiki-ext4.sh
 +  chmod +x bbb-eMMC-flasher-eewiki-ext4.sh
 +  sudo /bin/bash ./bbb-eMMC-flasher-eewiki-ext4.sh
  
 ===== Liens utiles ===== ===== Liens utiles =====
francois/beaglebone_black.1505638048.txt.gz · Dernière modification : (modification externe)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki