From: Takashi Iwai <tiwai@suse.de>
To: Paul Menzel <pmenzel@molgen.mpg.de>
Cc: "Jürgen Hofmann" <hofmann@shiphrah.com>,
linux-bluetooth@vger.kernel.org, "Takashi Iwai" <tiwai@suse.com>,
"Qu Wenruo" <wqu@suse.com>, "Chris Lu" <chris.lu@mediatek.com>
Subject: Re: Firmware for MT7922 missing in initrd; bluetooth disabled after update
Date: Sat, 12 Aug 2023 12:03:46 +0200 [thread overview]
Message-ID: <874jl4r30d.wl-tiwai@suse.de> (raw)
In-Reply-To: <c69edd3b-bace-42a0-91e5-d8606a443853@molgen.mpg.de>
On Sat, 12 Aug 2023 11:02:04 +0200,
Paul Menzel wrote:
>
> [Cc: +Qu, +Chris]
>
> Dear Jürgen,
>
>
> Am 10.08.23 um 22:24 schrieb Jürgen Hofmann:
>
> > I updated openSuse Tumbleweed 20230806 with a bluetooth keyboard
> > attached to the PC. After the update to 20230808 and rebooting
> > bluetooth was disabled and it was impossible to enable it
> > again. Before the update bluetooth was working fine.
>
> Sorry, I do not know what software versions changed updating to
> openSUSE Tumbleweed. Could you please mention that for the Linux
> kernel and BlueZ and the initrd generator?
>
> > The attached bluetooth keyboard caused the bluetooth module being
> > added to initrd. However, the corresponding firmware for MT7922 is
> > not added.
> >
> > dmesg shows:
> >
> > [ 4.368031] bluetooth hci0: Direct firmware load for mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin failed with error -2
> >
> > In fact the file is present on the system
> >
> > ls -l /usr/lib/firmware/mediatek/BT_RAM_CODE*
> > -rw-r--r-- 1 root root 512104 3. Aug 17:36 /usr/lib/firmware/mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin.xz
> > -rw-r--r-- 1 root root 343052 3. Aug 17:36 /usr/lib/firmware/mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin.xz
> >
> > but missing in initrd
> >
> > lsinitrd | grep BT_RAM_CODE
> > -rw-r--r-- 1 root root 343052 Aug 3 17:36 usr/lib/firmware/mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin.xz
> >
> > Manually adding the file to initrd makes bluetooth work again.
> >
> > I reported the bug here
> > https://bugzilla.suse.com/show_bug.cgi?id=1214133
> > and was requested to report here.
> >
> > If I can be of any help or you need further information please let me
> > know.
> From Qu’s answer in the thread *[PATCH v3 1/2] Bluetooth: btusb: Add
> new VID/PID 0489/e102 for MT7922* [1] it sounds to me, support for
> chip was only added recently, and is going to be in Linux v6.6.
The problem is rather the lack of MODULE_FIRMWARE() declarations for
the corresponding device. The device itself already works fine as is
with the current upstream kernel as long as the firmware file is
present on the system. But as dracut puts only the firmware file
listed in MODULE_FIRMWARE() into initrd, it starts failing once when
you build an initrd containing the BT.
thanks,
Takashi
next prev parent reply other threads:[~2023-08-12 10:04 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-10 20:24 Firmware for MT7922 missing in initrd; bluetooth disabled after update Jürgen Hofmann
2023-08-12 9:02 ` Paul Menzel
2023-08-12 10:03 ` Takashi Iwai [this message]
2023-08-14 9:06 ` Jürgen Hofmann
2023-08-12 10:57 ` Qu Wenruo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874jl4r30d.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=chris.lu@mediatek.com \
--cc=hofmann@shiphrah.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=pmenzel@molgen.mpg.de \
--cc=tiwai@suse.com \
--cc=wqu@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox