I am trying to load a device tree overlay.
I am using the DTC version which comes with Quartus 16.1
I am using the following command.
dtc -I dts -O dtb -o overlay_dum.dtbo -@ overlay_dum.dts
I am attempting to load into the 4.1.17-ltsi kernel which I compiled from following the SOC W2 tutorial.
In fact I am using the .dts and .dtb provided with that lab, as I’m on a DE10 Nano board.
I use the following commands in linux.
mount-t configfs configfs /config
mkdir /config/device-tree/overlays/test
echo overlay.dtbo > /config/device-tree/overlays/test/path
I am running the commands from the /lib/firmware directory. This is where the .dtbo’s and .rbf is living.
I have only arrived at this conclusion after realizing that the way the FPGA is programmed from linux
has changed quite a bit since GHRD 13.1 instructions.
Of note, is that I do see the bridges and the fpga_region probed successfully in the linux bootup.
My .dts’s that I am trying to load look like this:
/dts-v1/ /plugin/;
/ {
fragment@0 {
target-path = <&soc>;
__overlay__ {
sysid_qsys: sysid@0x100001000 {
compatible = "altr,sysid-16.0", "altr,sysid-1.0";
id = <2899645442>;
timestamp = <1460474164>;
};
};
};
};
and this:
/dts-v1/ /plugin/;
/ {
fragment@0 {
target-path = "/soc/base-fpga-region";
#address-cells = <2>;
#size-cells = <1>;
__overlay__ {
#address-cells = <2>;
#size-cells = <1>;
firmware-name = "soc_system.rbf";
};
};
};
However upon attempting to echo them into /config/device-tree/overlays/test/path I get the following errors:
create_overlay: Failed to resolve tree.
With the .rbf loading one I get an additional error.
of_overlay_create: of_build_overlay_info() failed for tree @/
create_overlay: Failed to create overlay (err=-19)
Any ideas would be fantastic. I’ve been working on this for a couple days now.
The only thing I haven’t tried is building my own rootfs. Does device tree overlay loading require a specific rootfs. I am using a prebuilt one. The SOC W2 loads a filesystem from ram, which I disabled in favor of my filesystem on the sd card.
The filesystem I am using is one for Beaglebone Black with filename:
debian-8.7-bare-armhf-2017-01-14.tar.xz