* [RFC][PATCH] b43: drop SSB dependency
@ 2014-05-10 14:44 Rafał Miłecki
2014-05-10 15:17 ` Michael Büsch
2014-05-10 17:14 ` [PATCH V2] " Rafał Miłecki
0 siblings, 2 replies; 8+ messages in thread
From: Rafał Miłecki @ 2014-05-10 14:44 UTC (permalink / raw)
To: linux-wireless, John W. Linville; +Cc: b43-dev, Rafał Miłecki
This adds choice submenu "Supported bus types" as two simple bool
configs would allow user to compile b43 without any bus support
(prety useless).
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
---
I'm far from being a Kconfig expert, so a detailed review is more than welcome.
---
drivers/net/wireless/b43/Kconfig | 36 ++++++++++++++++++++++++++++--------
1 file changed, 28 insertions(+), 8 deletions(-)
diff --git a/drivers/net/wireless/b43/Kconfig b/drivers/net/wireless/b43/Kconfig
index ce937a9..9c5898d 100644
--- a/drivers/net/wireless/b43/Kconfig
+++ b/drivers/net/wireless/b43/Kconfig
@@ -1,7 +1,6 @@
config B43
tristate "Broadcom 43xx wireless support (mac80211 stack)"
- depends on SSB_POSSIBLE && MAC80211 && HAS_DMA
- select SSB
+ depends on (BCMA_POSSIBLE || SSB_POSSIBLE) && MAC80211 && HAS_DMA
select FW_LOADER
---help---
b43 is a driver for the Broadcom 43xx series wireless devices.
@@ -27,14 +26,35 @@ config B43
If unsure, say M.
config B43_BCMA
- bool "Support for BCMA bus"
- depends on B43 && (BCMA = y || BCMA = B43)
- default y
+ bool
+ depends on B43
config B43_SSB
bool
- depends on B43 && (SSB = y || SSB = B43)
- default y
+ depends on B43
+
+choice
+ prompt "Supported bus types"
+ depends on B43
+ default B43_BCMA_AND_SSB
+
+config B43_BUSES_BCMA_AND_SSB
+ bool "BCMA and SSB"
+ depends on BCMA_POSSIBLE && SSB_POSSIBLE
+ select B43_BCMA
+ select B43_SSB
+
+config B43_BUSES_BCMA
+ bool "BCMA only"
+ depends on BCMA_POSSIBLE
+ select B43_BCMA
+
+config B43_BUSES_SSB
+ bool "SSB only"
+ depends on SSB_POSSIBLE
+ select B43_SSB
+
+endchoice
# Auto-select SSB PCI-HOST support, if possible
config B43_PCI_AUTOSELECT
@@ -98,7 +118,7 @@ config B43_BCMA_PIO
config B43_PIO
bool
- depends on B43
+ depends on B43 && B43_SSB
select SSB_BLOCKIO
default y
--
1.8.4.5
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [RFC][PATCH] b43: drop SSB dependency
2014-05-10 14:44 [RFC][PATCH] b43: drop SSB dependency Rafał Miłecki
@ 2014-05-10 15:17 ` Michael Büsch
2014-05-10 16:12 ` Rafał Miłecki
2014-05-10 17:14 ` [PATCH V2] " Rafał Miłecki
1 sibling, 1 reply; 8+ messages in thread
From: Michael Büsch @ 2014-05-10 15:17 UTC (permalink / raw)
To: Rafał Miłecki; +Cc: linux-wireless, John W. Linville, b43-dev
[-- Attachment #1: Type: text/plain, Size: 1301 bytes --]
On Sat, 10 May 2014 16:44:48 +0200
Rafał Miłecki <zajec5@gmail.com> wrote:
> config B43_BCMA
> - bool "Support for BCMA bus"
> - depends on B43 && (BCMA = y || BCMA = B43)
> - default y
> + bool
> + depends on B43
A dependency on a purely selected option is ignored.
So I think you can remove this one as well.
> config B43_SSB
> bool
> - depends on B43 && (SSB = y || SSB = B43)
> - default y
> + depends on B43
Same here.
> +choice
> + prompt "Supported bus types"
> + depends on B43
> + default B43_BCMA_AND_SSB
> +
> +config B43_BUSES_BCMA_AND_SSB
> + bool "BCMA and SSB"
> + depends on BCMA_POSSIBLE && SSB_POSSIBLE
I think this needs to be:
depends on (BCMA_POSSIBLE && (BCMA = y || BCMA = B43)) && (SSB_POSSIBLE && (SSB = y || SSB = B43))
to avoid the case where b43 is y and ssb or bcma is m.
Or did I miss something and this is caught elsewhere?
> + select B43_BCMA
> + select B43_SSB
> +
> +config B43_BUSES_BCMA
> + bool "BCMA only"
> + depends on BCMA_POSSIBLE
Similar here.
> + select B43_BCMA
> +
> +config B43_BUSES_SSB
> + bool "SSB only"
> + depends on SSB_POSSIBLE
And here.
> + select B43_SSB
> +
> +endchoice
--
Michael.
----
Please use PGP/GPG encryption.
Key-ID: F532BE1D908D8B0E
--------
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [RFC][PATCH] b43: drop SSB dependency
2014-05-10 15:17 ` Michael Büsch
@ 2014-05-10 16:12 ` Rafał Miłecki
2014-05-10 16:36 ` Michael Büsch
0 siblings, 1 reply; 8+ messages in thread
From: Rafał Miłecki @ 2014-05-10 16:12 UTC (permalink / raw)
To: Michael Büsch; +Cc: linux-wireless, John W. Linville, b43-dev
On 10 May 2014 17:17, Michael Büsch <m@bues.ch> wrote:
> On Sat, 10 May 2014 16:44:48 +0200
> Rafał Miłecki <zajec5@gmail.com> wrote:
>> +config B43_BUSES_BCMA_AND_SSB
>> + bool "BCMA and SSB"
>> + depends on BCMA_POSSIBLE && SSB_POSSIBLE
>
> I think this needs to be:
>
> depends on (BCMA_POSSIBLE && (BCMA = y || BCMA = B43)) && (SSB_POSSIBLE && (SSB = y || SSB = B43))
>
> to avoid the case where b43 is y and ssb or bcma is m.
> Or did I miss something and this is caught elsewhere?
Oh, wait, I think I meant B43_BUSES_BCMA_AND_SSB to select BCMA and
SSB (so user doesn't have to enable BCMA and SSB on his own). It it
the way it's handled without my patch (B43 select-s SSB).
I'd like to add
select BCMA
select SSB
, but this won't guarantee BCMA (or SSB) being "y" after choosing B43
to "y". Or will it?
Any idea how to handle that?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [RFC][PATCH] b43: drop SSB dependency
2014-05-10 16:12 ` Rafał Miłecki
@ 2014-05-10 16:36 ` Michael Büsch
2014-05-10 17:05 ` Rafał Miłecki
0 siblings, 1 reply; 8+ messages in thread
From: Michael Büsch @ 2014-05-10 16:36 UTC (permalink / raw)
To: Rafał Miłecki; +Cc: linux-wireless, John W. Linville, b43-dev
[-- Attachment #1: Type: text/plain, Size: 1393 bytes --]
On Sat, 10 May 2014 18:12:15 +0200
Rafał Miłecki <zajec5@gmail.com> wrote:
> On 10 May 2014 17:17, Michael Büsch <m@bues.ch> wrote:
> > On Sat, 10 May 2014 16:44:48 +0200
> > Rafał Miłecki <zajec5@gmail.com> wrote:
> >> +config B43_BUSES_BCMA_AND_SSB
> >> + bool "BCMA and SSB"
> >> + depends on BCMA_POSSIBLE && SSB_POSSIBLE
> >
> > I think this needs to be:
> >
> > depends on (BCMA_POSSIBLE && (BCMA = y || BCMA = B43)) && (SSB_POSSIBLE && (SSB = y || SSB = B43))
> >
> > to avoid the case where b43 is y and ssb or bcma is m.
> > Or did I miss something and this is caught elsewhere?
>
> Oh, wait, I think I meant B43_BUSES_BCMA_AND_SSB to select BCMA and
> SSB (so user doesn't have to enable BCMA and SSB on his own). It it
> the way it's handled without my patch (B43 select-s SSB).
>
> I'd like to add
> select BCMA
> select SSB
> , but this won't guarantee BCMA (or SSB) being "y" after choosing B43
> to "y". Or will it?
I'm currently unsure.
You probably want to add select SSB to config B43_SSB and the same for B43_BCMA.
> Any idea how to handle that?
The (SSB = y || SSB = B43) dependency is supposed to handle that.
And it was required in the past. But maybe it's not required anymore
due to other changes. I'm not sure.
--
Michael.
----
Please use PGP/GPG encryption.
Key-ID: F532BE1D908D8B0E
--------
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [RFC][PATCH] b43: drop SSB dependency
2014-05-10 16:36 ` Michael Büsch
@ 2014-05-10 17:05 ` Rafał Miłecki
2014-05-10 17:27 ` Michael Büsch
0 siblings, 1 reply; 8+ messages in thread
From: Rafał Miłecki @ 2014-05-10 17:05 UTC (permalink / raw)
To: Michael Büsch; +Cc: linux-wireless, John W. Linville, b43-dev
On 10 May 2014 18:36, Michael Büsch <m@bues.ch> wrote:
> On Sat, 10 May 2014 18:12:15 +0200
> Rafał Miłecki <zajec5@gmail.com> wrote:
>
>> On 10 May 2014 17:17, Michael Büsch <m@bues.ch> wrote:
>> > On Sat, 10 May 2014 16:44:48 +0200
>> > Rafał Miłecki <zajec5@gmail.com> wrote:
>> >> +config B43_BUSES_BCMA_AND_SSB
>> >> + bool "BCMA and SSB"
>> >> + depends on BCMA_POSSIBLE && SSB_POSSIBLE
>> >
>> > I think this needs to be:
>> >
>> > depends on (BCMA_POSSIBLE && (BCMA = y || BCMA = B43)) && (SSB_POSSIBLE && (SSB = y || SSB = B43))
>> >
>> > to avoid the case where b43 is y and ssb or bcma is m.
>> > Or did I miss something and this is caught elsewhere?
>>
>> Oh, wait, I think I meant B43_BUSES_BCMA_AND_SSB to select BCMA and
>> SSB (so user doesn't have to enable BCMA and SSB on his own). It it
>> the way it's handled without my patch (B43 select-s SSB).
>>
>> I'd like to add
>> select BCMA
>> select SSB
>> , but this won't guarantee BCMA (or SSB) being "y" after choosing B43
>> to "y". Or will it?
>
> I'm currently unsure.
> You probably want to add select SSB to config B43_SSB and the same for B43_BCMA.
I've just tried this, however this will force SSB to be "y" (even if
B43 is "m"). We have to select BCMA/SSB from non-bool configs.
This lead me to the idea of select-ing SSB and BCMA in "B43" depending
on the B43_BCMA and B43_SSB. That should make the trick. I'll test it
and submit V2.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH V2] b43: drop SSB dependency
2014-05-10 14:44 [RFC][PATCH] b43: drop SSB dependency Rafał Miłecki
2014-05-10 15:17 ` Michael Büsch
@ 2014-05-10 17:14 ` Rafał Miłecki
2014-05-10 17:24 ` Rafał Miłecki
1 sibling, 1 reply; 8+ messages in thread
From: Rafał Miłecki @ 2014-05-10 17:14 UTC (permalink / raw)
To: linux-wireless, John W. Linville; +Cc: b43-dev, Rafał Miłecki
This adds choice submenu "Supported bus types" as two simple bool
configs would allow user to compile b43 without any bus support
(prety useless).
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
---
V2: Drop "depends" from B43_BCMA and B43_SSB, as Michael noticed - it didn't
make much sense.
Auto-select BCMA/SSB in B43 config. This keeps user-friendly behavior that
existed up to now (it's extended to hover BCMA as well). It also assures
B43 won't be "y" with BCMA/SSB being "m".
---
drivers/net/wireless/b43/Kconfig | 36 ++++++++++++++++++++++++++++--------
1 file changed, 28 insertions(+), 8 deletions(-)
diff --git a/drivers/net/wireless/b43/Kconfig b/drivers/net/wireless/b43/Kconfig
index ce937a9..8d1c3ab 100644
--- a/drivers/net/wireless/b43/Kconfig
+++ b/drivers/net/wireless/b43/Kconfig
@@ -1,7 +1,8 @@
config B43
tristate "Broadcom 43xx wireless support (mac80211 stack)"
- depends on SSB_POSSIBLE && MAC80211 && HAS_DMA
- select SSB
+ depends on (BCMA_POSSIBLE || SSB_POSSIBLE) && MAC80211 && HAS_DMA
+ select BCMA if B43_BCMA
+ select SSB if B43_SSB
select FW_LOADER
---help---
b43 is a driver for the Broadcom 43xx series wireless devices.
@@ -27,14 +28,33 @@ config B43
If unsure, say M.
config B43_BCMA
- bool "Support for BCMA bus"
- depends on B43 && (BCMA = y || BCMA = B43)
- default y
+ bool
config B43_SSB
bool
- depends on B43 && (SSB = y || SSB = B43)
- default y
+
+choice
+ prompt "Supported bus types"
+ depends on B43
+ default B43_BCMA_AND_SSB
+
+config B43_BUSES_BCMA_AND_SSB
+ bool "BCMA and SSB"
+ depends on BCMA_POSSIBLE && SSB_POSSIBLE
+ select B43_BCMA
+ select B43_SSB
+
+config B43_BUSES_BCMA
+ bool "BCMA only"
+ depends on BCMA_POSSIBLE
+ select B43_BCMA
+
+config B43_BUSES_SSB
+ bool "SSB only"
+ depends on SSB_POSSIBLE
+ select B43_SSB
+
+endchoice
# Auto-select SSB PCI-HOST support, if possible
config B43_PCI_AUTOSELECT
@@ -98,7 +118,7 @@ config B43_BCMA_PIO
config B43_PIO
bool
- depends on B43
+ depends on B43 && B43_SSB
select SSB_BLOCKIO
default y
--
1.8.4.5
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH V2] b43: drop SSB dependency
2014-05-10 17:14 ` [PATCH V2] " Rafał Miłecki
@ 2014-05-10 17:24 ` Rafał Miłecki
0 siblings, 0 replies; 8+ messages in thread
From: Rafał Miłecki @ 2014-05-10 17:24 UTC (permalink / raw)
To: linux-wireless, John W. Linville; +Cc: b43-dev, Rafał Miłecki
On 10 May 2014 19:14, Rafał Miłecki <zajec5@gmail.com> wrote:
> This adds choice submenu "Supported bus types" as two simple bool
> configs would allow user to compile b43 without any bus support
> (prety useless).
John: please make sure this one goes *after*
[PATCH V2] b43: adjust code to compile without SSB
I could do better and send it as a patchset, my bad, sorry.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [RFC][PATCH] b43: drop SSB dependency
2014-05-10 17:05 ` Rafał Miłecki
@ 2014-05-10 17:27 ` Michael Büsch
0 siblings, 0 replies; 8+ messages in thread
From: Michael Büsch @ 2014-05-10 17:27 UTC (permalink / raw)
To: Rafał Miłecki; +Cc: linux-wireless, John W. Linville, b43-dev
[-- Attachment #1: Type: text/plain, Size: 697 bytes --]
On Sat, 10 May 2014 19:05:33 +0200
Rafał Miłecki <zajec5@gmail.com> wrote:
> > I'm currently unsure.
> > You probably want to add select SSB to config B43_SSB and the same for B43_BCMA.
>
> I've just tried this, however this will force SSB to be "y" (even if
> B43 is "m"). We have to select BCMA/SSB from non-bool configs.
Hm, OK makes sense.
> This lead me to the idea of select-ing SSB and BCMA in "B43" depending
> on the B43_BCMA and B43_SSB. That should make the trick. I'll test it
> and submit V2.
Could work, if you drop the unnecessary B43 dependency in those options.
--
Michael.
----
Please use PGP/GPG encryption.
Key-ID: F532BE1D908D8B0E
--------
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2014-05-10 17:27 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-10 14:44 [RFC][PATCH] b43: drop SSB dependency Rafał Miłecki
2014-05-10 15:17 ` Michael Büsch
2014-05-10 16:12 ` Rafał Miłecki
2014-05-10 16:36 ` Michael Büsch
2014-05-10 17:05 ` Rafał Miłecki
2014-05-10 17:27 ` Michael Büsch
2014-05-10 17:14 ` [PATCH V2] " Rafał Miłecki
2014-05-10 17:24 ` Rafał Miłecki
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).