HCL:Raspberry Pi4

Jump to: navigation, search
Raspberry Pi 4

The Raspberry Pi 4 is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video.

Technical Data

  • Broadcom BCM2711 SoC
    • 4x ARM Cortex-A72 CPU @ 1.5GHz.
    • GPU: VideoCore VI
  • RAM: 1 - 8 GB LPDDR4-2400 SDRAM (depending on model)
  • Gigabit Ethernet
  • WiFi – 2.4 GHz and 5.0 GHz IEEE 802.11ac wireless
  • Bluetooth 5.0, BLE
  • USB: 2x USB 3.0 ports; 2x USB 2.0 ports
  • 40-pin connector also see Using The Header

openSUSE in Raspberry Pi 4

Writing a disk image to a USB stick or a SD card

  1. Download the image you want (Leap is stable, Tumbleweed is rolling) from here. Make a choice of desktops:
    JeOS - Just enough Operating System - a very basic system, no graphical desktop
    E20 - Enlightenment desktop
    XFCE - XFCE desktop
    KDE - KDE desktop
    LXQT - LXQT desktop
    X11 - basic X11 system
    Geeko-white.png
    Tumbleweed
    JeOS image E20 image XFCE image LXQT image GNOME image KDE image X11 image

    If the direct links above do not work for you, please check the general download directory for the images.


    Geeko-white.png
    Leap-15.5
    JeOS image E20 image XFCE image LXQT image GNOME image KDE image X11 image

    If the direct links above do not work for you, please check the general download directory for the images.

  2. As root extract the image onto your SD card (replace sdX with the device name of your SD card).
    WARNING: all previous data on the SD card will be lost. Check first if the device you have selected is really your SD card!
     xzcat [image].raw.xz | dd bs=4M of=/dev/sdX iflag=fullblock oflag=direct status=progress; sync
  3. Insert the SD card with the openSUSE image into your board.
  4. Connect the board to your PC via serial port (optional, but helpful for debugging; USB-TTL serial cable needed).
  5. Connect the board to your monitor (via DVI/HDMI, optional).
  6. Power on the board.
  7. Walk through the first boot steps.
  8. Ethernet is configured to request an IP via DHCP, check your DHCP server for the board IP if used.
  9. Have a lot of fun...
Default login is root:linux, works on serial console, via ssh, GUI.

Installing openSUSE using an ISO (advanced)

Please first make sure you enabled USB boot by following HCL:Raspberry_Pi4#Boot_from_USB_is_not_enabled_by_default

It is possible to directly install from the DVD ISO, or the NET ISO, on Raspberry Pi 4.

A USB key or a µSD card (that can contains the DVD) and another USB stick/disk or SD card (at least 16GB, to be the target of the installation) are needed.

The ISO (DVD and NET images) are able to boot on the Raspberry Pi. So, you just need to copy the image to a µSD card or an USB stick, plug it in the RPi and follow instructions from HCL:AArch64_EFI

Known issues

Boot from USB in Net install image of Leap 15.4 hangs on boot

Workaround for Bug#1198992

on the grub interface, 'Installation' is highlighted, press 'e' (for edit mode) and add 'console=tty' at the end of the linux line. Finally, boot with ctrl-x.


Boot from USB is not enabled by default

If you want to boot from USB on the RPi4 or RPi400, you need to enable USB boot in the firmware. You can do this with 2 method:

  • With a dedicated µSD card
  • From a running openSUSE system on the RPi directly

With a dedicated µSD card

For this, you need to follow few steps.

  1. Download and install Raspberry Pi Imager from Open Build Service using opi: opi rpi-imager, or from https://www.raspberrypi.org/software/ if you run Windows or Mac OS on your computer.
  2. Insert a µSD card (which will be erased)
  3. Start Raspberry Pi Imager
  4. Click on CHOOSE OS
  5. Click on Misc utility images
  6. Click on Bootloader
  7. Click on USB boot (it will still fallback to SD card if USB boot is not possible)
  8. Click on CHOOSE STORAGE and select your µSD card
  9. Click on WRITE and confirm with Yes

Once the write is finished, you can plug the µSD card into your device and power it up, to flash the new firmware.

Icon-warning.png
Warning: Do not power off the device before the end of the firmware update!

If you have a serial console, you will see something like:

SIG vl805.sig 6246230ecd5b472902e6a49c95e857a5e3190c4fa6c462d6a8867e9a5e523a7c 0
Read vl805.bin bytes    99224 hnd 0x000000a2 
PCI reset
PCI reset
VL805 EEPROM: 61584 diffs
Updating VL805
Verify VL805 EEPROM
SIG pieeprom.sig 54285fd35a75f93f59e59bb04706b6a74faaeba91fad5a2cd5bb2279a8a439ab 0
Read pieeprom.bin bytes   524288 hnd 0x00000007 
Reading EEPROM: 524288
Writing EEPROM
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.............................................+
Verify BOOT EEPROM
Reading EEPROM: 524288
BOOT-EEPROM: UPDATED

The ACT led is blinking fast and regularly to notify the end of the process.


From a running system on the RPi

As of 15 May 2021 the latest firmware required to boot USB-MSD is not present in the Leap 15.2 repository. It is necessary to download and install the Tumbleweed versions (>=2021.03.10) of raspberrypi-firmware, raspberrypi-firmware-config, and raspberrypi-firmware-dt from download.opensuse.org

With these programs installed, you can check for an updated firmware (as root)

rpi-eeprom-update

If a new version is available, install it and reboot:

rpi-eeprom-update -a
reboot

In case the USB boot is still not working, you need to modify the boot order, e.g. to try USB first, followed by SD then repeat. In order to do so, call

sudo -E rpi-eeprom-config -e

and set

BOOT_ORDER=0xf14

followed by a reboot. All boot codes are described here.

Sound

Sound via HDMI is supported in Tumbleweed since Kernel 5.10 and Leap since version 15.3.
Sound via jack output is not working boo#1177169

DSI output not supported by VC4 driver

DSI output used for some LCD panels (using the flat cable) is not yet supported by the VC4 driver.
To use this video output, please use the EFI framebuffer by replacing:

dtoverlay=vc4-kms-v3d,cma-default

with:

dtoverlay=disable-vc4

in /boot/efi/config.txt

More details on boo#1181683 and https://github.com/raspberrypi/linux/issues/4020

Troubleshooting

No kernel output on serial or HDMI

If you don't see kernel output on serial or HDMI, you can try setting the kernel boot parameter to

 earlycon=uart8250,mmio32,0xfe215040 

Beware that if you want to load the kernel directly from the firmware (not via grub or U-Boot) you will need to set gpu_freq=500 in config.txt

LED warning flash codes

If a Pi 4 fails to boot for some reason an LED will blink a specific number of times to indicate what happened. The codes are described here.

Recent versions of Pi 4 firmware can also display error messages in the serial or HDMI if connected.

Headless server

If HDMI is not connected, Pi 4 cannot boot. You need to add hdmi_force_hotplug=1 to /boot/efi/config.txt (this solution is found on Fedora Forum and later tested on openSUSE). Current Tumbleweed image has no problem to boot in headless mode.

See also