SAM9-L9260
Contents
Documents
Under construction
Hardware
Under construction
Software
Building at91bootstrap
Get the sources with:
git clone -b olimex https://github.com/OLIMEX/at91bootstrap.git
Go to the cloned folder and select SAM9-L9260 configuration:
cd at91bootstrap make sam9_l9260_uboot_defconfig
Compile the sources with:
make CROSS_COMPILE=arm-linux-gnueabi-
The bootstrap file can be found at:
binaries/sam9_l9260-dataflashcardboot--3.8.11.bin
Building kernel
Get the sources:
git clone --depth 1 --branch linux-5.0.y git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Preparing rootfs
In this tutorial Debian Lenny will be used. The build process may vary, depending on host PC system. The following instructions are tested on Ubuntu 18.04.
Install required packages:
sudo apt-get update sudo apt install -y debootstrap qemu-arm-static mtd-utils
Create empty directory, which will contain the new rootfs:
mkdir armel-lenny
Run debootstrap and wait to finish:
sudo qemu-debootstrap --arch armel lenny ./armel-lenny
Login into the new rootfs with:
sudo chroot ./armel-lenny
Set hostname and password:
echo 'sam9-l9260' > /etc/hostname passwd
Set locales:
apt-get install locales dpkg-reconfigure locales
Configure login console:
sed -i "s/.*T0:.*/T0:2345:respawn:\/sbin\/getty\ -L\ ttyS0\ 115200\ vt100/g" /etc/inittab
Install some additional packages:
apt-get install autoconf autotools-dev bash-completion bind9-host binutils busybox cpp ethtool ftp initramfs-tools less lsof m4 mime-support mtd-utils ntp openssh-client python telnet texinfo udev usbutils whois
Configure fstab:
cat > /etc/fstab << __EOF__ # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 rootfs / jffs2 rw 0 0
__EOF__
Create missing /dev/shm folder:
sed -i '36i\\t[ ! -d /dev/shm ] && mkdir --mode=755 /dev/shm' /etc/init.d/mountdevsubfs.sh
Exit from chroot:
exit
Generate JFFS2 image
Run:
sudo mkfs.jffs2 -r armel-lenny/ -o lenny.jffs2 -e 128 -s 512 -p -n
Where:
- -e 128 - 128KiB of erase block
- -s 512 - 512B page size
- -p - pad the output to match erase block size
- -n - do not write cleanmarkers
Projects
Under construction
FAQ
Under construction