Re: [PATCH] ath10k: add option for chip-id based BDF selection

From: Doug Anderson
Date: Tue Oct 27 2020 - 11:06:58 EST


Hi,

On Mon, Oct 26, 2020 at 10:18 PM Rakesh Pillai <pillair@xxxxxxxxxxxxxx> wrote:
>
>
>
> > -----Original Message-----
> > From: Doug Anderson <dianders@xxxxxxxxxxxx>
> > Sent: Tuesday, October 27, 2020 4:21 AM
> > To: Rakesh Pillai <pillair@xxxxxxxxxxxxxx>
> > Cc: Abhishek Kumar <kuabhs@xxxxxxxxxxxx>; Kalle Valo
> > <kvalo@xxxxxxxxxxxxxx>; ath10k <ath10k@xxxxxxxxxxxxxxxxxxx>; LKML
> > <linux-kernel@xxxxxxxxxxxxxxx>; linux-wireless <linux-
> > wireless@xxxxxxxxxxxxxxx>; Brian Norris <briannorris@xxxxxxxxxxxx>
> > Subject: Re: [PATCH] ath10k: add option for chip-id based BDF selection
> >
> > Hi,
> >
> > On Sat, Oct 24, 2020 at 9:40 AM Rakesh Pillai <pillair@xxxxxxxxxxxxxx> wrote:
> > >
> > > > if (bd_ie_type == ATH10K_BD_IE_BOARD) {
> > > > + /* With variant and chip id */
> > > > ret = ath10k_core_create_board_name(ar, boardname,
> > > > - sizeof(boardname), true);
> > > > + sizeof(boardname), true, true);
> > >
> > > Instead of adding a lot of code to generate a second fallback name, its
> > better to just modify the condition inside the function
> > “ath10k_core_create_board_name” to allow the generation of BDF tag using
> > chip id, even “if ar->id.bdf_ext[0] == '\0 “.
> > >
> > > This will make sure that the variant string is NULL, and just board-id and
> > chip-id is used. This will help avoid most of the code changes.
> > > The code would look as shown below
> > >
> > > @@ -1493,7 +1493,7 @@ static int ath10k_core_create_board_name(struct
> > ath10k *ar, char *name,
> > > }
> > >
> > > if (ar->id.qmi_ids_valid) {
> > > - if (with_variant && ar->id.bdf_ext[0] != '\0')
> > > + if (with_variant)
> >
> > Wouldn't the above just be "if (with_chip_id)" instead? ...but yeah,
> > that would be a cleaner way to do this. Abhishek: do you want to post
> > a v2?
>
>
> The parameter name passed to this function is "with_variant", since other non-qmi targets (eg QCA6174) use this as a flag to just add the variant field.
> This can be renamed to something meaningful for both qmi and non-qmi targets.

I think we still need Abhishek's change to have two booleans passed to
this function, though, right? Thus, it'll be called 3 times:

* with_chip_id = false, with_variant = false
* with_chip_id = true, with_variant = true
* with_chip_id = true, with_variant = false

The two cases you want to combine are both with "with_chip_id = true",
right? The "with_variant" variable being false will make the variant
string empty.

-Doug