Re: PCI trouble on mvebu (Turris Omnia)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 27/10/2020 22:31, Toke Høiland-Jørgensen wrote:
To follow up on this, everything seems to work just fine (ath10k init at
boot + regulatory db load) if I simply set:

CONFIG_EXTRA_FIRMWARE="ath10k/QCA988X/hw2.0/board.bin ath10k/QCA988X/hw2.0/firmware-5.bin regulatory.db regulatory.db.p7s"

-Toke

That works on my node only for the regulatory files but not the ath10
firmware with kconfig:

   Symbol: EXTRA_FIRMWARE_DIR [=/srv/fw]
   Type  : string
   Defined at drivers/base/firmware_loader/Kconfig:63
     Prompt: Firmware blobs root directory
     Depends on: FW_LOADER [=y] && EXTRA_FIRMWARE [=regulatory.db
regulatory.db.p7s board.bin firmware-5.bin]!=
     Location:
      -> Device Drivers
        -> Generic Driver Options
          -> Firmware loader
            -> Firmware loading facility (FW_LOADER [=y])
              -> Build named firmware blobs into the kernel binary
(EXTRA_FIRMWARE [=regulatory.db regulatory.db.p7s board.bin
firmware-5.bin])
I think that's because you're missing the path prefix
(ath10k/QCA988X/hw2.0/) from board.bin and firmware-5.bin?
request_firmware() uses the full path...

-Toke

Well, that would be weird/strange having to specify the path prefix for build-in firmware,considering:

 CONFIG_FW_LOADER:

 This enables the firmware loading facility in the kernel. The kernel
 will first look for built-in firmware, if it has any. Next, it will
 look for the requested firmware in a series of filesystem paths:

       o firmware_class path module parameter or kernel boot param
       o /lib/firmware/updates/UTS_RELEASE
       o /lib/firmware/updates
       o /lib/firmware/UTS_RELEASE
       o /lib/firmware

----

Nevertheless, I tried with same path prefix as per your kconfig but the compilation fails, which I am not surprised since the ath10 blobs are not located at that path

  UPD     drivers/base/firmware_loader/builtin/regulatory.db.gen.S
  UPD drivers/base/firmware_loader/builtin/regulatory.db.p7s.gen.S
make[4]: *** No rule to make target '/srv/fw/ath10k/QCA988X/hw2.0/board.bin', needed by 'drivers/base/firmware_loader/builtin/ath10k/QCA988X/hw2.0/board.bin.gen.o'. Stop.
make[4]: *** Waiting for unfinished jobs....
  UPD drivers/base/firmware_loader/builtin/ath10k/QCA988X/hw2.0/board.bin.gen.S make[3]: *** [scripts/Makefile.build:500: drivers/base/firmware_loader/builtin] Error 2 make[2]: *** [scripts/Makefile.build:500: drivers/base/firmware_loader] Error 2
make[1]: *** [scripts/Makefile.build:500: drivers/base] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:1799: drivers] Error 2
make: *** Waiting for unfinished jobs....

I suspect that since you are booting the kernel directly from my build box over tftp it accesses the ath10 firmware blobs on the build box.



Attachment: OpenPGP_0x729CFF47A416598B.asc
Description: application/pgp-keys

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux