On Thu, Mar 18, 2010 at 12:20, Mark Brown wrote:
On Thu, Mar 18, 2010 at 11:57:43AM -0400, Mike Frysinger wrote:
i'm not suggesting the ASoC codecs shouldnt use the same style across the board (and thus we shouldnt change the AD193x driver), just pointing out your basic premise here is invalid and that there are pros/cons to each method and that they're independent of the subsystem. you simply selected a different solution.
My point is that the fact that the input subsystem has made a choice is pretty much irrelevant for ASoC, which has different considerations and therefore made a different choice. Barry had simply said there had been a big discussion and this is what had been agreed, but that discussion was held for the input subsystem and when the equivalent discussion was held for ASoC a different conclusion was reached.
i dont think that's entirely true ... one of the major points of getting drivers into mainline is so that when common paradigms are observed, they can be unified across everyone. subsystems rarely are special ... most of the time, people just think they're special and so can ignore the common behavior.
as devices get more complicated and hook up to more arbitrary busses, i'm sure something will arise in the future to address this.
The subsystem dependency here come from the fact that ASoC has machine drivers and relies on them selecting the CODEC drivers to get them built in the first place so if you're trying to change something like this you'll most likely not only have to rebuild your kernel but also have to write code. This isn't something that the input layer has (input layer drivers are pretty much standalone, usually only need platform data for any per machine hookup and for I2C and SPI can even be registered from user space IIRC) and it changes the considerations noticably.
the machine driver selects the codec, it doesnt select the bus. the codec worries about that. so i dont quite follow the logic here. -mike