Xorg crashes using Hailo ai KIT+ with 3.5inch_DPI_LCD

Hello,
I have just installed an Hailo ai KIT+ on my RPI 5

My previously setup has just a 35inch lcd from waveshare (https://www.waveshare.com/wiki/3.5inch_DPI_LCD)
It is like a year I use my rpi as my home domotic with homeassistant, the dpi lcd displays the hass dashboard.

Today i have installed the AI KIT from Hailo, it is working good but Xorg just stopped working.
The display works as it displays the rpi terminal if I configure it as “autoboot console login” but it doesn’t work with desktop/ desktop autologin as xorg is crashing.
I did some tests, if i disconnect the hailo kit Xorg starts normally.
If i poweroff the Pi, connect the hailo kit and power on the Pi, Xorg crashes and this is the error… what it could be?

This looks like a software/configuration issue but I haven’t found anything on the web about Hailo ai kit causing this.

Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices

X.Org X Server 1.21.1.7 X Protocol Version 11, Revision 0 Current Operating System: Linux blastpi5 6.6.74+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64 Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 numa=fake=8 system_heap.max_order=0 smsc95xx.macaddr=2C:CF:67:70:20:D1 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=8f7195de-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=IT xorg-server 2:21.1.7-3+rpt3+deb12u8 (https://www.debian.org/support) Current version of pixman: 0.42.2 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: "/var/log/Xorg.0.log", Time: Tue Feb 25 20:54:30 2025 (==) Using config directory: "/etc/X11/xorg.conf.d" (==) Using system config directory "/usr/share/X11/xorg.conf.d" (EE) Fatal server error: (EE) Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices (EE) (EE) Please consult the The X.Org Foundation support at http://wiki.x.org for help. (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. (EE) (EE) Server terminated with error (1). Closing log file.

Output of cat /var/log/Xorg.0.log

[code][ 763.991]
X.Org X Server 1.21.1.7
X Protocol Version 11, Revision 0
[ 763.991] Current Operating System: Linux blastpi5 6.6.74+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64
[ 763.991] Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 numa=fake=8 system_heap.max_order=0 smsc95xx.macaddr=2C:CF:67:70:20:D1 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=8f7195de-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=IT
[ 763.991] xorg-server 2:21.1.7-3+rpt3+deb12u8 (Debian -- User Support)
[ 763.991] Current version of pixman: 0.42.2
[ 763.991] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 763.991] Markers: (–) probed, () from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 763.991] (==) Log file: “/var/log/Xorg.0.log”, Time: Tue Feb 25 20:54:30 2025
[ 763.991] (==) Using config directory: “/etc/X11/xorg.conf.d”
[ 763.991] (==) Using system config directory “/usr/share/X11/xorg.conf.d”
[ 763.991] (==) No Layout section. Using the first Screen section.
[ 763.991] (==) No screen section available. Using defaults.
[ 763.991] (
) |–>Screen “Default Screen Section” (0)
[ 763.991] () | |–>Monitor “”
[ 763.992] (==) No monitor specified for screen “Default Screen Section”.
Using a default monitor configuration.
[ 763.992] (
) Option “Debug” “dmabuf_capable”
[ 763.992] (==) Automatically adding devices
[ 763.992] (==) Automatically enabling devices
[ 763.992] (==) Automatically adding GPU devices
[ 763.992] (==) Automatically binding GPU devices
[ 763.992] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 763.992] (WW) The directory “/usr/share/fonts/X11/misc” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (WW) The directory “/usr/share/fonts/X11/cyrillic” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (WW) The directory “/usr/share/fonts/X11/100dpi/” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (WW) The directory “/usr/share/fonts/X11/75dpi/” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (WW) The directory “/usr/share/fonts/X11/100dpi” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (WW) The directory “/usr/share/fonts/X11/75dpi” does not exist.
[ 763.992] Entry deleted from font path.
[ 763.992] (==) FontPath set to:
/usr/share/fonts/X11/Type1,
built-ins
[ 763.992] (==) ModulePath set to “/usr/lib/xorg/modules”
[ 763.992] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 763.992] (II) Loader magic: 0x5555d8f30ef0
[ 763.992] (II) Module ABI versions:
[ 763.992] X.Org ANSI C Emulation: 0.4
[ 763.992] X.Org Video Driver: 25.2
[ 763.992] X.Org XInput driver : 24.4
[ 763.992] X.Org Server Extension : 10.0
[ 763.992] (–) using VT number 2

[ 763.992] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[ 763.993] (II) xfree86: Adding drm device (/dev/dri/card0)
[ 763.993] (II) Platform probe for /sys/devices/platform/axi/1000120000.pcie/1f00148000.dpi/drm/card0
[ 763.994] (II) LoadModule: “glx”
[ 763.994] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 763.995] (II) Module glx: vendor=“X.Org Foundation”
[ 763.995] compiled for 1.21.1.7, module version = 1.0.0
[ 763.995] ABI class: X.Org Server Extension, version 10.0
[ 763.995] (==) Matched modesetting as autoconfigured driver 0
[ 763.995] (==) Matched fbdev as autoconfigured driver 1
[ 763.995] (==) Assigned the driver to the xf86ConfigLayout
[ 763.995] (II) LoadModule: “modesetting”
[ 763.995] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[ 763.995] (II) Module modesetting: vendor=“X.Org Foundation”
[ 763.995] compiled for 1.21.1.7, module version = 1.21.1
[ 763.995] Module class: X.Org Video Driver
[ 763.995] ABI class: X.Org Video Driver, version 25.2
[ 763.995] (II) LoadModule: “fbdev”
[ 763.995] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 763.995] (II) Module fbdev: vendor=“X.Org Foundation”
[ 763.995] compiled for 1.21.1.3, module version = 0.5.0
[ 763.995] Module class: X.Org Video Driver
[ 763.995] ABI class: X.Org Video Driver, version 25.2
[ 763.995] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[ 763.995] (II) FBDEV: driver for framebuffer: fbdev
[ 764.038] (WW) Falling back to old probe method for modesetting
[ 764.038] (II) modeset(0): using default device
[ 764.038] (WW) Falling back to old probe method for fbdev
[ 764.038] (II) Loading sub module “fbdevhw”
[ 764.038] (II) LoadModule: “fbdevhw”
[ 764.038] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 764.038] (II) Module fbdevhw: vendor=“X.Org Foundation”
[ 764.038] compiled for 1.21.1.7, module version = 0.0.2
[ 764.038] ABI class: X.Org Video Driver, version 25.2
[ 764.038] (II) FBDEV(1): using default device
[ 764.039] (II) modeset(G0): using drv /dev/dri/card0
[ 764.039] (EE)
Fatal server error:
[ 764.039] (EE) Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices
[ 764.039] (EE)
[ 764.039] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 764.039] (EE) Please also check the log file at “/var/log/Xorg.0.log” for additional information.
[ 764.039] (EE)
[ 764.088] (EE) Server terminated with error (1). Closing log file.[/code]

Hey @Fabio_Valentino ,

Welcome to the Hailo Community!

Try these steps in order:

  1. Manually configure your framebuffer device:

    # First identify your display device
    ls /sys/class/drm/
    
    # Create a configuration file
    sudo nano /etc/X11/xorg.conf.d/99-framebuffer.conf
    

    Add this to the file (adjust BusID as needed):

    Section "Device"
        Identifier "LCD"
        Driver "fbdev"
        BusID "platform:axi/1000120000.pcie/1f00148000.dpi/drm/card0"
    EndSection
    
  2. If that doesn’t work, try forcing the fbdev driver:

    sudo nano /etc/X11/xorg.conf
    

    Add:

    Section "Device"
        Identifier "LCD"
        Driver "fbdev"
    EndSection
    
  3. Adjust kernel parameters by editing /boot/firmware/cmdline.txt and adding video=DSI-1:640x480@60

  4. As a last resort, you can temporarily unload the Hailo driver before starting X:

    sudo modprobe -r hailo_pci
    startx
    

I have reinstalled the hailo ai kit+ on my rpi but now I have this error…

this is dmesg output:


[  249.921025] hailo: Init module. driver version 4.20.0
[  249.921113] hailo 0000:01:00.0: Probing on: 1e60:2864...
[  249.921116] hailo 0000:01:00.0: Probing: Allocate memory for device extension, 13184
[  249.921126] hailo 0000:01:00.0: Probing: Device enabled
[  249.921141] hailo 0000:01:00.0: Probing: mapped bar 0 - 0000000092d5b37d 16384
[  249.921144] hailo 0000:01:00.0: Probing: mapped bar 2 - 00000000a89fc113 4096
[  249.921147] hailo 0000:01:00.0: Probing: mapped bar 4 - 0000000096d2b772 16384
[  249.921150] hailo 0000:01:00.0: Probing: Force setting max_desc_page_size to 4096 (recommended value is 16384)
[  249.921158] hailo 0000:01:00.0: Probing: Enabled 64 bit dma
[  249.921159] hailo 0000:01:00.0: Probing: Using userspace allocated vdma buffers
[  249.921162] hailo 0000:01:00.0: Disabling ASPM L0s
[  249.921165] hailo 0000:01:00.0: Successfully disabled ASPM L0s
[  249.921226] hailo 0000:01:00.0: Writing file hailo/hailo8_fw.bin
[  249.921588] hailo 0000:01:00.0: File hailo/hailo8_fw.bin written successfully
[  249.921591] hailo 0000:01:00.0: Writing file hailo/hailo8_board_cfg.bin
[  249.921598] Failed to write file hailo/hailo8_board_cfg.bin
[  249.921599] hailo 0000:01:00.0: File hailo/hailo8_board_cfg.bin written successfully
[  249.921601] hailo 0000:01:00.0: Writing file hailo/hailo8_fw_cfg.bin
[  249.921606] Failed to write file hailo/hailo8_fw_cfg.bin
[  249.921608] hailo 0000:01:00.0: File hailo/hailo8_fw_cfg.bin written successfully
[  254.939047] hailo 0000:01:00.0: Timeout waiting for NNC firmware file, boot status 4294967295
[  254.939054] hailo 0000:01:00.0: FW loaded, took 5017 ms
[  254.939110] hailo 0000:01:00.0: Firmware load failed
[  254.939112] hailo 0000:01:00.0: Failed activating board -110
[  254.939130] hailo: probe of 0000:01:00.0 failed with error -110
blast@blastpi5:~ $

what is happening here? :frowning:

I confirm that with your provided instructions the touch display works good

But I don’t know what is happened to hailo driver, dmesg shows the error above but using lspci the device is recognized correctly

blastpi5:~ $ lspci
0000:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0000:01:00.0 Co-processor: Hailo Technologies Ltd. Hailo-8 AI Processor (rev 01)
0001:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0001:01:00.0 Ethernet controller: Raspberry Pi Ltd RP1 PCIe 2.0 South Bridge