WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Upgrading piCore 13 to run on Raspberry Pi 5  (Read 1005 times)

Offline Rabie

  • Sr. Member
  • ****
  • Posts: 276
Upgrading piCore 13 to run on Raspberry Pi 5
« on: September 04, 2025, 09:08:05 AM »
Hi everyone,

A few years ago, I installed piCore version 13 on a Raspberry Pi 3, and it’s been working well for my setup.

Now I’ve purchased a Raspberry Pi 5 and I’d like to keep my existing system configuration without doing a full reinstallation of piCore.

Is there any way to upgrade piCore from version 13 to 15 or 16 so that it runs on the Raspberry Pi 5?

Thanks in advance for any help!

Offline Paul_123

  • Administrator
  • Hero Member
  • *****
  • Posts: 1434
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #1 on: September 04, 2025, 01:31:55 PM »
No automated way.  And doing it manually might result in a system that does not boot.

Your best bet is to create a new sdcard for the pi5, then copy things over.

Offline Rabie

  • Sr. Member
  • ****
  • Posts: 276
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #2 on: September 05, 2025, 05:51:34 AM »
Which version works best with the Pi5?
I’ve tried piCore64 as well as the 32-bit version, but I keep getting a “failed waitforX” error when I install xorg-3d.

Of course, I’ve installed graphics-6.6.47-piCore-v8.tcz (for 64-bit) and graphics-6.6.47-piCore-v7.tcz (for 32-bit), respectively.

What could be causing this issue?

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15251
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #3 on: September 05, 2025, 06:28:26 AM »
piCore64 16.x is working fine for me on an RPi5 with Xorg-3d.

You need graphics-6.12.25-piCore-v8-16k.tcz with the RPi5 - if you use "tce-load -w graphics-KERNEL" from the command line, it will download the appropriate version.

Wayland also works fine and vulkan will work with both x11 and wayland.

Offline Rabie

  • Sr. Member
  • ****
  • Posts: 276
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #4 on: September 12, 2025, 08:00:54 AM »
I just created a fresh SD card with the version piCore64-16.0.0, and the first thing I did was run:
Code: [Select]
tce-load -wi graphics-KERNEL Xorg-3d
Then I rebooted.

But I'm still getting:
"failed in waitforX" :(

What else can I check?

onboot.lst:
Code: [Select]
openssh.tcz
graphics-6.12.25-piCore-v8-16k.tcz
Xorg-3d.tcz
nano.tcz


Code: [Select]
cat /var/log/Xorg.0.log
[     2.450]
X.Org X Server 1.21.1.13
X Protocol Version 11, Revision 0
[     2.450] Current Operating System: Linux box 6.12.25-piCore-v8-16k #28 SMP PREEMPT Sat Apr 26 13:49:43 EDT 2025 aarch64
[     2.450] Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave  numa=fake=8 system_heap.max_order=0 smsc95xx.macaddr=88:A2:9E:30:AD:A1 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000  dwc_otg.fiq_fsm_mask=0xF dwc_otg.lpm_enable=0 console=tty1 root=/dev/ram0 rootwait quiet nortc loglevel=3 noembed
[     2.450]
[     2.450] Current version of pixman: 0.43.4
[     2.450]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[     2.450] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[     2.450] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Jan  9 01:09:25 1970
[     2.450] (==) Using system config directory "/usr/local/share/X11/xorg.conf.d"
[     2.450] (==) No Layout section.  Using the first Screen section.
[     2.450] (==) No screen section available. Using defaults.
[     2.450] (**) |-->Screen "Default Screen Section" (0)
[     2.450] (**) |   |-->Monitor "<default monitor>"
[     2.451] (==) No monitor specified for screen "Default Screen Section".
        Using a default monitor configuration.
[     2.451] (**) Allowing byte-swapped clients
[     2.451] (==) Automatically adding devices
[     2.451] (==) Automatically enabling devices
[     2.451] (==) Automatically adding GPU devices
[     2.451] (==) Automatically binding GPU devices
[     2.452] (==) Max clients allowed: 256, resource mask: 0x1fffff
[     2.452] (WW) The directory "/usr/local/lib/X11/fonts/OTF" does not exist.
[     2.452]    Entry deleted from font path.
[     2.452] (WW) The directory "/usr/local/lib/X11/fonts/100pdi" does not exist.
[     2.452]    Entry deleted from font path.
[     2.452] (==) FontPath set to:
        /usr/local/lib/X11/fonts/misc,
        /usr/local/lib/X11/fonts/TTF,
        /usr/local/lib/X11/fonts/Type1,
        /usr/local/lib/X11/fonts/75dpi
[     2.452] (==) ModulePath set to "/usr/local/lib/xorg/modules"
[     2.452] (II) The server relies on udev to provide the list of input devices.
        If no devices become available, reconfigure udev or disable AutoAddDevices.
[     2.452] (II) Module ABI versions:
[     2.452]    X.Org ANSI C Emulation: 0.4
[     2.452]    X.Org Video Driver: 25.2
[     2.452]    X.Org XInput driver : 24.4
[     2.452]    X.Org Server Extension : 10.0
[     2.452] (II) xfree86: Adding drm device (/dev/dri/card0)
[     2.452] (II) Platform probe for /sys/devices/platform/axi/1002000000.v3d/drm/card0
[     2.452] (II) no primary bus or device found
[     2.452]    falling back to /sys/devices/platform/axi/1002000000.v3d/drm/card0
[     2.452] (II) LoadModule: "glx"
[     2.453] (II) Loading /usr/local/lib/xorg/modules/extensions/libglx.so
[     2.464] (II) Module glx: vendor="X.Org Foundation"
[     2.464]    compiled for 1.21.1.13, module version = 1.0.0
[     2.464]    ABI class: X.Org Server Extension, version 10.0
[     2.464] (==) Matched modesetting as autoconfigured driver 0
[     2.464] (==) Matched fbdev as autoconfigured driver 1
[     2.464] (==) Assigned the driver to the xf86ConfigLayout
[     2.464] (II) LoadModule: "modesetting"
[     2.464] (II) Loading /usr/local/lib/xorg/modules/drivers/modesetting_drv.so
[     2.465] (II) Module modesetting: vendor="X.Org Foundation"
[     2.465]    compiled for 1.21.1.13, module version = 1.21.1
[     2.465]    Module class: X.Org Video Driver
[     2.465]    ABI class: X.Org Video Driver, version 25.2
[     2.465] (II) LoadModule: "fbdev"
[     2.465] (II) Loading /usr/local/lib/xorg/modules/drivers/fbdev_drv.so
[     2.465] (II) Module fbdev: vendor="X.Org Foundation"
[     2.465]    compiled for 1.21.1.3, module version = 0.5.0
[     2.465]    Module class: X.Org Video Driver
[     2.465]    ABI class: X.Org Video Driver, version 25.2
[     2.465] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[     2.465] (II) FBDEV: driver for framebuffer: fbdev
[     2.465] (--) using VT number 2

[     2.466] (WW) Falling back to old probe method for modesetting
[     2.466] (WW) Falling back to old probe method for fbdev
[     2.466] (II) Loading sub module "fbdevhw"
[     2.466] (II) LoadModule: "fbdevhw"
[     2.466] (II) Loading /usr/local/lib/xorg/modules/libfbdevhw.so
[     2.466] (II) Module fbdevhw: vendor="X.Org Foundation"
[     2.466]    compiled for 1.21.1.13, module version = 0.0.2
[     2.466]    ABI class: X.Org Video Driver, version 25.2
[     2.466] (EE) open /dev/fb0: No such file or directory
[     2.466] (WW) Falling back to old probe method for modesetting
[     2.466] (WW) Falling back to old probe method for fbdev
[     2.466] (II) Loading sub module "fbdevhw"
[     2.466] (II) LoadModule: "fbdevhw"
[     2.466] (II) Loading /usr/local/lib/xorg/modules/libfbdevhw.so
[     2.466] (II) Module fbdevhw: vendor="X.Org Foundation"
[     2.466]    compiled for 1.21.1.13, module version = 0.0.2
[     2.466]    ABI class: X.Org Video Driver, version 25.2
[     2.466] (EE) open /dev/fb0: No such file or directory
[     2.466] (EE) No devices detected.
[     2.466] (EE)
Fatal server error:
[     2.466] (EE) no screens found(EE)
[     2.466] (EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
[     2.466] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[     2.466] (EE)
[     2.466] (EE) Server terminated with error (1). Closing log file.

    [Edit]: Changed  quote tags  to  code tags.  Rich
« Last Edit: September 12, 2025, 08:40:24 AM by Rich »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12241
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #5 on: September 12, 2025, 08:39:01 AM »
Hi Rabie

Please use  Code Tags  when posting commands and responses seen in a terminal. To use  Code Tags  click on the  #  icon
above the reply box and paste your text between the  Code Tags  as shown in this example:

Quote
[code][   36.176529] pcm512x 1-004d: Failed to get supply 'AVDD': -517
[   36.176536] pcm512x 1-004d: Failed to get supplies: -517
[   36.191753] pcm512x 1-004d: Failed to get supply 'AVDD': -517[/code]

It will appear like this in your post:
Code: [Select]
[   36.176529] pcm512x 1-004d: Failed to get supply 'AVDD': -517
[   36.176536] pcm512x 1-004d: Failed to get supplies: -517
[   36.191753] pcm512x 1-004d: Failed to get supply 'AVDD': -517

Code Tags  serve as visual markers between what you are trying to say and the information you are posting. They also preserve
spacing so column aligned data displays properly. Code tags also automatically add horizontal and or vertical scrollbars
to accommodate long lines and listings.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12241
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #6 on: September 12, 2025, 08:39:21 AM »
Hi Rabie
I don't run any Pi hardware myself, so this is just an observation.
Your log shows it detecting  /dev/dri/card0 , which is what I would expect:
Code: [Select]
----- Snip -----
[     2.452] (II) xfree86: Adding drm device (/dev/dri/card0)
[     2.452] (II) Platform probe for /sys/devices/platform/axi/1002000000.v3d/drm/card0
[     2.452] (II) no primary bus or device found
[     2.452]    falling back to /sys/devices/platform/axi/1002000000.v3d/drm/card0
 ----- Snip -----

Yet for some reason it tries to use a non-existant /dev/fb0:
Code: [Select]
----- Snip -----
[     2.466] (EE) open /dev/fb0: No such file or directory
 ----- Snip -----

I suspect either something in  config.txt  or  cmdline.txt  needs to be adjusted.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15251
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #7 on: September 12, 2025, 08:41:20 AM »
Do you have this in config.txt:
Code: [Select]
[PI5]
# Don't have the firmware create an initial video= setting in cmdline.txt.
# Use the kernel's default instead.
disable_fw_kms_setup=1

[all]
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15251
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #8 on: September 12, 2025, 08:43:37 AM »
You should see:
Code: [Select]
[     2.886] (II) xfree86: Adding drm device (/dev/dri/card0)
[     2.886] (II) Platform probe for /sys/devices/platform/axi/1002000000.v3d/drm/card0
[     2.886] (II) xfree86: Adding drm device (/dev/dri/card1)
[     2.886] (II) Platform probe for /sys/devices/platform/axi/axi:gpu/drm/card1
[     2.891] (**) OutputClass "vc4" setting /dev/dri/card1 as PrimaryGPU

Offline Rabie

  • Sr. Member
  • ****
  • Posts: 276
Re: Upgrading piCore 13 to run on Raspberry Pi 5
« Reply #9 on: September 12, 2025, 09:27:22 AM »
yes i have it in my config.txt

Code: [Select]
cat /mnt/mmcblk0p1/config.txt
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# RPi PI0-1-2 are not supported on this image.

[PI02]
initramfs rootfs-piCore64-16.0.gz,modules-6.12.25-piCore-v8.gz followkernel
kernel kernel61225v8.img

[PI3]
initramfs rootfs-piCore64-16.0.gz,modules-6.12.25-piCore-v8.gz followkernel
kernel kernel61225v8.img

[PI4]
initramfs rootfs-piCore64-16.0.gz,modules-6.12.25-piCore-v8.gz followkernel
kernel kernel61225v8.img

[PI5]
initramfs rootfs-piCore64-16.0.gz,modules-6.12.25-piCore-v8-16k.gz followkernel
kernel kernel61225v8-16k.img

[CM4]
otg_mode=1

[cm5]
dtoverlay=dwc2,dr_mode=host

[ALL]
cmdline cmdline.txt

# Run in 64-bit mode
arm_64bit=1

# Run as fast as firmware / board allows
arm_boost=1

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
# Does not work with the vc4 driver.

#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Additional overlays and parameters are documented /mnt/mmcblk0p1/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

[PI5]
# Don't have the firmware create an initial video= setting in cmdline.txt.
# Use the kernel's default instead.
disable_fw_kms_setup=1

[all]
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2


But i improvised and created the following file:

Code: [Select]
sudo nano /etc/X11/xorg.conf

Section "Device"
    Identifier  "Framebuffer"
    Driver      "fbdev"
    Option      "fbdev" "/dev/fb0"
EndSection

Section "Screen"
    Identifier "Default Screen"
    Device "Framebuffer"
EndSection

After that, X started immediately on reboot! :)

Is it actually a bad idea to use the framebuffer fb0?
Because technically, the two HDMI outputs are called card0 and card1.

the next question is whether this setup will also work with the 32-bit version.
The reason I ask is that there are a few extensions available in the 32-bit version that are missing in the 64-bit one.