At Thu, 24 Apr 2008 15:57:52 +0100, Mark Brown wrote:
On Thu, Apr 24, 2008 at 04:04:59PM +0200, Sebastian Siewior wrote:
I've sent a RFC to the alsa mailing list [1] about adding an extra field in order to pass the IRQ from the AC97 driver to the ucb1400 driver. The result was:
Now I'm curious what solution the people here prefer:
- adding a private field [1] (my favorite)
As I indicated in reply to your initial RFC any such private field ought to be a void * in order to allow other information to be passed through to drivers.
The problem with void * is that you don't know what it really is. Yes, it's exactly the purpose - to be generic. But, this means that the true shape of the tossed data from the ac97 controller driver to the platform driver is anonymous, too.
So, from that perspective, I find 'int irq' better to assure a strong binding. Of course, if there are more other use cases, this argument doesn't apply well.
Note that this will also need changes in all the relevant AC97 drivers to support getting the private data from platform/machine definition code to the relevant driver using whatever methods are appropriate for the platform.
What kind of data are needed be passed?
thanks,
Takashi