0

I have some pre-compiled firmware blobs, including foo.bin, that I'd like to have included in the kernel binary that I'm compiling so it can be accessed in early boot. I've included "foo.bin" in CONFIG_EXTRA_FIRMWARE, but when I set CONFIG_EXTRA_FIRMWARE_DIR to the directory (/my/absolute/path/to/dir) holding my blobs, I get:

make[9]: *** No rule to make target '/my/absolute/path/to/dir/foo.bin', needed by 'drivers/base/firmware_loader/builtin/foo.bin.gen.o'.  Stop.

drivers/base/firmware_loader/builtin/Makefile implies that CONFIG_EXTRA_FIRMWARE_DIR can take an absolute path (I assume all of this is referring to paths on the host/build machine) which leads me to believe that the firmware blobs don't need to live in the kernel source tree.

How can I get Make to accept my file(s)? Do I need to do something in the directory with foo.bin? Does that directory have to be in the kernel source tree? Any advice appreciated!

(As a first shot in the dark at a fix, I added a dummy Makefile in /my/absolute/path/to/dir that has a dummy rule for my file:

foo.bin:
    @:

But that (pretty expectedly) didn't work)

thisisbenmanley
  • 386
  • 2
  • 9
  • Are you sure `/my/absolute/path/to/dir/foo.bin` exists? What make tells you is that it could not find it, so it tried to create it but has no clue how to do this. Double-check that it's really there, that there are no spelling errors in your paths (when checking that copy-paste the path from the error message), that it's not a dangling symlink... – Renaud Pacalet Aug 18 '23 at 08:11

0 Answers0