Search Linux Wireless

Re: [PATCH v3] Add new mac80211 driver mwlwifi.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

replying to an older thread:

David Lin <dlin@xxxxxxxxxxx> writes:

>> > +++ b/drivers/net/wireless/mwlwifi/Kconfig
>> > @@ -0,0 +1,17 @@
>> > +config MWLWIFI
>> > +	tristate "Marvell Wireless WiFi driver (mwlwifi)"
>> > +	depends on PCI && MAC80211 && MWIFIEX_PCIE=n
>> 
>> Uh, what's with the exclusion of MWIFIEX_PCIE? Couldn't use a different PCI ID?
>> I really think you need to get rid of this, otherwise people can't even
>> *build-test* their wifi changes fully.
>
> Both the drivers are operable for the same chip part number 8897 and
> its modules (boards) manufactured out there. The PCI Device ID is a
> fixed value (by chip/manufacturer) on those modules. As said earlier,
> the two drivers are for mac80211 host mac, and firmware mac
> respectively. They serve different purposes. Users need to choose
> which driver they want to use for the same wifi hardware, and they
> cannot use both of them at the same time. The mwifiex is more widely
> used now and sta centric. We do not want to break it.

Can you explain more about different purposes between mwifiex and
mwlwifi? Is it so that mwifiex is for client devices and mwlwifi for AP
devices?

> I am not sure but I believe they are also multiple flavors of driver
> for some other chips. Any advice how they are handled, considering
> that changing the hardware/board is not an option? I guess we want the
> community to be better served using the same hardware. Opinion from
> others are welcomed.

So the goal is that the same kernel binary image will work with all
supported devices. No kconfig tinkering, no recompilation or anything
like that, the devices will automatically just work. By creating mwlwifi
using same device id as miwfiex you break that. But I don't know how to
fix this either, as mwlwifi uses mac80211 and mwifiex cfg80211.

Like I said with rtl8xxxu, I don't like the idea that we have two
drivers claiming to support the same device _by default_. So currently
my understanding is that mwlwifi supports these two devices:

static struct pci_device_id mwl_pci_id_tbl[] = {
	{ PCI_VDEVICE(MARVELL, 0x2a55), .driver_data = MWL8864, },
	{ PCI_VDEVICE(MARVELL, 0x2b38), .driver_data = MWL8897, },
	{ },
};

MWL8864 is only supported by mwlwifi, correct?

But the problem is MWL8897 as it conflicts with mwifiex. And with the
current way you have handled this I'm worried that it will break
existing setups as you don't really know which one of the drivers is
loaded. Is MWL8897 support really needed? Or should there be a separate
Kconfig entry to enable MWL8897 support separately?

All ideas welcome.

-- 
Kalle Valo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux