On Fri, Feb 16, 2018 at 07:57:07AM -0800, Tony Lindgren wrote:
- Mark Brown broonie@kernel.org [180216 15:17]:
It's not just other operating systems, it's also other versions of Linux we have to think about here. The most obvious issue with audio is the clocking where the division between ASoC and clock APIs is not super obvious and could easily change in the future.
Yeah let's stick to describing how the hardware is wired in the dts files. In this case it's really only the routing to the SoC, right?
The SoC and anything else on the board like external amps and so on.
One advantage of using a compatible property for the pmic subdevices though is that it leaves out a dependency between various device drivers things happen automagically. The mfd core driver can be minimal and just implement interrupt handling and regmap. So no need to to parse the child nodes in the pmic mfd driver :)
There's no need to do that anyway - with a MFD the child devices can assume that they're part of the MFD and reference their parent.
So personally I'd prefer the option that requires least amount of custom code if compatible vs no compatible property is the only issue here.
It's a few lines of code to register the child devices from code rather than the DT, and keeps it out of the ABI.