At Tue, 17 Apr 2012 23:07:48 +0200, Ondrej Zary wrote:
On Tuesday 17 April 2012 21:12:33 you wrote:
At Tue, 17 Apr 2012 20:15:06 +0200,
Ondrej Zary wrote:
On Tuesday 17 April 2012 20:06:19 Takashi Iwai wrote:
At Tue, 17 Apr 2012 18:04:31 +0100,
Mark Brown wrote:
On Tue, Apr 17, 2012 at 06:52:49PM +0200, Takashi Iwai wrote:
Mark Brown wrote: > This isn't just adding something into a specific driver which > fails at abstraction, it's adding generic code. If it were > adding something to the ice17xx driver then that'd be one thing > but look at the subject line and location of the file... this > stuff should be buried inside the driver if it's too painful to > make the driver sane.
The codes in sound/i2c are mostly oly for ice1712/ice1724 drivers after all... They could be used by others, but I don't think there will be any more at this point.
If they're specific to that driver we should make them specific to that driver and make sure the pain is confined there. We really don't want to end up going back to the bad old days of having to do per-CPU/card drivers for CODECs because nobody had thought to abstract this stuff, that just makes everyone miserable.
Looking at these commits I'd not expect anyone to figure out that this isn't how we want or expect people to add generic CODEC drivers.
Yeah, these stuff can be better put in pci/ice1712/ directory only for ice1724 driver. In that way, you can avoid unnecessary exported symbols, too.
Xonar (oxygen) has a private version of these drivers too. It could be converted to use common code instead.
Hm, only if the generated controls do match with your case,.. It's case by case, especally if there is only one another candidate.
Control names can be changed (and also disabled) by the driver. In fact, psc724 does exactly this as is needs the WM8776 controls to be named as "front" and WM8766 as "rear". I don't see any problem if something needs to be changed for this code to be used by Xonar (or some other driver).
OK, it depends on Clemens, whether the shared code is preferred (and maintainable).
If sharing your code between ice1724 and xonar is planned, sound/i2c is the best place to put indeed. In that case, better to start from moving the code from xonar to sound/i2c, then reuse it in ice1724, instead of having double codes in xonar and ice1724.
OTOH, if it isn't worthwhile, better to make all your code local to ice1724.
thanks,
Takashi