[U-Boot] [PATCH] powerpc/83xx: Fix build issue with ve8313 board due to lbus changes

We get two build errors:
fsl_elbc_nand.c: In function 'fsl_elbc_run_command': fsl_elbc_nand.c:231: error: 'fsl_lbc_t' has no member named 'lsor' make[1]: *** [/work/wd/tmp-ppc/drivers/mtd/nand/fsl_elbc_nand.o] Error 1
and
ve8313.c: In function 'initdram': ve8313.c:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token ve8313.c:104: error: 'lbc' undeclared (first use in this function) ve8313.c:104: error: (Each undeclared identifier is reported only once ve8313.c:104: error: for each function it appears in.) ve8313.c:104: error: 'immap_t' has no member named 'lbus' make[1]: *** [ve8313.o] Error 1 make: *** [board/ve8313/libve8313.a] Error 2
Due to changes to unifiy local bus struct definitions.
Reported-by: Wolfgang Denk wd@denx.de Signed-off-by: Kumar Gala galak@kernel.crashing.org --- board/ve8313/ve8313.c | 2 +- drivers/mtd/nand/fsl_elbc_nand.c | 4 +++- include/configs/ve8313.h | 1 + 3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/board/ve8313/ve8313.c b/board/ve8313/ve8313.c index 8ba1b19..2272ff0 100644 --- a/board/ve8313/ve8313.c +++ b/board/ve8313/ve8313.c @@ -101,7 +101,7 @@ static long fixed_sdram(void) phys_size_t initdram(int board_type) { volatile immap_t *im = (volatile immap_t *)CONFIG_SYS_IMMR; - volatile fsl_lbus_t *lbc = &im->lbus; + volatile fsl_lbc_t *lbc = &im->im_lbc; u32 msize;
if ((im->sysconf.immrbar & IMMRBAR_BASE_ADDR) != (u32)im) diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c index acdb431..ca61daf 100644 --- a/drivers/mtd/nand/fsl_elbc_nand.c +++ b/drivers/mtd/nand/fsl_elbc_nand.c @@ -1,6 +1,6 @@ /* Freescale Enhanced Local Bus Controller FCM NAND driver * - * Copyright (c) 2006-2008 Freescale Semiconductor + * Copyright (c) 2006-2010 Freescale Semiconductor * * Authors: Nick Spence nick.spence@freescale.com, * Scott Wood scottwood@freescale.com @@ -227,8 +227,10 @@ static int fsl_elbc_run_command(struct mtd_info *mtd) in_be32(&lbc->fbar), in_be32(&lbc->fpar), in_be32(&lbc->fbcr), priv->bank);
+#ifdef CONFIG_FSL_ELBC /* execute special operation */ out_be32(&lbc->lsor, priv->bank); +#endif
/* wait for FCM complete flag or timeout */ end_tick = usec2ticks(FCM_TIMEOUT_MSECS * 1000) + get_ticks(); diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h index 1589913..56d24f9 100644 --- a/include/configs/ve8313.h +++ b/include/configs/ve8313.h @@ -39,6 +39,7 @@ #define CONFIG_VE8313 1
#define CONFIG_PCI 1 +#define CONFIG_FSL_ELBC 1
#define CONFIG_BOARD_EARLY_INIT_F 1

On Aug 19, 2010, at 1:50 AM, Kumar Gala wrote:
We get two build errors:
fsl_elbc_nand.c: In function 'fsl_elbc_run_command': fsl_elbc_nand.c:231: error: 'fsl_lbc_t' has no member named 'lsor' make[1]: *** [/work/wd/tmp-ppc/drivers/mtd/nand/fsl_elbc_nand.o] Error 1
and
ve8313.c: In function 'initdram': ve8313.c:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token ve8313.c:104: error: 'lbc' undeclared (first use in this function) ve8313.c:104: error: (Each undeclared identifier is reported only once ve8313.c:104: error: for each function it appears in.) ve8313.c:104: error: 'immap_t' has no member named 'lbus' make[1]: *** [ve8313.o] Error 1 make: *** [board/ve8313/libve8313.a] Error 2
Due to changes to unifiy local bus struct definitions.
Reported-by: Wolfgang Denk wd@denx.de Signed-off-by: Kumar Gala galak@kernel.crashing.org
board/ve8313/ve8313.c | 2 +- drivers/mtd/nand/fsl_elbc_nand.c | 4 +++- include/configs/ve8313.h | 1 + 3 files changed, 5 insertions(+), 2 deletions(-)
applied
- k

On Thu, 19 Aug 2010 01:50:40 -0500 Kumar Gala galak@kernel.crashing.org wrote:
diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c index acdb431..ca61daf 100644 --- a/drivers/mtd/nand/fsl_elbc_nand.c +++ b/drivers/mtd/nand/fsl_elbc_nand.c @@ -1,6 +1,6 @@ /* Freescale Enhanced Local Bus Controller FCM NAND driver
- Copyright (c) 2006-2008 Freescale Semiconductor
- Copyright (c) 2006-2010 Freescale Semiconductor
- Authors: Nick Spence nick.spence@freescale.com,
Scott Wood <scottwood@freescale.com>
@@ -227,8 +227,10 @@ static int fsl_elbc_run_command(struct mtd_info *mtd) in_be32(&lbc->fbar), in_be32(&lbc->fpar), in_be32(&lbc->fbcr), priv->bank);
+#ifdef CONFIG_FSL_ELBC /* execute special operation */ out_be32(&lbc->lsor, priv->bank); +#endif
NACK, if you don't have an ELBC you have no business compiling this file at all. This changes a loud failure to a quiet failure if someone forgets to define this symbol.
-Scott

On Aug 19, 2010, at 11:49 AM, Scott Wood wrote:
On Thu, 19 Aug 2010 01:50:40 -0500 Kumar Gala galak@kernel.crashing.org wrote:
diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c index acdb431..ca61daf 100644 --- a/drivers/mtd/nand/fsl_elbc_nand.c +++ b/drivers/mtd/nand/fsl_elbc_nand.c @@ -1,6 +1,6 @@ /* Freescale Enhanced Local Bus Controller FCM NAND driver
- Copyright (c) 2006-2008 Freescale Semiconductor
- Copyright (c) 2006-2010 Freescale Semiconductor
- Authors: Nick Spence nick.spence@freescale.com,
Scott Wood <scottwood@freescale.com>
@@ -227,8 +227,10 @@ static int fsl_elbc_run_command(struct mtd_info *mtd) in_be32(&lbc->fbar), in_be32(&lbc->fpar), in_be32(&lbc->fbcr), priv->bank);
+#ifdef CONFIG_FSL_ELBC /* execute special operation */ out_be32(&lbc->lsor, priv->bank); +#endif
NACK, if you don't have an ELBC you have no business compiling this file at all. This changes a loud failure to a quiet failure if someone forgets to define this symbol.
Ah, didn't even think about that from the file name, duh!
Will drop the change.
- k

We get two build errors:
fsl_elbc_nand.c: In function 'fsl_elbc_run_command': fsl_elbc_nand.c:231: error: 'fsl_lbc_t' has no member named 'lsor' make[1]: *** [/work/wd/tmp-ppc/drivers/mtd/nand/fsl_elbc_nand.o] Error 1
and
ve8313.c: In function 'initdram': ve8313.c:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token ve8313.c:104: error: 'lbc' undeclared (first use in this function) ve8313.c:104: error: (Each undeclared identifier is reported only once ve8313.c:104: error: for each function it appears in.) ve8313.c:104: error: 'immap_t' has no member named 'lbus' make[1]: *** [ve8313.o] Error 1 make: *** [board/ve8313/libve8313.a] Error 2
Due to changes to unifiy local bus struct definitions.
Reported-by: Wolfgang Denk wd@denx.de Signed-off-by: Kumar Gala galak@kernel.crashing.org --- * Removed change to fsl_elbc_nand.c as Scott points out we shouldn't build this if we aren't already CONFIG_FSL_ELBC.
board/ve8313/ve8313.c | 2 +- include/configs/ve8313.h | 1 + 2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/board/ve8313/ve8313.c b/board/ve8313/ve8313.c index 8ba1b19..2272ff0 100644 --- a/board/ve8313/ve8313.c +++ b/board/ve8313/ve8313.c @@ -101,7 +101,7 @@ static long fixed_sdram(void) phys_size_t initdram(int board_type) { volatile immap_t *im = (volatile immap_t *)CONFIG_SYS_IMMR; - volatile fsl_lbus_t *lbc = &im->lbus; + volatile fsl_lbc_t *lbc = &im->im_lbc; u32 msize;
if ((im->sysconf.immrbar & IMMRBAR_BASE_ADDR) != (u32)im) diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h index 1589913..56d24f9 100644 --- a/include/configs/ve8313.h +++ b/include/configs/ve8313.h @@ -39,6 +39,7 @@ #define CONFIG_VE8313 1
#define CONFIG_PCI 1 +#define CONFIG_FSL_ELBC 1
#define CONFIG_BOARD_EARLY_INIT_F 1

On Aug 19, 2010, at 1:25 PM, Kumar Gala wrote:
We get two build errors:
fsl_elbc_nand.c: In function 'fsl_elbc_run_command': fsl_elbc_nand.c:231: error: 'fsl_lbc_t' has no member named 'lsor' make[1]: *** [/work/wd/tmp-ppc/drivers/mtd/nand/fsl_elbc_nand.o] Error 1
and
ve8313.c: In function 'initdram': ve8313.c:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token ve8313.c:104: error: 'lbc' undeclared (first use in this function) ve8313.c:104: error: (Each undeclared identifier is reported only once ve8313.c:104: error: for each function it appears in.) ve8313.c:104: error: 'immap_t' has no member named 'lbus' make[1]: *** [ve8313.o] Error 1 make: *** [board/ve8313/libve8313.a] Error 2
Due to changes to unifiy local bus struct definitions.
Reported-by: Wolfgang Denk wd@denx.de Signed-off-by: Kumar Gala galak@kernel.crashing.org
ve8313 wasn't in the tree when I submitted my changes but I think this is the right fix - it looks sane WRT to my LBC code merge. That is, assuming, that ve8313 actually has a FSL_ELBC.
Acked-by: Becky Bruce beckyb@kernel.crashing.org
- Removed change to fsl_elbc_nand.c as Scott points out we shouldn't build
this if we aren't already CONFIG_FSL_ELBC.
board/ve8313/ve8313.c | 2 +- include/configs/ve8313.h | 1 + 2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/board/ve8313/ve8313.c b/board/ve8313/ve8313.c index 8ba1b19..2272ff0 100644 --- a/board/ve8313/ve8313.c +++ b/board/ve8313/ve8313.c @@ -101,7 +101,7 @@ static long fixed_sdram(void) phys_size_t initdram(int board_type) { volatile immap_t *im = (volatile immap_t *)CONFIG_SYS_IMMR;
- volatile fsl_lbus_t *lbc = &im->lbus;
volatile fsl_lbc_t *lbc = &im->im_lbc; u32 msize;
if ((im->sysconf.immrbar & IMMRBAR_BASE_ADDR) != (u32)im)
diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h index 1589913..56d24f9 100644 --- a/include/configs/ve8313.h +++ b/include/configs/ve8313.h @@ -39,6 +39,7 @@ #define CONFIG_VE8313 1
#define CONFIG_PCI 1 +#define CONFIG_FSL_ELBC 1
#define CONFIG_BOARD_EARLY_INIT_F 1
-- 1.6.0.6
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

On Fri, 20 Aug 2010 11:28:38 -0500 Becky Bruce beckyb@kernel.crashing.org wrote:
ve8313 wasn't in the tree when I submitted my changes but I think this is the right fix - it looks sane WRT to my LBC code merge. That is, assuming, that ve8313 actually has a FSL_ELBC.
8313 does have eLBC. It's not a board-level issue.
-Scott
participants (3)
-
Becky Bruce
-
Kumar Gala
-
Scott Wood