Building Ubuntu with Fenix - how to make it build device tree overlays?

Which system do you use? Android, Ubuntu, OOWOW or others?

Ubuntu

Which version of system do you use? Khadas official images, self built images, or others?

Jammy (22.04)

Please describe your issue below:

I’ve built Ubuntu Jammy for VIM4, all went well. But the dtb folder only has one single .dtb image and I don’t get the overlays (same as in the official image). Is there a way to configure fenix to build overlays as well?

Post a console log of your issue below:

This is the config output:

== ENV CONFIG =======================
VERSION=1.5.1
KHADAS_BOARD=VIM4
LINUX=5.4
UBOOT=2019.01
DISTRIBUTION=Ubuntu
DISTRIB_RELEASE=jammy
DISTRIB_RELEASE_VERSION=22.04
DISTRIB_TYPE=gnome
DISTRIB_ARCH=arm64
INSTALL_TYPE=EMMC
COMPRESS_IMAGE=yes
INSTALL_TYPE_RAW=yes

== ONE LINE CONFIG ==================
source setenv.sh -q -s  KHADAS_BOARD=VIM4 LINUX=5.4 UBOOT=2019.01 DISTRIBUTION=Ubuntu DISTRIB_RELEASE=jammy DISTRIB_RELEASE_VERSION=22.04 DISTRIB_TYPE=gnome DISTRIB_ARCH=arm64 INSTALL_TYPE=EMMC COMPRESS_IMAGE=yes INSTALL_TYPE_RAW=yes

Thanks!

Hello @Sasha

You need to build the overlays seperatly.

Source code: GitHub - khadas/khadas-linux-kernel-dt-overlays: khadas-linux-kernel-dt-overlays

Build debian package:

$ ./build debian
$ ls -a1 *.deb
khadas-edge2-linux-5.10-dt-overlays_1.5~0f6dde5_arm64.deb
khadas-vim1s-linux-5.4-dt-overlays_1.5~0f6dde5_arm64.deb
khadas-vim4-linux-5.4-dt-overlays_1.5~0f6dde5_arm64.deb
1 Like

Great, that works.
Thanks!

Hi @numbqq one more question related to this.
I want to route tdmb to GPIO header.
In the i2s overlay, towards the bottom I see this section:

fragment@1 {
		target = <&tdmb>;

		__overlay__ {
			pinctrl-names = "tdm_pins";
			pinctrl-0 = <&mclk_1_pins
				&tdm_b_pins
				&tdm_d2_pins
				&tdm_d3_pins
				&tdmb_clk_pins>;
		};
	};

Looking at the main kvim4.dts I found this:

tdm_b_pins: tdm_b_pin {
		mux { /* GPIOT_1, GPIOT_2, GPIOT_3, GPIOT_4 */
			groups = "tdm_sclk1",
				"tdm_fs1",
				"tdm_d2",
				"tdm_d3";
			function = "tdm";
		};
	};

so the i2s overlay will route the tdmb pins to GPIO connector, is my understanding correct?

Thanks,
Sasha