> -----Original Message-----
> From: Larry Finger [mailto:larry.fin...@gmail.com] On Behalf Of Larry Finger
> Sent: Tuesday, September 25, 2018 1:10 AM
> To: Tony Chuang; kv...@codeaurora.org
> Cc: linux-wireless@vger.kernel.org; Pkshih; Andy Huang
> Subject: Re: [RFC 00/12] rtwlan: mac80211 driver for Realtek 802.11ac
> wireless network chips
> 
> On 9/21/18 1:03 AM, yhchu...@realtek.com wrote:
> > From: Yan-Hsuan Chuang <yhchu...@realtek.com>
> >
> > This is a new mac80211 driver for Realtek 802.11ac wireless network chips.
> > rtwlan supports 8822BE and 8822CE chips, and will be able to support
> > multi-vif combinations in run-time.
> >
> > For now, only PCI bus is supported, but rtwlan was originally designed
> > to optionally support three buses includes USB & SDIO. USB & SDIO modules
> > will soon be supported by rtwlan, with configurable core module to fit
> > with different bus modules in the same time.
> >
> > For example, if we choose 8822BE and 8822CU, only PCI & USB modules will
> > be selected, built, loaded into kernel. This is one of the major
> > difference from rtlwifi, which can only support specific combinations.
> >
> > Another difference from rtlwifi is that rtwlan is designed to support
> > the latest Realtek 802.11ac wireless network chips like 8822B and
> > 8822C series. Compared to the earlier chips supported by rtlwifi like
> > the 802.11n 8192EE chipset or 802.11ac 8821AE/8812AE chips, newer ICs
> > have different MAC & PHY settings, such as new multi-port feature for the
> > MAC layer design and Jaguar2/Jaguar3 PHY layer IPs.
> >
> > Multi-Port feature is also supported under rtwlan's software architecture.
> > rtlwifi can only support one vif in the same time, most because of the
> > hardware limitations for early chips, hence the original design of it
> > also restricts the usage of multi-vif support, so latest chipset seems not
> > take advantages from its new MAC engine.
> >
> > However, rtwlan can run multiple vifs concurrently by holding them on
> > hardware ports provided by MAC engine, so we can easily start different
> > roles on a single device.
> >
> > Based on the reasons mentioned before, we implemented rtwlan. It had
> many
> > authors, they are listed here alphabetically:
> 
> I have found two problems with the initial code:
> 
> 1. There is a missing zero entry at the end of the struct pci_device_id.
> 2. You have no MODULE_DEVICE_TABLE macro call.
> 
> The effect is that the device is not autoloaded on boot. The fix is
> 
> diff --git a/drivers/net/wireless/realtek/rtwlan/pci.c
> b/drivers/net/wireless/realtek/rtwlan/pci.c
> index 2ff5a152d77b..f8b1267520a7 100644
> --- a/drivers/net/wireless/realtek/rtwlan/pci.c
> +++ b/drivers/net/wireless/realtek/rtwlan/pci.c
> @@ -1184,6 +1184,7 @@ static const struct pci_device_id rtw_pci_id_table[]
> = {
>   #ifdef CONFIG_RTWLAN_8822CE
>          { RTK_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0xC822,
> rtw8822c_hw_spec) },
>   #endif
> +       {},
>   };
> 
>   static struct pci_driver rtw_pci_driver = {
> @@ -1210,6 +1211,8 @@ struct rtw_hci_ops rtw_pci_ops = {
>          .check_avail_desc = rtw_pci_check_avail_desc,
>   };
> 
> +MODULE_DEVICE_TABLE(pci, rtw_pci_id_table);
> +
>   module_pci_driver(rtw_pci_driver);
> 
>   MODULE_AUTHOR("Realtek Corporation");
> 
> Larry
> 

Thanks, will add them into the next RFC.

Yan-Hsuan, Chuang

Reply via email to