Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> writes: > On Wed, 6 Mar 2024 at 11:04, Kalle Valo <kvalo@xxxxxxxxxx> wrote: > >> >> Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> writes: >> >> > On WCN3990 platforms actual firmware, wlanmdsp.mbn, is sideloaded to the >> > modem DSP via the TQFTPserv. These MBN files are signed by the device >> > vendor, can only be used with the particular SoC or device. >> > >> > Unfortunately different firmware versions come with different features. >> > For example firmware for SDM845 doesn't use single-chan-info-per-channel >> > feature, while firmware for QRB2210 / QRB4210 requires that feature. >> > >> > Allow board DT files to override the subdir of the fw dir used to lookup >> > the firmware-N.bin file decribing corresponding WiFi firmware. >> > For example, adding firmware-name = "qrb4210" property will make the >> > driver look for the firmware-N.bin first in ath10k/WCN3990/hw1.0/qrb4210 >> > directory and then fallback to the default ath10k/WCN3990/hw1.0 dir. >> > >> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> >> > --- >> > Changes in v2: >> > - Fixed the comment about the default board name being NULL (Kalle) >> > - Expanded commit message to provide examples for firmware paths (Kalle) >> > - Added a note regarding board-2.bin to the commit message (Kalle) >> > - Link to v1: >> > https://lore.kernel.org/r/20240130-wcn3990-firmware-path-v1-0-826b93202964@xxxxxxxxxx >> >> From my point of view this looks good now but let's see what others say. >> Is there a specific reason why you marked this as RFC still? > > No, I just forgot to remove it from the series settings, so you can > consider it as final. Good, so let's ignore the RFC label for this v2. > I had one minor question in my head (but that's mostly for patches 3 > and 4): in linux-firmware we will have ath10k/WCN3990/hw1.0/qcm2290 > and make qrb4210 as a symlink to it. Is that fine from your POV? Yes, I think using a symlink is a good idea. > Or should we use sensible device names (e.g. qcom-rb1)? I guess 'qcom-rb1' refers to 'Qualcomm Robotics RB1' board? In other words, the question is that should we use chipset specific names like 'qcm2290' or product based names like 'qcom-rb1'? That's a good question for which I don't have a good answer :) I'm not very familiar with WCN3990 hardware and SoCs to have a full picture of all this, especially how the firmware images are signed or what different firmware branches there are etc. To be on the safe side using 'qcom-rb1' makes sense but on the other hand that means we need to update linux-firmware (basically add a new symlink) everytime a new product is added. But are there going to be that many new ath10k based products? Using 'qcm2290' is easier because for a new product then there only needs to be a change in DTS and no need to change anything linux-firmware. But here the risk is that if there's actually two different ath10k firmware branches for 'qcm2290'. If that ever happens (I hope not) I guess we could solve that by adding new 'qcm2290-foo' directory? But I don't really know, thoughts? -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches