This is a read-only archive of an earlier blog posting. Reasons for the
change are at http://blog.sensicomm.com.
The permanent version of this post - with comments (if any) - is at
http://sensicomm.blogspot.com/2014/11/debian-on-beagleboard-classic.html
Debian on BeagleBoard classic.
I have one of the original beagleboards with
the omap3 processor, which is ARM+DSP coprocessor. Originally it
used the Angstrom Linux distribution, which uses bitbake to build
the kernel and all related software tools. I saw recently that
Debian is now supported on this device; I like to run Debian on
everything including my PC's, BeagleBone Black, and Raspberry Pi
(raspbian - almost Debian), so why not on the beagleboard as
well?
My hardware setup is a USB-serial adapter from a
Linux (Debian, of course) host to the serial port of the
Beagleboard. I also have a Sabrent USB-Ethernet adapter on the
Beagleboard.
The "official" instructions seem to be
at elinux.org/BeagleBoardDebian,
which I found from beagleboard.org/project/debian.
Per those instructions, I downloaded the netinstall package from
github.com/RobertCNelson/netinstall
(using git of course), and put it on a 16GB SD card using the
command:
sudo ./mk_mmc.sh --mmc $SDCARD --dtb
omap3-beagle --distro wheezy-armhf --firmware
--serial-mode
On my PC I have SDCARD=/dev/sdb, because
that's where the memory card shows up when it's plugged in.
MAKE SURE you get this
right, because you could wipe out a disk on the PC if
you get it wrong. I decided to uses the --serial-mode option to
work from the serial port and avoid any HDMI display issues.
Moved the SD card from the PC to Beagleboard, powered up, and
got a typical Debian install menu on the serial port! I used
minicom -D /dev/usb/prolific2303 -b 115200
-o
to connect to the USB-serial port. The Beagleboard
serial port does not use the modem control lines, so had to turn
off the "Hardware Flow Control" and "Modem has DCD" options in
minicom.
The netinstall process was just like installing
Debian on a PC: select some options and wait for it to download a
bunch of packages. It found the Sabrent ethernet and used it with
no problem; device usb0 shows up as a network device as well, so it
should be possible to install by using a USB connection to the PC
host, but I didn't try that.
Finished the install,
rebooted the Beagleboard, aaaannnd - nothing happened!!! Load
process just stopped in uboot. After a few hours of screaming,
hair-pulling, and spelunking in uboot macros, I found the
problem:
I had set
up /boot as a separate partition.
The uboot
macros look for /boot/uEnv.txt on each partition and then
boot Linux using that partition as the root partition. Made /boot a
normal directory instead of a mount point, patched up /etc/fstab,
and uboot brought up Debian with no problem.
Did my
usual Debian tweaks (sensicomm.blogspot.com/2013/01/my-debian-tweaks.html)
and everything seems to be working as expected.Comments on blogspot.com
To make or view comments, see the original post at
http://sensicomm.blogspot.com/2014/11/debian-on-beagleboard-classic.html