On Mon, Jul 08, 2013 at 01:24:51PM +0530, Ashish Chavan wrote:
On Fri, 2013-07-05 at 14:37 +0100, Mark Brown wrote:
Your testing seems like it's not very good then - you do undersand that the problem that this is supposed to be fixing is that this is a multi function device? Please look at how other MFDs in the kernel work.
I feel that some info is missing from your view. DA9055 is CODEC + PMIC but with two different I2C addresses. Actually it is a case of two different chips enclosed in a single die. There is NO interconnection between CODEC and PMIC inside DA9055. To me, this seems enough reason to make two drivers independent from each other and not let one part know about the existence of other. Actually in near future, there may be three variants of this chip,
This is very similar to things like the TI palmas chips - they have multiple functions on different I2C addresses. The chip still gets instantiated a single time and then the subdevices are instantiated like a MFD by the core device.
In my opinion, keeping the drivers independent will also help in re-using existing drivers "as it is" for any of the above combination.
It shouldn't make a huge difference here.