You are not logged in.
Pages: 1
Hello All,
This is the arm32( armel ) counterpart, for RaspBerryPi's, Using ARMv6 'arm1176jzf-s'..
Suported Boards:
bcm2835-rpi-a-plus.dtb
bcm2835-rpi-a.dtb
bcm2835-rpi-b-plus.dtb
bcm2835-rpi-b-rev2.dtb
bcm2835-rpi-b.dtb
bcm2835-rpi-cm1-io1.dtb
bcm2835-rpi-zero-w.dtb
bcm2835-rpi-zero.dtb
bcm2836-rpi-2-b.dtb
bcm2837-rpi-3-a-plus.dtb
bcm2837-rpi-3-b-plus.dtb
bcm2837-rpi-3-b.dtb
bcm2837-rpi-cm3-io3.dtb
In the next Iterations, will be also there a 'Desktop' build type..
In this case, there is a v0.3beta Server build.
Features & Versions:
1) - U-boot boot-loader - v201910 ( built for for armel BUT with Floating Point support )
2) - Linux Kernel - Stable 5.3.13-1 ( built for armel BUT with Floating Point support )
3) - UserSpace - Devuan beowulf ( for armel )
4) - Changelog - Beowulf, Leds
1) BootLoader( RPi binaries plus u-boot )
'bootcode.bin', starts the board, calls 'config.txt', were it knows about uboot, then the Videocore4 executes 'start.elf', and will bring-up, the kernel specified in 'uboot.cmd'
Disk Partitioning scheme:
# parted /dev/mmcblk0
(...)
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 4194kB 273MB 268MB primary fat32 lba
2 273MB 1321MB 1049MB primary ext4
a) - Bootloader( U-Boot ), is in the 1st partition
a1) - The Bootloader will search for a file called 'boot.scr', and after initialise the u-boot environment, will execute that script..
a2) - In 'boot.scr', for this image, it will point to 'RaspBerry Pi1 B v1.0' Device Tree Binary File by default( was tested there.. )..
a3) - IF you have other board than 'RaspBerry Pi1 B v1.0', please Read Bellow in the 'Notes Section'..
b) - 1st Partition is mounted as '/boot'
c) - 2nd Partition is mounted as rootfs '/'
NOTA!
The Bootloader in a) usually takes ~600KiB..
If you have Other Board than 'RaspBerry Pi1 B v1.0', situation described in a3):
The 'boot.cmd' script( format, Human Readable ):
setenv bootdelay 3
#setenv baudrate 115200
# Send debug info to uart, and also display
setenv stdout serial,vga
setenv stderr serial,vga
mmc dev 0
# Set fdtfile envvar to corresponding dtb file
setenv fdt_addr 0x02400000
setenv fdtfile bcm2835-rpi-b.dtb
# 64bits Kernels loads at kernel_addr_r 0x80000
setenv kernel_addr 0x08000
setenv bootargs earlyprintk=serial,ttyAMA0,115200n8 console=ttyAMA0,115200n8 console=tty0 root=/dev/mmcblk0p2 rw rootfstype=ext4 elevator=noop fsck.repair=yes rootwait smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 kgdboc=ttyAMA0,115200 selinux=0 noinitrd
load mmc 0:2 ${fdt_addr} usr/lib/linux-image-5.3.13/${fdtfile} || load mmc 0:1 ${fdt_addr} ${fdtfile} || load mmc 0:1 ${fdt_addr} boot/${fdtfile}
load mmc 0:1 ${kernel_addr} vmlinuz-5.3.13 || load mmc 0:1 ${kernel_addr} zImage || load mmc 0:1 ${kernel_addr} boot/vmlinuz-5.3.13 || load mmc 0:1 ${kernel_addr} boot/zImage
bootz ${kernel_addr} - ${fdt_addr}
Write this Image, to a sd-card.
Mount 1st Partition in '/mnt',
mount /dev/sdb1 /mnt
Then change the 'boot.cmd' script to point to your board..
# You can find a list of supported boards 'dtb' files in: '/usr/lib/linux-image-5.3.13'( or in the beguining of this article )
# Edit the file 'boot.cmd', with 'vi' for example.
# change the line:
setenv fdtfile bcm2835-rpi-b.dtb
to
setenv fdtfile your_board.dtb
Save the file,
# Generate the real script file( binary ), 'boot.scr'
mkimage -C none -A arm -T script -d boot.cmd boot.scr
Done!
2) - Linux Kernel
Packages:
There are 3 packages installed:
# dpkg -l |grep -E "(linux-.*(headers|image|libc-dev))"
ii linux-headers-5.3.13:armhf 5.3.13-1 armhf Linux kernel headers for 5.3.13 on armhf
ii linux-image-5.3.13:armhf 5.3.13-1 armhf Linux kernel, version 5.3.13
ii linux-libc-dev:armhf 5.3.13-1 armhf Linux support headers for userspace development
The target will be to improving the Device Tree Bindings, for each board, when possible..
3) - UserSpace -Users & Passwords:
a) root - password 'toor'
b) devuan - password 'devuan'
NOTA!
SSH is enabled, so that you can login, but root login, is disabled, you should login as 'devuan', only then switch to 'root', if you want to.. for that,
After Login as 'devuan', issue:
sudo su -
And type your 'devuan' password, that's it..
4) - ChangeLog
Migration to beowulf
Led 'ACK' driver changed to 'cpu0', to reflect CPU usage
~# echo cpu0 > /sys/class/leds/ACT/trigger
For this image, to reach more Supported Hardware and Users, your help is also needed
Testing this Image, posting your feedback, and improvements..
Sha256sum:
~$ sha256sum devuan-ascii-rpi-armel-0.3-beta.img.xz
eadf5b2e94e9953c80467ea3f2e8c1b962e6459a7f712d8bf817e4bb56c3ea64 devuan-ascii-rpi-armel-0.3-beta.img.xz
Last edited by tuxd3v (2020-03-31 18:01:54)
Best Regards,
tux
Offline
1) Check if DHT22, AM2302 humidity/Temperature sensors are available in mainline,
If so,
Build kernel modules for them( in next kernel revision.. ).
2) Check if its possible to get: userspace libraries for EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG,
From: https://github.com/raspberrypi/userland.
To use directly in devuan image in '/opt/vc/lib'..
Last edited by tuxd3v (2020-11-09 23:32:01)
Best Regards,
tux
Offline
They are moving away from /opt/vc/lib and to a more normal of /usr
Offline
They are moving away from /opt/vc/lib and to a more normal of /usr
hello ShorTie, thanks,
When you install them, I believe they are still copied to /opt/vc/lib?
If they are moving away, to /opt, its a good sign
Best Regards,
tux
Offline
Pages: 1