2014-03-07 9:49 GMT+08:00 Mark Brown broonie@kernel.org:
On Thu, Mar 06, 2014 at 05:51:43PM +0800, RongJun Ying wrote:
2014-03-06 17:20 GMT+08:00 Mark Brown broonie@kernel.org:
...use devm_ioremap_resource() instead, please send a followup patch fixing this.
The i2s, internal audio codec and audio port use same register physics address and size. So if one driver use the devm_ioremap_resource instead. The other driver will invoke devm_ioremap_resource failed.
That's buggy - there should only be one device for each register range, you should have a core MFD driver which gets the hardware resource and shares the regmap with the client drivers.
The I2S, internal audio codec and audio port share same register address space. Do you suggest that I write a MFD driver or write sirf-audio-core .c to share the regmap and register child audio devices (I2S, internal codec and port)?
Thanks