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