Subject: Re: [PATCH 2/9] thunderblot: Don't pass a bitfield to FIELD_GET

From: Mika Westerberg <[email-masked]>
Date: Wed, 10 Dec 2025 06:56:17 +0100

$subject has typo: thunderblot -> thunderbolt ;-)

On Tue, Dec 09, 2025 at 10:03:06AM +0000, [email-masked] wrote:
> From: David Laight <[email-masked]>
> 
> FIELD_GET needs to use __auto_type to get the value of the 'reg'
> parameter, this can't be used with bifields.
> 
> FIELD_GET also want to verify the size of 'reg' so can't add zero
> to force the type to int.
> 
> So add a zero here.
> 
> Signed-off-by: David Laight <[email-masked]>
> ---
>  drivers/thunderbolt/tb.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/thunderbolt/tb.h b/drivers/thunderbolt/tb.h
> index e96474f17067..7ca2b5a0f01e 100644
> --- a/drivers/thunderbolt/tb.h
> +++ b/drivers/thunderbolt/tb.h
> @@ -1307,7 +1307,7 @@ static inline struct tb_retimer *tb_to_retimer(struct device *dev)
>   */
>  static inline unsigned int usb4_switch_version(const struct tb_switch *sw)
>  {
> -	return FIELD_GET(USB4_VERSION_MAJOR_MASK, sw->config.thunderbolt_version);
> +	return FIELD_GET(USB4_VERSION_MAJOR_MASK, sw->config.thunderbolt_version + 0);

Can't this use a cast instead? If not then can you also add a comment here
because next someone will send a patch "fixing" the unnecessary addition.

>  }
>  /**
> -- 
> 2.39.5