* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
@ 2008-03-28 15:19 Kim Phillips
2008-03-28 15:34 ` Joakim Tjernlund
0 siblings, 1 reply; 7+ messages in thread
From: Kim Phillips @ 2008-03-28 15:19 UTC (permalink / raw)
To: u-boot
in the spirit of commit 1ced121600b2060ab2ff9f0fddd9421fd70a0dc6,
85xx's "Update SVR numbers to expand support", simplify SPRIDR processing
and processor ID display. Add REVID_{MAJ,MIN}OR macros to make
REVID dependent code simpler. Also added PARTID_NO_E and IS_E_PROCESSOR
convenience macros.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
---
board/freescale/mpc8360emds/mpc8360emds.c | 11 +--
board/freescale/mpc837xerdb/mpc837xerdb.c | 15 +--
cpu/mpc83xx/cpu.c | 169 ++++++++---------------------
include/mpc83xx.h | 91 +++++-----------
4 files changed, 84 insertions(+), 202 deletions(-)
diff --git a/board/freescale/mpc8360emds/mpc8360emds.c b/board/freescale/mpc8360emds/mpc8360emds.c
index d90cdb3..2119320 100644
--- a/board/freescale/mpc8360emds/mpc8360emds.c
+++ b/board/freescale/mpc8360emds/mpc8360emds.c
@@ -98,11 +98,8 @@ int board_early_init_f(void)
/* Enable flash write */
bcsr[0xa] &= ~0x04;
- /* Disable G1TXCLK, G2TXCLK h/w buffers (rev.2 h/w bug workaround) */
- if (immr->sysconf.spridr == SPR_8360_REV20 ||
- immr->sysconf.spridr == SPR_8360E_REV20 ||
- immr->sysconf.spridr == SPR_8360_REV21 ||
- immr->sysconf.spridr == SPR_8360E_REV21)
+ /* Disable G1TXCLK, G2TXCLK h/w buffers (rev.2.x h/w bug workaround) */
+ if (REVID_MAJOR(immr->sysconf.spridr) == 2)
bcsr[0xe] = 0x30;
/* Enable second UART */
@@ -308,8 +305,8 @@ void ft_board_setup(void *blob, bd_t *bd)
* if on mpc8360ea rev. 2.1,
* change both ucc phy-connection-types from rgmii-id to rgmii-rxid
*/
- if (immr->sysconf.spridr == SPR_8360_REV21 ||
- immr->sysconf.spridr == SPR_8360E_REV21) {
+ if ((REVID_MAJOR(immr->sysconf.spridr) == 2) &&
+ (REVID_MINOR(immr->sysconf.spridr) == 1)) {
int nodeoffset;
const char *prop;
int path;
diff --git a/board/freescale/mpc837xerdb/mpc837xerdb.c b/board/freescale/mpc837xerdb/mpc837xerdb.c
index 83fb60d..e054f4e 100644
--- a/board/freescale/mpc837xerdb/mpc837xerdb.c
+++ b/board/freescale/mpc837xerdb/mpc837xerdb.c
@@ -140,24 +140,21 @@ int board_early_init_f(void)
u32 spridr = in_be32(&immr->sysconf.spridr);
/* we check only part num, and don't look for CPU revisions */
- switch (spridr >> 16) {
- case SPR_8379E_REV10 >> 16:
- case SPR_8379_REV10 >> 16:
+ switch (PARTID_NO_E(spridr)) {
+ case SPR_8377:
fsl_setup_serdes(CONFIG_FSL_SERDES1, FSL_SERDES_PROTO_SATA,
FSL_SERDES_CLK_100, FSL_SERDES_VDD_1V);
- fsl_setup_serdes(CONFIG_FSL_SERDES2, FSL_SERDES_PROTO_SATA,
+ fsl_setup_serdes(CONFIG_FSL_SERDES2, FSL_SERDES_PROTO_PEX,
FSL_SERDES_CLK_100, FSL_SERDES_VDD_1V);
break;
- case SPR_8378E_REV10 >> 16:
- case SPR_8378_REV10 >> 16:
+ case SPR_8378:
fsl_setup_serdes(CONFIG_FSL_SERDES1, FSL_SERDES_PROTO_PEX,
FSL_SERDES_CLK_100, FSL_SERDES_VDD_1V);
break;
- case SPR_8377E_REV10 >> 16:
- case SPR_8377_REV10 >> 16:
+ case SPR_8379:
fsl_setup_serdes(CONFIG_FSL_SERDES1, FSL_SERDES_PROTO_SATA,
FSL_SERDES_CLK_100, FSL_SERDES_VDD_1V);
- fsl_setup_serdes(CONFIG_FSL_SERDES2, FSL_SERDES_PROTO_PEX,
+ fsl_setup_serdes(CONFIG_FSL_SERDES2, FSL_SERDES_PROTO_SATA,
FSL_SERDES_CLK_100, FSL_SERDES_VDD_1V);
break;
default:
diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c
index bff3cef..c878268 100644
--- a/cpu/mpc83xx/cpu.c
+++ b/cpu/mpc83xx/cpu.c
@@ -35,6 +35,32 @@
DECLARE_GLOBAL_DATA_PTR;
+struct cpu_type {
+ char name[15];
+ u32 partid;
+};
+
+#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
+
+struct cpu_type cpu_type_list [] = {
+ CPU_TYPE_ENTRY(8311),
+ CPU_TYPE_ENTRY(8313),
+ CPU_TYPE_ENTRY(8314),
+ CPU_TYPE_ENTRY(8315),
+ CPU_TYPE_ENTRY(8321),
+ CPU_TYPE_ENTRY(8323),
+ CPU_TYPE_ENTRY(8343),
+ CPU_TYPE_ENTRY(8347_TBGA_),
+ CPU_TYPE_ENTRY(8347_PBGA_),
+ CPU_TYPE_ENTRY(8349),
+ CPU_TYPE_ENTRY(8358_TBGA_),
+ CPU_TYPE_ENTRY(8358_PBGA_),
+ CPU_TYPE_ENTRY(8360),
+ CPU_TYPE_ENTRY(8377),
+ CPU_TYPE_ENTRY(8378),
+ CPU_TYPE_ENTRY(8379),
+};
+
int checkcpu(void)
{
volatile immap_t *immr;
@@ -42,6 +68,7 @@ int checkcpu(void)
u32 pvr = get_pvr();
u32 spridr;
char buf[32];
+ int i;
immr = (immap_t *)CFG_IMMR;
@@ -69,130 +96,26 @@ int checkcpu(void)
}
spridr = immr->sysconf.spridr;
- switch(spridr) {
- case SPR_8349E_REV10:
- case SPR_8349E_REV11:
- case SPR_8349E_REV31:
- puts("MPC8349E, ");
- break;
- case SPR_8349_REV10:
- case SPR_8349_REV11:
- case SPR_8349_REV31:
- puts("MPC8349, ");
- break;
- case SPR_8347E_REV10_TBGA:
- case SPR_8347E_REV11_TBGA:
- case SPR_8347E_REV31_TBGA:
- case SPR_8347E_REV10_PBGA:
- case SPR_8347E_REV11_PBGA:
- case SPR_8347E_REV31_PBGA:
- puts("MPC8347E, ");
- break;
- case SPR_8347_REV10_TBGA:
- case SPR_8347_REV11_TBGA:
- case SPR_8347_REV31_TBGA:
- case SPR_8347_REV10_PBGA:
- case SPR_8347_REV11_PBGA:
- case SPR_8347_REV31_PBGA:
- puts("MPC8347, ");
- break;
- case SPR_8343E_REV10:
- case SPR_8343E_REV11:
- case SPR_8343E_REV31:
- puts("MPC8343E, ");
- break;
- case SPR_8343_REV10:
- case SPR_8343_REV11:
- case SPR_8343_REV31:
- puts("MPC8343, ");
- break;
- case SPR_8360E_REV10:
- case SPR_8360E_REV11:
- case SPR_8360E_REV12:
- case SPR_8360E_REV20:
- case SPR_8360E_REV21:
- puts("MPC8360E, ");
- break;
- case SPR_8360_REV10:
- case SPR_8360_REV11:
- case SPR_8360_REV12:
- case SPR_8360_REV20:
- case SPR_8360_REV21:
- puts("MPC8360, ");
- break;
- case SPR_8323E_REV10:
- case SPR_8323E_REV11:
- puts("MPC8323E, ");
- break;
- case SPR_8323_REV10:
- case SPR_8323_REV11:
- puts("MPC8323, ");
- break;
- case SPR_8321E_REV10:
- case SPR_8321E_REV11:
- puts("MPC8321E, ");
- break;
- case SPR_8321_REV10:
- case SPR_8321_REV11:
- puts("MPC8321, ");
- break;
- case SPR_8311_REV10:
- puts("MPC8311, ");
- break;
- case SPR_8311E_REV10:
- puts("MPC8311E, ");
- break;
- case SPR_8313_REV10:
- puts("MPC8313, ");
- break;
- case SPR_8313E_REV10:
- puts("MPC8313E, ");
- break;
- case SPR_8315E_REV10:
- puts("MPC8315E, ");
- break;
- case SPR_8315_REV10:
- puts("MPC8315, ");
- break;
- case SPR_8314E_REV10:
- puts("MPC8314E, ");
- break;
- case SPR_8314_REV10:
- puts("MPC8314, ");
- break;
- case SPR_8379E_REV10:
- puts("MPC8379E, ");
- break;
- case SPR_8379_REV10:
- puts("MPC8379, ");
- break;
- case SPR_8378E_REV10:
- puts("MPC8378E, ");
- break;
- case SPR_8378_REV10:
- puts("MPC8378, ");
- break;
- case SPR_8377E_REV10:
- puts("MPC8377E, ");
- break;
- case SPR_8377_REV10:
- puts("MPC8377, ");
- break;
- default:
- printf("Rev: Unknown revision number:%08x\n"
- "Warning: Unsupported cpu revision!\n",spridr);
- return 0;
- }
-#if defined(CONFIG_MPC834X)
- /* Multiple revisons of 834x processors may have the same SPRIDR value.
- * So use PVR to identify the revision number.
- */
- printf("Rev: %02x at %s MHz", PVR_MAJ(pvr)<<4 | PVR_MIN(pvr), strmhz(buf, clock));
-#else
- printf("Rev: %02x@%s MHz", spridr & 0x0000FFFF, strmhz(buf, clock));
-#endif
- printf(", CSB: %4d MHz\n", gd->csb_clk / 1000000);
+ for (i = 0; i < ARRAY_SIZE(cpu_type_list); i++)
+ if (cpu_type_list[i].partid == PARTID_NO_E(spridr)) {
+ puts("MPC");
+ puts(cpu_type_list[i].name);
+ if (IS_E_PROCESSOR(spridr))
+ puts("E");
+ if (REVID_MAJOR(spridr) >= 2)
+ puts("A");
+ printf(", Rev: %d.%d", REVID_MAJOR(spridr),
+ REVID_MINOR(spridr));
+ break;
+ }
+
+ if (i == ARRAY_SIZE(cpu_type_list))
+ printf("(SPRIDR %08x unknown), ", spridr);
+
+ printf(" at %s MHz, ", strmhz(buf, clock));
+
+ printf("CSB: %s MHz\n", strmhz(buf, gd->csb_clk));
return 0;
}
diff --git a/include/mpc83xx.h b/include/mpc83xx.h
index 4ee38aa..d2e1e2b 100644
--- a/include/mpc83xx.h
+++ b/include/mpc83xx.h
@@ -48,71 +48,36 @@
/* SPRIDR - System Part and Revision ID Register
*/
-#define SPRIDR_PARTID 0xFFFF0000 /* Part Identification */
-#define SPRIDR_REVID 0x0000FFFF /* Revision Identification */
-
-#define SPR_8349E_REV10 0x80300100
-#define SPR_8349_REV10 0x80310100
-#define SPR_8347E_REV10_TBGA 0x80320100
-#define SPR_8347_REV10_TBGA 0x80330100
-#define SPR_8347E_REV10_PBGA 0x80340100
-#define SPR_8347_REV10_PBGA 0x80350100
-#define SPR_8343E_REV10 0x80360100
-#define SPR_8343_REV10 0x80370100
-
-#define SPR_8349E_REV11 0x80300101
-#define SPR_8349_REV11 0x80310101
-#define SPR_8347E_REV11_TBGA 0x80320101
-#define SPR_8347_REV11_TBGA 0x80330101
-#define SPR_8347E_REV11_PBGA 0x80340101
-#define SPR_8347_REV11_PBGA 0x80350101
-#define SPR_8343E_REV11 0x80360101
-#define SPR_8343_REV11 0x80370101
-
-#define SPR_8349E_REV31 0x80300300
-#define SPR_8349_REV31 0x80310300
-#define SPR_8347E_REV31_TBGA 0x80320300
-#define SPR_8347_REV31_TBGA 0x80330300
-#define SPR_8347E_REV31_PBGA 0x80340300
-#define SPR_8347_REV31_PBGA 0x80350300
-#define SPR_8343E_REV31 0x80360300
-#define SPR_8343_REV31 0x80370300
-
-#define SPR_8360E_REV10 0x80480010
-#define SPR_8360_REV10 0x80490010
-#define SPR_8360E_REV11 0x80480011
-#define SPR_8360_REV11 0x80490011
-#define SPR_8360E_REV12 0x80480012
-#define SPR_8360_REV12 0x80490012
-#define SPR_8360E_REV20 0x80480020
-#define SPR_8360_REV20 0x80490020
-#define SPR_8360E_REV21 0x80480021
-#define SPR_8360_REV21 0x80490021
-
-#define SPR_8323E_REV10 0x80620010
-#define SPR_8323_REV10 0x80630010
-#define SPR_8321E_REV10 0x80660010
-#define SPR_8321_REV10 0x80670010
-#define SPR_8323E_REV11 0x80620011
-#define SPR_8323_REV11 0x80630011
-#define SPR_8321E_REV11 0x80660011
-#define SPR_8321_REV11 0x80670011
-
-#define SPR_8313E_REV10 0x80B00010
-#define SPR_8313_REV10 0x80B10010
-#define SPR_8311E_REV10 0x80B20010
-#define SPR_8311_REV10 0x80B30010
-#define SPR_8315E_REV10 0x80B40010
-#define SPR_8315_REV10 0x80B50010
-#define SPR_8314E_REV10 0x80B60010
-#define SPR_8314_REV10 0x80B70010
-
-#define SPR_8379E_REV10 0x80C20010
-#define SPR_8379_REV10 0x80C30010
-#define SPR_8378E_REV10 0x80C40010
-#define SPR_8378_REV10 0x80C50010
-#define SPR_8377E_REV10 0x80C60010
-#define SPR_8377_REV10 0x80C70010
+#define SPRIDR_PARTID 0xFFFF0000 /* Part Id */
+#define SPRIDR_REVID 0x0000FFFF /* Revision Id */
+
+#if defined(CONFIG_MPC834X)
+#define REVID_MAJOR(spridr) ((spridr & 0x0000FF00) >> 8)
+#define REVID_MINOR(spridr) (spridr & 0x000000FF)
+#else
+#define REVID_MAJOR(spridr) ((spridr & 0x000000F0) >> 4)
+#define REVID_MINOR(spridr) (spridr & 0x0000000F)
+#endif
+
+#define PARTID_NO_E(spridr) ((spridr & 0xFFFE0000) >> 16)
+#define IS_E_PROCESSOR(spridr) (!(spridr & 0x00010000)) /* has SEC */
+
+#define SPR_8311 0x80B2
+#define SPR_8313 0x80B0
+#define SPR_8314 0x80B6
+#define SPR_8315 0x80B4
+#define SPR_8321 0x8066
+#define SPR_8323 0x8062
+#define SPR_8343 0x8036
+#define SPR_8347_TBGA_ 0x8032
+#define SPR_8347_PBGA_ 0x8034
+#define SPR_8349 0x8030
+#define SPR_8358_TBGA_ 0x804A
+#define SPR_8358_PBGA_ 0x804E
+#define SPR_8360 0x8048
+#define SPR_8377 0x80C6
+#define SPR_8378 0x80C4
+#define SPR_8379 0x80C2
/* SPCR - System Priority Configuration Register
*/
--
1.5.4.4.481.g5075
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 15:19 [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code Kim Phillips
@ 2008-03-28 15:34 ` Joakim Tjernlund
2008-03-28 17:29 ` Kim Phillips
0 siblings, 1 reply; 7+ messages in thread
From: Joakim Tjernlund @ 2008-03-28 15:34 UTC (permalink / raw)
To: u-boot
>
> +struct cpu_type {
> + char name[15];
> + u32 partid;
> +};
> +
> +#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
> +
> +struct cpu_type cpu_type_list [] = {
> + CPU_TYPE_ENTRY(8311),
> + CPU_TYPE_ENTRY(8313),
> + CPU_TYPE_ENTRY(8314),
> + CPU_TYPE_ENTRY(8315),
> + CPU_TYPE_ENTRY(8321),
> + CPU_TYPE_ENTRY(8323),
> + CPU_TYPE_ENTRY(8343),
> + CPU_TYPE_ENTRY(8347_TBGA_),
> + CPU_TYPE_ENTRY(8347_PBGA_),
> + CPU_TYPE_ENTRY(8349),
> + CPU_TYPE_ENTRY(8358_TBGA_),
> + CPU_TYPE_ENTRY(8358_PBGA_),
> + CPU_TYPE_ENTRY(8360),
> + CPU_TYPE_ENTRY(8377),
> + CPU_TYPE_ENTRY(8378),
> + CPU_TYPE_ENTRY(8379),
> +};
> +
Global data, could become a problem if/when full relocation is impl. Not
a big deal, just figured I should mention it.
Jocke
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 15:34 ` Joakim Tjernlund
@ 2008-03-28 17:29 ` Kim Phillips
2008-03-28 20:01 ` Joakim Tjernlund
0 siblings, 1 reply; 7+ messages in thread
From: Kim Phillips @ 2008-03-28 17:29 UTC (permalink / raw)
To: u-boot
On Fri, 28 Mar 2008 16:34:23 +0100
Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:
>
> Global data, could become a problem if/when full relocation is impl. Not
> a big deal, just figured I should mention it.
would you rather something like this then? :
diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c
index c878268..36de78d 100644
--- a/cpu/mpc83xx/cpu.c
+++ b/cpu/mpc83xx/cpu.c
@@ -35,32 +35,6 @@
DECLARE_GLOBAL_DATA_PTR;
-struct cpu_type {
- char name[15];
- u32 partid;
-};
-
-#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
-
-struct cpu_type cpu_type_list [] = {
- CPU_TYPE_ENTRY(8311),
- CPU_TYPE_ENTRY(8313),
- CPU_TYPE_ENTRY(8314),
- CPU_TYPE_ENTRY(8315),
- CPU_TYPE_ENTRY(8321),
- CPU_TYPE_ENTRY(8323),
- CPU_TYPE_ENTRY(8343),
- CPU_TYPE_ENTRY(8347_TBGA_),
- CPU_TYPE_ENTRY(8347_PBGA_),
- CPU_TYPE_ENTRY(8349),
- CPU_TYPE_ENTRY(8358_TBGA_),
- CPU_TYPE_ENTRY(8358_PBGA_),
- CPU_TYPE_ENTRY(8360),
- CPU_TYPE_ENTRY(8377),
- CPU_TYPE_ENTRY(8378),
- CPU_TYPE_ENTRY(8379),
-};
-
int checkcpu(void)
{
volatile immap_t *immr;
@@ -70,6 +44,29 @@ int checkcpu(void)
char buf[32];
int i;
+#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
+ const struct cpu_type {
+ char name[15];
+ u32 partid;
+ } cpu_type_list [] = {
+ CPU_TYPE_ENTRY(8311),
+ CPU_TYPE_ENTRY(8313),
+ CPU_TYPE_ENTRY(8314),
+ CPU_TYPE_ENTRY(8315),
+ CPU_TYPE_ENTRY(8321),
+ CPU_TYPE_ENTRY(8323),
+ CPU_TYPE_ENTRY(8343),
+ CPU_TYPE_ENTRY(8347_TBGA_),
+ CPU_TYPE_ENTRY(8347_PBGA_),
+ CPU_TYPE_ENTRY(8349),
+ CPU_TYPE_ENTRY(8358_TBGA_),
+ CPU_TYPE_ENTRY(8358_PBGA_),
+ CPU_TYPE_ENTRY(8360),
+ CPU_TYPE_ENTRY(8377),
+ CPU_TYPE_ENTRY(8378),
+ CPU_TYPE_ENTRY(8379),
+ };
+
immr = (immap_t *)CFG_IMMR;
puts("CPU: ");
Kim
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 17:29 ` Kim Phillips
@ 2008-03-28 20:01 ` Joakim Tjernlund
2008-03-28 22:41 ` Kim Phillips
0 siblings, 1 reply; 7+ messages in thread
From: Joakim Tjernlund @ 2008-03-28 20:01 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Kim Phillips [mailto:kim.phillips at freescale.com]
> Sent: den 28 mars 2008 18:30
> To: joakim.tjernlund at transmode.se
> Cc: u-boot-users at lists.sourceforge.net
> Subject: Re: [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR)
> code
>
> On Fri, 28 Mar 2008 16:34:23 +0100
> Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:
>
> >
> > Global data, could become a problem if/when full relocation is impl. Not
> > a big deal, just figured I should mention it.
>
> would you rather something like this then? :
>
> diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c
> index c878268..36de78d 100644
> --- a/cpu/mpc83xx/cpu.c
> +++ b/cpu/mpc83xx/cpu.c
> @@ -35,32 +35,6 @@
>
> DECLARE_GLOBAL_DATA_PTR;
>
> -struct cpu_type {
> - char name[15];
> - u32 partid;
> -};
> -
> -#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
> -
> -struct cpu_type cpu_type_list [] = {
> - CPU_TYPE_ENTRY(8311),
> - CPU_TYPE_ENTRY(8313),
> - CPU_TYPE_ENTRY(8314),
> - CPU_TYPE_ENTRY(8315),
> - CPU_TYPE_ENTRY(8321),
> - CPU_TYPE_ENTRY(8323),
> - CPU_TYPE_ENTRY(8343),
> - CPU_TYPE_ENTRY(8347_TBGA_),
> - CPU_TYPE_ENTRY(8347_PBGA_),
> - CPU_TYPE_ENTRY(8349),
> - CPU_TYPE_ENTRY(8358_TBGA_),
> - CPU_TYPE_ENTRY(8358_PBGA_),
> - CPU_TYPE_ENTRY(8360),
> - CPU_TYPE_ENTRY(8377),
> - CPU_TYPE_ENTRY(8378),
> - CPU_TYPE_ENTRY(8379),
> -};
> -
> int checkcpu(void)
> {
> volatile immap_t *immr;
> @@ -70,6 +44,29 @@ int checkcpu(void)
> char buf[32];
> int i;
>
> +#define CPU_TYPE_ENTRY(x) {#x, SPR_##x}
> + const struct cpu_type {
> + char name[15];
> + u32 partid;
> + } cpu_type_list [] = {
> + CPU_TYPE_ENTRY(8311),
> + CPU_TYPE_ENTRY(8313),
> + CPU_TYPE_ENTRY(8314),
> + CPU_TYPE_ENTRY(8315),
> + CPU_TYPE_ENTRY(8321),
> + CPU_TYPE_ENTRY(8323),
> + CPU_TYPE_ENTRY(8343),
> + CPU_TYPE_ENTRY(8347_TBGA_),
> + CPU_TYPE_ENTRY(8347_PBGA_),
> + CPU_TYPE_ENTRY(8349),
> + CPU_TYPE_ENTRY(8358_TBGA_),
> + CPU_TYPE_ENTRY(8358_PBGA_),
> + CPU_TYPE_ENTRY(8360),
> + CPU_TYPE_ENTRY(8377),
> + CPU_TYPE_ENTRY(8378),
> + CPU_TYPE_ENTRY(8379),
> + };
> +
> immr = (immap_t *)CFG_IMMR;
>
> puts("CPU: ");
>
> Kim
It is still global data, but the const makes it smaller and should
be there if accepted. Like I said, it is just a minor comment as
u-boot isn't ready for full relocation yet.
BTW, what happened to relocation stuff Grant was doing? It is
still disabled, I never had any problems so perhaps time to
turn it on again? it might even make u-boot smaller once all the
old manuel relocation code has been properly disabled.
Jocke
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 20:01 ` Joakim Tjernlund
@ 2008-03-28 22:41 ` Kim Phillips
2008-03-28 23:12 ` Grant Likely
0 siblings, 1 reply; 7+ messages in thread
From: Kim Phillips @ 2008-03-28 22:41 UTC (permalink / raw)
To: u-boot
On Fri, 28 Mar 2008 21:01:30 +0100
"Joakim Tjernlund" <Joakim.Tjernlund@transmode.se> wrote:
> BTW, what happened to relocation stuff Grant was doing? It is
> still disabled, I never had any problems so perhaps time to
> turn it on again? it might even make u-boot smaller once all the
> old manuel relocation code has been properly disabled.
>
beats me. I'm all for it, but I think we're still supposed to support
a wide range of toolchain versions (the reason Grant's stuff got
reverted).
Kim
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 22:41 ` Kim Phillips
@ 2008-03-28 23:12 ` Grant Likely
2008-03-28 23:27 ` Joakim Tjernlund
0 siblings, 1 reply; 7+ messages in thread
From: Grant Likely @ 2008-03-28 23:12 UTC (permalink / raw)
To: u-boot
On Fri, Mar 28, 2008 at 4:41 PM, Kim Phillips
<kim.phillips@freescale.com> wrote:
> On Fri, 28 Mar 2008 21:01:30 +0100
> "Joakim Tjernlund" <Joakim.Tjernlund@transmode.se> wrote:
>
> > BTW, what happened to relocation stuff Grant was doing? It is
> > still disabled, I never had any problems so perhaps time to
> > turn it on again? it might even make u-boot smaller once all the
> > old manuel relocation code has been properly disabled.
> >
> beats me. I'm all for it, but I think we're still supposed to support
> a wide range of toolchain versions (the reason Grant's stuff got
> reverted).
The main problem is not really understanding how gcc wants to handle
relocation. I've got no idea what needs to be different between
versions of gcc. Someone with greater gcc powers than I needs to take
a look at it.
g.
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code
2008-03-28 23:12 ` Grant Likely
@ 2008-03-28 23:27 ` Joakim Tjernlund
0 siblings, 0 replies; 7+ messages in thread
From: Joakim Tjernlund @ 2008-03-28 23:27 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: glikely at secretlab.ca [mailto:glikely at secretlab.ca] On Behalf Of Grant Likely
> Sent: den 29 mars 2008 00:12
> To: Kim Phillips
> Cc: Joakim Tjernlund; u-boot-users at lists.sourceforge.net
> Subject: Re: [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR)
> code
>
> On Fri, Mar 28, 2008 at 4:41 PM, Kim Phillips
> <kim.phillips@freescale.com> wrote:
> > On Fri, 28 Mar 2008 21:01:30 +0100
> > "Joakim Tjernlund" <Joakim.Tjernlund@transmode.se> wrote:
> >
> > > BTW, what happened to relocation stuff Grant was doing? It is
> > > still disabled, I never had any problems so perhaps time to
> > > turn it on again? it might even make u-boot smaller once all the
> > > old manuel relocation code has been properly disabled.
> > >
> > beats me. I'm all for it, but I think we're still supposed to support
> > a wide range of toolchain versions (the reason Grant's stuff got
> > reverted).
>
> The main problem is not really understanding how gcc wants to handle
> relocation. I've got no idea what needs to be different between
> versions of gcc. Someone with greater gcc powers than I needs to take
> a look at it.
>
> g.
I am no gcc expert, but perhaps listing which gcc's that don't work is a god start?
What archs were problematic? only ppc? There was a register bug for ppc that WD
fixed a little while ago, maybe that will help.
Jocke
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-03-28 23:27 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-28 15:19 [U-Boot-Users] [PATCH 3/3] mpc83xx: cleanup System Part and Revision ID Register (SPRIDR) code Kim Phillips
2008-03-28 15:34 ` Joakim Tjernlund
2008-03-28 17:29 ` Kim Phillips
2008-03-28 20:01 ` Joakim Tjernlund
2008-03-28 22:41 ` Kim Phillips
2008-03-28 23:12 ` Grant Likely
2008-03-28 23:27 ` Joakim Tjernlund
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.