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

Commit f0051d82 authored by Jean-Christophe PLAGNIOL-VILLARD's avatar Jean-Christophe PLAGNIOL-VILLARD Committed by Arnd Bergmann
Browse files

at91: factorize sram init



Signed-off-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Patrice Vilchez <patrice.vilchez@atmel.com>
parent 51ddec76
Loading
Loading
Loading
Loading
+1 −10
Original line number Original line Diff line number Diff line
@@ -29,15 +29,6 @@
#include "generic.h"
#include "generic.h"
#include "clock.h"
#include "clock.h"


static struct map_desc at91cap9_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91CAP9_SRAM_SIZE,
		.pfn		= __phys_to_pfn(AT91CAP9_SRAM_BASE),
		.length		= AT91CAP9_SRAM_SIZE,
		.type		= MT_DEVICE,
	},
};

/* --------------------------------------------------------------------
/* --------------------------------------------------------------------
 *  Clocks
 *  Clocks
 * -------------------------------------------------------------------- */
 * -------------------------------------------------------------------- */
@@ -337,7 +328,7 @@ static void at91cap9_poweroff(void)


static void __init at91cap9_map_io(void)
static void __init at91cap9_map_io(void)
{
{
	iotable_init(at91cap9_sram_desc, ARRAY_SIZE(at91cap9_sram_desc));
	at91_init_sram(0, AT91CAP9_SRAM_BASE, AT91CAP9_SRAM_SIZE);
}
}


static void __init at91cap9_initialize(void)
static void __init at91cap9_initialize(void)
+1 −5
Original line number Original line Diff line number Diff line
@@ -30,11 +30,6 @@ static struct map_desc at91rm9200_io_desc[] __initdata = {
		.pfn		= __phys_to_pfn(AT91RM9200_BASE_EMAC),
		.pfn		= __phys_to_pfn(AT91RM9200_BASE_EMAC),
		.length		= SZ_16K,
		.length		= SZ_16K,
		.type		= MT_DEVICE,
		.type		= MT_DEVICE,
	}, {
		.virtual	= AT91_IO_VIRT_BASE - AT91RM9200_SRAM_SIZE,
		.pfn		= __phys_to_pfn(AT91RM9200_SRAM_BASE),
		.length		= AT91RM9200_SRAM_SIZE,
		.type		= MT_DEVICE,
	},
	},
};
};


@@ -306,6 +301,7 @@ static void at91rm9200_reset(void)
static void __init at91rm9200_map_io(void)
static void __init at91rm9200_map_io(void)
{
{
	/* Map peripherals */
	/* Map peripherals */
	at91_init_sram(0, AT91RM9200_SRAM_BASE, AT91RM9200_SRAM_SIZE);
	iotable_init(at91rm9200_io_desc, ARRAY_SIZE(at91rm9200_io_desc));
	iotable_init(at91rm9200_io_desc, ARRAY_SIZE(at91rm9200_io_desc));
}
}


+9 −44
Original line number Original line Diff line number Diff line
@@ -27,41 +27,6 @@
#include "generic.h"
#include "generic.h"
#include "clock.h"
#include "clock.h"


static struct map_desc at91sam9260_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9260_SRAM0_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9260_SRAM0_BASE),
		.length		= AT91SAM9260_SRAM0_SIZE,
		.type		= MT_DEVICE,
	}, {
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9260_SRAM0_SIZE - AT91SAM9260_SRAM1_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9260_SRAM1_BASE),
		.length		= AT91SAM9260_SRAM1_SIZE,
		.type		= MT_DEVICE,
	}
};

static struct map_desc at91sam9g20_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9G20_SRAM0_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9G20_SRAM0_BASE),
		.length		= AT91SAM9G20_SRAM0_SIZE,
		.type		= MT_DEVICE,
	}, {
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9G20_SRAM0_SIZE - AT91SAM9G20_SRAM1_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9G20_SRAM1_BASE),
		.length		= AT91SAM9G20_SRAM1_SIZE,
		.type		= MT_DEVICE,
	}
};

static struct map_desc at91sam9xe_sram_desc[] __initdata = {
	{
		.pfn		= __phys_to_pfn(AT91SAM9XE_SRAM_BASE),
		.type		= MT_DEVICE,
	}
};

/* --------------------------------------------------------------------
/* --------------------------------------------------------------------
 *  Clocks
 *  Clocks
 * -------------------------------------------------------------------- */
 * -------------------------------------------------------------------- */
@@ -334,20 +299,20 @@ static void __init at91sam9xe_map_io(void)
			sram_size = SZ_16K;
			sram_size = SZ_16K;
	}
	}


	at91sam9xe_sram_desc->virtual = AT91_IO_VIRT_BASE - sram_size;
	at91_init_sram(0, AT91SAM9XE_SRAM_BASE, sram_size);
	at91sam9xe_sram_desc->length = sram_size;

	iotable_init(at91sam9xe_sram_desc, ARRAY_SIZE(at91sam9xe_sram_desc));
}
}


static void __init at91sam9260_map_io(void)
static void __init at91sam9260_map_io(void)
{
{
	if (cpu_is_at91sam9xe())
	if (cpu_is_at91sam9xe()) {
		at91sam9xe_map_io();
		at91sam9xe_map_io();
	else if (cpu_is_at91sam9g20())
	} else if (cpu_is_at91sam9g20()) {
		iotable_init(at91sam9g20_sram_desc, ARRAY_SIZE(at91sam9g20_sram_desc));
		at91_init_sram(0, AT91SAM9G20_SRAM0_BASE, AT91SAM9G20_SRAM0_SIZE);
	else
		at91_init_sram(1, AT91SAM9G20_SRAM1_BASE, AT91SAM9G20_SRAM1_SIZE);
		iotable_init(at91sam9260_sram_desc, ARRAY_SIZE(at91sam9260_sram_desc));
	} else {
		at91_init_sram(0, AT91SAM9260_SRAM0_BASE, AT91SAM9260_SRAM0_SIZE);
		at91_init_sram(1, AT91SAM9260_SRAM1_BASE, AT91SAM9260_SRAM1_SIZE);
	}
}
}


static void __init at91sam9260_initialize(void)
static void __init at91sam9260_initialize(void)
+2 −20
Original line number Original line Diff line number Diff line
@@ -26,24 +26,6 @@
#include "generic.h"
#include "generic.h"
#include "clock.h"
#include "clock.h"


static struct map_desc at91sam9261_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9261_SRAM_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9261_SRAM_BASE),
		.length		= AT91SAM9261_SRAM_SIZE,
		.type		= MT_DEVICE,
	},
};

static struct map_desc at91sam9g10_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9G10_SRAM_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9G10_SRAM_BASE),
		.length		= AT91SAM9G10_SRAM_SIZE,
		.type		= MT_DEVICE,
	},
};

/* --------------------------------------------------------------------
/* --------------------------------------------------------------------
 *  Clocks
 *  Clocks
 * -------------------------------------------------------------------- */
 * -------------------------------------------------------------------- */
@@ -297,9 +279,9 @@ static void at91sam9261_poweroff(void)
static void __init at91sam9261_map_io(void)
static void __init at91sam9261_map_io(void)
{
{
	if (cpu_is_at91sam9g10())
	if (cpu_is_at91sam9g10())
		iotable_init(at91sam9g10_sram_desc, ARRAY_SIZE(at91sam9g10_sram_desc));
		at91_init_sram(0, AT91SAM9G10_SRAM_BASE, AT91SAM9G10_SRAM_SIZE);
	else
	else
		iotable_init(at91sam9261_sram_desc, ARRAY_SIZE(at91sam9261_sram_desc));
		at91_init_sram(0, AT91SAM9261_SRAM_BASE, AT91SAM9261_SRAM_SIZE);
}
}


static void __init at91sam9261_initialize(void)
static void __init at91sam9261_initialize(void)
+2 −15
Original line number Original line Diff line number Diff line
@@ -25,20 +25,6 @@
#include "generic.h"
#include "generic.h"
#include "clock.h"
#include "clock.h"


static struct map_desc at91sam9263_sram_desc[] __initdata = {
	{
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9263_SRAM0_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9263_SRAM0_BASE),
		.length		= AT91SAM9263_SRAM0_SIZE,
		.type		= MT_DEVICE,
	}, {
		.virtual	= AT91_IO_VIRT_BASE - AT91SAM9263_SRAM0_SIZE - AT91SAM9263_SRAM1_SIZE,
		.pfn		= __phys_to_pfn(AT91SAM9263_SRAM1_BASE),
		.length		= AT91SAM9263_SRAM1_SIZE,
		.type		= MT_DEVICE,
	},
};

/* --------------------------------------------------------------------
/* --------------------------------------------------------------------
 *  Clocks
 *  Clocks
 * -------------------------------------------------------------------- */
 * -------------------------------------------------------------------- */
@@ -311,7 +297,8 @@ static void at91sam9263_poweroff(void)


static void __init at91sam9263_map_io(void)
static void __init at91sam9263_map_io(void)
{
{
	iotable_init(at91sam9263_sram_desc, ARRAY_SIZE(at91sam9263_sram_desc));
	at91_init_sram(0, AT91SAM9263_SRAM0_BASE, AT91SAM9263_SRAM0_SIZE);
	at91_init_sram(1, AT91SAM9263_SRAM1_BASE, AT91SAM9263_SRAM1_SIZE);
}
}


static void __init at91sam9263_initialize(void)
static void __init at91sam9263_initialize(void)
Loading