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

Commit 58cda884 authored by Jean Pihet's avatar Jean Pihet Committed by paul
Browse files

OMAP3 SDRC: add support for 2 SDRAM chip selects



Some OMAP3 boards (Beagle Cx, Overo, RX51, Pandora) have 2
SDRAM parts connected to the SDRC.

This patch adds the following:
- add a new argument of type omap_sdrc_params struct*
to omap2_init_common_hw and omap2_sdrc_init for the 2nd CS params
- adapted the OMAP boards files to the new prototype of
omap2_init_common_hw
- add the SDRC 2nd CS registers offsets defines
- adapt the sram sleep code to configure the SDRC for the 2nd CS

Note: If the 2nd param to omap2_init_common_hw is NULL, then the
parameters are not programmed into the SDRC CS1 registers

Tested on 3430 SDP and Beagleboard rev C2 and B5, with
suspend/resume and frequency changes (cpufreq).

Signed-off-by: default avatarJean Pihet <jpihet@mvista.com>
Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
parent 4be3bd78
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -141,7 +141,7 @@ static inline void board_smc91x_init(void)

static void __init omap_2430sdp_init_irq(void)
{
	omap2_init_common_hw(NULL);
	omap2_init_common_hw(NULL, NULL);
	omap_init_irq();
	omap_gpio_init();
}
+1 −1
Original line number Diff line number Diff line
@@ -169,7 +169,7 @@ static struct platform_device *sdp3430_devices[] __initdata = {

static void __init omap_3430sdp_init_irq(void)
{
	omap2_init_common_hw(hyb18m512160af6_sdrc_params);
	omap2_init_common_hw(hyb18m512160af6_sdrc_params, NULL);
	omap_init_irq();
	omap_gpio_init();
}
+1 −1
Original line number Diff line number Diff line
@@ -59,7 +59,7 @@ static void __init gic_init_irq(void)

static void __init omap_4430sdp_init_irq(void)
{
	omap2_init_common_hw(NULL);
	omap2_init_common_hw(NULL, NULL);
#ifdef CONFIG_OMAP_32K_TIMER
	omap2_gp_clockevent_set_gptimer(1);
#endif
+1 −1
Original line number Diff line number Diff line
@@ -250,7 +250,7 @@ static inline void __init apollon_init_smc91x(void)

static void __init omap_apollon_init_irq(void)
{
	omap2_init_common_hw(NULL);
	omap2_init_common_hw(NULL, NULL);
	omap_init_irq();
	omap_gpio_init();
	apollon_init_smc91x();
+1 −1
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@

static void __init omap_generic_init_irq(void)
{
	omap2_init_common_hw(NULL);
	omap2_init_common_hw(NULL, NULL);
	omap_init_irq();
}

Loading