[PATCH 1/2] Add support for the e300c2 core

Kim Phillips kim.phillips at freescale.com
Sun Oct 1 12:55:00 EST 2006


Add support for the Freescale e300c2 core found in the MPC832x processor line.

As far as the kernel is concerned, the e300c2 core is identical to the e300c1 found in the mpc834x, except that it's had its floating point unit chopped off.

Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
---
 arch/powerpc/kernel/cputable.c |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c
index 190a57e..ce13830 100644
--- a/arch/powerpc/kernel/cputable.c
+++ b/arch/powerpc/kernel/cputable.c
@@ -63,6 +63,7 @@ #define COMMON_USER_PA6T	(COMMON_USER_PP
 				 PPC_FEATURE_HAS_ALTIVEC_COMP)
 #define COMMON_USER_BOOKE	(PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \
 				 PPC_FEATURE_BOOKE)
+#define COMMON_USER_E300	(PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU)
 
 /* We only set the spe features if the kernel was compiled with
  * spe support
@@ -763,12 +764,23 @@ #if CLASSIC_PPC
 		.cpu_setup		= __setup_cpu_603,
 		.platform		= "ppc603",
 	},
-	{	/* e300 (a 603e core, plus some) on 83xx */
+	{	/* e300c1 (a 603e core, plus some) on 83xx */
 		.pvr_mask		= 0x7fff0000,
 		.pvr_value		= 0x00830000,
-		.cpu_name		= "e300",
+		.cpu_name		= "e300c1",
 		.cpu_features		= CPU_FTRS_E300,
-		.cpu_user_features	= COMMON_USER,
+		.cpu_user_features	= COMMON_USER_E300 | PPC_FEATURE_HAS_FPU,
+		.icache_bsize		= 32,
+		.dcache_bsize		= 32,
+		.cpu_setup		= __setup_cpu_603,
+		.platform		= "ppc603",
+	},
+	{	/* e300c2 (an e300c1 core, plus some, minus FPU) on 83xx */
+		.pvr_mask		= 0x7fff0000,
+		.pvr_value		= 0x00840000,
+		.cpu_name		= "e300c2",
+		.cpu_features		= CPU_FTRS_E300,
+		.cpu_user_features	= COMMON_USER_E300,
 		.icache_bsize		= 32,
 		.dcache_bsize		= 32,
 		.cpu_setup		= __setup_cpu_603,
-- 
1.4.2.1




More information about the Linuxppc-dev mailing list