Difference between revisions of "BeagleBoardDebian"
Bakingtips (talk | contribs) |
|||
(582 intermediate revisions by 33 users not shown) | |||
Line 1: | Line 1: | ||
− | + | [[Category: Linux]] | |
+ | [[Category: OMAP]] | ||
+ | [[Category:Development Boards]] | ||
+ | [[Category: BeagleBoard]] | ||
+ | This page is about running a (ARM EABIhf) [https://www.debian.org/ Debian] distribution at [[BeagleBoard]]. BeagleBoard will boot the (ARM EABIhf) Debian distribution from [[BeagleBoard#MMC.2FSD_boot|SD card]]. Debian's NetInstall will be used to install Debian onto your Beagle. | ||
− | Note: | + | Note: Original Beagleboards work with the Debian Console image booted via holding user button down. Last tested 05/2020. Ref: https://github.com/beagleboard/Latest-Images/issues/48 |
− | + | = Help = | |
− | |||
− | + | If you need any help: | |
− | + | *Kernel related help: | |
+ | ** [https://groups.google.com/group/beagleboard Email Beagleboard user group] *Recommended method | ||
+ | ** ''#beagle'': Beagle irc on freenode, accessible also by [http://beagleboard.org/discuss web interface] ([http://www.beagleboard.org/irclogs/index.php logs]) | ||
+ | ** Kernel Trees | ||
+ | *** [https://github.com/RobertCNelson/armv7-multiplatform/ v5.4.x kernel branch] | ||
+ | *** [https://github.com/RobertCNelson/bb-kernel/ BeagleBone] | ||
+ | *** [https://github.com/RobertCNelson/linux-dev Development Kernel source code] | ||
− | + | *When asking for help, please provide some debugging information: | |
+ | ** U-Boot Version installed on board | ||
+ | ** Kernel Version: uname -a | ||
+ | ** pastebin dmesg | ||
+ | *** Copy from serial port or use "dmesg | pastebinit" (sudo apt-get install pastebinit) | ||
− | + | = Official BeagleBoard.org Images for shipping with BeagleBone Black = | |
− | + | * http://beagleboard.org/source | |
− | + | ||
− | Disk | + | = Recommended Beagle Software = |
+ | |||
+ | Mainline U-Boot: | ||
+ | * All old Ax, Bx, Cx and Dx boards are required to upgrade to at least these U-Boot versions. | ||
+ | * XM Boards have no NAND, so MLO/u-boot.img is always required on the first partition | ||
+ | * Directions: [http://elinux.org/BeagleBoardUbuntu#Upgrade_X-loader_and_U-boot Upgrade X-loader and U-Boot] | ||
+ | |||
+ | = Debian NetInstall = | ||
+ | |||
+ | Scripts: | ||
+ | git clone https://github.com/RobertCNelson/netinstall.git | ||
+ | cd netinstall | ||
+ | |||
+ | Device Options: | ||
+ | BeagleBoard --dtb omap3-beagle | ||
+ | BeagleBoard-xM --dtb omap3-beagle-xm | ||
+ | BeagleBoard-X15 --dtb am57xx-beagle-x15 | ||
+ | BeagleBone (serial) --dtb am335x-bone-serial | ||
+ | BeagleBone (video via cape) --dtb am335x-bone-video | ||
+ | BeagleBone Black --dtb am335x-boneblack | ||
+ | PandaBoard (A1->A3) --dtb omap4-panda | ||
+ | PandaBoard (A4->Ax) --dtb omap4-panda-a4 | ||
+ | PandaBoard ES --dtb omap4-panda-es | ||
+ | |||
+ | You will need a 1GB SD card or greater. | ||
+ | Standard System : ~455MB | ||
+ | |||
+ | == Debian 10 (buster) == | ||
+ | |||
+ | Quick Install script for "board" | ||
+ | sudo ./mk_mmc.sh --mmc /dev/sdX --dtb "board" --distro stretch | ||
+ | |||
+ | So For the BeagleBoard xM: | ||
+ | sudo ./mk_mmc.sh --mmc /dev/sdX --dtb omap3-beagle-xm --distro stretch | ||
+ | |||
+ | *Options: | ||
+ | **--firmware : installs firmware | ||
+ | **--serial-mode : debian-installer uses Serial Port | ||
+ | |||
+ | = Demo Image = | ||
+ | |||
+ | * '''Advanced Users only''': BeagleBoard xM: Kernel source, used in these demo images: https://github.com/RobertCNelson/armv7-multiplatform | ||
+ | git clone https://github.com/RobertCNelson/armv7-multiplatform.git | ||
+ | cd armv7-multiplatform | ||
+ | git checkout origin/v5.4.x -b tmp | ||
+ | ./build_kernel.sh | ||
+ | * '''Advanced Users only''': BeagleBone/BeagleBone Black/PocketBeagle: Kernel v4.19.x source, used in these demo images: https://github.com/RobertCNelson/ti-linux-kernel-dev/tree/ti-linux-4.19.y | ||
+ | git clone https://github.com/RobertCNelson/ti-linux-kernel-dev.git | ||
+ | cd ti-linux-kernel-dev | ||
+ | git checkout origin/ti-linux-4.19.y -b tmp | ||
+ | ./build_kernel.sh | ||
+ | |||
+ | == Debian (buster) == | ||
+ | |||
+ | Default username/password: | ||
+ | *username: debian | ||
+ | *password: temppwd | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** BeagleBoard xM: v5.4.24-armv7-x20 kernel | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.19.94-ti-r36 kernel | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel | ||
+ | *2019-04-10 | ||
+ | ** BeagleBoard xM: v4.19.31-armv7-x31 kernel | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.14.108-ti-r104 kernel | ||
+ | ** BeagleBoard-X15: v4.14.108-ti-r104 kernel | ||
+ | *2018-12-10 | ||
+ | ** BeagleBoard xM: v4.19.8-armv7-x11 kernel | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.14.79-ti-r84 kernel | ||
+ | ** BeagleBoard-X15: v4.14.79-ti-r84 kernel | ||
+ | |||
+ | Services Active: | ||
+ | Note: Depending on your internal network these may work out of the box | ||
+ | Apache, Port 80: http://arm.local/ (Bone: via usb) (Windows/Linux) http://192.168.7.2, (Mac/Linux) http://192.168.6.2 | ||
+ | SSH, Port 22: ssh debian@arm.local (Bone: via usb) (Windows/Linux) debian@192.168.7.2, (Mac/Linux) debian@192.168.6.2 | ||
+ | Getty, Serial Port | ||
+ | |||
+ | Default user: debian pass: temppwd | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/elinux/debian-10.3-console-armhf-2020-03-12.tar.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum debian-10.3-console-armhf-2020-03-12.tar.xz | ||
+ | b6f1ca53d67554d0381ca59fe9ecd50b5013a073abd2b2e133aa8be1784cdbc6 debian-10.3-console-armhf-2020-03-12.tar.xz | ||
+ | |||
+ | Unpack Image: | ||
+ | tar xf debian-10.3-console-armhf-2020-03-12.tar.xz | ||
+ | cd debian-10.3-console-armhf-2020-03-12 | ||
+ | |||
+ | If you don't know the location of your SD card: | ||
+ | sudo ./setup_sdcard.sh --probe-mmc | ||
+ | |||
+ | You should see something like: | ||
+ | |||
+ | Are you sure? I don't see [/dev/idontknow], here is what I do see... | ||
+ | |||
+ | fdisk -l: | ||
+ | Disk /dev/sda: 500.1 GB, 500107862016 bytes '''<- x86 Root Drive''' | ||
+ | Disk /dev/sdd: 3957 MB, 3957325824 bytes '''<- MMC/SD card''' | ||
− | + | lsblk: | |
− | /dev/ | + | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT |
− | /dev/ | + | sda 8:0 0 465.8G 0 disk |
− | /dev/ | + | ├─sda1 8:1 0 446.9G 0 part / '''<- x86 Root Partition''' |
− | /dev/ | + | ├─sda2 8:2 0 1K 0 part |
+ | └─sda5 8:5 0 18.9G 0 part [SWAP] | ||
+ | sdd 8:48 1 3.7G 0 disk | ||
+ | ├─sdd1 8:49 1 64M 0 part | ||
+ | └─sdd2 8:50 1 3.6G 0 part | ||
+ | |||
+ | * In this example, we can see via mount, '''/dev/sda1''' is the x86 rootfs, therefore '''/dev/sdd''' is the other drive in the system, which is the MMC/SD card that was inserted and should be used by ./setup_sdcard.sh... | ||
+ | |||
+ | Install Image: | ||
+ | |||
+ | Quick install script for [board] | ||
+ | sudo ./setup_sdcard.sh --mmc /dev/sdX --dtb board | ||
+ | |||
+ | board options: | ||
+ | *BeagleBoard Ax/Bx/Cx/Dx - omap3-beagle | ||
+ | *BeagleBoard xM - omap3-beagle-xm | ||
+ | *All BeagleBone Variants - beaglebone | ||
+ | *OMAP5432 uEVM - omap5-uevm | ||
+ | *BeagleBoard-X15 (BeagleBone AI) - am57xx-beagle-x15 | ||
+ | |||
+ | So for the BeagleBoard xM: | ||
+ | sudo ./setup_sdcard.sh --mmc /dev/sdX --dtb omap3-beagle-xm | ||
+ | |||
+ | Advanced: Build Image: | ||
+ | |||
+ | git clone https://github.com/RobertCNelson/omap-image-builder.git | ||
+ | cd omap-image-builder | ||
+ | git checkout v2020.03 -b tmp | ||
+ | |||
+ | Stable: | ||
+ | |||
+ | ./RootStock-NG.sh -c rcn-ee_console_debian_buster_armhf | ||
+ | |||
+ | = Flasher = | ||
+ | |||
+ | == eMMC: All BeagleBone Variants with eMMC == | ||
+ | |||
+ | This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io First press and hold the boot select button (next to the microSD card), then apply power. On boot-up the board should indicate it has started the flashing procedure visually via a Cylon Sweep pattern shown on the 4 LED's next to the Ethernet jack. Progress is reported on both the serial debug and HDMI connectors, once completed all 4 LED's should be full ON. Simply remove power, remove the microSD card and Debian will now boot directly from eMMC. | ||
+ | |||
+ | Script for reference: (this is the script that writes to the eMMC) | ||
+ | https://github.com/RobertCNelson/boot-scripts/blob/master/tools/eMMC/init-eMMC-flasher-v3.sh | ||
+ | |||
+ | This script will only take about 5-6 Minutes after power on. | ||
+ | |||
+ | Notes: | ||
+ | * If only two LED's stay lit and nothing happens, the board has crashed due to lack of power. Retry with a 5Volt DC power supply connected. | ||
+ | * If the 4 LED's blink a constant pattern, the eMMC write has failed. First REMOVE ALL capes, then retry again. | ||
+ | |||
+ | User: debian | ||
+ | pass: temppwd | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** All BeagleBone Variants with eMMC: v4.19.94-ti-r36 kernel | ||
+ | *2019-04-10 | ||
+ | ** All BeagleBone Variants with eMMC: v4.14.108-ti-r104 kernel | ||
+ | *2018-12-10 | ||
+ | ** All BeagleBone Variants with eMMC: v4.14.79-ti-r84 kernel | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/flasher/bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb* | ||
+ | 12a449c3426d811765e8ef0236ae3ddc74fc645a482640984435452929ebf55d bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Windows/Mac/Linux gui | ||
+ | http://etcher.io | ||
+ | |||
+ | Linux: (dd) | ||
+ | xzcat bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX | ||
+ | |||
+ | == eMMC: BeagleBoard-X15 and BeagleBone AI == | ||
+ | |||
+ | This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io First press and hold the boot select button (next to the microSD card), then apply power. On boot-up the board should indicate it has started the flashing procedure visually via a Cylon Sweep pattern shown on the 4 LED's next to the Ethernet jack. Progress is reported on both the serial debug and HDMI connectors, once completed all 4 LED's should be full ON. Simply remove power, remove the microSD card and Debian will now boot directly from eMMC. | ||
+ | |||
+ | Script for reference: (this is the script that writes to the eMMC) | ||
+ | https://github.com/RobertCNelson/boot-scripts/blob/master/tools/eMMC/init-eMMC-flasher-v3.sh | ||
+ | |||
+ | This script will only take about 5-6 Minutes after power on. | ||
+ | |||
+ | Notes: | ||
+ | * If only two LED's stay lit and nothing happens, the board has crashed due to lack of power. Retry with a 5Volt DC power supply connected. | ||
+ | * If the 4 LED's blink a constant pattern, the eMMC write has failed. First REMOVE ALL capes, then retry again. | ||
+ | |||
+ | User: debian | ||
+ | pass: temppwd | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel | ||
+ | *2019-04-10 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.14.108-ti-r104 kernel | ||
+ | *2018-12-10 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.14.79-ti-r84 kernel | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/flasher/am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb* | ||
+ | b2d4600cfbeaad90e9d634f8f9671be1223d235e6581aac82897d3f28076d338 am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Windows/Mac/Linux gui | ||
+ | http://etcher.io | ||
+ | |||
+ | Linux: (dd) | ||
+ | xzcat am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX | ||
+ | |||
+ | = raw microSD img = | ||
+ | |||
+ | == BeagleBoard xM == | ||
+ | |||
+ | This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io | ||
+ | |||
+ | User: debian | ||
+ | pass: temppwd | ||
+ | |||
+ | Auto partition resize: | ||
+ | cd /opt/scripts/tools | ||
+ | git pull | ||
+ | ./grow_partition.sh | ||
+ | sudo reboot | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** BeagleBoard xM: v5.4.24-armv7-x20 kernel | ||
+ | *2019-04-10 | ||
+ | ** BeagleBoard xM: v4.19.31-armv7-x31 kernel | ||
+ | *2018-12-10 | ||
+ | ** BeagleBoard xM: v4.19.8-armv7-x11 kernel | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/microsd/bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum bbxm-debian-10.3-console-armhf-2020-03-12-2gb* | ||
+ | 864cd6a45179e87c68087150597e18a1c12c81621da7735ee8d5c35094423845 bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Windows/Mac/Linux gui | ||
+ | http://etcher.io | ||
+ | |||
+ | Linux: (dd) | ||
+ | xzcat bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX | ||
+ | |||
+ | == All BeagleBone Variants and PocketBeagle== | ||
+ | |||
+ | This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io | ||
+ | |||
+ | User: debian | ||
+ | pass: temppwd | ||
+ | |||
+ | Auto partition resize: | ||
+ | cd /opt/scripts/tools | ||
+ | git pull | ||
+ | ./grow_partition.sh | ||
+ | sudo reboot | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.19.94-ti-r36 kernel | ||
+ | *2019-04-10 | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.14.108-ti-r104 kernel | ||
+ | *2018-12-10 | ||
+ | ** All BeagleBone Variants and PocketBeagle: v4.14.79-ti-r84 kernel | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/microsd/bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum bone-debian-10.3-console-armhf-2020-03-12-2gb* | ||
+ | 6d898c473edc8a50597ed7da8342c899d88e07b8a6b4c7c143257e947cb5f52d bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Windows/Mac/Linux gui | ||
+ | http://etcher.io | ||
+ | |||
+ | Linux: (dd) | ||
+ | xzcat bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX | ||
+ | |||
+ | == BeagleBoard-X15 and BeagleBone AI== | ||
+ | |||
+ | This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io | ||
+ | |||
+ | User: debian | ||
+ | pass: temppwd | ||
+ | |||
+ | Auto partition resize: | ||
+ | cd /opt/scripts/tools | ||
+ | git pull | ||
+ | ./grow_partition.sh | ||
+ | sudo reboot | ||
+ | |||
+ | Image Updated: | ||
+ | *2020-03-12 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel | ||
+ | *2019-04-10 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.14.108-ti-r104 kernel | ||
+ | *2018-12-10 | ||
+ | ** BeagleBoard-X15 (and BeagleBone AI): v4.14.79-ti-r84 kernel | ||
+ | |||
+ | Get prebuilt image: | ||
+ | wget https://rcn-ee.com/rootfs/2020-03-12/microsd/am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Verify Image with: | ||
+ | sha256sum am57xx-debian-10.3-console-armhf-2020-03-12-2gb* | ||
+ | 24bfaeac8d90ebd36790ba4c04a4117fe8c2e7aa28de5d1ff0a5ab164e32bb90 am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | ||
+ | |||
+ | Windows/Mac/Linux gui | ||
+ | http://etcher.io | ||
+ | |||
+ | Linux: (dd) | ||
+ | xzcat am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX | ||
+ | |||
+ | |||
+ | = Debian Configuration = | ||
+ | |||
+ | ==Install Latest Kernel Image== | ||
+ | |||
+ | General apt syntax for searching and installing a specific kernel: | ||
+ | sudo apt-get update | ||
+ | sudo apt-cache search linux-image | grep <branch> | ||
+ | sudo apt-get install linux-image-<specific version> | ||
+ | sudo reboot | ||
+ | |||
+ | Latest kernel script | ||
+ | cd /opt/scripts/tools/ | ||
+ | git pull | ||
+ | sudo ./update_kernel.sh <OPTIONS> | ||
+ | |||
+ | == 4.19.x-ti == | ||
+ | beagleboard.org patchset: https://github.com/beagleboard/linux/tree/4.19 | ||
+ | Based on: http://git.ti.com/gitweb/?p=ti-linux-kernel/ti-linux-kernel.git;a=shortlog;h=refs/heads/ti-linux-4.19.y | ||
+ | |||
+ | 4.19.x-ti BeagleBone/BeagleBone Black/BeagleBoard-X15 | ||
+ | --ti-channel --lts-4_19 | ||
+ | |||
+ | 4.19.x-ti BeagleBone/BeagleBone Black/BeagleBoard-X15 + RT | ||
+ | --ti-rt-channel --lts-4_19 | ||
+ | |||
+ | == Mainline (4.19.x lts) == | ||
+ | |||
+ | 4.19.x BeagleBone/BeagleBone Black | ||
+ | --bone-kernel --lts-4_19 | ||
− | + | 4.19.x BeagleBone/BeagleBone Black + RT | |
+ | --bone-rt-kernel --lts-4_19 | ||
− | + | == Debian 9: stretch == | |
+ | sudo apt-get install linux-image-armmp | ||
− | + | Reboot with your new Kernel Image. | |
− | |||
− | |||
− | + | == Xorg Drivers == | |
− | + | Script: | |
− | + | cd /opt/scripts/tools/ | |
+ | git pull | ||
− | + | BeagleBoard/PandaBoard: | |
+ | cd /opt/scripts/tools/graphics/ | ||
+ | ./ti-omapdrm.sh | ||
− | + | BeagleBone/BeagleBone Black: | |
+ | cd /opt/scripts/tools/graphics/ | ||
+ | ./ti-tilcdc.sh | ||
− | + | == SGX Drivers == | |
− | + | === SGX BeagleBone/BeagleBone Black === | |
− | + | [[BeagleBoneBlack/SGX_%2B_Qt_EGLFS_%2B_Weston|A page is dedicated for the installation and use of the graphics accelerator]]. | |
− | |||
− | |||
− | |||
− | + | = Building Kernel = | |
− | + | Note, this section use to have a lot of details, but maintenance of the two wiki's became a pain, so for now on we will just link to my other pages: | |
− | |||
− | + | == Beagle/Beagle xM == | |
+ | http://eewiki.net/display/linuxonarm/BeagleBoard | ||
− | + | == BeagleBone == | |
+ | http://eewiki.net/display/linuxonarm/BeagleBone | ||
− | + | == BeagleBone Black == | |
− | + | http://eewiki.net/display/linuxonarm/BeagleBone+Black | |
− | |||
− | + | == Panda/Panda ES == | |
+ | http://eewiki.net/display/linuxonarm/PandaBoard | ||
− | + | = Upgrading from Debian 5 to Debian 6 = | |
− | |||
− | |||
− | |||
− | + | [http://www.jeremycole.com/blog/2011/03/09/beagleboard-upgrading-from-debian-5-to-debian-6/ Upgrading] from Debian 5 to Debian 6 report and tutorial. | |
− | + | ||
− | + | = Upgrading from Debian 6 (Squeeze) to Debian 7 (Wheezy) = | |
− | |||
− | + | Note, this only goes over "armel" -> "armel"... For users wishing to switch from "armel" -> "armhf" just re-install... | |
− | + | sudo apt-get update ; sudo apt-get upgrade | |
− | + | sudo sed -i -e "s/squeeze/wheezy/g" /etc/apt/sources.list | |
+ | sudo apt-get update ; sudo apt-get install -y apt aptitude udev dpkg | ||
+ | sudo aptitude update ; sudo aptitude -y safe-upgrade ; sudo aptitude -y dist-upgrade |
Latest revision as of 22:01, 29 May 2020
This page is about running a (ARM EABIhf) Debian distribution at BeagleBoard. BeagleBoard will boot the (ARM EABIhf) Debian distribution from SD card. Debian's NetInstall will be used to install Debian onto your Beagle.
Note: Original Beagleboards work with the Debian Console image booted via holding user button down. Last tested 05/2020. Ref: https://github.com/beagleboard/Latest-Images/issues/48
Contents
- 1 Help
- 2 Official BeagleBoard.org Images for shipping with BeagleBone Black
- 3 Recommended Beagle Software
- 4 Debian NetInstall
- 5 Demo Image
- 6 Flasher
- 7 raw microSD img
- 8 Debian Configuration
- 9 Building Kernel
- 10 Upgrading from Debian 5 to Debian 6
- 11 Upgrading from Debian 6 (Squeeze) to Debian 7 (Wheezy)
Help
If you need any help:
- Kernel related help:
- Email Beagleboard user group *Recommended method
- #beagle: Beagle irc on freenode, accessible also by web interface (logs)
- Kernel Trees
- When asking for help, please provide some debugging information:
- U-Boot Version installed on board
- Kernel Version: uname -a
- pastebin dmesg
- Copy from serial port or use "dmesg | pastebinit" (sudo apt-get install pastebinit)
Official BeagleBoard.org Images for shipping with BeagleBone Black
Recommended Beagle Software
Mainline U-Boot:
- All old Ax, Bx, Cx and Dx boards are required to upgrade to at least these U-Boot versions.
- XM Boards have no NAND, so MLO/u-boot.img is always required on the first partition
- Directions: Upgrade X-loader and U-Boot
Debian NetInstall
Scripts:
git clone https://github.com/RobertCNelson/netinstall.git cd netinstall
Device Options:
BeagleBoard --dtb omap3-beagle BeagleBoard-xM --dtb omap3-beagle-xm BeagleBoard-X15 --dtb am57xx-beagle-x15 BeagleBone (serial) --dtb am335x-bone-serial BeagleBone (video via cape) --dtb am335x-bone-video BeagleBone Black --dtb am335x-boneblack PandaBoard (A1->A3) --dtb omap4-panda PandaBoard (A4->Ax) --dtb omap4-panda-a4 PandaBoard ES --dtb omap4-panda-es
You will need a 1GB SD card or greater.
Standard System : ~455MB
Debian 10 (buster)
Quick Install script for "board"
sudo ./mk_mmc.sh --mmc /dev/sdX --dtb "board" --distro stretch
So For the BeagleBoard xM:
sudo ./mk_mmc.sh --mmc /dev/sdX --dtb omap3-beagle-xm --distro stretch
- Options:
- --firmware : installs firmware
- --serial-mode : debian-installer uses Serial Port
Demo Image
- Advanced Users only: BeagleBoard xM: Kernel source, used in these demo images: https://github.com/RobertCNelson/armv7-multiplatform
git clone https://github.com/RobertCNelson/armv7-multiplatform.git cd armv7-multiplatform git checkout origin/v5.4.x -b tmp ./build_kernel.sh
- Advanced Users only: BeagleBone/BeagleBone Black/PocketBeagle: Kernel v4.19.x source, used in these demo images: https://github.com/RobertCNelson/ti-linux-kernel-dev/tree/ti-linux-4.19.y
git clone https://github.com/RobertCNelson/ti-linux-kernel-dev.git cd ti-linux-kernel-dev git checkout origin/ti-linux-4.19.y -b tmp ./build_kernel.sh
Debian (buster)
Default username/password:
- username: debian
- password: temppwd
Image Updated:
- 2020-03-12
- BeagleBoard xM: v5.4.24-armv7-x20 kernel
- All BeagleBone Variants and PocketBeagle: v4.19.94-ti-r36 kernel
- BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel
- 2019-04-10
- BeagleBoard xM: v4.19.31-armv7-x31 kernel
- All BeagleBone Variants and PocketBeagle: v4.14.108-ti-r104 kernel
- BeagleBoard-X15: v4.14.108-ti-r104 kernel
- 2018-12-10
- BeagleBoard xM: v4.19.8-armv7-x11 kernel
- All BeagleBone Variants and PocketBeagle: v4.14.79-ti-r84 kernel
- BeagleBoard-X15: v4.14.79-ti-r84 kernel
Services Active:
Note: Depending on your internal network these may work out of the box Apache, Port 80: http://arm.local/ (Bone: via usb) (Windows/Linux) http://192.168.7.2, (Mac/Linux) http://192.168.6.2 SSH, Port 22: ssh debian@arm.local (Bone: via usb) (Windows/Linux) debian@192.168.7.2, (Mac/Linux) debian@192.168.6.2 Getty, Serial Port
Default user: debian pass: temppwd
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/elinux/debian-10.3-console-armhf-2020-03-12.tar.xz
Verify Image with:
sha256sum debian-10.3-console-armhf-2020-03-12.tar.xz b6f1ca53d67554d0381ca59fe9ecd50b5013a073abd2b2e133aa8be1784cdbc6 debian-10.3-console-armhf-2020-03-12.tar.xz
Unpack Image:
tar xf debian-10.3-console-armhf-2020-03-12.tar.xz cd debian-10.3-console-armhf-2020-03-12
If you don't know the location of your SD card:
sudo ./setup_sdcard.sh --probe-mmc
You should see something like:
Are you sure? I don't see [/dev/idontknow], here is what I do see... fdisk -l: Disk /dev/sda: 500.1 GB, 500107862016 bytes <- x86 Root Drive Disk /dev/sdd: 3957 MB, 3957325824 bytes <- MMC/SD card lsblk: NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 446.9G 0 part / <- x86 Root Partition ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 18.9G 0 part [SWAP] sdd 8:48 1 3.7G 0 disk ├─sdd1 8:49 1 64M 0 part └─sdd2 8:50 1 3.6G 0 part
- In this example, we can see via mount, /dev/sda1 is the x86 rootfs, therefore /dev/sdd is the other drive in the system, which is the MMC/SD card that was inserted and should be used by ./setup_sdcard.sh...
Install Image:
Quick install script for [board]
sudo ./setup_sdcard.sh --mmc /dev/sdX --dtb board
board options:
- BeagleBoard Ax/Bx/Cx/Dx - omap3-beagle
- BeagleBoard xM - omap3-beagle-xm
- All BeagleBone Variants - beaglebone
- OMAP5432 uEVM - omap5-uevm
- BeagleBoard-X15 (BeagleBone AI) - am57xx-beagle-x15
So for the BeagleBoard xM:
sudo ./setup_sdcard.sh --mmc /dev/sdX --dtb omap3-beagle-xm
Advanced: Build Image:
git clone https://github.com/RobertCNelson/omap-image-builder.git cd omap-image-builder git checkout v2020.03 -b tmp
Stable:
./RootStock-NG.sh -c rcn-ee_console_debian_buster_armhf
Flasher
eMMC: All BeagleBone Variants with eMMC
This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io First press and hold the boot select button (next to the microSD card), then apply power. On boot-up the board should indicate it has started the flashing procedure visually via a Cylon Sweep pattern shown on the 4 LED's next to the Ethernet jack. Progress is reported on both the serial debug and HDMI connectors, once completed all 4 LED's should be full ON. Simply remove power, remove the microSD card and Debian will now boot directly from eMMC.
Script for reference: (this is the script that writes to the eMMC)
https://github.com/RobertCNelson/boot-scripts/blob/master/tools/eMMC/init-eMMC-flasher-v3.sh
This script will only take about 5-6 Minutes after power on.
Notes:
- If only two LED's stay lit and nothing happens, the board has crashed due to lack of power. Retry with a 5Volt DC power supply connected.
- If the 4 LED's blink a constant pattern, the eMMC write has failed. First REMOVE ALL capes, then retry again.
User: debian pass: temppwd
Image Updated:
- 2020-03-12
- All BeagleBone Variants with eMMC: v4.19.94-ti-r36 kernel
- 2019-04-10
- All BeagleBone Variants with eMMC: v4.14.108-ti-r104 kernel
- 2018-12-10
- All BeagleBone Variants with eMMC: v4.14.79-ti-r84 kernel
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/flasher/bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Verify Image with:
sha256sum bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb* 12a449c3426d811765e8ef0236ae3ddc74fc645a482640984435452929ebf55d bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Windows/Mac/Linux gui
http://etcher.io
Linux: (dd)
xzcat bone-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX
eMMC: BeagleBoard-X15 and BeagleBone AI
This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io First press and hold the boot select button (next to the microSD card), then apply power. On boot-up the board should indicate it has started the flashing procedure visually via a Cylon Sweep pattern shown on the 4 LED's next to the Ethernet jack. Progress is reported on both the serial debug and HDMI connectors, once completed all 4 LED's should be full ON. Simply remove power, remove the microSD card and Debian will now boot directly from eMMC.
Script for reference: (this is the script that writes to the eMMC)
https://github.com/RobertCNelson/boot-scripts/blob/master/tools/eMMC/init-eMMC-flasher-v3.sh
This script will only take about 5-6 Minutes after power on.
Notes:
- If only two LED's stay lit and nothing happens, the board has crashed due to lack of power. Retry with a 5Volt DC power supply connected.
- If the 4 LED's blink a constant pattern, the eMMC write has failed. First REMOVE ALL capes, then retry again.
User: debian pass: temppwd
Image Updated:
- 2020-03-12
- BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel
- 2019-04-10
- BeagleBoard-X15 (and BeagleBone AI): v4.14.108-ti-r104 kernel
- 2018-12-10
- BeagleBoard-X15 (and BeagleBone AI): v4.14.79-ti-r84 kernel
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/flasher/am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Verify Image with:
sha256sum am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb* b2d4600cfbeaad90e9d634f8f9671be1223d235e6581aac82897d3f28076d338 am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Windows/Mac/Linux gui
http://etcher.io
Linux: (dd)
xzcat am57xx-eMMC-flasher-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX
raw microSD img
BeagleBoard xM
This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io
User: debian pass: temppwd
Auto partition resize:
cd /opt/scripts/tools git pull ./grow_partition.sh sudo reboot
Image Updated:
- 2020-03-12
- BeagleBoard xM: v5.4.24-armv7-x20 kernel
- 2019-04-10
- BeagleBoard xM: v4.19.31-armv7-x31 kernel
- 2018-12-10
- BeagleBoard xM: v4.19.8-armv7-x11 kernel
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/microsd/bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Verify Image with:
sha256sum bbxm-debian-10.3-console-armhf-2020-03-12-2gb* 864cd6a45179e87c68087150597e18a1c12c81621da7735ee8d5c35094423845 bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Windows/Mac/Linux gui
http://etcher.io
Linux: (dd)
xzcat bbxm-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX
All BeagleBone Variants and PocketBeagle
This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io
User: debian pass: temppwd
Auto partition resize:
cd /opt/scripts/tools git pull ./grow_partition.sh sudo reboot
Image Updated:
- 2020-03-12
- All BeagleBone Variants and PocketBeagle: v4.19.94-ti-r36 kernel
- 2019-04-10
- All BeagleBone Variants and PocketBeagle: v4.14.108-ti-r104 kernel
- 2018-12-10
- All BeagleBone Variants and PocketBeagle: v4.14.79-ti-r84 kernel
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/microsd/bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Verify Image with:
sha256sum bone-debian-10.3-console-armhf-2020-03-12-2gb* 6d898c473edc8a50597ed7da8342c899d88e07b8a6b4c7c143257e947cb5f52d bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Windows/Mac/Linux gui
http://etcher.io
Linux: (dd)
xzcat bone-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX
BeagleBoard-X15 and BeagleBone AI
This image can be written to a 2GB (or larger) microSD card, via 'dd' on Linux or on Windows/Mac/Linux: https://etcher.io
User: debian pass: temppwd
Auto partition resize:
cd /opt/scripts/tools git pull ./grow_partition.sh sudo reboot
Image Updated:
- 2020-03-12
- BeagleBoard-X15 (and BeagleBone AI): v4.19.94-ti-r36 kernel
- 2019-04-10
- BeagleBoard-X15 (and BeagleBone AI): v4.14.108-ti-r104 kernel
- 2018-12-10
- BeagleBoard-X15 (and BeagleBone AI): v4.14.79-ti-r84 kernel
Get prebuilt image:
wget https://rcn-ee.com/rootfs/2020-03-12/microsd/am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Verify Image with:
sha256sum am57xx-debian-10.3-console-armhf-2020-03-12-2gb* 24bfaeac8d90ebd36790ba4c04a4117fe8c2e7aa28de5d1ff0a5ab164e32bb90 am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz
Windows/Mac/Linux gui
http://etcher.io
Linux: (dd)
xzcat am57xx-debian-10.3-console-armhf-2020-03-12-2gb.img.xz | sudo dd of=/dev/sdX
Debian Configuration
Install Latest Kernel Image
General apt syntax for searching and installing a specific kernel:
sudo apt-get update sudo apt-cache search linux-image | grep <branch> sudo apt-get install linux-image-<specific version> sudo reboot
Latest kernel script
cd /opt/scripts/tools/ git pull sudo ./update_kernel.sh <OPTIONS>
4.19.x-ti
beagleboard.org patchset: https://github.com/beagleboard/linux/tree/4.19 Based on: http://git.ti.com/gitweb/?p=ti-linux-kernel/ti-linux-kernel.git;a=shortlog;h=refs/heads/ti-linux-4.19.y
4.19.x-ti BeagleBone/BeagleBone Black/BeagleBoard-X15 --ti-channel --lts-4_19
4.19.x-ti BeagleBone/BeagleBone Black/BeagleBoard-X15 + RT --ti-rt-channel --lts-4_19
Mainline (4.19.x lts)
4.19.x BeagleBone/BeagleBone Black --bone-kernel --lts-4_19
4.19.x BeagleBone/BeagleBone Black + RT --bone-rt-kernel --lts-4_19
Debian 9: stretch
sudo apt-get install linux-image-armmp
Reboot with your new Kernel Image.
Xorg Drivers
Script:
cd /opt/scripts/tools/ git pull
BeagleBoard/PandaBoard:
cd /opt/scripts/tools/graphics/ ./ti-omapdrm.sh
BeagleBone/BeagleBone Black:
cd /opt/scripts/tools/graphics/ ./ti-tilcdc.sh
SGX Drivers
SGX BeagleBone/BeagleBone Black
A page is dedicated for the installation and use of the graphics accelerator.
Building Kernel
Note, this section use to have a lot of details, but maintenance of the two wiki's became a pain, so for now on we will just link to my other pages:
Beagle/Beagle xM
http://eewiki.net/display/linuxonarm/BeagleBoard
BeagleBone
http://eewiki.net/display/linuxonarm/BeagleBone
BeagleBone Black
http://eewiki.net/display/linuxonarm/BeagleBone+Black
Panda/Panda ES
http://eewiki.net/display/linuxonarm/PandaBoard
Upgrading from Debian 5 to Debian 6
Upgrading from Debian 5 to Debian 6 report and tutorial.
Upgrading from Debian 6 (Squeeze) to Debian 7 (Wheezy)
Note, this only goes over "armel" -> "armel"... For users wishing to switch from "armel" -> "armhf" just re-install...
sudo apt-get update ; sudo apt-get upgrade sudo sed -i -e "s/squeeze/wheezy/g" /etc/apt/sources.list sudo apt-get update ; sudo apt-get install -y apt aptitude udev dpkg sudo aptitude update ; sudo aptitude -y safe-upgrade ; sudo aptitude -y dist-upgrade