Hello Uwe,
On Thu, May 10, 2012 at 1:56 AM, Uwe Kleine-König u.kleine-koenig@pengutronix.de wrote:
Hello Robert,
On Wed, May 09, 2012 at 07:24:17PM -0500, Robert Lee wrote:
A change is needed in the IMX_IO_P2V macro to allow all imx5 platforms to use common definitions when accessing registers of peripherals on the AIPS2 bus.
This change was tested for mapping conflicts using the iop2v script found at git://git.pengutronix.de/git/ukl/imx-iop2v.git and by performing a bootup of a default build using imx_v6_v7_defconfig on a imx51 babbage board and imx53 loco board.
Signed-off-by: Robert Lee rob.lee@linaro.org
It took me some time to understand your goal. With your change you achieve that
IMX_IO_P2V(MX50_AIPS2_BASE_ADDR) == IMX_IO_P2V(MX51_AIPS2_BASE_ADDR) == IMX_IO_P2V(MX53_AIPS2_BASE_ADDR)
(which IMHO is more than "allowing ... to use common definitions [for the] AIPS2 bus).
Sorry, I just have been more thorough in my description. In the patch I also forgot to change the comments and give the new virtual addresses so I can add that in a v2 if this change ends up being acceptable.
I can confirm that my imx-iop2v script doesn't find a conflict with your change. Having said that I didn't check that the memory regions listed in the script still match the regions that are statically mapped on imx.
And I wonder why do you need to have the aips2 bus mapped to the same address on all imx5 machines. The future is that the base addresses of the various devices are determined via dt and then the static mappings go away. Do I miss something?
For now, because both dt and non dt configurations are available for imx5, this is needed so that the low power mx5_cpu_lp_set() function in pm-imx5.c can be readily used by imx53 and imx50 for low power idling.
If this is not acceptable, another option would be to only support idle for dt builds that have common base addresses. This may require a temporary hack for cpuidle enablement to enable it for dt but not for non-dt since they currently use some common init code. Or, just don't support low power idling at all on imx53 and imx50 until the non-dt support is removed.
Best regards Uwe
-- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ |