@@ -68,6 +68,24 @@ if [ -e "${DESTDIR}"/firmware/regulatory.db ] ; then
cp "${DESTDIR}"/firmware/regulatory.* "${DESTDIR}"/firmware.new
fi
+# Copy all AthrBT files, because they are needed for some devices
+# like the original Asus Zenbook, but only if the module ath3k.ko
+# is compiled
+if [[ -n `find "${DESTDIR}"/modules -name ath3k.ko` ]] ; then
+ if [ -d "${DESTDIR}"/firmware/ar3k ] ; then
+ mkdir -p "${DESTDIR}"/firmware.new/ar3k
+ cp -a "${DESTDIR}"/firmware/ar3k/AthrBT_0x*.dfu "${DESTDIR}"/firmware.new/ar3k/
+ # the "ramps_" files are refered in the source code of the driver, so
+ # we must add them too.
+ cp -a "${DESTDIR}"/firmware/ar3k/ramps_0x*.dfu "${DESTDIR}"/firmware.new/ar3k/
+ else
+ # fail if the folder doesn't exist, because that means that this
+ # script requires a rework
+ echo "The firmware folder for the Atheros Bluetoot firmware doesn't exist".
+ exit 1
+ fi
+fi
+
# Move kernel firmware files to the new firmware directory
for d in "${DESTDIR}"/modules/* ; do
if [ -d "${DESTDIR}"/firmware/"${d##*/}" ] ; then
When using the Ubuntu Core 22 kernel in an Asus Zenbook UX22, this error is shown in journalctl: usb 1-1-1: Direct firmware load for ar3k/AthrBT_0x01020200.dfu failed with error -2 Bluetooth: Patch file not found ar3k/AthrBT_0x01020200.dfu Bluetooth: Loading patch file failed ath3k: probe of 1-1.1:1.0 failed with error -2 and, of course, bluetooth doesn't work. This patch adds the missing files, and makes bluetooth work. Fix https://bugs.launchpad.net/ubuntu/+bug/2025054 Signed-off-by: Sergio Costas Rodriguez <sergio.costas@canonical.com> --- trim-firmware | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)