Re: [RFC PATCH v2 0/7] AC97 device/driver model revamp

From: Mark Brown
Date: Wed Aug 24 2016 - 08:12:24 EST

On Tue, Aug 23, 2016 at 06:39:35PM +0200, Robert Jarzmik wrote:

> In the old ac97 bus, the match function was always returning "true", and the
> driver did probe. With this new implementation, the ac97 is discovered and
> sound/soc/codecs/wm9713.c#wm9713_ac97_probe() is called. I don't export
> ac97_bus_type (nor want to do it), and only _one_ device is created upon
> discovery, while the wm97xx-core.c would benefic a second ac97 device.

> I'm wondering how to work around this :
> - either I add a wm97xx-ts ac97 device in wm9713_ac97_probe()
> - or I add a platform device in wm9713_ac97_probe() and add a new
> platform_driver in wm97xx-core ...
> - or something smarter

That device really should be a MFD.

> What's behind this question is : should I keep to my initial solution of 1 ac97
> device discovered is bound on the ac97 to _at most_ 1 ac97 driver, or is there a
> know smart way to have several drivers for one device (that sounds a bit heretic
> regarding my understanding of the device/driver model but who knows ...) ?

MFDs are how we do multiple drivers per device.

Attachment: signature.asc
Description: PGP signature