On Mon, Nov 14, 2022 at 10:13:07AM -0600, Pierre-Louis Bossart wrote:
On 11/14/22 04:29, Charles Keepax wrote:
Provide stub functions when CONFIG_SOUNDWIRE is not set for functions that are quite likely to be used from common code on devices supporting multiple control buses.
So far this case has been covered by splitting SoundWire related code away from, say I2C, and with a clear 'depends on SOUNDWIRE'. This is the case for rt5682, max98373, etc.
Is this not good enough?
I am not against this patch, just wondering if allowing code for different interfaces to be part of the same file will lead to confusions with e.g. register offsets or functionality exposed with different registers.
I guess this is a bit of a grey area this one. Both work, I guess the reason I was leaning this way is that in order to avoid a circular dependency if I put all the soundwire DAI handling into the soundwire code then I have to duplicate the snd_soc_dai_driver structure into both the sdw and i2c specific code (worth noting the I2S DAIs are still usable when the part is sdw to the host). But there are also downsides to this approach in that it will likely have some small impact on driver size when soundwire is not built in.
Thanks, Charles