On Fri, Apr 12, 2019 at 09:17:35AM -0500, Pierre-Louis Bossart wrote: > On 4/12/19 5:06 AM, Srinivas Kandagatla wrote: > > On 11/04/2019 20:28, Pierre-Louis Bossart wrote: > > > 0-day/Kbuild starts complaining about missed module dependencies and > > > compilation issues. Since codecs and soc drivers need to be compilable > > > independently, let's fix this using the following model: > > > SOUNDWIRE_INTEL ---- select ----------- > > >                                        | > > >                       v > > > REGMAP_SOUNDWIRE --- select ---> SOUNDWIRE_BUS > > Last time when I looked at this, Kconfig symbols SOUNDWIRE_BUS and > > SOUNDWIRE looked totally redundant and bit over done. > > Removing SOUNDWIRE_BUS Kconfig did clean it up and made it bit more > > align with others > Good point, but no. This is intentional and follows the Kconfig pattern > pattern described by Takashi at https://lkml.org/lkml/2017/11/17/47 > yes, this SOUNDWIRE is overkill for now, but let's assume there is a second > non-intel implementation (which I understand as very likely given all the > threads on ARM64 support). In that case you'd really want a top-level > selector option that has no actual compilation impact - not used in any > Makefile or code - but enables the sub-options and let users/distros select > the platforms they care about. I don't understand what you're saying here - what is the intended difference between SOUNDWIRE and SOUNDWIRE_BUS? Having the separate option for _INTEL for your controller makes sense but otherwise the normal pattern for a bus would be that you'd have the root config option for the bus (which would enable the core code for the bus) and then everything else is hidden behind that. > > SOUNDWIRE_BUS is really the lowest-common denominator that will be used by > all drivers at the end. > > > regarding REGMAP_SOUNDWIRE, It should be selected by the codec/soundwire > > slave drivers isn't it? > > yes, that was the intent. > Thanks > -Pierre