Use ioremap() instead of using IO_ADDRESS macro to make it generic. Signed-off-by: Omar Ramirez Luna <omar.ramirez@xxxxxx> CC: Tony Lindgren <tony@xxxxxxxxxxx> CC: Nishanth Menon <nm@xxxxxx> CC: Hiroshi Doyu <Hiroshi.DOYU@xxxxxxxxx> CC: Ameya Palande <ameya.palande@xxxxxxxxx> CC: Felipe Contreras <felipe.contreras@xxxxxxxxx> --- drivers/dsp/bridge/services/clk.c | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-) diff --git a/drivers/dsp/bridge/services/clk.c b/drivers/dsp/bridge/services/clk.c index d1c68fc..21a61d8 100644 --- a/drivers/dsp/bridge/services/clk.c +++ b/drivers/dsp/bridge/services/clk.c @@ -54,10 +54,9 @@ typedef volatile unsigned long REG_UWORD32; -#define SSI_Base 0x48058000 - -#define SSI_BASE IO_ADDRESS(SSI_Base) - +#define OMAP_SSI_OFFSET 0x58000 +#define OMAP_SSI_SIZE 0x1000 +#define OMAP_SSI_SYSCONFIG_OFFSET 0x10 struct SERVICES_Clk_t { struct clk *clk_handle; @@ -355,7 +354,13 @@ s32 CLK_Get_UseCnt(IN enum SERVICES_ClkId clk_id) void SSI_Clk_Prepare(bool FLAG) { u32 ssi_sysconfig; - ssi_sysconfig = __raw_readl((SSI_BASE) + 0x10); + void __iomem *ssi_base; + + ssi_base = ioremap(L4_34XX_BASE + OMAP_SSI_OFFSET, OMAP_SSI_SIZE); + if (!ssi_base) { + pr_err("%s: error, SSI not configured\n", __func__); + return; + } if (FLAG) { /* Set Autoidle, SIDLEMode to smart idle, and MIDLEmode to @@ -368,5 +373,7 @@ void SSI_Clk_Prepare(bool FLAG) */ ssi_sysconfig = 0x1; } - __raw_writel((u32)ssi_sysconfig, SSI_BASE + 0x10); + + __raw_writel(ssi_sysconfig, ssi_base + OMAP_SSI_SYSCONFIG_OFFSET); + iounmap(ssi_base); } -- 1.6.2.4 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html