blob: f9e2dea573c980e1896c026cb3f8f041c05d0d83 [file] [log] [blame]
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -04001Intro:
2======
Joe Hamman9e3ed392007-12-13 06:45:14 -06003
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -04004The SBC8548 is a stand alone single board computer with a 1GHz
5MPC8548 CPU, 8MB boot flash, 64MB user flash and, 256MB DDR2 400MHz
6memory. It also has 128MB SDRAM 100MHz LBC memory, with both a PCI-e,
7and a PCI-X slot, dual mini-DB9 for UART, and dual RJ-45 for eTSEC
8ethernet connections.
Joe Hamman9e3ed392007-12-13 06:45:14 -06009
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -040010U-boot Configuration:
11=====================
Joe Hamman9e3ed392007-12-13 06:45:14 -060012
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -040013The following possible u-boot configuration targets are available:
Joe Hamman9e3ed392007-12-13 06:45:14 -060014
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -040015 1) sbc8548_config
16 2) sbc8548_PCI_33_config
17 3) sbc8548_PCI_66_config
18 4) sbc8548_PCI_33_PCIE_config
19 5) sbc8548_PCI_66_PCIE_config
20
21Generally speaking, most people should choose to use #5. Details
22of each choice are listed below.
23
24Choice #1 does not enable CONFIG_PCI, and assumes that the PCI slot
25will be left empty (M66EN high), and so the board will operate with
26a base clock of 66MHz. Note that you need both PCI enabled in u-boot
27and linux in order to have functional PCI under linux.
28
29The second enables PCI support and builds for a 33MHz clock rate. Note
30that if a 33MHz 32bit card is inserted in the slot, then the whole board
31will clock down to a 33MHz base clock instead of the default 66MHz. This
32will change the baud clocks and mess up your serial console output if you
33were previously running at 66MHz. If you want to use a 33MHz PCI card,
34then you should build a U-Boot with a _PCI_33_ config and store this
35to flash prior to powering down the board and inserting the 33MHz PCI
36card. [The above discussion assumes that the SW2[1-4] has not been changed
37to reflect a different CCB:SYSCLK ratio]
38
39The third option builds PCI support in, and leaves the clocking at the
40default 66MHz. Options four and five are just repeats of option two
41and three, but with PCI-e support enabled as well.
42
43PCI output listing with an intel e1000 PCI-x and a Syskonnect SK-9Exx
44is shown below for sbc8548_PCI_66_PCIE_config. (Note that PCI-e with
45a 33MHz PCI configuration is currently untested.)
46
47 => pci 0
48 Scanning PCI devices on bus 0
49 BusDevFun VendorId DeviceId Device Class Sub-Class
50 _____________________________________________________________
51 00.00.00 0x1057 0x0012 Processor 0x20
52 00.01.00 0x8086 0x1026 Network controller 0x00
53 => pci 1
54 Scanning PCI devices on bus 1
55 BusDevFun VendorId DeviceId Device Class Sub-Class
56 _____________________________________________________________
57 01.00.00 0x1957 0x0012 Processor 0x20
58 => pci 2
59 Scanning PCI devices on bus 2
60 BusDevFun VendorId DeviceId Device Class Sub-Class
61 _____________________________________________________________
62 02.00.00 0x1148 0x9e00 Network controller 0x00
63 =>
Joe Hamman9e3ed392007-12-13 06:45:14 -060064
Paul Gortmaker7e44f2b2011-12-30 23:53:10 -050065Memory Size and using SPD:
66==========================
67
68The default configuration uses hard coded memory configuration settings
69for 256MB of DDR2 @400MHz. It does not by default use the DDR2 SPD
70EEPROM data to read what memory is installed.
71
72There is a hardware errata, which causes the older local bus SDRAM
73SPD EEPROM to land at the same address as the DDR2 SPD EEPROM, so
74that the SPD data can not be read reliably.
75
76If you want to upgrade to larger RAM size, you can simply enable
77 #define CONFIG_SPD_EEPROM
78 #define CONFIG_DDR_SPD
79in include/configs/sbc8548.h file. (The lines are already there
80but listed as #undef).
81
82Note that you will have to physically remove the LBC 128MB DIMM
83from the board's socket to resolve the above i2c address overlap
84issue and allow SPD autodetection of RAM to work.
85
Joe Hamman9e3ed392007-12-13 06:45:14 -060086
Paul Gortmakerdd9ca982009-09-25 11:14:11 -040087Updating U-boot with U-boot:
88============================
89
90Note that versions of u-boot up to and including 2009.08 had u-boot stored
91at 0xfff8_0000 -> 0xffff_ffff (512k). Currently it is being stored from
920xfffa_0000 -> 0xffff_ffff (384k). If you use an old macro/script to
93update u-boot with u-boot and it uses the old address, you will render
94your board inoperable, and you will require JTAG recovery.
95
96The following steps list how to update with the current address:
97
98 tftp u-boot.bin
99 md 200000 10
100 protect off all
101 erase fffa0000 ffffffff
102 cp.b 200000 fffa0000 60000
103 md fffa0000 10
104 protect on all
105
106The "md" steps in the above are just a precautionary step that allow
107you to confirm the u-boot version that was downloaded, and then confirm
108that it was copied to flash.
109
Paul Gortmakerf0aec4e2011-12-30 23:53:08 -0500110The above assumes that you are using the default board settings which
111have u-boot in the 8MB flash, tied to /CS0.
112
113If you are running the default 8MB /CS0 settings but want to store an
114image in the SODIMM that is built with CONFIG_SYS_ALT_BOOT enabled,
115(as a backup, etc) then the steps will become:
116
117 tftp u-boot.bin
118 md 200000 10
119 protect off all
120 era eff00000 efffffff
121 cp.b 200000 eff00000 100000
122 md eff00000 10
123 protect on all
124
125Finally, if you are running the alternate 64MB /CS0 settings and want
126to update the in-use u-boot image, then (again with CONFIG_SYS_ALT_BOOT
127enabled) the steps will become:
128
129 tftp u-boot.bin
130 md 200000 10
131 protect off all
132 era fff00000 ffffffff
133 cp.b 200000 fff00000 100000
134 md fff00000 10
135 protect on all
136
Paul Gortmakerdd9ca982009-09-25 11:14:11 -0400137
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400138Hardware Reference:
139===================
Joe Hamman9e3ed392007-12-13 06:45:14 -0600140
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400141The following contains some summary information on hardware settings
142that are relevant to u-boot, based on the board manual. For the
143most up to date and complete details of the board, please request the
144reference manual ERG-00327-001.pdf from www.windriver.com
145
146Boot flash:
147 intel V28F640Jx, 8192x8 (one device) at 0xff80_0000
148
149Sodimm flash:
150 intel V28F128Jx, 16384x8 (4 devices) at 0xfb80_0000
Paul Gortmaker3fd673c2011-12-30 23:53:07 -0500151 Note that this address reflects the default setting for
152 the JTAG debugging tools, but since the alignment is
153 rather inconvenient, u-boot puts it at 0xec00_0000.
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400154
155
156 Jumpers:
157
158Jumper Name ON OFF
159----------------------------------------------------------------
160JP12 CS0/CS6 swap see note[*] see note[*]
161
162JP13 SODIMM flash write OK writes disabled
163 write prot.
164
165JP14 HRESET/TRST joined isolated
166
167JP15 PWR ON when AC pwr use S1 for on/off
168
169JP16 Demo LEDs lit not lit
170
171JP19 PCI mode PCI PCI-X
172
173
174[*]JP12, when jumpered parallel to the SODIMM, puts the boot flash
175onto /CS0 and the SODIMM flash on /CS6 (default). When JP12
176is jumpered parallel to the LBC-SDRAM, then /CS0 is for the
177SODIMM flash and /CS6 is for the boot flash. Note that in this
Paul Gortmakerf0aec4e2011-12-30 23:53:08 -0500178alternate setting, you also need to switch SW2.8 to ON.
179See the setting CONFIG_SYS_ALT_BOOT if you want to use this setting
180and boot u-boot from the 64MB SODIMM
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400181
182
183 Switches:
184
185The defaults are marked with a *
186
187Name Desc. ON OFF
188------------------------------------------------------------------
189S1 Pwr toggle n/a n/a
190
191SW2.1 CFG_SYS_PLL0 1 0*
192SW2.2 CFG_SYS_PLL1 1* 0
193SW2.3 CFG_SYS_PLL2 1* 0
194SW2.4 CFG_SYS_PLL3 1 0*
195SW2.5 CFG_CORE_PLL0 1* 0
196SW2.6 CFG_CORE_PLL1 1 0*
197SW2.7 CFG_CORE_PLL2 1* 0
198SW2.8 CFG_ROM_LOC1 1 0*
199
200SW3.1 CFG_HOST_AGT0 1* 0
201SW3.2 CFG_HOST_AGT1 1* 0
202SW3.3 CFG_HOST_AGT2 1* 0
203SW3.4 CFG_IO_PORTS0 1* 0
204SW3.5 CFG_IO_PORTS0 1 0*
205SW3.6 CFG_IO_PORTS0 1 0*
206
207SerDes CLK(MHz) SW5.1 SW5.2
208----------------------------------------------
20925 0 0
210100* 1 0
211125 0 1
212200 1 1
213
214SerDes CLK spread SW5.3 SW5.4
215----------------------------------------------
216+/- 0.25% 0 0
217-0.50% 1 0
218-0.75% 0 1
219No Spread* 1 1
220
221SW4 settings are readable from the EPLD and are currently not used for
222any hardware settings (i.e. user configuration switches).
223
224 LEDs:
225
226Name Desc. ON OFF
227------------------------------------------------------------------
228D13 PCI/PCI-X PCI-X PCI
229D14 3.3V PWR 3.3V no power
230D15 SYSCLK 66MHz 33MHz
231
232
233 Default Memory Map:
234
235start end CS<n> width Desc.
236----------------------------------------------------------------------
2370000_0000 0fff_ffff MCS0,1 64 DDR2 (256MB)
238f000_0000 f7ff_ffff CS3,4 32 LB SDRAM (128MB)
239f800_0000 f8b0_1fff CS5 - EPLD
Paul Gortmaker3fd673c2011-12-30 23:53:07 -0500240fb80_0000 ff7f_ffff CS6 32 SODIMM flash (64MB) [*]
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400241ff80_0000 ffff_ffff CS0 8 Boot flash (8MB)
242
Paul Gortmaker3fd673c2011-12-30 23:53:07 -0500243[*] fb80 represents the default programmed by WR JTAG register files,
244 but u-boot places the flash at either ec00 or fc00 based on JP12.
245
Paul Gortmakerbd42bbb2009-09-18 19:08:46 -0400246The EPLD on CS5 demuxes the following devices at the following offsets:
247
248offset size width device
249--------------------------------------------------------
2500 1fff 8 7 segment display LED
25110_0000 1fff 4 user switches
25230_0000 1fff 4 HW Rev. register
253b0_0000 1fff 8 8kB EEPROM