I've noticed something that I can't explain: I had this line in dmesg
bluetooth hci0: Direct firmware load for brcm/BCM43142A0-04ca-2009.hcd failed with error -2
This file doesn't exist so I've downloaded it and put it in /lib/firmware/brcm .
After, this error disappears from dmesg. As bluetooth doesn't work, I removed this .hcd file and I don't understand why this error doesn't reappear now. It's like this firmware is copied somewhere.
I found https://www.kernel.org/doc/html/latest/driver-api/firmware/core.html but fw_path_para parameter seems to be not defined for the broadcom bluetooth module (doesn't appear in btbcm), I can't write in /sys/module/firmware_class/parameters/path (even logged as root), and I don't understand well the part "Firmware cache" of the link.
Does someone can explain that?
Thanks
(sorry for my bad english)