blob: 28bcb318e8bb650e3ba0807178e02df97b7c30b3 [file] [log] [blame]
wdenke63c8ee2004-06-09 21:04:48 +00001
2After following the step of Yoo. Jonghoon and Wolfgang Denk,
3I ported u-boot on RPXlite DW version board: RPXlite_DW or LITE_DW.
4
wdenk6225c5d2005-01-09 23:33:49 +00005There are at least three differences between the Yoo-ported RPXlite and the RPXlite_DW.
wdenke63c8ee2004-06-09 21:04:48 +00006
wdenk6225c5d2005-01-09 23:33:49 +00007Board(in U-Boot) version(in EmbeddedPlanet) CPU SDRAM FLASH
wdenke63c8ee2004-06-09 21:04:48 +00008RPXlite RPXlite CW 850 16MB 4MB
wdenk6225c5d2005-01-09 23:33:49 +00009RPXlite_DW RPXlite DW(EP 823 H1 DW) 823e 64MB 16MB
wdenke63c8ee2004-06-09 21:04:48 +000010
11This fireware is specially coded for EmbeddedPlanet Co. Software Development
12Platform(RPXlite DW),which has a NEC NL6448BC20-08 LCD panel.
13
14It has the following three features:
15
161. 64MHz/48MHz system frequence setting options.
17The default setting is 48MHz.To get a 64MHz u-boot,just add
18'64' in make command,like
19
wdenk6225c5d2005-01-09 23:33:49 +000020make distclean
wdenke63c8ee2004-06-09 21:04:48 +000021make RPXlite_DW_64_config
22make all
23
242. CFG_ENV_IS_IN_FLASH/CFG_ENV_IS_IN_NVRAM
25
26The default environment parameter is stored in FLASH because it is a common choice for
27environment parameter.So I make NVRAM as backup parameter storeage.The reason why I
28didn't use EEPROM for ENV is that PlanetCore V2.0 use EEPROM as environment parameter
29home.Because of the possibility of using two firewares on this board,I didn't
30'disturb' EEPROM.To get NVRAM support,you may use the following build command:
31
wdenk6225c5d2005-01-09 23:33:49 +000032make distclean
wdenke63c8ee2004-06-09 21:04:48 +000033make RPXlite_DW_NVRAM_config
34make all
35
363. LCD panel support
37
wdenk6225c5d2005-01-09 23:33:49 +000038To support the Platform better,I added LCD panel(NL6448BC20-08) function.
39For the convenience of debug, CONFIG_PERBOOT was supported. So you just
40perss ENTER if you want to get a serial console in boot downcounting.
wdenk082acfd2005-01-10 00:01:04 +000041Then you can switch to LCD and serial console freely just typing
wdenk6225c5d2005-01-09 23:33:49 +000042'run lcd' or 'run ser'. They are only vaild when CONFIG_LCD was enabled.
wdenke63c8ee2004-06-09 21:04:48 +000043
44To get a LCD support u-boot,you can do the following:
45
wdenk6225c5d2005-01-09 23:33:49 +000046make distclean
wdenke63c8ee2004-06-09 21:04:48 +000047make RPXlite_DW_LCD_config
48make all
49
50~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
51The basic make commands could be:
52
53make RPXlite_DW_config
54make RPXlite_DW_64_config
55make RPXlite_DW_LCD_config
56make RPXlite_DW_NVRAM_config
57
58BTW,you can combine the above features together and get a workable u-boot to meet your need.
59For example,to get a 64MHZ && ENV_IS_IN_FLASH && LCD panel support u-boot,you can type:
60
61make RPXlite_DW_NVRAM_64_LCD_config
62make all
63
64So other combining make commands could be:
65
66make RPXlite_DW_NVRAM_64_config
67make RPXlite_DW_NVRAM_LCD_config
68make RPXlite_DW_64_LCD_config
69
70~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71
72The boot process by "make RPXlite_DW_config" could be:
73
wdenk6225c5d2005-01-09 23:33:49 +000074U-Boot 1.1.2 (Aug 29 2004 - 15:11:27)
wdenke63c8ee2004-06-09 21:04:48 +000075
76CPU: PPC823EZTnnB2 at 48 MHz: 16 kB I-Cache 8 kB D-Cache
77Board: RPXlite_DW
78DRAM: 64 MB
79FLASH: 16 MB
80*** Warning - bad CRC, using default environment
81
82In: serial
83Out: serial
84Err: serial
85Net: SCC ETHERNET
86u-boot>
87
88~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
89
wdenk6225c5d2005-01-09 23:33:49 +000090A word on the U-Boot enviroment variable setting and usage :
91
92In the beginning, you could just need very simple defult environment variable setting,
93like[include/configs/RPXlite.h] :
94
95#define CONFIG_BOOTCOMMAND \
wdenk082acfd2005-01-10 00:01:04 +000096 "bootp; " \
Wolfgang Denkfe126d82005-11-20 21:40:11 +010097 "setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath} " \
98 "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; " \
wdenk082acfd2005-01-10 00:01:04 +000099 "bootm"
wdenk6225c5d2005-01-09 23:33:49 +0000100
wdenk082acfd2005-01-10 00:01:04 +0000101This is enough for kernel NFS test. But as debug process goes on, you would expect
wdenk6225c5d2005-01-09 23:33:49 +0000102to save some time on environment variable setting and u-boot/kernel updating.
103So the default environment variable setting would become more complicated. Just like
104the one I did in include/configs/RPXlite_DW.h.
105
106Two u-boot commands, ku and uu, should be careful to use. They were designed to update
wdenk082acfd2005-01-10 00:01:04 +0000107kernel and u-boot image file respectively. You must tftp your image to default address
wdenk6225c5d2005-01-09 23:33:49 +0000108'100000' and then use them correctly. Yeah, you can create your own command to do this
109job. :-) The example u-boot image updating process could be :
110
111u-boot>t 100000 RPXlite_DW_LCD.bin
112Using SCC ETHERNET device
113TFTP from server 172.16.115.6; our IP address is 172.16.115.7
114Filename 'RPXlite_DW_LCD.bin'.
115Load address: 0x100000
116Loading: #############################
117done
118Bytes transferred = 144700 (2353c hex)
119u-boot>run uu
120Un-Protect Flash Sectors 0-4 in Bank # 1
121Erase Flash Sectors 0-4 in Bank # 1
122.... done
123Copy to Flash... done
124ff000000: 27051956 552d426f 6f742031 2e312e32 '..VU-Boot 1.1.2
125ff000010: 20284175 67203239 20323030 34202d20 (Aug 29 2004 -
126ff000020: 31353a32 303a3238 29000000 00000000 15:20:28).......
127ff000030: 00000000 00000000 00000000 00000000 ................
128ff000040: 00000000 00000000 00000000 00000000 ................
129ff000050: 00000000 00000000 00000000 00000000 ................
130ff000060: 00000000 00000000 00000000 00000000 ................
131ff000070: 00000000 00000000 00000000 00000000 ................
132ff000080: 00000000 00000000 00000000 00000000 ................
133ff000090: 00000000 00000000 00000000 00000000 ................
134ff0000a0: 00000000 00000000 00000000 00000000 ................
135ff0000b0: 00000000 00000000 00000000 00000000 ................
136ff0000c0: 00000000 00000000 00000000 00000000 ................
137ff0000d0: 00000000 00000000 00000000 00000000 ................
138ff0000e0: 00000000 00000000 00000000 00000000 ................
139ff0000f0: 00000000 00000000 00000000 00000000 ................
140u-boot updating finished
141u-boot>
142
143Also for environment updating, 'run eu' could let you erase OLD default environment variable
144and then use the working u-boot environment setting.
145
146~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147
148Finally, if you want to keep the serial port to possible debug on spot for deployment, you
149just need to enable 'DEPLOYMENT' in RPXlite_DW.h as 'DEBUG' does. Only the special string
150defined by CONFIG_AUTOBOOT_STOP_STR like 'st' can stop the autoboot.
151
wdenke63c8ee2004-06-09 21:04:48 +0000152I'd like to extend my heartfelt gratitute to kind people for helping me work it out.
153I would particually thank Wolfgang Denk for his nice help.
154
155Enjoy,
156
157Sam Song, samsongshu@yahoo.com.cn
158Institute of Electrical Machinery and Controls
159Shanghai University
160
wdenk6225c5d2005-01-09 23:33:49 +0000161Oct. 11, 2004