How to load RBF file from Linux kernel 4.1 on DE10-Nano SoC

I’ve been searching for a way to configure fpga from hps linux i have read many topics but i have no knowledge of using and working with device tree overlays.
I would really appreciate if someone posts a simple step by step guide to configure fpga from linux.

@alireza_73 This is a good example: Load fpga rbf from device tree overlay example?

1 Like

@rafael_Mello
when i try to load dtbo with command mount -t configfs configfs /config
i get error mount: mount point /config does not exist
how shold can i solve this?
thanks in advance

@alireza_73 If the folder /config doesn´t exist you should create the folder with the command mkdir /config

1 Like

@rafael_Mello
when i try to add the path i get the following error:

echo load_rbf.dtbo > /config/device-tree/overlays/test/path

-sh: echo: write error: No such device

@alireza_73 Did you configure your kernel to accept fpga configuration by device-tree overlay?
I´ll try to complile kernel 4.1 and run the commands.

1 Like

@rafael_Mello
No, is there any guide available ?

I did full solution for this. Now old method does not work. Only overlying method. To accomplish programming procedure, you need:
=> recompile linux kernel to support configfs + some other features
=> dtbo driver
=> rbf file has to be stored in dedicated folder: /lib/firmware /…
=> before programming, dts file with overly has to be prepared
=> configfs has to be mounted
=> you need to create some folder in configfs share
=> after creating this folder, there will appear 2 objects: one for mgmt purpose, another for writing dts
=> dts file has to be prepared and send to /your folder/dtbo
=> you need to apply dts file by writing “1” into /your folder/status

after that, your fpga will be reprogrammed.

I haven’t prepared documentation yet, but i will.

If you still need it, let me know.

1 Like

I did full solution for this. Now old method does not work. Only overlying method. To accomplish programming procedure, you need:
=> recompile linux kernel to support configfs + some other features
=> dtbo driver
=> rbf file has to be stored in dedicated folder: /lib/firmware /…
=> before programming, dts file with overly has to be prepared
=> configfs has to be mounted
=> you need to create some folder in configfs share
=> after creating this folder, there will appear 2 objects: one for mgmt purpose, another for writing dts
=> dts file has to be prepared and send to /your folder/dtbo
=> you need to apply dts file by writing “1” into /your folder/status

after that, your fpga will be reprogrammed.

I haven’t prepared documentation yet, but i will.

If you still need it, let me know.

I would really appreciate if you prepare the documentation, it would take more much more energy and time because i don’t know how to add dtbo driver, what features to add to which kernel exactly and… thanks for replying.