Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bb1d34a2 authored by Shawn Guo's avatar Shawn Guo
Browse files

rtc: mxc_rtc: remove cpu_is_xxx by using platform_device_id



It changes the driver to use platform_device_id rather than cpu_is_xxx
to determine the controller type, and updates the platform code
accordingly.

As the result, mach/hardware.h inclusion gets removed from the driver.

Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
Acked-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: rtc-linux@googlegroups.com
parent 4d62435f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -106,7 +106,7 @@ int __init mx1_clocks_init(unsigned long fref)
	clk_register_clkdev(clk[dummy], "ahb", "imx-fb.0");
	clk_register_clkdev(clk[hclk], "mshc", NULL);
	clk_register_clkdev(clk[per3], "ssi", NULL);
	clk_register_clkdev(clk[clk32], NULL, "mxc_rtc.0");
	clk_register_clkdev(clk[clk32], NULL, "imx1-rtc.0");
	clk_register_clkdev(clk[clko], "clko", NULL);

	mxc_timer_init(MX1_IO_ADDRESS(MX1_TIM1_BASE_ADDR), MX1_TIM1_INT);
+1 −1
Original line number Diff line number Diff line
@@ -259,7 +259,7 @@ int __init mx27_clocks_init(unsigned long fref)
	clk_register_clkdev(clk[gpio_ipg_gate], "gpio", NULL);
	clk_register_clkdev(clk[brom_ahb_gate], "brom", NULL);
	clk_register_clkdev(clk[ata_ahb_gate], "ata", NULL);
	clk_register_clkdev(clk[rtc_ipg_gate], NULL, "mxc_rtc");
	clk_register_clkdev(clk[rtc_ipg_gate], NULL, "imx21-rtc");
	clk_register_clkdev(clk[scc_ipg_gate], "scc", NULL);
	clk_register_clkdev(clk[cpu_div], "cpu", NULL);
	clk_register_clkdev(clk[emi_ahb_gate], "emi_ahb" , NULL);
+1 −1
Original line number Diff line number Diff line
@@ -124,7 +124,7 @@ int __init mx31_clocks_init(unsigned long fref)
	clk_register_clkdev(clk[cspi3_gate], NULL, "imx31-cspi.2");
	clk_register_clkdev(clk[pwm_gate], "pwm", NULL);
	clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0");
	clk_register_clkdev(clk[rtc_gate], NULL, "mxc_rtc");
	clk_register_clkdev(clk[rtc_gate], NULL, "imx21-rtc");
	clk_register_clkdev(clk[epit1_gate], "epit", NULL);
	clk_register_clkdev(clk[epit2_gate], "epit", NULL);
	clk_register_clkdev(clk[nfc], NULL, "imx27-nand.0");
+1 −0
Original line number Diff line number Diff line
@@ -292,6 +292,7 @@ struct platform_device *__init imx_add_mxc_pwm(

/* mxc_rtc */
struct imx_mxc_rtc_data {
	const char *devid;
	resource_size_t iobase;
	resource_size_t irq;
};
+5 −4
Original line number Diff line number Diff line
@@ -9,20 +9,21 @@
#include <mach/hardware.h>
#include "devices-common.h"

#define imx_mxc_rtc_data_entry_single(soc)				\
#define imx_mxc_rtc_data_entry_single(soc, _devid)			\
	{								\
		.devid = _devid,					\
		.iobase = soc ## _RTC_BASE_ADDR,			\
		.irq = soc ## _INT_RTC,					\
	}

#ifdef CONFIG_SOC_IMX31
const struct imx_mxc_rtc_data imx31_mxc_rtc_data __initconst =
	imx_mxc_rtc_data_entry_single(MX31);
	imx_mxc_rtc_data_entry_single(MX31, "imx21-rtc");
#endif /* ifdef CONFIG_SOC_IMX31 */

#ifdef CONFIG_SOC_IMX35
const struct imx_mxc_rtc_data imx35_mxc_rtc_data __initconst =
	imx_mxc_rtc_data_entry_single(MX35);
	imx_mxc_rtc_data_entry_single(MX35, "imx21-rtc");
#endif /* ifdef CONFIG_SOC_IMX35 */

struct platform_device *__init imx_add_mxc_rtc(
@@ -40,6 +41,6 @@ struct platform_device *__init imx_add_mxc_rtc(
		},
	};

	return imx_add_platform_device("mxc_rtc", -1,
	return imx_add_platform_device(data->devid, -1,
			res, ARRAY_SIZE(res), NULL, 0);
}
Loading