Device tree -- include file not found?

Hello – I continue to tinker with the Inovato Quadra when I have time: How to customize ZFS kernel for new ARM board?

I was able to extract its device tree source file, sun50i-h6-inovato-quadra.dts, from build artifacts from creating an Armbian image, as shown below.

It includes sun50i-h6-tanix.dtsi (which then includes other files), but thankfully this file is already included in the linux source for kernels all the way back to 5.17: arm64: dts: allwinner: h6: tanix-tx6: Split to DT and DTSI · torvalds/linux@8ff8d69 · GitHub

However, when I try to build an image, I get a file not found for this include:

error: builder for '/nix/store/f772g1r9l7mh6mir9snxg6x3r19q977g-inovato-quadra-dtbo.drv' failed with exit code 1;
       last 6 log lines:
       > /nix/store/4y3hi1x5gpg1nw11ypn7b0m00imm45wi-sun50i-h6-inovato-quadra.dts:6:10: fatal error: sun50i-h6-tanix.dtsi: No such file or directory
       >     6 | #include "sun50i-h6-tanix.dtsi"
       >       |          ^~~~~~~~~~~~~~~~~~~~~~
       > compilation terminated.
       > Error: /nix/store/4y3hi1x5gpg1nw11ypn7b0m00imm45wi-sun50i-h6-inovato-quadra.dts:4.9-10 syntax error
       > FATAL ERROR: Unable to parse input tree
       For full logs, run 'nix log /nix/store/f772g1r9l7mh6mir9snxg6x3r19q977g-inovato-quadra-dtbo.drv'.
error: 1 dependencies of derivation '/nix/store/ijwablvfbrdkjvjwalnxiwvclw4abbmb-overlays.json.drv' failed to build
error: 1 dependencies of derivation '/nix/store/6n274ikr2qi30agm7hh106x63pnp1nd9-device-tree-overlays.drv' failed to build
error: 1 dependencies of derivation '/nix/store/jh2ihqfhybwlq5xw5pz1y462p7p2rs0b-nixos-system-nixos-sd-card-25.05.20250204.a308483.drv' failed to build
error: 1 dependencies of derivation '/nix/store/yd1n374f416yj10njcbssdbg45zil1dj-ext4-fs.img.zst.drv' failed to build
error: 1 dependencies of derivation '/nix/store/07l3vlpnzxd6j0i5r5nq36iwr2xwx5fd-nixos-image-sd-card-25.05.20250204.a308483-aarch64-linux.img.zst.drv' failed to build

I had expected that the standard linux dts sources would be in the search path by default and that this would work.

Do I need to be doing something with devicetree filters or dtboBuildExtraIncludePaths instead?

deviceTree = {
  enable = true;
  overlays = [
    {
      name = "inovato-quadra";
      dtsFile = ./sun50i-h6-inovato-quadra.dts;
    }
  ];
};

Here is ./sun50i-h6-inovato-quadra.dts:

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
// Copyright (c) 2023 Gunjan Gupta <gunjan@armbian.com>

/dts-v1/;

#include "sun50i-h6-tanix.dtsi"

/ {
	model = "Inovato Quadra";
	compatible = "oranth,inovato-quadra", "allwinner,sun50i-h6";

	aliases {
		ethernet1 = &xr819;
	};

	leds {
		compatible = "gpio-leds";

		led-0 {
			label = "red";
			gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */
		};

		led-1 {
			label = "blue";
			gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */
			default-state = "on";
		};
	};
};

&i2s1 {
	status = "okay";
};

&mmc1 {
	pinctrl-names = "default";
	pinctrl-0 = <&mmc1_pins>;

	xr819: sdio_wifi@1 {
		compatible = "xradio,xr819";
		interrupt-names = "host-wake";
		interrupt-parent = <&r_pio>;
		interrupts = <1 0 IRQ_TYPE_EDGE_RISING>;
		local-mac-address = [dc 44 6d c0 ff ee];
		reg = <1>;
	};
};

&sound_hdmi {
	status = "okay";
};

&wifi_pwrseq {
	post-power-on-delay-ms = <0xc8>;
};