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

Commit 83f755f5 authored by Lucas Correia Villa Real's avatar Lucas Correia Villa Real Committed by Russell King
Browse files

[ARM] 3286/2: S3C2400 - adds to the table of supported CPUs



Patch from Lucas Correia Villa Real

Oops, sorry for the typo on name_s3c2400, a new patch is attached.
About GSTATUS1, S3C2400 doesn't have that register, so it's not
safe to use that memory address to identify its CPU.

Signed-off-by: default avatarLucas Correia Villa Real <lucasvr@gobolinux.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 0ca5bc3d
Loading
Loading
Loading
Loading
+16 −2
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@

#include "cpu.h"
#include "clock.h"
#include "s3c2400.h"
#include "s3c2410.h"
#include "s3c2440.h"

@@ -55,6 +56,7 @@ struct cpu_table {

/* table of supported CPUs */

static const char name_s3c2400[]  = "S3C2400";
static const char name_s3c2410[]  = "S3C2410";
static const char name_s3c2440[]  = "S3C2440";
static const char name_s3c2410a[] = "S3C2410A";
@@ -96,7 +98,16 @@ static struct cpu_table cpu_ids[] __initdata = {
		.init_uarts	= s3c2440_init_uarts,
		.init		= s3c2440_init,
		.name		= name_s3c2440a
	}
	},
	{
		.idcode		= 0x0,   /* S3C2400 doesn't have an idcode */
		.idmask		= 0xffffffff,
		.map_io		= s3c2400_map_io,
		.init_clocks	= s3c2400_init_clocks,
		.init_uarts	= s3c2400_init_uarts,
		.init		= s3c2400_init,
		.name		= name_s3c2400
	},
};

/* minimal IO mapping */
@@ -148,12 +159,15 @@ static struct cpu_table *cpu;

void __init s3c24xx_init_io(struct map_desc *mach_desc, int size)
{
	unsigned long idcode;
	unsigned long idcode = 0x0;

	/* initialise the io descriptors we need for initialisation */
	iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));

#ifndef CONFIG_CPU_S3C2400
	idcode = __raw_readl(S3C2410_GSTATUS1);
#endif

	cpu = s3c_lookup_cpu(idcode);

	if (cpu == NULL) {