From: Kalle Valo <kvalo@codeaurora.org>
To: Pkshih <pkshih@realtek.com>
Cc: Lee Jones <lee.jones@linaro.org>,
Tony Chuang <yhchuang@realtek.com>,
"linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-wireless\@vger.kernel.org"
<linux-wireless@vger.kernel.org>,
"davem\@davemloft.net" <davem@davemloft.net>,
"netdev\@vger.kernel.org" <netdev@vger.kernel.org>,
"kuba\@kernel.org" <kuba@kernel.org>
Subject: Re: [PATCH 17/17] realtek: rtw88: pci: Add prototypes for .probe, .remove and .shutdown
Date: Wed, 02 Dec 2020 18:44:15 +0200 [thread overview]
Message-ID: <87lfegi2e8.fsf@codeaurora.org> (raw)
In-Reply-To: <0f8e7ac5a30a4f63a0a6aa923fa6d100@realtek.com> (pkshih@realtek.com's message of "Mon, 30 Nov 2020 00:37:10 +0000")
Pkshih <pkshih@realtek.com> writes:
>> -----Original Message-----
>> From: Lee Jones [mailto:lee.jones@linaro.org]
>> Sent: Friday, November 27, 2020 4:57 PM
>> To: Pkshih
>> Cc: Tony Chuang; kvalo@codeaurora.org; linux-kernel@vger.kernel.org;
>> linux-wireless@vger.kernel.org;
>> davem@davemloft.net; netdev@vger.kernel.org; kuba@kernel.org
>> Subject: Re: [PATCH 17/17] realtek: rtw88: pci: Add prototypes for
>> .probe, .remove and .shutdown
>>
>> On Fri, 27 Nov 2020, Pkshih wrote:
>>
>> > On Fri, 2020-11-27 at 07:38 +0000, Lee Jones wrote:
>> > > On Fri, 27 Nov 2020, Pkshih wrote:
>> > >
>> > > >
>> > > > The subject prefix doesn't need 'realtek:'; use 'rtw88:'.
>> > > >
>> > > > On Thu, 2020-11-26 at 13:31 +0000, Lee Jones wrote:
>> > > > > Also strip out other duplicates from driver specific headers.
>> > > > >
>> > > > > Ensure 'main.h' is explicitly included in 'pci.h' since the latter
>> > > > > uses some defines from the former. It avoids issues like:
>> > > > >
>> > > > > from drivers/net/wireless/realtek/rtw88/rtw8822be.c:5:
>> > > > > drivers/net/wireless/realtek/rtw88/pci.h:209:28: error:
>> > > > > ‘RTK_MAX_TX_QUEUE_NUM’ undeclared here (not in a function); did you mean
>> > > > > ‘RTK_MAX_RX_DESC_NUM’?
>> > > > > 209 | DECLARE_BITMAP(tx_queued, RTK_MAX_TX_QUEUE_NUM);
>> > > > > | ^~~~~~~~~~~~~~~~~~~~
>> > > > >
>> > > > > Fixes the following W=1 kernel build warning(s):
>> > > > >
>> > > > > drivers/net/wireless/realtek/rtw88/pci.c:1488:5: warning: no previous
>> > > > > prototype for ‘rtw_pci_probe’ [-Wmissing-prototypes]
>> > > > > 1488 | int rtw_pci_probe(struct pci_dev *pdev,
>> > > > > | ^~~~~~~~~~~~~
>> > > > > drivers/net/wireless/realtek/rtw88/pci.c:1568:6: warning: no previous
>> > > > > prototype for ‘rtw_pci_remove’ [-Wmissing-prototypes]
>> > > > > 1568 | void rtw_pci_remove(struct pci_dev *pdev)
>> > > > > | ^~~~~~~~~~~~~~
>> > > > > drivers/net/wireless/realtek/rtw88/pci.c:1590:6: warning: no previous
>> > > > > prototype for ‘rtw_pci_shutdown’ [-Wmissing-prototypes]
>> > > > > 1590 | void rtw_pci_shutdown(struct pci_dev *pdev)
>> > > > > | ^~~~~~~~~~~~~~~~
>> > > > >
>> > > > > Cc: Yan-Hsuan Chuang <yhchuang@realtek.com>
>> > > > > Cc: Kalle Valo <kvalo@codeaurora.org>
>> > > > > Cc: "David S. Miller" <davem@davemloft.net>
>> > > > > Cc: Jakub Kicinski <kuba@kernel.org>
>> > > > > Cc: linux-wireless@vger.kernel.org
>> > > > > Cc: netdev@vger.kernel.org
>> > > > > Signed-off-by: Lee Jones <lee.jones@linaro.org>
>> > > > > ---
>> > > > > drivers/net/wireless/realtek/rtw88/pci.h | 8 ++++++++
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8723de.c | 1 +
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8723de.h | 4 ----
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8821ce.c | 1 +
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8821ce.h | 4 ----
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8822be.c | 1 +
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8822be.h | 4 ----
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8822ce.c | 1 +
>> > > > > drivers/net/wireless/realtek/rtw88/rtw8822ce.h | 4 ----
>> > > > > 9 files changed, 12 insertions(+), 16 deletions(-)
>> > > > >
>> > > > > diff --git a/drivers/net/wireless/realtek/rtw88/pci.h
>> > > > > b/drivers/net/wireless/realtek/rtw88/pci.h
>> > > > > index ca17aa9cf7dc7..cda56919a5f0f 100644
>> > > > > --- a/drivers/net/wireless/realtek/rtw88/pci.h
>> > > > > +++ b/drivers/net/wireless/realtek/rtw88/pci.h
>> > > > > @@ -5,6 +5,8 @@
>> > > > > #ifndef __RTK_PCI_H_
>> > > > > #define __RTK_PCI_H_
>> > > > >
>> > > > > +#include "main.h"
>> > > > > +
>> > > >
>> > > > Please #include "main.h" ahead of "pci.h" in each of rtw8xxxxe.c.
>> > >
>> > > You mean instead of in pci.h?
>> > >
>> > > Surely that's a hack.
>> > >
>> >
>> > I mean don't include main.h in pci.h, but include both of them in each
>> > of rtw8xxxxe.c.
>> >
>> > +#include "main.h"
>> > +#include "pci.h"
>>
>> Yes, that's what I thought you meant. I think that's a hack.
>>
>> Source files shouldn't rely on the ordering of include files to
>> resolve dependencies. In fact, a lot of subsystems require includes to
>> be in alphabetical order.
>>
>> If a source or header file references a resource from a specific
>> header file (for instance here pci.h uses defines from main.h) then it
>> should explicitly include it.
>>
>> Can you tell me the technical reason as to why these drivers are
>> handled differently please?
>>
>
> No technical reason, but that's our coding convention that needs some
> changes now.
Yeah, please fix rtw88. Just like Lee said, pci.h should have "#include
main.h" and not require other files to include files in correct order.
> Could you point out where kernel or subsystem describes the rules?
> Or, point out the subsystem you mentioned above.
> Then, I can study and follow the rules for further development.
I have not seen any documentation abou this, but it's a general rule to
keep the header files maintainable.
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
next prev parent reply other threads:[~2020-12-02 16:44 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-26 13:31 [PATCH v2 00/17] [Set 4] Rid W=1 warnings in Wireless Lee Jones
2020-11-26 13:31 ` [PATCH 01/17] wil6210: wmi: Correct misnamed function parameter 'ptr_' Lee Jones
2020-12-02 18:50 ` Kalle Valo
2020-12-08 11:07 ` Lee Jones
2020-11-26 13:31 ` [PATCH 02/17] iwlwifi: mvm: rs: Demote non-conformant function documentation headers Lee Jones
2020-12-11 18:25 ` Kalle Valo
2020-11-26 13:31 ` [PATCH 03/17] ath9k: ar9330_1p1_initvals: Remove unused const variable 'ar9331_common_tx_gain_offset1_1' Lee Jones
2020-12-02 18:49 ` Kalle Valo
2020-11-26 13:31 ` [PATCH 04/17] ath9k: ar9340_initvals: Remove unused const variable 'ar9340Modes_ub124_tx_gain_table_1p0' Lee Jones
2020-11-26 13:31 ` [PATCH 05/17] ath9k: ar9485_initvals: Remove unused const variable 'ar9485_fast_clock_1_1_baseband_postamble' Lee Jones
2020-11-26 13:31 ` [PATCH 06/17] ath9k: ar9003_2p2_initvals: Remove unused const variables Lee Jones
2020-11-26 13:31 ` [PATCH 07/17] iwlwifi: iwl-eeprom-read: Demote one nonconformant function header Lee Jones
2020-11-26 13:31 ` [PATCH 08/17] iwlwifi: iwl-eeprom-parse: Fix 'struct iwl_eeprom_enhanced_txpwr's header Lee Jones
2020-11-26 13:31 ` [PATCH 09/17] ath: regd: Provide description for ath_reg_apply_ir_flags's 'reg' param Lee Jones
2020-12-02 19:51 ` Kalle Valo
2020-11-26 13:31 ` [PATCH 10/17] ath9k: ar5008_phy: Demote half completed function headers Lee Jones
2020-11-26 13:31 ` [PATCH 11/17] ath: dfs_pattern_detector: Fix some function kernel-doc headers Lee Jones
2020-11-26 13:31 ` [PATCH 12/17] ath: dfs_pri_detector: Demote zero/half completed " Lee Jones
2020-11-26 13:31 ` [PATCH 13/17] iwlwifi: iwl-phy-db: Add missing struct member description for 'trans' Lee Jones
2020-11-26 13:31 ` [PATCH 14/17] iwlwifi: fw: dbg: Fix misspelling of 'reg_data' in function header Lee Jones
2020-11-26 13:31 ` [PATCH 15/17] ath9k: dynack: Demote non-compliant " Lee Jones
2020-11-26 13:31 ` [PATCH 16/17] iwlwifi: fw: acpi: Demote non-conformant function headers Lee Jones
2020-11-26 13:31 ` [PATCH 17/17] realtek: rtw88: pci: Add prototypes for .probe, .remove and .shutdown Lee Jones
2020-11-27 3:34 ` Pkshih
2020-11-27 7:38 ` Lee Jones
2020-11-27 8:31 ` Pkshih
2020-11-27 8:57 ` Lee Jones
2020-11-30 0:37 ` Pkshih
2020-11-30 8:53 ` Lee Jones
2020-12-02 16:44 ` Kalle Valo [this message]
2020-12-07 16:32 ` [17/17] " Kalle Valo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87lfegi2e8.fsf@codeaurora.org \
--to=kvalo@codeaurora.org \
--cc=davem@davemloft.net \
--cc=kuba@kernel.org \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pkshih@realtek.com \
--cc=yhchuang@realtek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).