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

Commit 53688c51 authored by Viresh Kumar's avatar Viresh Kumar Committed by Russell King
Browse files

ARM: 6678/1: SPEAr: update padmux code



- compile padmux only for spear3xx
- padmux initialization code rearranged in evaluation board and machine
  files.

Reviewed-by: default avatarStanley Miao <stanley.miao@windriver.com>
Signed-off-by: default avatarViresh Kumar <viresh.kumar@st.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent f9324a85
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -40,7 +40,6 @@ void __init clk_init(void);
void __init spear3xx_map_io(void);
void __init spear3xx_init_irq(void);
void __init spear3xx_init(void);
void spear_pmx_init(struct pmx_driver *pmx_driver, uint base, uint size);

/* pad mux declarations */
#define PMX_FIRDA_MASK		(1 << 14)
@@ -133,8 +132,6 @@ extern struct pmx_dev pmx_telecom_sdio_4bit;
extern struct pmx_dev pmx_telecom_sdio_8bit;
extern struct pmx_dev pmx_gpio1;

void spear300_pmx_init(void);

/* Add spear300 machine function declarations here */
void __init spear300_init(void);

@@ -154,8 +151,6 @@ extern struct pmx_dev pmx_fsmc;
extern struct pmx_dev pmx_rs485_0_1;
extern struct pmx_dev pmx_tdm0;

void spear310_pmx_init(void);

/* Add spear310 machine function declarations here */
void __init spear310_init(void);

@@ -195,8 +190,6 @@ extern struct pmx_dev pmx_smii0;
extern struct pmx_dev pmx_smii1;
extern struct pmx_dev pmx_i2c1;

void spear320_pmx_init(void);

/* Add spear320 machine function declarations here */
void __init spear320_init(void);

+10 −4
Original line number Diff line number Diff line
@@ -459,10 +459,16 @@ void __init spear300_init(void)
		if (ret)
			printk(KERN_ERR "Error registering Shared IRQ\n");
	}
}

void spear300_pmx_init(void)
{
	spear_pmx_init(&pmx_driver, SPEAR300_SOC_CONFIG_BASE,
	/* pmx initialization */
	pmx_driver.base = ioremap(SPEAR300_SOC_CONFIG_BASE,
			SPEAR300_SOC_CONFIG_SIZE);
	if (pmx_driver.base) {
		ret = pmx_register(&pmx_driver);
		if (ret)
			printk(KERN_ERR "padmux: registeration failed. err no"
					": %d\n", ret);
		/* Free Mapping, device selection already done */
		iounmap(pmx_driver.base);
	}
}
+4 −5
Original line number Diff line number Diff line
@@ -51,14 +51,13 @@ static void __init spear300_evb_init(void)
{
	unsigned int i;

	/* call spear300 machine init function */
	spear300_init();

	/* padmux initialization */
	/* padmux initialization, must be done before spear300_init */
	pmx_driver.mode = &photo_frame_mode;
	pmx_driver.devs = pmx_devs;
	pmx_driver.devs_count = ARRAY_SIZE(pmx_devs);
	spear300_pmx_init();

	/* call spear300 machine init function */
	spear300_init();

	/* Add Platform Devices */
	platform_add_devices(plat_devs, ARRAY_SIZE(plat_devs));
+6 −5
Original line number Diff line number Diff line
@@ -293,10 +293,11 @@ void __init spear310_init(void)
		if (ret)
			printk(KERN_ERR "Error registering Shared IRQ 4\n");
	}
}

void spear310_pmx_init(void)
{
	spear_pmx_init(&pmx_driver, SPEAR310_SOC_CONFIG_BASE,
			SPEAR310_SOC_CONFIG_SIZE);
	/* pmx initialization */
	pmx_driver.base = base;
	ret = pmx_register(&pmx_driver);
	if (ret)
		printk(KERN_ERR "padmux: registeration failed. err no: %d\n",
				ret);
}
+4 −5
Original line number Diff line number Diff line
@@ -58,14 +58,13 @@ static void __init spear310_evb_init(void)
{
	unsigned int i;

	/* call spear310 machine init function */
	spear310_init();

	/* padmux initialization */
	/* padmux initialization, must be done before spear310_init */
	pmx_driver.mode = NULL;
	pmx_driver.devs = pmx_devs;
	pmx_driver.devs_count = ARRAY_SIZE(pmx_devs);
	spear310_pmx_init();

	/* call spear310 machine init function */
	spear310_init();

	/* Add Platform Devices */
	platform_add_devices(plat_devs, ARRAY_SIZE(plat_devs));
Loading