diff mbox series

ath11k (gcc13): synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type

Message ID 20221031114341.10377-1-jirislaby@kernel.org
State New
Headers show
Series ath11k (gcc13): synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type | expand

Commit Message

Jiri Slaby Oct. 31, 2022, 11:43 a.m. UTC
ath11k_mac_he_gi_to_nl80211_he_gi() generates a valid warning with gcc-13:
  drivers/net/wireless/ath/ath11k/mac.c:321:20: error: conflicting types for 'ath11k_mac_he_gi_to_nl80211_he_gi' due to enum/integer mismatch; have 'enum nl80211_he_gi(u8)'
  drivers/net/wireless/ath/ath11k/mac.h:166:5: note: previous declaration of 'ath11k_mac_he_gi_to_nl80211_he_gi' with type 'u32(u8)'

I.e. the type of the return value ath11k_mac_he_gi_to_nl80211_he_gi() in
the declaration is u32, while the definition spells enum nl80211_he_gi.
Synchronize them to the latter.

Cc: Martin Liska <mliska@suse.cz>
Cc: Kalle Valo <kvalo@kernel.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: ath11k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
---
 drivers/net/wireless/ath/ath11k/mac.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jiri Slaby Nov. 1, 2022, 5:49 a.m. UTC | #1
On 31. 10. 22, 22:16, Jeff Johnson wrote:
> On 10/31/2022 4:43 AM, Jiri Slaby (SUSE) wrote:
>> ath11k_mac_he_gi_to_nl80211_he_gi() generates a valid warning with 
>> gcc-13:
>>    drivers/net/wireless/ath/ath11k/mac.c:321:20: error: conflicting 
>> types for 'ath11k_mac_he_gi_to_nl80211_he_gi' due to enum/integer 
>> mismatch; have 'enum nl80211_he_gi(u8)'
>>    drivers/net/wireless/ath/ath11k/mac.h:166:5: note: previous 
>> declaration of 'ath11k_mac_he_gi_to_nl80211_he_gi' with type 'u32(u8)'
>>
>> I.e. the type of the return value ath11k_mac_he_gi_to_nl80211_he_gi() in
>> the declaration is u32, while the definition spells enum nl80211_he_gi.
>> Synchronize them to the latter.
>>
>> Cc: Martin Liska <mliska@suse.cz>
>> Cc: Kalle Valo <kvalo@kernel.org>
>> Cc: "David S. Miller" <davem@davemloft.net>
>> Cc: Eric Dumazet <edumazet@google.com>
>> Cc: Jakub Kicinski <kuba@kernel.org>
>> Cc: Paolo Abeni <pabeni@redhat.com>
>> Cc: ath11k@lists.infradead.org
>> Cc: linux-wireless@vger.kernel.org
>> Cc: netdev@vger.kernel.org
>> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
> 
> Suggest the subject should be
> wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type

FWIW I copied from:
$ git log --format=%s  drivers/net/wireless/ath/ath11k/mac.h
ath11k: Handle keepalive during WoWLAN suspend and resume
ath11k: reduce the wait time of 11d scan and hw scan while add interface
ath11k: Add basic WoW functionalities
ath11k: add support for hardware rfkill for QCA6390
ath11k: report tx bitrate for iw wlan station dump
ath11k: add 11d scan offload support
ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev
ath11k: add support for BSS color change
ath11k: add support for 80P80 and 160 MHz bandwidth
ath11k: Add support for STA to handle beacon miss
ath11k: add support to configure spatial reuse parameter set
ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references
ath11k: Perform per-msdu rx processing
ath11k: fix incorrect peer stats counters update
ath11k: Move mac80211 hw allocation before wmi_init command
ath11k: fix missed bw conversion in tx completion
ath11k: driver for Qualcomm IEEE 802.11ax devices

> The reference to gcc in the description should be sufficient.
> 
> Kalle can update this when he merges

OK, thanks.

> Reviewed-by: Jeff Johnson <quic_jjohnson@quicinc.com>
> 
>> ---
>>   drivers/net/wireless/ath/ath11k/mac.h | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/wireless/ath/ath11k/mac.h 
>> b/drivers/net/wireless/ath/ath11k/mac.h
>> index 2a0d3afb0c99..0231783ad754 100644
>> --- a/drivers/net/wireless/ath/ath11k/mac.h
>> +++ b/drivers/net/wireless/ath/ath11k/mac.h
>> @@ -163,7 +163,7 @@ void ath11k_mac_drain_tx(struct ath11k *ar);
>>   void ath11k_mac_peer_cleanup_all(struct ath11k *ar);
>>   int ath11k_mac_tx_mgmt_pending_free(int buf_id, void *skb, void *ctx);
>>   u8 ath11k_mac_bw_to_mac80211_bw(u8 bw);
>> -u32 ath11k_mac_he_gi_to_nl80211_he_gi(u8 sgi);
>> +enum nl80211_he_gi ath11k_mac_he_gi_to_nl80211_he_gi(u8 sgi);
>>   enum nl80211_he_ru_alloc 
>> ath11k_mac_phy_he_ru_to_nl80211_he_ru_alloc(u16 ru_phy);
>>   enum nl80211_he_ru_alloc 
>> ath11k_mac_he_ru_tones_to_nl80211_he_ru_alloc(u16 ru_tones);
>>   enum ath11k_supported_bw ath11k_mac_mac80211_bw_to_ath11k_bw(enum 
>> rate_info_bw bw);
>
Kalle Valo Nov. 1, 2022, 8:45 a.m. UTC | #2
Jiri Slaby <jirislaby@kernel.org> writes:

> On 31. 10. 22, 22:16, Jeff Johnson wrote:
>
>> On 10/31/2022 4:43 AM, Jiri Slaby (SUSE) wrote:
>>> ath11k_mac_he_gi_to_nl80211_he_gi() generates a valid warning with
>>> gcc-13:
>>>    drivers/net/wireless/ath/ath11k/mac.c:321:20: error: conflicting
>>> types for 'ath11k_mac_he_gi_to_nl80211_he_gi' due to enum/integer
>>> mismatch; have 'enum nl80211_he_gi(u8)'
>>>    drivers/net/wireless/ath/ath11k/mac.h:166:5: note: previous
>>> declaration of 'ath11k_mac_he_gi_to_nl80211_he_gi' with type
>>> 'u32(u8)'
>>>
>>> I.e. the type of the return value ath11k_mac_he_gi_to_nl80211_he_gi() in
>>> the declaration is u32, while the definition spells enum nl80211_he_gi.
>>> Synchronize them to the latter.
>>>
>>> Cc: Martin Liska <mliska@suse.cz>
>>> Cc: Kalle Valo <kvalo@kernel.org>
>>> Cc: "David S. Miller" <davem@davemloft.net>
>>> Cc: Eric Dumazet <edumazet@google.com>
>>> Cc: Jakub Kicinski <kuba@kernel.org>
>>> Cc: Paolo Abeni <pabeni@redhat.com>
>>> Cc: ath11k@lists.infradead.org
>>> Cc: linux-wireless@vger.kernel.org
>>> Cc: netdev@vger.kernel.org
>>> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
>>
>> Suggest the subject should be
>> wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type
>
> FWIW I copied from:
> $ git log --format=%s  drivers/net/wireless/ath/ath11k/mac.h
> ath11k: Handle keepalive during WoWLAN suspend and resume
> ath11k: reduce the wait time of 11d scan and hw scan while add interface
> ath11k: Add basic WoW functionalities
> ath11k: add support for hardware rfkill for QCA6390
> ath11k: report tx bitrate for iw wlan station dump
> ath11k: add 11d scan offload support
> ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev
> ath11k: add support for BSS color change
> ath11k: add support for 80P80 and 160 MHz bandwidth
> ath11k: Add support for STA to handle beacon miss
> ath11k: add support to configure spatial reuse parameter set
> ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references
> ath11k: Perform per-msdu rx processing
> ath11k: fix incorrect peer stats counters update
> ath11k: Move mac80211 hw allocation before wmi_init command
> ath11k: fix missed bw conversion in tx completion
> ath11k: driver for Qualcomm IEEE 802.11ax devices

Yeah, using "wifi:" is a new prefix we started using with wireless
patches this year.
Randy Dunlap Nov. 1, 2022, 2:54 p.m. UTC | #3
On 11/1/22 01:45, Kalle Valo wrote:
> Jiri Slaby <jirislaby@kernel.org> writes:
> 
>> On 31. 10. 22, 22:16, Jeff Johnson wrote:
>>
>>> On 10/31/2022 4:43 AM, Jiri Slaby (SUSE) wrote:

>>> Suggest the subject should be
>>> wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type
>>
>> FWIW I copied from:
>> $ git log --format=%s  drivers/net/wireless/ath/ath11k/mac.h
>> ath11k: Handle keepalive during WoWLAN suspend and resume
>> ath11k: reduce the wait time of 11d scan and hw scan while add interface
>> ath11k: Add basic WoW functionalities
>> ath11k: add support for hardware rfkill for QCA6390
>> ath11k: report tx bitrate for iw wlan station dump
>> ath11k: add 11d scan offload support
>> ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev
>> ath11k: add support for BSS color change
>> ath11k: add support for 80P80 and 160 MHz bandwidth
>> ath11k: Add support for STA to handle beacon miss
>> ath11k: add support to configure spatial reuse parameter set
>> ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references
>> ath11k: Perform per-msdu rx processing
>> ath11k: fix incorrect peer stats counters update
>> ath11k: Move mac80211 hw allocation before wmi_init command
>> ath11k: fix missed bw conversion in tx completion
>> ath11k: driver for Qualcomm IEEE 802.11ax devices
> 
> Yeah, using "wifi:" is a new prefix we started using with wireless
> patches this year.
> 

It would be nice if that was documented somewhere...
Kalle Valo Nov. 1, 2022, 5:19 p.m. UTC | #4
Randy Dunlap <rdunlap@infradead.org> writes:

> On 11/1/22 01:45, Kalle Valo wrote:
>> Jiri Slaby <jirislaby@kernel.org> writes:
>> 
>>> On 31. 10. 22, 22:16, Jeff Johnson wrote:
>>>
>>>> On 10/31/2022 4:43 AM, Jiri Slaby (SUSE) wrote:
>
>>>> Suggest the subject should be
>>>> wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type
>>>
>>> FWIW I copied from:
>>> $ git log --format=%s  drivers/net/wireless/ath/ath11k/mac.h
>>> ath11k: Handle keepalive during WoWLAN suspend and resume
>>> ath11k: reduce the wait time of 11d scan and hw scan while add interface
>>> ath11k: Add basic WoW functionalities
>>> ath11k: add support for hardware rfkill for QCA6390
>>> ath11k: report tx bitrate for iw wlan station dump
>>> ath11k: add 11d scan offload support
>>> ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev
>>> ath11k: add support for BSS color change
>>> ath11k: add support for 80P80 and 160 MHz bandwidth
>>> ath11k: Add support for STA to handle beacon miss
>>> ath11k: add support to configure spatial reuse parameter set
>>> ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references
>>> ath11k: Perform per-msdu rx processing
>>> ath11k: fix incorrect peer stats counters update
>>> ath11k: Move mac80211 hw allocation before wmi_init command
>>> ath11k: fix missed bw conversion in tx completion
>>> ath11k: driver for Qualcomm IEEE 802.11ax devices
>> 
>> Yeah, using "wifi:" is a new prefix we started using with wireless
>> patches this year.
>> 
>
> It would be nice if that was documented somewhere...

It is mentioned on our wiki but I doubt anyone reads it :)

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

Do let me know if there are other places which should have this info.

I did assume it will take at least a year or two before people get used
to the new prefix, but my patchwork script has a check for this and it's
trivial to fix the subject before I commit the patch. So hopefully the
switch goes smoothly.
Randy Dunlap Nov. 1, 2022, 5:54 p.m. UTC | #5
Hi--

On 11/1/22 10:19, Kalle Valo wrote:
> Randy Dunlap <rdunlap@infradead.org> writes:
> 
>> On 11/1/22 01:45, Kalle Valo wrote:
>>> Jiri Slaby <jirislaby@kernel.org> writes:
>>>
>>>> On 31. 10. 22, 22:16, Jeff Johnson wrote:
>>>>
>>>>> On 10/31/2022 4:43 AM, Jiri Slaby (SUSE) wrote:
>>
>>>>> Suggest the subject should be
>>>>> wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type
>>>>
>>>> FWIW I copied from:
>>>> $ git log --format=%s  drivers/net/wireless/ath/ath11k/mac.h
>>>> ath11k: Handle keepalive during WoWLAN suspend and resume
>>>> ath11k: reduce the wait time of 11d scan and hw scan while add interface
>>>> ath11k: Add basic WoW functionalities
>>>> ath11k: add support for hardware rfkill for QCA6390
>>>> ath11k: report tx bitrate for iw wlan station dump
>>>> ath11k: add 11d scan offload support
>>>> ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev
>>>> ath11k: add support for BSS color change
>>>> ath11k: add support for 80P80 and 160 MHz bandwidth
>>>> ath11k: Add support for STA to handle beacon miss
>>>> ath11k: add support to configure spatial reuse parameter set
>>>> ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references
>>>> ath11k: Perform per-msdu rx processing
>>>> ath11k: fix incorrect peer stats counters update
>>>> ath11k: Move mac80211 hw allocation before wmi_init command
>>>> ath11k: fix missed bw conversion in tx completion
>>>> ath11k: driver for Qualcomm IEEE 802.11ax devices
>>>
>>> Yeah, using "wifi:" is a new prefix we started using with wireless
>>> patches this year.
>>>
>>
>> It would be nice if that was documented somewhere...
> 
> It is mentioned on our wiki but I doubt anyone reads it :)

I think that you are correct. ;)

> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches#subject
> 
> Do let me know if there are other places which should have this info.

Ideally it would be in the subsystem's profile document as described in the
MAINTAINERS file:

	P: Subsystem Profile document for more details submitting
	   patches to the given subsystem. This is either an in-tree file,
	   or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
	   for details.

although that seems to be overkill IMHO just to add a prefix: setting.

You could just clone some other maintainer's Profile document and then modify it
to anything that you would like to have in it as far as Maintaining and patching
are concerned.

> I did assume it will take at least a year or two before people get used
> to the new prefix, but my patchwork script has a check for this and it's
> trivial to fix the subject before I commit the patch. So hopefully the
> switch goes smoothly.

OK.

Thanks.
Jiri Slaby Nov. 2, 2022, 6:18 a.m. UTC | #6
On 01. 11. 22, 18:19, Kalle Valo wrote:
> I did assume it will take at least a year or two before people get used
> to the new prefix, but my patchwork script has a check for this and it's
> trivial to fix the subject before I commit the patch. So hopefully the
> switch goes smoothly.

I think so. It will take some turnarounds for you before this starts 
appearing in git log output for every wireless driver. Then, people will 
start picking the prefix up from there ;).

thanks,
Kalle Valo Nov. 2, 2022, 4:52 p.m. UTC | #7
"Jiri Slaby (SUSE)" <jirislaby@kernel.org> wrote:

> ath11k_mac_he_gi_to_nl80211_he_gi() generates a valid warning with gcc-13:
>   drivers/net/wireless/ath/ath11k/mac.c:321:20: error: conflicting types for 'ath11k_mac_he_gi_to_nl80211_he_gi' due to enum/integer mismatch; have 'enum nl80211_he_gi(u8)'
>   drivers/net/wireless/ath/ath11k/mac.h:166:5: note: previous declaration of 'ath11k_mac_he_gi_to_nl80211_he_gi' with type 'u32(u8)'
> 
> I.e. the type of the return value ath11k_mac_he_gi_to_nl80211_he_gi() in
> the declaration is u32, while the definition spells enum nl80211_he_gi.
> Synchronize them to the latter.
> 
> Cc: Martin Liska <mliska@suse.cz>
> Cc: Kalle Valo <kvalo@kernel.org>
> Cc: "David S. Miller" <davem@davemloft.net>
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Paolo Abeni <pabeni@redhat.com>
> Cc: ath11k@lists.infradead.org
> Cc: linux-wireless@vger.kernel.org
> Cc: netdev@vger.kernel.org
> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
> Reviewed-by: Jeff Johnson <quic_jjohnson@quicinc.com>
> Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>

Patch applied to ath-next branch of ath.git, thanks.

dd1c23226945 wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type
Kalle Valo Nov. 3, 2022, 6:20 a.m. UTC | #8
Randy Dunlap <rdunlap@infradead.org> writes:

>>>> Yeah, using "wifi:" is a new prefix we started using with wireless
>>>> patches this year.
>>>>
>>>
>>> It would be nice if that was documented somewhere...
>> 
>> It is mentioned on our wiki but I doubt anyone reads it :)
>
> I think that you are correct. ;)
>
>> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches#subject
>> 
>> Do let me know if there are other places which should have this info.
>
> Ideally it would be in the subsystem's profile document as described in the
> MAINTAINERS file:
>
> 	P: Subsystem Profile document for more details submitting
> 	   patches to the given subsystem. This is either an in-tree file,
> 	   or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
> 	   for details.
>
> although that seems to be overkill IMHO just to add a prefix: setting.
>
> You could just clone some other maintainer's Profile document and then modify it
> to anything that you would like to have in it as far as Maintaining and patching
> are concerned.

Ah, we should add that doc for wireless. Thanks for the idea, I added
that to my todo list.
Randy Dunlap Nov. 3, 2022, 6:21 a.m. UTC | #9
On 11/2/22 23:20, Kalle Valo wrote:
> Randy Dunlap <rdunlap@infradead.org> writes:
> 
>>>>> Yeah, using "wifi:" is a new prefix we started using with wireless
>>>>> patches this year.
>>>>>
>>>>
>>>> It would be nice if that was documented somewhere...
>>>
>>> It is mentioned on our wiki but I doubt anyone reads it :)
>>
>> I think that you are correct. ;)
>>
>>> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches#subject
>>>
>>> Do let me know if there are other places which should have this info.
>>
>> Ideally it would be in the subsystem's profile document as described in the
>> MAINTAINERS file:
>>
>> 	P: Subsystem Profile document for more details submitting
>> 	   patches to the given subsystem. This is either an in-tree file,
>> 	   or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
>> 	   for details.
>>
>> although that seems to be overkill IMHO just to add a prefix: setting.
>>
>> You could just clone some other maintainer's Profile document and then modify it
>> to anything that you would like to have in it as far as Maintaining and patching
>> are concerned.
> 
> Ah, we should add that doc for wireless. Thanks for the idea, I added
> that to my todo list.
> 

Thank you. :)
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath11k/mac.h b/drivers/net/wireless/ath/ath11k/mac.h
index 2a0d3afb0c99..0231783ad754 100644
--- a/drivers/net/wireless/ath/ath11k/mac.h
+++ b/drivers/net/wireless/ath/ath11k/mac.h
@@ -163,7 +163,7 @@  void ath11k_mac_drain_tx(struct ath11k *ar);
 void ath11k_mac_peer_cleanup_all(struct ath11k *ar);
 int ath11k_mac_tx_mgmt_pending_free(int buf_id, void *skb, void *ctx);
 u8 ath11k_mac_bw_to_mac80211_bw(u8 bw);
-u32 ath11k_mac_he_gi_to_nl80211_he_gi(u8 sgi);
+enum nl80211_he_gi ath11k_mac_he_gi_to_nl80211_he_gi(u8 sgi);
 enum nl80211_he_ru_alloc ath11k_mac_phy_he_ru_to_nl80211_he_ru_alloc(u16 ru_phy);
 enum nl80211_he_ru_alloc ath11k_mac_he_ru_tones_to_nl80211_he_ru_alloc(u16 ru_tones);
 enum ath11k_supported_bw ath11k_mac_mac80211_bw_to_ath11k_bw(enum rate_info_bw bw);