Compiling IPFire 2.25 ARMVTEL Core 144 - No HDMI Video

Hello,

There doesn’t seem to be a location to post questions about compiling images for deployment, so here I am. If the thread needs to be moved per Admin, cool, but hopefully we can position this so we can collectively use my work.

I have a Raspberry Pi 4B. I initially downloaded the latest ARM image, burned it with Rufus 3.10, put it in the Pi, and booted it. Nothing!! No HDMI video. I initially thought that my video card may be bad in the Pi, so I moved on. I grabbed a copy of Raspbiian and burned it using the exact same method. I popped in the SDCard to the R-Pi4B and booted it… Holy crap… There was video, so I immediately came to the conclusion that the image wasn’t compiled for R-Pi4B. Upon further research, it seems that the last compiled image was supported only for RP3B ish… It hadn’t made it to 4B yet and apparently nobody has built an image for running IPFire on an R-Pi4B yet.

Well, I need to get it to work, so I pulled down the entire branch of sourcecode for IPFire 2.x, and followed the instruction set from:
https://wiki.ipfire.org/devel/ipfire-2-x/build-howto

This was built ontop of the latest release of Functional and Bootable Raspbiian OS right on the same Raspberry Pi4B, pulled and installed, in the past couple of days. So all of the PreReqs were installed, and instruction set followed. Heck, there are only 3 real simple steps minus burning it. How hard can that be?

I didn’t get a single errors, and it built a smooth image. The story continues…

(Before someone replies and says, “Why don’t you run it on an old PC?” Well, its because I don’t want to. Thought I would get that out of the way up front. I want a rinky-dink little Pi4B running it, or I wouldn’t be going through all this trouble. LOL)

This built an image file and an MD5 File. Cool Right?


MD5 = 91e19177f508de3c13f89e05e3177886 ipfire-2.25.2gb-ext4.armv5tel-full-core144.img.xz

I again, went through the same procedure as before, using Rufus to burn the image created in the screenshot to the SDCard, but again, just like before… It doesn’t show any video. Frustrating huh?

Wiring is the microHDMI to full HDMI cable, and the Power Cord.

Also, editing is another issue to bring up. I found that there were articles eluding to editing the following in case the HDMI doesn’t show anything on the monitor. Did that as well, and the video won’t “hit a lick”. I finally reached a point where I thought I would just hoppity hop on here and see if anyone else ever tried this, had any success, or know of why on earth a simple build won’t boot. I am sure I am not the only one who’s run into this.

Here are the files as it sits right now, located on the burned SD card for Boot, so I can install IPFire 2.x

uEnv.txt
KVER=4.14.173
DTBSUNXI=sun8i-h3-nanopi-r1.dtb
root_dev=UUID=9abe2fbb-6f8a-44f4-a171-ded550343847
SERIAL-CONSOLE=OFF

Further Notes in Bold Below:

config.txt
###############################################################################

Raspberry Pi - Videocore configuration file

###############################################################################

###############################################################################

GPU Memory Settings (16,32,64 … )

###############################################################################
gpu_mem=16

###############################################################################

hdmi/video options

###############################################################################

Set this if monitor was not detected at reboot.

hdmi_force_hotplug=1 ------This Was commented out. I Un-Commented and left at 1

hdmi_drive: 0 auto, 1 DVI (no Sound), 2 HDMI (Sound)

hdmi_drive=2 ------This Was commented out. I Un-Commented and moved from 0 to 2

sdtv_mode: 0 NTSC, 1 NTSC (JP), 3 PAL, 4 PAL (Brazil)

#sdtv_mode=2

sdtv_ascpect: 0 4:3, 1 14:9, 2 16:9

sdtv_aspect=0 ------This Was commented out. I Un-Commented and left default at 0

overscan

#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

###############################################################################

Turbo Mode (cpufreq) Settings …

default clocks are arm=700, core=250 and sdram=400

###############################################################################

underclock at idle

#arm_freq_min=500
#sdram_freq_min=250

use following paramters to overclock at load

#arm_freq=900
#core_freq=450
#sdram_freq=450

higher clock than 900Mhz most need over voltage. Use with care.

#over_voltage=3

################################################################################

end

################################################################################

If someone would care to review, I would appreciate it, if someone else has an R-Pi4B or can give me an idea of direction. For all I know, there may be a file that needs edited in the IPFire2.x sourcecode before I fire off the build. Documentation is scattered around, so difficult to follow at best right now.

Thanks…

Although I am not using a pre-installed flash image in my workings above, I did find this section in this page: https://wiki.ipfire.org/installation/step2

Using a pre-installed flash image

Some systems do not contain a CDROM drive and are not able to boot from any other media than the system disk. PC Engines’s ALIX is the most prominent example of these systems. In this case you must use one of the pre-installed flash images.

There are two different images available for download. One has the serial console enabled and the graphical console disabled. This is intended to be used on systems with a serial console only (no keyboard and monitor). The other image is for system with a graphical console (“classical” desktop configuration with keyboard and monitor). To use one of these images you will need to write it to a flash card.

How exactly do you enable graphical console. Is it simply by turning off the serial console to OFF, or is there another variable I have to set? If so, where is it located and in what file?

Thanks

Hi @mustangint1.

I think someone has said that it is not compatible with the latest version of IPFire:

https://wiki.ipfire.org/hardware/arm

Too bad it doesn’t work, but I think it will be a matter of time before it is supported.

Regards.

Its not compatible because noone has compiled the image. Thats what I am doing. Other people have had the same exact hdmi video problem in earlier releases. Lots of Intel on that in the community.

Its not compatible because the included u-boot, RPi firmware and kernel 4.14 not support the RPi 4 at all.

There should also no console output.

So, Arne, you have tried to compile the core 144 onto a RP4b with that kernel from the recent Rasbian release and the most recent release of IPFire Binaries and it didn’t work?

Confirm please.

Thx

https://wiki.ipfire.org/hardware/arm/rpi/four

IPFire has no support for the RPi4!

Even if you build it on an other system. The binary is not using the buildhost kernel.

Hey Arne…

It says it does not boot with current version. It doesn’t say its not supported on RP4b

https://forum.ipfire.org/viewtopic.php?t=23022
image

Topic 23022 has your note in it from nearly a year ago in July 2019 on core versions 134 Arm and Arch. Curious if uboot is the hangup here, why it hasn’t been modded in that time? Also, if the script isn’t written using a buildhost kernel, why not? If one wanted to compile this on an Ubuntu Platform, or other platform, wouldn’t it be prudent to consider that? Just asking is all. When I compiled, it pulled the newest of the code down to my term. I am not sure if it is a need for hardware or not. I mean, if you need a RP4b for testing, let me know and I will drop one in the mail to you. I am a security engineer and have an extra one handy. Just let me know on that.

At the moment there is no LTS kernel https://www.kernel.org/category/releases.html that support the Gigabit Ethernet of the RP4 becuase it was added in kernel 5.5 and 5.6

Also kernel 5.7 has still some problems with DMA which is needed for performance so at the moment we have no plans to add the support.
https://www.raspberrypi.org/forums/viewtopic.php?t=249579