diff mbox series

[v2,2/2] regmap: soundwire: fix Kconfig select/depend issue

Message ID 20190419194649.18467-3-pierre-louis.bossart@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series soundwire: fix Kconfig select/depend issues | expand

Commit Message

Pierre-Louis Bossart April 19, 2019, 7:46 p.m. UTC
The mechanism should be

config CODEC_XYX_SDW
       depends on SOUNDWIRE
       select REGMAP_SOUNDWIRE

config REGMAP_SOUNDWIRE
       select SOUNDWIRE_BUS

SOUNDWIRE_BUS can be independently selected by the SOC driver. The SOC
driver should not know or care about REGMAP_SOUNDWIRE.

Fixes: 7c22ce6e2184 ('03fc8746f7915b5a391d8227f7e1')
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
---
 drivers/base/regmap/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Vinod Koul April 22, 2019, 6:01 a.m. UTC | #1
On 19-04-19, 14:46, Pierre-Louis Bossart wrote:
> The mechanism should be
> 
> config CODEC_XYX_SDW
>        depends on SOUNDWIRE
>        select REGMAP_SOUNDWIRE
> 
> config REGMAP_SOUNDWIRE
>        select SOUNDWIRE_BUS
> 
> SOUNDWIRE_BUS can be independently selected by the SOC driver. The SOC
> driver should not know or care about REGMAP_SOUNDWIRE.

lgtm, Mark can I have ypu ack so that I can carry the series thru
soundwire tree

Thanks

> Fixes: 7c22ce6e2184 ('03fc8746f7915b5a391d8227f7e1')
> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> ---
>  drivers/base/regmap/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/base/regmap/Kconfig b/drivers/base/regmap/Kconfig
> index 6ad5ef48b61e..c12e3f1fb110 100644
> --- a/drivers/base/regmap/Kconfig
> +++ b/drivers/base/regmap/Kconfig
> @@ -44,7 +44,7 @@ config REGMAP_IRQ
>  
>  config REGMAP_SOUNDWIRE
>  	tristate
> -	depends on SOUNDWIRE_BUS
> +	select SOUNDWIRE_BUS
>  
>  config REGMAP_SCCB
>  	tristate
> -- 
> 2.17.1
Mark Brown May 3, 2019, 4:39 a.m. UTC | #2
On Fri, Apr 19, 2019 at 02:46:49PM -0500, Pierre-Louis Bossart wrote:

>  config REGMAP_SOUNDWIRE
>  	tristate
> -	depends on SOUNDWIRE_BUS
> +	select SOUNDWIRE_BUS

This now makes _SOUNDWIRE different to all the other bus types; if this
is a good change then surely the same thing should be done for all the
other bus types.  It's also not clear to me that this actually does
anything, do selects from symbols that are themselves selected actually
do anything?
Pierre-Louis Bossart May 3, 2019, 2:32 p.m. UTC | #3
On 5/2/19 11:39 PM, Mark Brown wrote:
> On Fri, Apr 19, 2019 at 02:46:49PM -0500, Pierre-Louis Bossart wrote:
> 
>>   config REGMAP_SOUNDWIRE
>>   	tristate
>> -	depends on SOUNDWIRE_BUS
>> +	select SOUNDWIRE_BUS
> 
> This now makes _SOUNDWIRE different to all the other bus types; if this
> is a good change then surely the same thing should be done for all the
> other bus types.  It's also not clear to me that this actually does
> anything, do selects from symbols that are themselves selected actually
> do anything?

yes, this works, but if you prefer alignment I can follow the SLIMBUS model

config SND_SOC_WCD9335
	tristate "WCD9335 Codec"
	depends on SLIMBUS
	select REGMAP_SLIMBUS
	select REGMAP_IRQ

config REGMAP_SLIMBUS
	tristate
	depends on SLIMBUS

menuconfig SLIMBUS
	tristate "SLIMbus support"
	
if SLIMBUS

# SLIMbus controllers
config SLIM_QCOM_CTRL
...

As I mentioned it'll compile the bus even if there is no user for it, 
but it's your call: alignment or optimization.
Pierre-Louis Bossart May 6, 2019, 3:28 p.m. UTC | #4
On 5/5/19 11:40 PM, Mark Brown wrote:
> On Fri, May 03, 2019 at 09:32:53AM -0500, Pierre-Louis Bossart wrote:
> 
>> As I mentioned it'll compile the bus even if there is no user for it, but
>> it's your call: alignment or optimization.
> 
> You can have both.  Alignment is a requirement.  If you want to optimize
> this then it'd be better to optimize all the bus types rather than just
> having the one weird bus type that does something different for no
> documented reason.

Fine, I'll align if this is the requirement.
Thanks for the feedback.
diff mbox series

Patch

diff --git a/drivers/base/regmap/Kconfig b/drivers/base/regmap/Kconfig
index 6ad5ef48b61e..c12e3f1fb110 100644
--- a/drivers/base/regmap/Kconfig
+++ b/drivers/base/regmap/Kconfig
@@ -44,7 +44,7 @@  config REGMAP_IRQ
 
 config REGMAP_SOUNDWIRE
 	tristate
-	depends on SOUNDWIRE_BUS
+	select SOUNDWIRE_BUS
 
 config REGMAP_SCCB
 	tristate