All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/6] sbc8548 update; remaining bits for 85xx tree.
@ 2009-09-21  0:36 Paul Gortmaker
  2009-09-21  0:36 ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Paul Gortmaker
  0 siblings, 1 reply; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

This is the remaining bits that weren't merged to 85xx, with the
the requested fixes of course.  Those being:

sbc8548: correct local bus SDRAM size from 64M to 128M
	-now uses I/O accesors on BR4/OR4

sbc8548: update PCI/PCI-e support code
	-redone to make use of the code de-duplification effort.

sbc8548: allow enabling PCI via a make config option
	-uses the "-t" to de-clutter the toplevel Makefile

New patches are as follows:
 fsl_pci: create a SET_STD_PCI_INFO() helper wrapper
	-I believe this was meant to be created, but wasn't.

sbc8548: use I/O accessors
	-uses the I/O accessors through the whole board file.

sbc8548: remove eTSEC3/4 voltage hack
	-noticed this while doing above; sbc doesn't need it.

Board still seems happy; I only noticed one cosmetic thing, that
the new fsl_pci_init_port() prints "PCIE" always; even when the
port is PCI and not PCI-e (see below).

Thanks,
Paul.

U-Boot 2009.08-06732-g70c5c3d (Sep 20 2009 - 20:11:42)                          
                                                                                
CPU:   8548E, Version: 2.0, (0x80390020)                                        
Core:  E500, Version: 2.0, (0x80210020)                                         
Clock Configuration:                                                            
       CPU0:990  MHz,                                                           
       CCB:396  MHz,                                                            
       DDR:198  MHz (396 MT/s data rate), LBC:99   MHz                          
L1:    D-cache 32 kB enabled                                                    
       I-cache 32 kB enabled                                                    
Board: Wind River SBC8548 Rev. 0x2                                              
I2C:   ready                                                                    
DRAM:  Initializing                                                             
    SDRAM: 128 MB                                                               
    DDR: 256 MB                                                                 
FLASH: 72 MB                                                                    
L2:    512 KB enabled                                                           
    PCI host: 64 bit, 66 MHz, sync, arbiter                                     
               Scanning PCI bus 00                                              
        00  01  8086  1026  0200  00                                            
    PCIE1 on bus 00 - 00                                                        
                                                                                
    PCIE at base address e000a000                                               
               Scanning PCI bus 02                                              
        02  00  1148  9e00  0200  00                                            
    PCIE1 on bus 01 - 02                                                        
                                                                                
In:    serial                                                                   
Out:   serial                                                                   
Err:   serial                                                                   
Net:   eTSEC0, eTSEC1                                                           
=>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper
  2009-09-21  0:36 [U-Boot] [PATCH 0/6] sbc8548 update; remaining bits for 85xx tree Paul Gortmaker
@ 2009-09-21  0:36 ` Paul Gortmaker
  2009-09-21  0:36   ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Paul Gortmaker
  2009-09-21 17:01   ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Kumar Gala
  0 siblings, 2 replies; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

Recycle the recently added PCI-e wrapper used to reduce board
duplication of code by creating a similar version for plain PCI.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 include/asm-ppc/fsl_pci.h |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/include/asm-ppc/fsl_pci.h b/include/asm-ppc/fsl_pci.h
index b9972da..2790da7 100644
--- a/include/asm-ppc/fsl_pci.h
+++ b/include/asm-ppc/fsl_pci.h
@@ -173,6 +173,18 @@ struct fsl_pci_info {
 int fsl_pci_init_port(struct fsl_pci_info *pci_info,
 				struct pci_controller *hose, int busno);
 
+#define SET_STD_PCI_INFO(x, num) \
+{			\
+	x.regs = CONFIG_SYS_PCI##num##_ADDR;	\
+	x.mem_bus = CONFIG_SYS_PCI##num##_MEM_BUS; \
+	x.mem_phys = CONFIG_SYS_PCI##num##_MEM_PHYS; \
+	x.mem_size = CONFIG_SYS_PCI##num##_MEM_SIZE; \
+	x.io_bus = CONFIG_SYS_PCI##num##_IO_BUS; \
+	x.io_phys = CONFIG_SYS_PCI##num##_IO_PHYS; \
+	x.io_size = CONFIG_SYS_PCI##num##_IO_SIZE; \
+	x.pci_num = num; \
+}
+
 #define SET_STD_PCIE_INFO(x, num) \
 {			\
 	x.regs = CONFIG_SYS_PCIE##num##_ADDR;	\
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack
  2009-09-21  0:36 ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Paul Gortmaker
@ 2009-09-21  0:36   ` Paul Gortmaker
  2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
  2009-09-21 17:00     ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Kumar Gala
  2009-09-21 17:01   ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Kumar Gala
  1 sibling, 2 replies; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

With only eTSEC1 and 2 being brought out to RJ-45 connectors, we
aren't interested in the eTSEC3/4 voltage hack on this board

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 board/sbc8548/sbc8548.c |    6 ------
 1 files changed, 0 insertions(+), 6 deletions(-)

diff --git a/board/sbc8548/sbc8548.c b/board/sbc8548/sbc8548.c
index 0316581..96a5f42 100644
--- a/board/sbc8548/sbc8548.c
+++ b/board/sbc8548/sbc8548.c
@@ -52,7 +52,6 @@ int board_early_init_f (void)
 
 int checkboard (void)
 {
-	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
 	volatile ccsr_local_ecm_t *ecm = (void *)(CONFIG_SYS_MPC85xx_ECM_ADDR);
 	volatile u_char *rev= (void *)CONFIG_SYS_BD_REV;
 
@@ -64,11 +63,6 @@ int checkboard (void)
 	 */
 	local_bus_init ();
 
-	/*
-	 * Hack TSEC 3 and 4 IO voltages.
-	 */
-	gur->tsec34ioovcr = 0xe7e0;	/*  1110 0111 1110 0xxx */
-
 	ecm->eedr = 0xffffffff;		/* clear ecm errors */
 	ecm->eeer = 0xffffffff;		/* enable ecm errors */
 	return 0;
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors
  2009-09-21  0:36   ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Paul Gortmaker
@ 2009-09-21  0:36     ` Paul Gortmaker
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
                         ` (2 more replies)
  2009-09-21 17:00     ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Kumar Gala
  1 sibling, 3 replies; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

Sweep throught the board specific file and replace the various
register proddings with the equivalent I/O accessors.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 board/sbc8548/sbc8548.c |   91 +++++++++++++++++++++++------------------------
 1 files changed, 45 insertions(+), 46 deletions(-)

diff --git a/board/sbc8548/sbc8548.c b/board/sbc8548/sbc8548.c
index 96a5f42..ce998e1 100644
--- a/board/sbc8548/sbc8548.c
+++ b/board/sbc8548/sbc8548.c
@@ -56,15 +56,15 @@ int checkboard (void)
 	volatile u_char *rev= (void *)CONFIG_SYS_BD_REV;
 
 	printf ("Board: Wind River SBC8548 Rev. 0x%01x\n",
-			(*rev) >> 4);
+			in_8(rev) >> 4);
 
 	/*
 	 * Initialize local bus.
 	 */
 	local_bus_init ();
 
-	ecm->eedr = 0xffffffff;		/* clear ecm errors */
-	ecm->eeer = 0xffffffff;		/* enable ecm errors */
+	out_be32(&ecm->eedr, 0xffffffff);	/* clear ecm errors */
+	out_be32(&ecm->eeer, 0xffffffff);	/* enable ecm errors */
 	return 0;
 }
 
@@ -86,7 +86,7 @@ initdram(int board_type)
 
 		volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
 
-		gur->ddrdllcr = 0x81000000;
+		out_be32(&gur->ddrdllcr, 0x81000000);
 		asm("sync;isync;msync");
 		udelay(200);
 	}
@@ -123,24 +123,24 @@ local_bus_init(void)
 	sys_info_t sysinfo;
 
 	get_sys_info(&sysinfo);
-	clkdiv = (lbc->lcrr & LCRR_CLKDIV) * 2;
+	clkdiv = (in_be32(&lbc->lcrr) & LCRR_CLKDIV) * 2;
 	lbc_hz = sysinfo.freqSystemBus / 1000000 / clkdiv;
 
-	gur->lbiuiplldcr1 = 0x00078080;
+	out_be32(&gur->lbiuiplldcr1, 0x00078080);
 	if (clkdiv == 16) {
-		gur->lbiuiplldcr0 = 0x7c0f1bf0;
+		out_be32(&gur->lbiuiplldcr0, 0x7c0f1bf0);
 	} else if (clkdiv == 8) {
-		gur->lbiuiplldcr0 = 0x6c0f1bf0;
+		out_be32(&gur->lbiuiplldcr0, 0x6c0f1bf0);
 	} else if (clkdiv == 4) {
-		gur->lbiuiplldcr0 = 0x5c0f1bf0;
+		out_be32(&gur->lbiuiplldcr0, 0x5c0f1bf0);
 	}
 
-	lbc->lcrr |= 0x00030000;
+	setbits_be32(&lbc->lcrr, 0x00030000);
 
 	asm("sync;isync;msync");
 
-	lbc->ltesr = 0xffffffff;	/* Clear LBC error interrupts */
-	lbc->lteir = 0xffffffff;	/* Enable LBC error interrupts */
+	out_be32(&lbc->ltesr, 0xffffffff);	/* Clear LBC error IRQs */
+	out_be32(&lbc->lteir, 0xffffffff);	/* Enable LBC error IRQs */
 }
 
 /*
@@ -163,18 +163,18 @@ sdram_init(void)
 	/*
 	 * Setup SDRAM Base and Option Registers
 	 */
-	lbc->or3 = CONFIG_SYS_OR3_PRELIM;
+	out_be32(&lbc->or3, CONFIG_SYS_OR3_PRELIM);
 	asm("msync");
 
-	lbc->br3 = CONFIG_SYS_BR3_PRELIM;
+	out_be32(&lbc->br3, CONFIG_SYS_BR3_PRELIM);
 	asm("msync");
 
-	lbc->lbcr = CONFIG_SYS_LBC_LBCR;
+	out_be32(&lbc->lbcr, CONFIG_SYS_LBC_LBCR);
 	asm("msync");
 
 
-	lbc->lsrt = CONFIG_SYS_LBC_LSRT;
-	lbc->mrtpr = CONFIG_SYS_LBC_MRTPR;
+	out_be32(&lbc->lsrt,  CONFIG_SYS_LBC_LSRT);
+	out_be32(&lbc->mrtpr, CONFIG_SYS_LBC_MRTPR);
 	asm("msync");
 
 	/*
@@ -186,7 +186,7 @@ sdram_init(void)
 	/*
 	 * Issue PRECHARGE ALL command.
 	 */
-	lbc->lsdmr = lsdmr_common | LSDMR_OP_PCHALL;
+	out_be32(&lbc->lsdmr, lsdmr_common | LSDMR_OP_PCHALL);
 	asm("sync;msync");
 	*sdram_addr = 0xff;
 	ppcDcbf((unsigned long) sdram_addr);
@@ -196,7 +196,7 @@ sdram_init(void)
 	 * Issue 8 AUTO REFRESH commands.
 	 */
 	for (idx = 0; idx < 8; idx++) {
-		lbc->lsdmr = lsdmr_common | LSDMR_OP_ARFRSH;
+		out_be32(&lbc->lsdmr, lsdmr_common | LSDMR_OP_ARFRSH);
 		asm("sync;msync");
 		*sdram_addr = 0xff;
 		ppcDcbf((unsigned long) sdram_addr);
@@ -206,7 +206,7 @@ sdram_init(void)
 	/*
 	 * Issue 8 MODE-set command.
 	 */
-	lbc->lsdmr = lsdmr_common | LSDMR_OP_MRW;
+	out_be32(&lbc->lsdmr, lsdmr_common | LSDMR_OP_MRW);
 	asm("sync;msync");
 	*sdram_addr = 0xff;
 	ppcDcbf((unsigned long) sdram_addr);
@@ -215,7 +215,7 @@ sdram_init(void)
 	/*
 	 * Issue NORMAL OP command.
 	 */
-	lbc->lsdmr = lsdmr_common | LSDMR_OP_NORMAL;
+	out_be32(&lbc->lsdmr, lsdmr_common | LSDMR_OP_NORMAL);
 	asm("sync;msync");
 	*sdram_addr = 0xff;
 	ppcDcbf((unsigned long) sdram_addr);
@@ -263,45 +263,44 @@ testdram(void)
 }
 #endif
 
-#if	!defined(CONFIG_SPD_EEPROM)
+#if !defined(CONFIG_SPD_EEPROM)
+#define CONFIG_SYS_DDR_CONTROL 0xc300c000
 /*************************************************************************
  *  fixed_sdram init -- doesn't use serial presence detect.
  *  assumes 256MB DDR2 SDRAM SODIMM, without ECC, running at DDR400 speed.
  ************************************************************************/
 long int fixed_sdram (void)
 {
-    #define CONFIG_SYS_DDR_CONTROL 0xc300c000
-
 	volatile ccsr_ddr_t *ddr = (void *)(CONFIG_SYS_MPC85xx_DDR_ADDR);
 
-	ddr->cs0_bnds		= 0x0000007f;
-	ddr->cs1_bnds		= 0x008000ff;
-	ddr->cs2_bnds		= 0x00000000;
-	ddr->cs3_bnds		= 0x00000000;
-	ddr->cs0_config		= 0x80010101;
-	ddr->cs1_config		= 0x80010101;
-	ddr->cs2_config		= 0x00000000;
-	ddr->cs3_config		= 0x00000000;
-	ddr->timing_cfg_3		= 0x00000000;
-	ddr->timing_cfg_0	= 0x00220802;
-	ddr->timing_cfg_1	= 0x38377322;
-	ddr->timing_cfg_2	= 0x0fa044C7;
-	ddr->sdram_cfg		= 0x4300C000;
-	ddr->sdram_cfg_2	= 0x24401000;
-	ddr->sdram_mode		= 0x23C00542;
-	ddr->sdram_mode_2	= 0x00000000;
-	ddr->sdram_interval	= 0x05080100;
-	ddr->sdram_md_cntl	= 0x00000000;
-	ddr->sdram_data_init	= 0x00000000;
-	ddr->sdram_clk_cntl	= 0x03800000;
+	out_be32(&ddr->cs0_bnds, 0x0000007f);
+	out_be32(&ddr->cs1_bnds, 0x008000ff);
+	out_be32(&ddr->cs2_bnds, 0x00000000);
+	out_be32(&ddr->cs3_bnds, 0x00000000);
+	out_be32(&ddr->cs0_config, 0x80010101);
+	out_be32(&ddr->cs1_config, 0x80010101);
+	out_be32(&ddr->cs2_config, 0x00000000);
+	out_be32(&ddr->cs3_config, 0x00000000);
+	out_be32(&ddr->timing_cfg_3, 0x00000000);
+	out_be32(&ddr->timing_cfg_0, 0x00220802);
+	out_be32(&ddr->timing_cfg_1, 0x38377322);
+	out_be32(&ddr->timing_cfg_2, 0x0fa044C7);
+	out_be32(&ddr->sdram_cfg, 0x4300C000);
+	out_be32(&ddr->sdram_cfg_2, 0x24401000);
+	out_be32(&ddr->sdram_mode, 0x23C00542);
+	out_be32(&ddr->sdram_mode_2, 0x00000000);
+	out_be32(&ddr->sdram_interval, 0x05080100);
+	out_be32(&ddr->sdram_md_cntl, 0x00000000);
+	out_be32(&ddr->sdram_data_init, 0x00000000);
+	out_be32(&ddr->sdram_clk_cntl, 0x03800000);
 	asm("sync;isync;msync");
 	udelay(500);
 
 	#if defined (CONFIG_DDR_ECC)
 	  /* Enable ECC checking */
-	  ddr->sdram_cfg = (CONFIG_SYS_DDR_CONTROL | 0x20000000);
+	  out_be32(&ddr->sdram_cfg, CONFIG_SYS_DDR_CONTROL | 0x20000000);
 	#else
-	  ddr->sdram_cfg = CONFIG_SYS_DDR_CONTROL;
+	  out_be32(&ddr->sdram_cfg, CONFIG_SYS_DDR_CONTROL);
 	#endif
 
 	return CONFIG_SYS_SDRAM_SIZE * 1024 * 1024;
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M
  2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
@ 2009-09-21  0:36       ` Paul Gortmaker
  2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
                           ` (2 more replies)
  2009-09-21  1:37       ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Graeme Russ
  2009-09-21 17:00       ` Kumar Gala
  2 siblings, 3 replies; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

The size of the LB SDRAM on this board is 128MB, spanning CS3
and CS4.  It was previously only being configured for 64MB on
CS3, since that was what the original codebase of the MPC8548CDS
had.  In addition to setting up BR4/OR4, this also adds the TLB
entry for the second half of the SDRAM.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 board/sbc8548/sbc8548.c   |    8 +++++++-
 board/sbc8548/tlb.c       |   22 +++++++++++++++-------
 include/configs/sbc8548.h |   42 ++++++++++++++++++++++++++++++++++++++----
 3 files changed, 60 insertions(+), 12 deletions(-)

diff --git a/board/sbc8548/sbc8548.c b/board/sbc8548/sbc8548.c
index ce998e1..f4bfd92 100644
--- a/board/sbc8548/sbc8548.c
+++ b/board/sbc8548/sbc8548.c
@@ -149,7 +149,7 @@ local_bus_init(void)
 void
 sdram_init(void)
 {
-#if defined(CONFIG_SYS_OR3_PRELIM) && defined(CONFIG_SYS_BR3_PRELIM)
+#if defined(CONFIG_SYS_LBC_SDRAM_SIZE)
 
 	uint idx;
 	volatile ccsr_lbc_t *lbc = (void *)(CONFIG_SYS_MPC85xx_LBC_ADDR);
@@ -169,6 +169,12 @@ sdram_init(void)
 	out_be32(&lbc->br3, CONFIG_SYS_BR3_PRELIM);
 	asm("msync");
 
+	out_be32(&lbc->or4, CONFIG_SYS_OR4_PRELIM);
+	asm("msync");
+
+	out_be32(&lbc->br4, CONFIG_SYS_BR4_PRELIM);
+	asm("msync");
+
 	out_be32(&lbc->lbcr, CONFIG_SYS_LBC_LBCR);
 	asm("msync");
 
diff --git a/board/sbc8548/tlb.c b/board/sbc8548/tlb.c
index dbb9ba8..e173245 100644
--- a/board/sbc8548/tlb.c
+++ b/board/sbc8548/tlb.c
@@ -88,14 +88,22 @@ struct fsl_e_tlb_entry tlb_table[] = {
 
 	/*
 	 * TLB 5:	64M	Cacheable, non-guarded
-	 * 0xf0000000	64M	LBC SDRAM
+	 * 0xf0000000	64M	LBC SDRAM First half
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_LBC_SDRAM_BASE, CONFIG_SYS_LBC_SDRAM_BASE,
 		      MAS3_SX|MAS3_SW|MAS3_SR, 0,
 		      0, 5, BOOKE_PAGESZ_64M, 1),
 
 	/*
-	 * TLB 6:	16M	Cacheable, non-guarded
+	 * TLB 6:	64M	Cacheable, non-guarded
+	 * 0xf4000000	64M	LBC SDRAM Second half
+	 */
+	SET_TLB_ENTRY(1, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000,
+		      MAS3_SX|MAS3_SW|MAS3_SR, 0,
+		      0, 6, BOOKE_PAGESZ_64M, 1),
+
+	/*
+	 * TLB 7:	16M	Cacheable, non-guarded
 	 * 0xf8000000	1M	7-segment LED display
 	 * 0xf8100000	1M	User switches
 	 * 0xf8300000	1M	Board revision
@@ -103,23 +111,23 @@ struct fsl_e_tlb_entry tlb_table[] = {
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_EPLD_BASE, CONFIG_SYS_EPLD_BASE,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 6, BOOKE_PAGESZ_16M, 1),
+		      0, 7, BOOKE_PAGESZ_16M, 1),
 
 	/*
-	 * TLB 7:	4M	Non-cacheable, guarded
+	 * TLB 8:	4M	Non-cacheable, guarded
 	 * 0xfb800000	4M	1st 4MB block of 64MB user FLASH
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_ALT_FLASH, CONFIG_SYS_ALT_FLASH,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 7, BOOKE_PAGESZ_4M, 1),
+		      0, 8, BOOKE_PAGESZ_4M, 1),
 
 	/*
-	 * TLB 8:	4M	Non-cacheable, guarded
+	 * TLB 9:	4M	Non-cacheable, guarded
 	 * 0xfbc00000	4M	2nd 4MB block of 64MB user FLASH
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_ALT_FLASH + 0x400000, CONFIG_SYS_ALT_FLASH + 0x400000,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 8, BOOKE_PAGESZ_4M, 1),
+		      0, 9, BOOKE_PAGESZ_4M, 1),
 
 };
 
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index 8edba20..4751013 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -196,13 +196,13 @@
 #define CONFIG_SYS_EEPROM_BASE		0xf8b00000
 
 /*
- * SDRAM on the Local Bus
+ * SDRAM on the Local Bus (CS3 and CS4)
  */
 #define CONFIG_SYS_LBC_SDRAM_BASE	0xf0000000	/* Localbus SDRAM */
-#define CONFIG_SYS_LBC_SDRAM_SIZE	64		/* LBC SDRAM is 64MB */
+#define CONFIG_SYS_LBC_SDRAM_SIZE	128		/* LBC SDRAM is 128MB */
 
 /*
- * Base Register 3 and Option Register 3 configure SDRAM.
+ * Base Register 3 and Option Register 3 configure the 1st 1/2 SDRAM.
  * The SDRAM base address, CONFIG_SYS_LBC_SDRAM_BASE, is 0xf0000000.
  *
  * For BR3, need:
@@ -220,7 +220,7 @@
 #define CONFIG_SYS_BR3_PRELIM		0xf0001861
 
 /*
- * The SDRAM size in MB, CONFIG_SYS_LBC_SDRAM_SIZE, is 64.
+ * The SDRAM size in MB, of 1/2 CONFIG_SYS_LBC_SDRAM_SIZE, is 64.
  *
  * For OR3, need:
  *    64MB mask for AM, OR3[0:7] = 1111 1100
@@ -235,6 +235,40 @@
 
 #define CONFIG_SYS_OR3_PRELIM		0xfc006cc0
 
+/*
+ * Base Register 4 and Option Register 4 configure the 2nd 1/2 SDRAM.
+ * The base address, (SDRAM_BASE + 1/2*SIZE), is 0xf4000000.
+ *
+ * For BR4, need:
+ *    Base address of 0xf4000000 = BR[0:16] = 1111 0100 0000 0000 0
+ *    port-size = 32-bits = BR2[19:20] = 11
+ *    no parity checking = BR2[21:22] = 00
+ *    SDRAM for MSEL = BR2[24:26] = 011
+ *    Valid = BR[31] = 1
+ *
+ * 0    4    8    12   16   20   24   28
+ * 1111 0000 0000 0000 0001 1000 0110 0001 = f4001861
+ *
+ */
+
+#define CONFIG_SYS_BR4_PRELIM		0xf4001861
+
+/*
+ * The SDRAM size in MB, of 1/2 CONFIG_SYS_LBC_SDRAM_SIZE, is 64.
+ *
+ * For OR4, need:
+ *    64MB mask for AM, OR3[0:7] = 1111 1100
+ *		   XAM, OR3[17:18] = 11
+ *    10 columns OR3[19-21] = 011
+ *    12 rows   OR3[23-25] = 011
+ *    EAD set for extra time OR[31] = 0
+ *
+ * 0    4    8    12   16   20   24   28
+ * 1111 1100 0000 0000 0110 1100 1100 0000 = fc006cc0
+ */
+
+#define CONFIG_SYS_OR4_PRELIM		0xfc006cc0
+
 #define CONFIG_SYS_LBC_LCRR		0x00000002    /* LB clock ratio reg */
 #define CONFIG_SYS_LBC_LBCR		0x00000000    /* LB config reg */
 #define CONFIG_SYS_LBC_LSRT		0x20000000  /* LB sdram refresh timer */
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
@ 2009-09-21  0:36         ` Paul Gortmaker
  2009-09-21  0:36           ` [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option Paul Gortmaker
  2009-09-21 17:02           ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Kumar Gala
  2009-09-21 17:00         ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Kumar Gala
  2009-09-23 21:50         ` Wolfgang Denk
  2 siblings, 2 replies; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

The PCI/PCI-e support for the sbc8548 was based on an earlier
version of what the MPC8548CDS board was using, and in its
current state it won't even compile.  This re-syncs it to match
the latest codebase and makes use of the new shared PCI functions
to reduce board duplication.

It borrows from the MPC8568MDS, in that it pulls the PCI-e I/O
back to 0xe280_0000 (where PCI2 would be on MPC8548CDS), and
similarly it coalesces the PCI and PCI-e mem into one single TLB.

Both PCI-x and PCI-e have been tested with intel e1000 cards
under linux (with an accompanying dts change in place)

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 board/sbc8548/law.c       |   12 ++++-
 board/sbc8548/sbc8548.c   |  129 ++++++++++++++-------------------------------
 board/sbc8548/tlb.c       |   48 +++++++---------
 include/configs/sbc8548.h |   45 ++++++++-------
 4 files changed, 94 insertions(+), 140 deletions(-)

diff --git a/board/sbc8548/law.c b/board/sbc8548/law.c
index e8c7ae2..6d1efc0 100644
--- a/board/sbc8548/law.c
+++ b/board/sbc8548/law.c
@@ -32,8 +32,10 @@
  *
  * 0x0000_0000	0x0fff_ffff	DDR			256M
  * 0x8000_0000	0x9fff_ffff	PCI1 MEM		512M
+ * 0xa000_0000	0xbfff_ffff	PCIe MEM		512M
  * 0xe000_0000	0xe000_ffff	CCSR			1M
- * 0xe200_0000	0xe2ff_ffff	PCI1 IO			16M
+ * 0xe200_0000	0xe27f_ffff	PCI1 IO			8M
+ * 0xe280_0000	0xe2ff_ffff	PCIe IO			8M
  * 0xf000_0000	0xf7ff_ffff	SDRAM			128M
  * 0xf8b0_0000	0xf80f_ffff	EEPROM			1M
  * 0xfb80_0000	0xff7f_ffff	FLASH (2nd bank)	64M
@@ -48,8 +50,14 @@ struct law_entry law_table[] = {
 #ifndef CONFIG_SPD_EEPROM
 	SET_LAW(CONFIG_SYS_DDR_SDRAM_BASE, LAW_SIZE_256M, LAW_TRGT_IF_DDR),
 #endif
+#ifdef CONFIG_SYS_PCI1_MEM_PHYS
 	SET_LAW(CONFIG_SYS_PCI1_MEM_PHYS, LAW_SIZE_512M, LAW_TRGT_IF_PCI),
-	SET_LAW(CONFIG_SYS_PCI1_IO_PHYS, LAW_SIZE_16M, LAW_TRGT_IF_PCI),
+	SET_LAW(CONFIG_SYS_PCI1_IO_PHYS, LAW_SIZE_8M, LAW_TRGT_IF_PCI),
+#endif
+#ifdef CONFIG_SYS_PCIE1_MEM_PHYS
+	SET_LAW(CONFIG_SYS_PCIE1_MEM_PHYS, LAW_SIZE_512M, LAW_TRGT_IF_PCIE_1),
+	SET_LAW(CONFIG_SYS_PCIE1_IO_PHYS, LAW_SIZE_8M, LAW_TRGT_IF_PCIE_1),
+#endif
 	/* LBC window - maps 256M 0xf0000000 -> 0xffffffff */
 	SET_LAW(CONFIG_SYS_LBC_SDRAM_BASE, LAW_SIZE_256M, LAW_TRGT_IF_LBC),
 };
diff --git a/board/sbc8548/sbc8548.c b/board/sbc8548/sbc8548.c
index f4bfd92..194f6ab 100644
--- a/board/sbc8548/sbc8548.c
+++ b/board/sbc8548/sbc8548.c
@@ -321,125 +321,74 @@ static struct pci_controller pci1_hose;
 static struct pci_controller pcie1_hose;
 #endif	/* CONFIG_PCIE1 */
 
-int first_free_busno=0;
 
+#ifdef CONFIG_PCI
 void
 pci_init_board(void)
 {
 	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
+	struct fsl_pci_info pci_info[2];
+	u32 devdisr, pordevsr, porpllsr, io_sel;
+	int first_free_busno = 0;
+	int num = 0;
 
-#ifdef CONFIG_PCI1
-{
-	volatile ccsr_fsl_pci_t *pci = (ccsr_fsl_pci_t *) CONFIG_SYS_PCI1_ADDR;
-	struct pci_controller *hose = &pci1_hose;
-	struct pci_region *r = hose->regions;
+#ifdef CONFIG_PCIE1
+	int pcie_configured;
+#endif
 
-	uint pci_32 = gur->pordevsr & MPC85xx_PORDEVSR_PCI1_PCI32;	/* PORDEVSR[15] */
-	uint pci_arb = gur->pordevsr & MPC85xx_PORDEVSR_PCI1_ARB;	/* PORDEVSR[14] */
-	uint pci_clk_sel = gur->porpllsr & MPC85xx_PORDEVSR_PCI1_SPD;	/* PORPLLSR[16] */
+	devdisr = in_be32(&gur->devdisr);
+	pordevsr = in_be32(&gur->pordevsr);
+	porpllsr = in_be32(&gur->porpllsr);
+	io_sel = (pordevsr & MPC85xx_PORDEVSR_IO_SEL) >> 19;
 
-	uint pci_speed = CONFIG_SYS_CLK_FREQ;	/* get_clock_freq() */
+	debug("   pci_init_board: devdisr=%x, io_sel=%x\n", devdisr, io_sel);
+
+#ifdef CONFIG_PCI1
+	if (!(devdisr & MPC85xx_DEVDISR_PCI1)) {
+		uint pci_32 = pordevsr & MPC85xx_PORDEVSR_PCI1_PCI32;
+		uint pci_arb = pordevsr & MPC85xx_PORDEVSR_PCI1_ARB;
+		uint pci_clk_sel = porpllsr & MPC85xx_PORDEVSR_PCI1_SPD;
+		uint pci_speed = CONFIG_SYS_CLK_FREQ;	/* get_clock_freq() */
 
-	if (!(gur->devdisr & MPC85xx_DEVDISR_PCI1)) {
 		printf ("    PCI host: %d bit, %s MHz, %s, %s\n",
 			(pci_32) ? 32 : 64,
 			(pci_speed == 33000000) ? "33" :
 			(pci_speed == 66000000) ? "66" : "unknown",
 			pci_clk_sel ? "sync" : "async",
-			pci_arb ? "arbiter" : "external-arbiter"
-			);
-
-		/* outbound memory */
-		pci_set_region(r++,
-			       CONFIG_SYS_PCI1_MEM_BASE,
-			       CONFIG_SYS_PCI1_MEM_PHYS,
-			       CONFIG_SYS_PCI1_MEM_SIZE,
-			       PCI_REGION_MEM);
-
-		/* outbound io */
-		pci_set_region(r++,
-			       CONFIG_SYS_PCI1_IO_BASE,
-			       CONFIG_SYS_PCI1_IO_PHYS,
-			       CONFIG_SYS_PCI1_IO_SIZE,
-			       PCI_REGION_IO);
-		hose->region_count = r - hose->regions;
-
-		hose->first_busno=first_free_busno;
-
-		fsl_pci_init(hose, (u32)&pci->cfg_addr, (u32)&pci->cfg_data);
-		first_free_busno=hose->last_busno+1;
-		printf ("PCI on bus %02x - %02x\n",hose->first_busno,hose->last_busno);
-#ifdef CONFIG_PCIX_CHECK
-		if (!(gur->pordevsr & MPC85xx_PORDEVSR_PCI1)) {
-			/* PCI-X init */
-			if (CONFIG_SYS_CLK_FREQ < 66000000)
-				printf("PCI-X will only work@66 MHz\n");
-
-			reg16 = PCI_X_CMD_MAX_SPLIT | PCI_X_CMD_MAX_READ
-				| PCI_X_CMD_ERO | PCI_X_CMD_DPERR_E;
-			pci_hose_write_config_word(hose, bus, PCIX_COMMAND, reg16);
-		}
-#endif
+			pci_arb ? "arbiter" : "external-arbiter");
+
+		SET_STD_PCI_INFO(pci_info[num], 1);
+		first_free_busno = fsl_pci_init_port(&pci_info[num++],
+					&pci1_hose, first_free_busno);
 	} else {
 		printf ("    PCI: disabled\n");
 	}
-}
+
+	puts("\n");
 #else
-	gur->devdisr |= MPC85xx_DEVDISR_PCI1; /* disable */
+	setbits_be32(&gur->devdisr, MPC85xx_DEVDISR_PCI1); /* disable */
 #endif
 
-	gur->devdisr |= MPC85xx_DEVDISR_PCI2; /* disable PCI2 */
+	setbits_be32(&gur->devdisr, MPC85xx_DEVDISR_PCI2); /* disable PCI2 */
 
 #ifdef CONFIG_PCIE1
-{
-	volatile ccsr_fsl_pci_t *pci = (ccsr_fsl_pci_t *) CONFIG_SYS_PCIE1_ADDR;
-	struct pci_controller *hose = &pcie1_hose;
-	struct pci_region *r = hose->regions;
-
-	int pcie_configured = is_fsl_pci_cfg(LAW_TRGT_IF_PCIE_1, io_sel);
-
-	if (pcie_configured && !(gur->devdisr & MPC85xx_DEVDISR_PCIE)){
-		printf ("\n    PCIE at base address %x",
-			(uint)pci);
-
-		if (pci->pme_msg_det) {
-			pci->pme_msg_det = 0xffffffff;
-			debug (" with errors.  Clearing.  Now 0x%08x",pci->pme_msg_det);
-		}
-		printf ("\n");
-
-		/* outbound memory */
-		pci_set_region(r++,
-			       CONFIG_SYS_PCIE1_MEM_BASE,
-			       CONFIG_SYS_PCIE1_MEM_PHYS,
-			       CONFIG_SYS_PCIE1_MEM_SIZE,
-			       PCI_REGION_MEM);
-
-		/* outbound io */
-		pci_set_region(r++,
-			       CONFIG_SYS_PCIE1_IO_BASE,
-			       CONFIG_SYS_PCIE1_IO_PHYS,
-			       CONFIG_SYS_PCIE1_IO_SIZE,
-			       PCI_REGION_IO);
-
-		hose->region_count = r - hose->regions;
-
-		hose->first_busno=first_free_busno;
-
-		fsl_pci_init(hose, (u32)&pci->cfg_addr, (u32)&pci->cfg_data);
-		printf ("PCIE on bus %d - %d\n",hose->first_busno,hose->last_busno);
-
-		first_free_busno=hose->last_busno+1;
+	pcie_configured = is_fsl_pci_cfg(LAW_TRGT_IF_PCIE_1, io_sel);
 
+	if (pcie_configured && !(devdisr & MPC85xx_DEVDISR_PCIE)){
+		SET_STD_PCIE_INFO(pci_info[num], 1);
+		printf ("    PCIE at base address %lx\n", pci_info[num].regs);
+		first_free_busno = fsl_pci_init_port(&pci_info[num++],
+					&pcie1_hose, first_free_busno);
 	} else {
 		printf ("    PCIE: disabled\n");
 	}
- }
+
+	puts("\n");
 #else
-	gur->devdisr |= MPC85xx_DEVDISR_PCIE; /* disable */
+	setbits_be32(&gur->devdisr, MPC85xx_DEVDISR_PCIE); /* disable */
 #endif
-
 }
+#endif
 
 int board_eth_init(bd_t *bis)
 {
diff --git a/board/sbc8548/tlb.c b/board/sbc8548/tlb.c
index e173245..dab0eb1 100644
--- a/board/sbc8548/tlb.c
+++ b/board/sbc8548/tlb.c
@@ -52,58 +52,52 @@ struct fsl_e_tlb_entry tlb_table[] = {
 		      0, 0, BOOKE_PAGESZ_64M, 1),
 
 	/*
-	 * TLB 1:	256M	Non-cacheable, guarded
-	 * 0x80000000	256M	PCI1 MEM First half
+	 * TLB 1:	1G	Non-cacheable, guarded
+	 * 0x80000000	512M	PCI1 MEM
+	 * 0xa0000000	512M	PCIe MEM
 	 */
-	SET_TLB_ENTRY(1, CONFIG_SYS_PCI1_MEM_PHYS, CONFIG_SYS_PCI1_MEM_PHYS,
+	SET_TLB_ENTRY(1, CONFIG_SYS_PCI1_MEM_VIRT, CONFIG_SYS_PCI1_MEM_PHYS,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 1, BOOKE_PAGESZ_256M, 1),
+		      0, 1, BOOKE_PAGESZ_1G, 1),
 
 	/*
-	 * TLB 2:	256M	Non-cacheable, guarded
-	 * 0x90000000	256M	PCI1 MEM Second half
-	 */
-	SET_TLB_ENTRY(1, CONFIG_SYS_PCI1_MEM_PHYS + 0x10000000, CONFIG_SYS_PCI1_MEM_PHYS + 0x10000000,
-		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 2, BOOKE_PAGESZ_256M, 1),
-
-	/*
-	 * TLB 3:	256M Cacheable, non-guarded
+	 * TLB 2:	256M Cacheable, non-guarded
 	 * 0x0		256M DDR SDRAM
 	 */
 	#if !defined(CONFIG_SPD_EEPROM)
 	SET_TLB_ENTRY(1, CONFIG_SYS_DDR_SDRAM_BASE, CONFIG_SYS_DDR_SDRAM_BASE,
 		      MAS3_SX|MAS3_SW|MAS3_SR, 0,
-		      0, 3, BOOKE_PAGESZ_256M, 1),
+		      0, 2, BOOKE_PAGESZ_256M, 1),
 	#endif
 
 	/*
-	 * TLB 4:	64M	Non-cacheable, guarded
+	 * TLB 3:	64M	Non-cacheable, guarded
 	 * 0xe0000000	1M	CCSRBAR
-	 * 0xe2000000	16M	PCI1 IO
+	 * 0xe2000000	8M	PCI1 IO
+	 * 0xe2800000	8M	PCIe IO
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_CCSRBAR, CONFIG_SYS_CCSRBAR_PHYS,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 4, BOOKE_PAGESZ_64M, 1),
+		      0, 3, BOOKE_PAGESZ_64M, 1),
 
 	/*
-	 * TLB 5:	64M	Cacheable, non-guarded
+	 * TLB 4:	64M	Cacheable, non-guarded
 	 * 0xf0000000	64M	LBC SDRAM First half
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_LBC_SDRAM_BASE, CONFIG_SYS_LBC_SDRAM_BASE,
 		      MAS3_SX|MAS3_SW|MAS3_SR, 0,
-		      0, 5, BOOKE_PAGESZ_64M, 1),
+		      0, 4, BOOKE_PAGESZ_64M, 1),
 
 	/*
-	 * TLB 6:	64M	Cacheable, non-guarded
+	 * TLB 5:	64M	Cacheable, non-guarded
 	 * 0xf4000000	64M	LBC SDRAM Second half
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000,
 		      MAS3_SX|MAS3_SW|MAS3_SR, 0,
-		      0, 6, BOOKE_PAGESZ_64M, 1),
+		      0, 5, BOOKE_PAGESZ_64M, 1),
 
 	/*
-	 * TLB 7:	16M	Cacheable, non-guarded
+	 * TLB 6:	16M	Cacheable, non-guarded
 	 * 0xf8000000	1M	7-segment LED display
 	 * 0xf8100000	1M	User switches
 	 * 0xf8300000	1M	Board revision
@@ -111,23 +105,23 @@ struct fsl_e_tlb_entry tlb_table[] = {
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_EPLD_BASE, CONFIG_SYS_EPLD_BASE,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 7, BOOKE_PAGESZ_16M, 1),
+		      0, 6, BOOKE_PAGESZ_16M, 1),
 
 	/*
-	 * TLB 8:	4M	Non-cacheable, guarded
+	 * TLB 7:	4M	Non-cacheable, guarded
 	 * 0xfb800000	4M	1st 4MB block of 64MB user FLASH
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_ALT_FLASH, CONFIG_SYS_ALT_FLASH,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 8, BOOKE_PAGESZ_4M, 1),
+		      0, 7, BOOKE_PAGESZ_4M, 1),
 
 	/*
-	 * TLB 9:	4M	Non-cacheable, guarded
+	 * TLB 8:	4M	Non-cacheable, guarded
 	 * 0xfbc00000	4M	2nd 4MB block of 64MB user FLASH
 	 */
 	SET_TLB_ENTRY(1, CONFIG_SYS_ALT_FLASH + 0x400000, CONFIG_SYS_ALT_FLASH + 0x400000,
 		      MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,
-		      0, 9, BOOKE_PAGESZ_4M, 1),
+		      0, 8, BOOKE_PAGESZ_4M, 1),
 
 };
 
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index 4751013..4ef3028 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -42,7 +42,14 @@
 #undef CONFIG_PCI1		/* PCI controller 1 */
 #undef CONFIG_PCIE1		/* PCIE controler 1 (slot 1) */
 #undef CONFIG_RIO
-#undef CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
+
+#ifdef CONFIG_PCI
+#define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
+#define CONFIG_SYS_PCI_64BIT    1	/* enable 64-bit PCI resources */
+#endif
+#ifdef CONFIG_PCIE1
+#define CONFIG_FSL_PCIE_RESET   1	/* need PCIe reset errata */
+#endif
 
 #define CONFIG_TSEC_ENET		/* tsec ethernet support */
 #define CONFIG_ENV_OVERWRITE
@@ -342,31 +349,27 @@
  * General PCI
  * Memory space is mapped 1-1, but I/O space must start from 0.
  */
+#define CONFIG_SYS_PCI_VIRT		0x80000000	/* 1G PCI TLB */
 #define CONFIG_SYS_PCI_PHYS		0x80000000	/* 1G PCI TLB */
 
-#define CONFIG_SYS_PCI1_MEM_BASE	0x80000000
-#define CONFIG_SYS_PCI1_MEM_PHYS	CONFIG_SYS_PCI1_MEM_BASE
+#define CONFIG_SYS_PCI1_MEM_VIRT	0x80000000
+#define CONFIG_SYS_PCI1_MEM_BUS		0x80000000
+#define CONFIG_SYS_PCI1_MEM_PHYS	0x80000000
 #define CONFIG_SYS_PCI1_MEM_SIZE	0x20000000	/* 512M */
-#define CONFIG_SYS_PCI1_IO_BASE	0x00000000
-#define CONFIG_SYS_PCI1_IO_PHYS	0xe2000000
-#define CONFIG_SYS_PCI1_IO_SIZE	0x00100000	/* 1M */
-
-#ifdef CONFIG_PCI2
-#define CONFIG_SYS_PCI2_MEM_BASE	0xa0000000
-#define CONFIG_SYS_PCI2_MEM_PHYS	CONFIG_SYS_PCI2_MEM_BASE
-#define CONFIG_SYS_PCI2_MEM_SIZE	0x20000000	/* 512M */
-#define CONFIG_SYS_PCI2_IO_BASE	0x00000000
-#define CONFIG_SYS_PCI2_IO_PHYS	0xe2800000
-#define CONFIG_SYS_PCI2_IO_SIZE	0x00100000	/* 1M */
-#endif
+#define CONFIG_SYS_PCI1_IO_VIRT		0xe2000000
+#define CONFIG_SYS_PCI1_IO_BUS		0x00000000
+#define CONFIG_SYS_PCI1_IO_PHYS		0xe2000000
+#define CONFIG_SYS_PCI1_IO_SIZE		0x00800000	/* 8M */
 
 #ifdef CONFIG_PCIE1
-#define CONFIG_SYS_PCIE1_MEM_BASE	0xa0000000
-#define CONFIG_SYS_PCIE1_MEM_PHYS	CONFIG_SYS_PCIE1_MEM_BASE
+#define CONFIG_SYS_PCIE1_MEM_VIRT	0xa0000000
+#define CONFIG_SYS_PCIE1_MEM_BUS	0xa0000000
+#define CONFIG_SYS_PCIE1_MEM_PHYS	0xa0000000
 #define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */
-#define CONFIG_SYS_PCIE1_IO_BASE	0x00000000
-#define CONFIG_SYS_PCIE1_IO_PHYS	0xe3000000
-#define CONFIG_SYS_PCIE1_IO_SIZE	0x00100000	/*   1M */
+#define CONFIG_SYS_PCIE1_IO_VIRT	0xe2800000
+#define CONFIG_SYS_PCIE1_IO_BUS		0x00000000
+#define CONFIG_SYS_PCIE1_IO_PHYS	0xe2800000
+#define CONFIG_SYS_PCIE1_IO_SIZE	0x00800000	/* 8M */
 #endif
 
 #ifdef CONFIG_RIO
@@ -385,7 +388,7 @@
 #undef CONFIG_EEPRO100
 #undef CONFIG_TULIP
 
-#undef CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
+#define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
 
 #endif	/* CONFIG_PCI */
 
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option
  2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
@ 2009-09-21  0:36           ` Paul Gortmaker
  2009-09-21 17:02             ` Kumar Gala
  2009-09-21 17:02           ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Kumar Gala
  1 sibling, 1 reply; 17+ messages in thread
From: Paul Gortmaker @ 2009-09-21  0:36 UTC (permalink / raw)
  To: u-boot

Prior to this commit, to enable PCI, you had to go manually
edit the board config header, and if you had 33MHz PCI, you
had to manually change CONFIG_SYS_NS16550_CLK too, which was
not real user friendly,

This adds the typical PCI and clock speed make targets to the
toplevel Makefile in accordance with what is being done with
other boards (i.e. using the "-t" to mkconfig).

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 MAKEALL                   |    4 ++++
 Makefile                  |    8 ++++++--
 include/configs/sbc8548.h |   43 +++++++++++++++++++++++++++++++++----------
 3 files changed, 43 insertions(+), 12 deletions(-)

diff --git a/MAKEALL b/MAKEALL
index 1d50c34..b394adb 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -399,6 +399,10 @@ LIST_85xx="		\
 	PM856		\
 	sbc8540		\
 	sbc8548		\
+	sbc8548_PCI_33	\
+	sbc8548_PCI_66	\
+	sbc8548_PCI_33_PCIE \
+	sbc8548_PCI_66_PCIE \
 	sbc8560		\
 	socrates	\
 	stxgp3		\
diff --git a/Makefile b/Makefile
index d8daa89..55ee25d 100644
--- a/Makefile
+++ b/Makefile
@@ -2544,8 +2544,12 @@ sbc8540_66_config:	unconfig
 	fi
 	@$(MKCONFIG) -a SBC8540 ppc mpc85xx sbc8560
 
-sbc8548_config:		unconfig
-	@$(MKCONFIG) $(@:_config=) ppc mpc85xx sbc8548
+sbc8548_config \
+sbc8548_PCI_33_config \
+sbc8548_PCI_66_config \
+sbc8548_PCI_33_PCIE_config \
+sbc8548_PCI_66_PCIE_config: unconfig
+	@$(MKCONFIG) -t $(@:_config=) sbc8548 ppc mpc85xx sbc8548
 
 sbc8560_config \
 sbc8560_33_config \
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index 4ef3028..cfb743f 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -1,5 +1,5 @@
 /*
- * Copyright 2007 Wind River Systems <www.windriver.com>
+ * Copyright 2007,2009 Wind River Systems <www.windriver.com>
  * Copyright 2007 Embedded Specialties, Inc.
  * Copyright 2004, 2007 Freescale Semiconductor.
  *
@@ -24,23 +24,40 @@
 
 /*
  * sbc8548 board configuration file
- *
- * Please refer to doc/README.sbc85xx for more info.
- *
+ * Please refer to doc/README.sbc8548 for more info.
  */
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-/* High Level Configuration Options */
+/*
+ * Top level Makefile configuration choices
+ */
+#ifdef CONFIG_MK_PCI
+#define CONFIG_PCI
+#define CONFIG_PCI1
+#endif
+
+#ifdef CONFIG_MK_66
+#define CONFIG_SYS_CLK_DIV 1
+#endif
+
+#ifdef CONFIG_MK_33
+#define CONFIG_SYS_CLK_DIV 2
+#endif
+
+#ifdef CONFIG_MK_PCIE
+#define CONFIG_PCIE1
+#endif
+
+/*
+ * High Level Configuration Options
+ */
 #define CONFIG_BOOKE		1	/* BOOKE */
 #define CONFIG_E500		1	/* BOOKE e500 family */
 #define CONFIG_MPC85xx		1	/* MPC8540/60/55/41/48 */
 #define CONFIG_MPC8548		1	/* MPC8548 specific */
 #define CONFIG_SBC8548		1	/* SBC8548 board specific */
 
-#undef CONFIG_PCI		/* enable any pci type devices */
-#undef CONFIG_PCI1		/* PCI controller 1 */
-#undef CONFIG_PCIE1		/* PCIE controler 1 (slot 1) */
 #undef CONFIG_RIO
 
 #ifdef CONFIG_PCI
@@ -58,7 +75,13 @@
 
 #define CONFIG_FSL_LAW		1	/* Use common FSL init code */
 
-#define CONFIG_SYS_CLK_FREQ	66000000 /* SBC8548 default SYSCLK */
+/*
+ * Below assumes that CCB:SYSCLK remains unchanged at 6:1 via SW2:[1-4]
+ */
+#ifndef CONFIG_SYS_CLK_DIV
+#define CONFIG_SYS_CLK_DIV	1	/* 2, if 33MHz PCI card installed */
+#endif
+#define CONFIG_SYS_CLK_FREQ	(66000000 / CONFIG_SYS_CLK_DIV)
 
 /*
  * These can be toggled for performance analysis, otherwise use default.
@@ -315,7 +338,7 @@
 #define CONFIG_SYS_NS16550
 #define CONFIG_SYS_NS16550_SERIAL
 #define CONFIG_SYS_NS16550_REG_SIZE	1
-#define CONFIG_SYS_NS16550_CLK		400000000 /* get_bus_freq(0) */
+#define CONFIG_SYS_NS16550_CLK		(400000000 / CONFIG_SYS_CLK_DIV)
 
 #define CONFIG_SYS_BAUDRATE_TABLE \
 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400,115200}
-- 
1.6.4.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors
  2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
@ 2009-09-21  1:37       ` Graeme Russ
  2009-09-21  8:48         ` Wolfgang Denk
  2009-09-21 17:00       ` Kumar Gala
  2 siblings, 1 reply; 17+ messages in thread
From: Graeme Russ @ 2009-09-21  1:37 UTC (permalink / raw)
  To: u-boot

On Mon, Sep 21, 2009 at 10:36 AM, Paul Gortmaker
<paul.gortmaker@windriver.com> wrote:
> Sweep throught the board specific file and replace the various
> register proddings with the equivalent I/O accessors.
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---

>
> -       ecm->eedr = 0xffffffff;         /* clear ecm errors */
> -       ecm->eeer = 0xffffffff;         /* enable ecm errors */
> +       out_be32(&ecm->eedr, 0xffffffff);       /* clear ecm errors */
> +       out_be32(&ecm->eeer, 0xffffffff);       /* enable ecm errors */
>        return 0;

Correct me if I'm wrong, but I thought the general rule was the other
way (i.e. the way it alreay was). See for example:

http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commit;h=ed7a1b681de1e31d18d5b92e2767ae8df3241687

This prevents, for example, accidentally writing words and longs to byte
sized registers.

Regards,

G

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors
  2009-09-21  1:37       ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Graeme Russ
@ 2009-09-21  8:48         ` Wolfgang Denk
  2009-09-21  9:44           ` Graeme Russ
  0 siblings, 1 reply; 17+ messages in thread
From: Wolfgang Denk @ 2009-09-21  8:48 UTC (permalink / raw)
  To: u-boot

Dear Graeme Russ,

In message <d66caabb0909201837g28da0ed5k6069e96775cfb358@mail.gmail.com> you wrote:
>
> > -       ecm->eedr = 0xffffffff;         /* clear ecm errors */
> > -       ecm->eeer = 0xffffffff;         /* enable ecm errors */
> > +       out_be32(&ecm->eedr, 0xffffffff);       /* clear ecm errors */
> > +       out_be32(&ecm->eeer, 0xffffffff);       /* enable ecm errors */
> >        return 0;
> 
> Correct me if I'm wrong, but I thought the general rule was the other
> way (i.e. the way it alreay was). See for example:

You are wrong. We must use I/O accessors.

> http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commit;h=ed7a1b681de1e31d18d5b92e2767ae8df3241687

Ouch. This patch is clearly bloken. Sorry it escaped my attention.

Using a C structure to describe the hardware is a good thing, but we
still must use I/O accessors to access the registers.

This needs to be fixed in your code.

> This prevents, for example, accidentally writing words and longs to byte
> sized registers.

Right. The I/O accessors still allow for strict type checking.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"What is wanted is not the will to believe, but the will to find out,
which is the exact opposite." - Bertrand Russell, _Sceptical_Essays_,
1928

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors
  2009-09-21  8:48         ` Wolfgang Denk
@ 2009-09-21  9:44           ` Graeme Russ
  0 siblings, 0 replies; 17+ messages in thread
From: Graeme Russ @ 2009-09-21  9:44 UTC (permalink / raw)
  To: u-boot

On Mon, Sep 21, 2009 at 6:48 PM, Wolfgang Denk <wd@denx.de> wrote:
> Dear Graeme Russ,
>
> In message <d66caabb0909201837g28da0ed5k6069e96775cfb358@mail.gmail.com> you wrote:
>>
>> > -       ecm->eedr = 0xffffffff;         /* clear ecm errors */
>> > -       ecm->eeer = 0xffffffff;         /* enable ecm errors */
>> > +       out_be32(&ecm->eedr, 0xffffffff);       /* clear ecm errors */
>> > +       out_be32(&ecm->eeer, 0xffffffff);       /* enable ecm errors */
>> >        return 0;
>>
>> Correct me if I'm wrong, but I thought the general rule was the other
>> way (i.e. the way it alreay was). See for example:
>
> You are wrong. We must use I/O accessors.

Thanks for the correction :)

>
>> http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commit;h=ed7a1b681de1e31d18d5b92e2767ae8df3241687
>
> Ouch. This patch is clearly bloken. Sorry it escaped my attention.

Hence my incorrect assumption ;)

>
> Using a C structure to describe the hardware is a good thing, but we
> still must use I/O accessors to access the registers.
>
> This needs to be fixed in your code.

Will do

>
>> This prevents, for example, accidentally writing words and longs to byte
>> sized registers.
>
> Right. The I/O accessors still allow for strict type checking.

Right, which still makes my patch better than the completely unchecked
previous version of the SC520 MMCR accessors

Regards,

G

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack
  2009-09-21  0:36   ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Paul Gortmaker
  2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
@ 2009-09-21 17:00     ` Kumar Gala
  1 sibling, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:00 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> With only eTSEC1 and 2 being brought out to RJ-45 connectors, we
> aren't interested in the eTSEC3/4 voltage hack on this board
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> board/sbc8548/sbc8548.c |    6 ------
> 1 files changed, 0 insertions(+), 6 deletions(-)

applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors
  2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
  2009-09-21  1:37       ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Graeme Russ
@ 2009-09-21 17:00       ` Kumar Gala
  2 siblings, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:00 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> Sweep throught the board specific file and replace the various
> register proddings with the equivalent I/O accessors.
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> board/sbc8548/sbc8548.c |   91 ++++++++++++++++++++++ 
> +------------------------
> 1 files changed, 45 insertions(+), 46 deletions(-)

applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
  2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
@ 2009-09-21 17:00         ` Kumar Gala
  2009-09-23 21:50         ` Wolfgang Denk
  2 siblings, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:00 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> The size of the LB SDRAM on this board is 128MB, spanning CS3
> and CS4.  It was previously only being configured for 64MB on
> CS3, since that was what the original codebase of the MPC8548CDS
> had.  In addition to setting up BR4/OR4, this also adds the TLB
> entry for the second half of the SDRAM.
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> board/sbc8548/sbc8548.c   |    8 +++++++-
> board/sbc8548/tlb.c       |   22 +++++++++++++++-------
> include/configs/sbc8548.h |   42 ++++++++++++++++++++++++++++++++++++ 
> ++----
> 3 files changed, 60 insertions(+), 12 deletions(-)

applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper
  2009-09-21  0:36 ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Paul Gortmaker
  2009-09-21  0:36   ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Paul Gortmaker
@ 2009-09-21 17:01   ` Kumar Gala
  1 sibling, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:01 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> Recycle the recently added PCI-e wrapper used to reduce board
> duplication of code by creating a similar version for plain PCI.
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> include/asm-ppc/fsl_pci.h |   12 ++++++++++++
> 1 files changed, 12 insertions(+), 0 deletions(-)


applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code
  2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
  2009-09-21  0:36           ` [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option Paul Gortmaker
@ 2009-09-21 17:02           ` Kumar Gala
  1 sibling, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:02 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> The PCI/PCI-e support for the sbc8548 was based on an earlier
> version of what the MPC8548CDS board was using, and in its
> current state it won't even compile.  This re-syncs it to match
> the latest codebase and makes use of the new shared PCI functions
> to reduce board duplication.
>
> It borrows from the MPC8568MDS, in that it pulls the PCI-e I/O
> back to 0xe280_0000 (where PCI2 would be on MPC8548CDS), and
> similarly it coalesces the PCI and PCI-e mem into one single TLB.
>
> Both PCI-x and PCI-e have been tested with intel e1000 cards
> under linux (with an accompanying dts change in place)
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> board/sbc8548/law.c       |   12 ++++-
> board/sbc8548/sbc8548.c   |  129 +++++++++++++ 
> +-------------------------------
> board/sbc8548/tlb.c       |   48 +++++++---------
> include/configs/sbc8548.h |   45 ++++++++-------
> 4 files changed, 94 insertions(+), 140 deletions(-)

applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option
  2009-09-21  0:36           ` [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option Paul Gortmaker
@ 2009-09-21 17:02             ` Kumar Gala
  0 siblings, 0 replies; 17+ messages in thread
From: Kumar Gala @ 2009-09-21 17:02 UTC (permalink / raw)
  To: u-boot


On Sep 20, 2009, at 7:36 PM, Paul Gortmaker wrote:

> Prior to this commit, to enable PCI, you had to go manually
> edit the board config header, and if you had 33MHz PCI, you
> had to manually change CONFIG_SYS_NS16550_CLK too, which was
> not real user friendly,
>
> This adds the typical PCI and clock speed make targets to the
> toplevel Makefile in accordance with what is being done with
> other boards (i.e. using the "-t" to mkconfig).
>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
> ---
> MAKEALL                   |    4 ++++
> Makefile                  |    8 ++++++--
> include/configs/sbc8548.h |   43 ++++++++++++++++++++++++++++++++ 
> +----------
> 3 files changed, 43 insertions(+), 12 deletions(-)

applied to 85xx.

- k

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M
  2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
  2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
  2009-09-21 17:00         ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Kumar Gala
@ 2009-09-23 21:50         ` Wolfgang Denk
  2 siblings, 0 replies; 17+ messages in thread
From: Wolfgang Denk @ 2009-09-23 21:50 UTC (permalink / raw)
  To: u-boot

Dear Paul Gortmaker,

In message <5ad17f25a126b25be24467d1712d30a775a5b494.1253492532.git.paul.gortmaker@windriver.com> you wrote:
> The size of the LB SDRAM on this board is 128MB, spanning CS3
> and CS4.  It was previously only being configured for 64MB on
> CS3, since that was what the original codebase of the MPC8548CDS
> had.  In addition to setting up BR4/OR4, this also adds the TLB
> entry for the second half of the SDRAM.
> 
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
...
> +	 * TLB 6:	64M	Cacheable, non-guarded
> +	 * 0xf4000000	64M	LBC SDRAM Second half
> +	 */
> +	SET_TLB_ENTRY(1, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000, CONFIG_SYS_LBC_SDRAM_BASE + 0x4000000,

Line too long.



Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Hindsight is an exact science.

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2009-09-23 21:50 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-21  0:36 [U-Boot] [PATCH 0/6] sbc8548 update; remaining bits for 85xx tree Paul Gortmaker
2009-09-21  0:36 ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Paul Gortmaker
2009-09-21  0:36   ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Paul Gortmaker
2009-09-21  0:36     ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Paul Gortmaker
2009-09-21  0:36       ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Paul Gortmaker
2009-09-21  0:36         ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Paul Gortmaker
2009-09-21  0:36           ` [U-Boot] [PATCH 6/6] sbc8548: allow enabling PCI via a make config option Paul Gortmaker
2009-09-21 17:02             ` Kumar Gala
2009-09-21 17:02           ` [U-Boot] [PATCH 5/6] sbc8548: update PCI/PCI-e support code Kumar Gala
2009-09-21 17:00         ` [U-Boot] [PATCH 4/6] sbc8548: correct local bus SDRAM size from 64M to 128M Kumar Gala
2009-09-23 21:50         ` Wolfgang Denk
2009-09-21  1:37       ` [U-Boot] [PATCH 3/6] sbc8548: use I/O accessors Graeme Russ
2009-09-21  8:48         ` Wolfgang Denk
2009-09-21  9:44           ` Graeme Russ
2009-09-21 17:00       ` Kumar Gala
2009-09-21 17:00     ` [U-Boot] [PATCH 2/6] sbc8548: remove eTSEC3/4 voltage hack Kumar Gala
2009-09-21 17:01   ` [U-Boot] [PATCH 1/6] fsl_pci: create a SET_STD_PCI_INFO() helper wrapper Kumar Gala

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.