[U-Boot] [PATCH 1/2] powerpc/85xx: Add Support for Freescale P1010 Processor

From: Poonam Aggrwal poonam.aggrwal@freescale.com
Key Features include of the P1010: * e500v2 core frequency operation of 500 to 800 MHz * Power consumption less than 5.0 W at 800 MHz core speed * Dual SATA 3 Gbps controllers with integrated PHY * Dual PCI Express controllers * Three 10/100/1000 Mbps enhanced triple-speed Ethernet controllers (eTSECs) * TCP/IP acceleration and classification capabilities * IEEE 1588 support * Lossless flow control * RGMII, SGMII * DDR3 with support for a 32-bit data interface (40 bits including ECC), up to 800 MHz data rate 32/16-bit DDR3 memory controller * Dedicated security engine featuring trusted boot * TDM interface * Dual controller area networks (FlexCAN) controller * SD/MMC card controller supporting booting from Flash cards * USB 2.0 host and device controller with an on-chip, high-speed PHY * Integrated Flash controller (IFC) * Power Management Controller (PMC) * Four-channel, general-purpose DMA controller * I2C controller * Serial peripheral interface (SPI) controller with master and slave support * System timers including a periodic interrupt timer, real-time clock, software watchdog timer, and four general-purpose timers * Dual DUARTs
Signed-off-by: Poonam Aggrwal poonam.aggrwal@freescale.com Signed-off-by: Dipen Dudhat dipen.dudhat@freescale.com Signed-off-by: Kumar Gala galak@kernel.crashing.org --- arch/powerpc/cpu/mpc85xx/Makefile | 1 + arch/powerpc/cpu/mpc8xxx/cpu.c | 2 ++ arch/powerpc/include/asm/config.h | 6 ++++-- arch/powerpc/include/asm/processor.h | 2 ++ drivers/misc/fsl_law.c | 1 + 5 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/cpu/mpc85xx/Makefile b/arch/powerpc/cpu/mpc85xx/Makefile index af7bc09..e1261cf 100644 --- a/arch/powerpc/cpu/mpc85xx/Makefile +++ b/arch/powerpc/cpu/mpc85xx/Makefile @@ -50,6 +50,7 @@ COBJS-$(CONFIG_MPC8544) += ddr-gen2.o COBJS-$(CONFIG_MPC8572) += ddr-gen3.o COBJS-$(CONFIG_MPC8536) += ddr-gen3.o COBJS-$(CONFIG_MPC8569) += ddr-gen3.o +COBJS-$(CONFIG_P1010) += ddr-gen3.o COBJS-$(CONFIG_P1011) += ddr-gen3.o COBJS-$(CONFIG_P1012) += ddr-gen3.o COBJS-$(CONFIG_P1013) += ddr-gen3.o diff --git a/arch/powerpc/cpu/mpc8xxx/cpu.c b/arch/powerpc/cpu/mpc8xxx/cpu.c index 5b30fbd..ac720a5 100644 --- a/arch/powerpc/cpu/mpc8xxx/cpu.c +++ b/arch/powerpc/cpu/mpc8xxx/cpu.c @@ -64,6 +64,8 @@ struct cpu_type cpu_type_list [] = { CPU_TYPE_ENTRY(8569, 8569_E, 1), CPU_TYPE_ENTRY(8572, 8572, 2), CPU_TYPE_ENTRY(8572, 8572_E, 2), + CPU_TYPE_ENTRY(P1010, P1010, 1), + CPU_TYPE_ENTRY(P1010, P1010_E, 1), CPU_TYPE_ENTRY(P1011, P1011, 1), CPU_TYPE_ENTRY(P1011, P1011_E, 1), CPU_TYPE_ENTRY(P1012, P1012, 1), diff --git a/arch/powerpc/include/asm/config.h b/arch/powerpc/include/asm/config.h index 76dedeb..d80fc97 100644 --- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -69,14 +69,16 @@
/* Enable TSEC2.0 for the platforms that have it if we are using TSEC */ #if defined(CONFIG_TSEC_ENET) && \ - (defined(CONFIG_P1020) || defined(CONFIG_P1011)) + (defined(CONFIG_P1010) || \ + defined(CONFIG_P1020) || defined(CONFIG_P1011)) #define CONFIG_TSECV2 #endif
/* * SEC (crypto unit) major compatible version determination */ -#if defined(CONFIG_FSL_CORENET) +#if defined(CONFIG_FSL_CORENET) || \ + defined(CONFIG_P1010) #define CONFIG_SYS_FSL_SEC_COMPAT 4 #elif defined(CONFIG_MPC85xx) || defined(CONFIG_MPC83xx) #define CONFIG_SYS_FSL_SEC_COMPAT 2 diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h index 71fafa3..6b43dc5 100644 --- a/arch/powerpc/include/asm/processor.h +++ b/arch/powerpc/include/asm/processor.h @@ -1038,6 +1038,8 @@ #define SVR_8569_E 0x808800 #define SVR_8572 0x80E000 #define SVR_8572_E 0x80E800 +#define SVR_P1010 0x80F100 +#define SVR_P1010_E 0x80F900 #define SVR_P1011 0x80E500 #define SVR_P1011_E 0x80ED00 #define SVR_P1012 0x80E501 diff --git a/drivers/misc/fsl_law.c b/drivers/misc/fsl_law.c index 6589076..931cc71 100644 --- a/drivers/misc/fsl_law.c +++ b/drivers/misc/fsl_law.c @@ -38,6 +38,7 @@ DECLARE_GLOBAL_DATA_PTR; defined(CONFIG_MPC8641) || defined(CONFIG_MPC8610) #define FSL_HW_NUM_LAWS 10 #elif defined(CONFIG_MPC8536) || defined(CONFIG_MPC8572) || \ + defined(CONFIG_P1010) || \ defined(CONFIG_P1011) || defined(CONFIG_P1020) || \ defined(CONFIG_P1012) || defined(CONFIG_P1021) || \ defined(CONFIG_P1013) || defined(CONFIG_P1022) || \

From: Poonam Aggrwal poonam.aggrwal@freescale.com
The P1014 is similar to the P1010 processor with the following differences:
- 16bit DDR with ECC. (P1010 has 32bit DDR w/o ECC) - no eCAN interface. (P1010 has 2 eCAN interfaces) - Two SGMII interface (P1010 has 3 SGMII) - No secure boot
Signed-off-by: Poonam Aggrwal poonam.aggrwal@freescale.com Signed-off-by: Kumar Gala galak@kernel.crashing.org --- arch/powerpc/cpu/mpc85xx/Makefile | 1 + arch/powerpc/cpu/mpc8xxx/cpu.c | 2 ++ arch/powerpc/include/asm/config.h | 4 ++-- arch/powerpc/include/asm/processor.h | 2 ++ drivers/misc/fsl_law.c | 2 +- 5 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/cpu/mpc85xx/Makefile b/arch/powerpc/cpu/mpc85xx/Makefile index e1261cf..3f118db 100644 --- a/arch/powerpc/cpu/mpc85xx/Makefile +++ b/arch/powerpc/cpu/mpc85xx/Makefile @@ -54,6 +54,7 @@ COBJS-$(CONFIG_P1010) += ddr-gen3.o COBJS-$(CONFIG_P1011) += ddr-gen3.o COBJS-$(CONFIG_P1012) += ddr-gen3.o COBJS-$(CONFIG_P1013) += ddr-gen3.o +COBJS-$(CONFIG_P1014) += ddr-gen3.o COBJS-$(CONFIG_P1020) += ddr-gen3.o COBJS-$(CONFIG_P1021) += ddr-gen3.o COBJS-$(CONFIG_P1022) += ddr-gen3.o diff --git a/arch/powerpc/cpu/mpc8xxx/cpu.c b/arch/powerpc/cpu/mpc8xxx/cpu.c index ac720a5..0ec1c16 100644 --- a/arch/powerpc/cpu/mpc8xxx/cpu.c +++ b/arch/powerpc/cpu/mpc8xxx/cpu.c @@ -71,6 +71,8 @@ struct cpu_type cpu_type_list [] = { CPU_TYPE_ENTRY(P1012, P1012, 1), CPU_TYPE_ENTRY(P1012, P1012_E, 1), CPU_TYPE_ENTRY(P1013, P1013, 1), + CPU_TYPE_ENTRY(P1014, P1014_E, 1), + CPU_TYPE_ENTRY(P1014, P1014, 1), CPU_TYPE_ENTRY(P1013, P1013_E, 1), CPU_TYPE_ENTRY(P1020, P1020, 2), CPU_TYPE_ENTRY(P1020, P1020_E, 2), diff --git a/arch/powerpc/include/asm/config.h b/arch/powerpc/include/asm/config.h index d80fc97..965c874 100644 --- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -69,7 +69,7 @@
/* Enable TSEC2.0 for the platforms that have it if we are using TSEC */ #if defined(CONFIG_TSEC_ENET) && \ - (defined(CONFIG_P1010) || \ + (defined(CONFIG_P1010) || defined(CONFIG_P1014) || \ defined(CONFIG_P1020) || defined(CONFIG_P1011)) #define CONFIG_TSECV2 #endif @@ -78,7 +78,7 @@ * SEC (crypto unit) major compatible version determination */ #if defined(CONFIG_FSL_CORENET) || \ - defined(CONFIG_P1010) + defined(CONFIG_P1010) || defined(CONFIG_P1014) #define CONFIG_SYS_FSL_SEC_COMPAT 4 #elif defined(CONFIG_MPC85xx) || defined(CONFIG_MPC83xx) #define CONFIG_SYS_FSL_SEC_COMPAT 2 diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h index 6b43dc5..646e0db 100644 --- a/arch/powerpc/include/asm/processor.h +++ b/arch/powerpc/include/asm/processor.h @@ -1046,6 +1046,8 @@ #define SVR_P1012_E 0x80ED01 #define SVR_P1013 0x80E700 #define SVR_P1013_E 0x80EF00 +#define SVR_P1014 0x80F101 +#define SVR_P1014_E 0x80F901 #define SVR_P1020 0x80E400 #define SVR_P1020_E 0x80EC00 #define SVR_P1021 0x80E401 diff --git a/drivers/misc/fsl_law.c b/drivers/misc/fsl_law.c index 931cc71..d2b0cde 100644 --- a/drivers/misc/fsl_law.c +++ b/drivers/misc/fsl_law.c @@ -38,7 +38,7 @@ DECLARE_GLOBAL_DATA_PTR; defined(CONFIG_MPC8641) || defined(CONFIG_MPC8610) #define FSL_HW_NUM_LAWS 10 #elif defined(CONFIG_MPC8536) || defined(CONFIG_MPC8572) || \ - defined(CONFIG_P1010) || \ + defined(CONFIG_P1010) || defined(CONFIG_P1014) || \ defined(CONFIG_P1011) || defined(CONFIG_P1020) || \ defined(CONFIG_P1012) || defined(CONFIG_P1021) || \ defined(CONFIG_P1013) || defined(CONFIG_P1022) || \

On Jan 14, 2011, at 10:41 AM, Kumar Gala wrote:
From: Poonam Aggrwal poonam.aggrwal@freescale.com
The P1014 is similar to the P1010 processor with the following differences:
- 16bit DDR with ECC. (P1010 has 32bit DDR w/o ECC)
- no eCAN interface. (P1010 has 2 eCAN interfaces)
- Two SGMII interface (P1010 has 3 SGMII)
- No secure boot
Signed-off-by: Poonam Aggrwal poonam.aggrwal@freescale.com Signed-off-by: Kumar Gala galak@kernel.crashing.org
arch/powerpc/cpu/mpc85xx/Makefile | 1 + arch/powerpc/cpu/mpc8xxx/cpu.c | 2 ++ arch/powerpc/include/asm/config.h | 4 ++-- arch/powerpc/include/asm/processor.h | 2 ++ drivers/misc/fsl_law.c | 2 +- 5 files changed, 8 insertions(+), 3 deletions(-)
applied to 85xx
- k

Dear Kumar Gala,
In message 1295023271-11897-2-git-send-email-galak@kernel.crashing.org you wrote:
From: Poonam Aggrwal poonam.aggrwal@freescale.com
The P1014 is similar to the P1010 processor with the following differences:
- 16bit DDR with ECC. (P1010 has 32bit DDR w/o ECC)
- no eCAN interface. (P1010 has 2 eCAN interfaces)
- Two SGMII interface (P1010 has 3 SGMII)
- No secure boot
...
--- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -69,7 +69,7 @@
/* Enable TSEC2.0 for the platforms that have it if we are using TSEC */ #if defined(CONFIG_TSEC_ENET) && \
- (defined(CONFIG_P1010) || \
- (defined(CONFIG_P1010) || defined(CONFIG_P1014) || \ defined(CONFIG_P1020) || defined(CONFIG_P1011))
Please sort list.
diff --git a/drivers/misc/fsl_law.c b/drivers/misc/fsl_law.c index 931cc71..d2b0cde 100644 --- a/drivers/misc/fsl_law.c +++ b/drivers/misc/fsl_law.c @@ -38,7 +38,7 @@ DECLARE_GLOBAL_DATA_PTR; defined(CONFIG_MPC8641) || defined(CONFIG_MPC8610) #define FSL_HW_NUM_LAWS 10 #elif defined(CONFIG_MPC8536) || defined(CONFIG_MPC8572) || \
defined(CONFIG_P1010) || \
defined(CONFIG_P1010) || defined(CONFIG_P1014) || \ defined(CONFIG_P1011) || defined(CONFIG_P1020) || \ defined(CONFIG_P1012) || defined(CONFIG_P1021) || \ defined(CONFIG_P1013) || defined(CONFIG_P1022) || \
Ditto.
Best regards,
Wolfgang Denk

Please sort list.
diff --git a/drivers/misc/fsl_law.c b/drivers/misc/fsl_law.c index 931cc71..d2b0cde 100644 --- a/drivers/misc/fsl_law.c +++ b/drivers/misc/fsl_law.c @@ -38,7 +38,7 @@ DECLARE_GLOBAL_DATA_PTR; defined(CONFIG_MPC8641) || defined(CONFIG_MPC8610) #define FSL_HW_NUM_LAWS 10 #elif defined(CONFIG_MPC8536) || defined(CONFIG_MPC8572) || \
defined(CONFIG_P1010) || \
defined(CONFIG_P1010) || defined(CONFIG_P1014) || \ defined(CONFIG_P1011) || defined(CONFIG_P1020) || \ defined(CONFIG_P1012) || defined(CONFIG_P1021) || \ defined(CONFIG_P1013) || defined(CONFIG_P1022) || \
Ditto.
The sorting of this list has always been non-alphabetical as we kept single & dual core defines together.
I'd rather leave this as is and clean up all of them in one swoop. I'll post the cleanup patch shortly.
- k

On Jan 14, 2011, at 10:41 AM, Kumar Gala wrote:
From: Poonam Aggrwal poonam.aggrwal@freescale.com
Key Features include of the P1010:
- e500v2 core frequency operation of 500 to 800 MHz
- Power consumption less than 5.0 W at 800 MHz core speed
- Dual SATA 3 Gbps controllers with integrated PHY
- Dual PCI Express controllers
- Three 10/100/1000 Mbps enhanced triple-speed Ethernet controllers (eTSECs)
- TCP/IP acceleration and classification capabilities
- IEEE 1588 support
- Lossless flow control
- RGMII, SGMII
- DDR3 with support for a 32-bit data interface (40 bits including ECC),
up to 800 MHz data rate 32/16-bit DDR3 memory controller
- Dedicated security engine featuring trusted boot
- TDM interface
- Dual controller area networks (FlexCAN) controller
- SD/MMC card controller supporting booting from Flash cards
- USB 2.0 host and device controller with an on-chip, high-speed PHY
- Integrated Flash controller (IFC)
- Power Management Controller (PMC)
- Four-channel, general-purpose DMA controller
- I2C controller
- Serial peripheral interface (SPI) controller with master and slave support
- System timers including a periodic interrupt timer, real-time clock,
software watchdog timer, and four general-purpose timers
- Dual DUARTs
Signed-off-by: Poonam Aggrwal poonam.aggrwal@freescale.com Signed-off-by: Dipen Dudhat dipen.dudhat@freescale.com Signed-off-by: Kumar Gala galak@kernel.crashing.org
arch/powerpc/cpu/mpc85xx/Makefile | 1 + arch/powerpc/cpu/mpc8xxx/cpu.c | 2 ++ arch/powerpc/include/asm/config.h | 6 ++++-- arch/powerpc/include/asm/processor.h | 2 ++ drivers/misc/fsl_law.c | 1 + 5 files changed, 10 insertions(+), 2 deletions(-)
applied to 85xx
- k

Dear Kumar Gala,
In message 1295023271-11897-1-git-send-email-galak@kernel.crashing.org you wrote:
From: Poonam Aggrwal poonam.aggrwal@freescale.com
Key Features include of the P1010:
- e500v2 core frequency operation of 500 to 800 MHz
- Power consumption less than 5.0 W at 800 MHz core speed
- Dual SATA 3 Gbps controllers with integrated PHY
- Dual PCI Express controllers
- Three 10/100/1000 Mbps enhanced triple-speed Ethernet controllers (eTSECs)
- TCP/IP acceleration and classification capabilities
- IEEE 1588 support
- Lossless flow control
- RGMII, SGMII
- DDR3 with support for a 32-bit data interface (40 bits including ECC), up to 800 MHz data rate 32/16-bit DDR3 memory controller
- Dedicated security engine featuring trusted boot
- TDM interface
- Dual controller area networks (FlexCAN) controller
- SD/MMC card controller supporting booting from Flash cards
- USB 2.0 host and device controller with an on-chip, high-speed PHY
- Integrated Flash controller (IFC)
- Power Management Controller (PMC)
- Four-channel, general-purpose DMA controller
- I2C controller
- Serial peripheral interface (SPI) controller with master and slave support
- System timers including a periodic interrupt timer, real-time clock, software watchdog timer, and four general-purpose timers
- Dual DUARTs
Signed-off-by: Poonam Aggrwal poonam.aggrwal@freescale.com Signed-off-by: Dipen Dudhat dipen.dudhat@freescale.com Signed-off-by: Kumar Gala galak@kernel.crashing.org
...
--- a/arch/powerpc/include/asm/config.h +++ b/arch/powerpc/include/asm/config.h @@ -69,14 +69,16 @@
/* Enable TSEC2.0 for the platforms that have it if we are using TSEC */ #if defined(CONFIG_TSEC_ENET) && \
- (defined(CONFIG_P1020) || defined(CONFIG_P1011))
- (defined(CONFIG_P1010) || \
defined(CONFIG_P1020) || defined(CONFIG_P1011))
Please keep list sorted.
Best regards,
Wolfgang Denk
participants (2)
-
Kumar Gala
-
Wolfgang Denk