Search Linux Wireless

Re: New binary rtw8852b_fw.bin not loading firmware not recognized

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

 



Ping-Ke Shih <pkshih@xxxxxxxxxxx> writes:

>> > > I did file a bug report with the details:
>> > > 
>> > > https://bugzilla.kernel.org/show_bug.cgi?id=217207
>> > > 
>> > 
>> > The firmware format is changed, and wireless-next tree or upcoming 6.3 will
>> > support it. I will also post this information on the bug.
>> 
>> We cannot break user space like that, linux-firmware needs to be
>> backwards compatible. In other words, anything you submit to
>> linux-firmware needs to work with old kernels. Should this new firmware
>> be reverted from linux-firmware?
>
> I think I should support two or more firmware with different name, like
> rwt89/rtw8852b_fw-2.bin, if format is changed. So, there will be two
> firmware existing in linux-firmware.
>
> Then, for old driver, it only supports rwt89/rtw8852b_fw.bin. For new driver,
> it will load rwt89/rtw8852b_fw-2.bin first, but if '-2' version doesn't present,
> it will try to load original version.
>
> I think it would work, but I want to confirm if this is acceptable rules
> for Linux.

Yes, this is the recommended way to handle backwards compatibility.
ath10k (and soon ath11k) will do something similar, we have
firmware-2.bin, firmware-3.bin and so on to avoid breaking older kernels
whenever there are incompatible changes in firmware.

Recently some guidelines were also written about this:

https://www.kernel.org/doc/html/latest/driver-api/firmware/firmware-usage-guidelines.html

>> What about changes in the rtw89 driver? Do they still work with old
>> firmware?
>
> New driver can work with old or new firmware. The only case that doesn't
> work is old driver + new firmware.

Very good, thanks for confirming.

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux