Raspberry Pi

From Funtoo
Revision as of 19:01, August 25, 2018 by Oleg (talk | contribs) (→‎Portage)
Jump to navigation Jump to search

Funtoo Linux now has builds that are specifically optimized for the following systems, in addition to 'generic' optimized ARM builds:

In above mentioned guide installation is more detailed

The Raspberry Pi is an ARM device (BCM2835, ARMv6).

This document contains notes about getting Funtoo Linux up-and-running on the Raspberry Pi. Most information is already available on other documents, so this document mostly explains how to get the information needed to perform the installation.

Please read Funtoo Linux Installation on ARM for general information about installing Funtoo Linux on ARM architecture.


Gentoo Linux's wiki already provide a complete installation manual for Gentoo Linux. To avoid duplicating information, only parts that are different for Funtoo Linux will be highlighted here.

Gentoo's Raspberry Pi Quick Install Guide

Stage 3

Funtoo Linux Stage 3 tarballs for Raspberry Pi B or B+ (armv6j) can be found on [1].

Funtoo Linux Stage 3 tarballs for Raspberry Pi 2 (armv7) can be found on [2].

Extracting the tarball is done using tar xpf instead of tar xpjf.

Get the firmware and the kernel image of the official kernel raspberry pi project

Install Kernel Linux and modules

The Raspberry Pi Foundation maintains a Linux kernel tree that can run on the Raspberry Pi (hardware), including a pre-compiled version we use here. follow the steps below:

Mount the partition that will hold your rootfs of the SD card and extract the stage3 you have downloaded.

root # mkdir /mnt/SD_root
root # mount /dev/sdcard-device-px /mnt/SD_root

Get firmware and kernel:

root # cd /tmp/
root # git clone --depth 1 git://github.com/raspberrypi/firmware/
root # cp -r firmware/boot/* /mnt/SD_root/boot/
root # cp -r firmware/modules /mnt/SD_root/lib/

Edit cmdline.txt

root # vi /mnt/SD_root/boot/cmdline.txt

Create the line with the boot kernel parameters with the following content:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/sdcard-device-px rootfstype=ext4 elevator=deadline rootwait

Edit config.txt

Create the line with the boot kernel parameters:

root # vi /mnt/SD_root/boot/config.txt

To Raspberry Pi B and B+ (armv6j) use kernel.img:


To Raspberry Pi 2 (armv7) use kernel7.img:


Disable console s0

Comment out the s0 console (serial) for fix message in dmesg: "INIT: Id" s0 "respawning too fast".

root # vi /mnt/SD_root/etc/inittab
#s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100
#s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100

Raspberry Pi Userland

Get Raspberry Pi userspace tools and libraries (VCGENCMD).

Please read Raspberry Pi Userland (VCGENCMD) for general information about installing VCGENCMD on Funtoo Linux on ARMv6j architecture.


Update your portage treeː

root # ego --sync

Video FB

Please set -video_cards_omapfb on USE (make.conf) to solve many problems on emerge x11-base/xorg-drivers

Enabling networking on boot

Raspberry Pi 3 WiFi

If you have a Raspberry Pi 3, you will need to create the directory /lib/firmware/brcm and copy all the files located at https://github.com/RPi-Distro/firmware-nonfree/tree/master/brcm80211/brcm into this directory. This will provide the necessary binary firmware for WiFi to function at boot time.


It is recommended that you emerge wireless-tools and use the iwconfig command to see if Power Management is set to on. If so, use the command iwconfig wlan0 power off in a local startup script to disable wireless power management. This will solve intermittent connectivity issues (WiFi going in/out) over WiFi.

Please consult Funtoo Linux Networking for information regarding network configuration.

Select profile

Funtoo Linux has a different profile than Gentoo. Correct arch , subarch and build will be already set. More information can be found by typing epro show. For more information, see Funtoo Profiles.