1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34#ifndef __CONFIG_H
35#define __CONFIG_H
36
37#define CONFIG_PPCHAMELEON_MODULE_BA 0
38#define CONFIG_PPCHAMELEON_MODULE_ME 1
39#define CONFIG_PPCHAMELEON_MODULE_HI 2
40#ifndef CONFIG_PPCHAMELEON_MODULE_MODEL
41#define CONFIG_PPCHAMELEON_MODULE_MODEL CONFIG_PPCHAMELEON_MODULE_BA
42#endif
43
44
45
46
47
48
49#if (!defined(CONFIG_PPCHAMELEON_CLK_25) && !defined(CONFIG_PPCHAMELEON_CLK_33))
50#define CONFIG_PPCHAMELEON_CLK_25
51#endif
52
53#if (defined(CONFIG_PPCHAMELEON_CLK_25) && defined(CONFIG_PPCHAMELEON_CLK_33))
54#error "* Two external frequencies (SysClk) are defined! *"
55#endif
56
57#undef CONFIG_PPCHAMELEON_SMI712
58
59
60
61
62#undef __DEBUG_START_FROM_SRAM__
63#define __DISABLE_MACHINE_EXCEPTION__
64
65#ifdef __DEBUG_START_FROM_SRAM__
66#define CONFIG_SYS_DUMMY_FLASH_SIZE 1024*1024*4
67#endif
68
69
70
71
72
73
74#define CONFIG_405EP 1
75#define CONFIG_4xx 1
76#define CONFIG_PPCHAMELEONEVB 1
77
78#define CONFIG_BOARD_EARLY_INIT_F 1
79#define CONFIG_MISC_INIT_R 1
80
81
82#ifdef CONFIG_PPCHAMELEON_CLK_25
83# define CONFIG_SYS_CLK_FREQ 25000000
84#elif (defined (CONFIG_PPCHAMELEON_CLK_33))
85# define CONFIG_SYS_CLK_FREQ 33333333
86#else
87# error "* External frequency (SysClk) not defined! *"
88#endif
89
90#define CONFIG_BAUDRATE 115200
91#define CONFIG_BOOTDELAY 5
92
93#undef CONFIG_BOOTARGS
94
95
96#define CONFIG_ENV_OVERWRITE
97#define CONFIG_ETHADDR 00:50:c2:1e:af:fe
98#define CONFIG_HAS_ETH1
99#define CONFIG_ETH1ADDR 00:50:c2:1e:af:fd
100
101#define CONFIG_LOADS_ECHO 1
102#define CONFIG_SYS_LOADS_BAUD_CHANGE 1
103
104#undef CONFIG_EXT_PHY
105#define CONFIG_NET_MULTI 1
106
107#define CONFIG_PPC4xx_EMAC
108#define CONFIG_MII 1
109#ifndef CONFIG_EXT_PHY
110#define CONFIG_PHY_ADDR 1
111#define CONFIG_PHY1_ADDR 2
112#else
113#define CONFIG_PHY_ADDR 2
114#endif
115#define CONFIG_PHY_CLK_FREQ EMAC_STACR_CLK_66MHZ
116
117
118
119
120
121#define CONFIG_BOOTP_BOOTFILESIZE
122#define CONFIG_BOOTP_BOOTPATH
123#define CONFIG_BOOTP_GATEWAY
124#define CONFIG_BOOTP_HOSTNAME
125
126
127
128
129
130#include <config_cmd_default.h>
131
132#define CONFIG_CMD_DATE
133#define CONFIG_CMD_DHCP
134#define CONFIG_CMD_ELF
135#define CONFIG_CMD_EEPROM
136#define CONFIG_CMD_I2C
137#define CONFIG_CMD_IRQ
138#define CONFIG_CMD_JFFS2
139#define CONFIG_CMD_MII
140#define CONFIG_CMD_NAND
141#define CONFIG_CMD_NFS
142#define CONFIG_CMD_PCI
143#define CONFIG_CMD_SNTP
144
145
146#define CONFIG_MAC_PARTITION
147#define CONFIG_DOS_PARTITION
148
149#undef CONFIG_WATCHDOG
150
151#define CONFIG_RTC_M41T11 1
152#define CONFIG_SYS_I2C_RTC_ADDR 0x68
153#define CONFIG_SYS_M41T11_BASE_YEAR 1900
154
155
156
157
158#define CONFIG_SDRAM_BANK0 1
159
160
161#define CONFIG_SYS_SDRAM_CL 2
162#define CONFIG_SYS_SDRAM_tRP 20
163#define CONFIG_SYS_SDRAM_tRC 65
164#define CONFIG_SYS_SDRAM_tRCD 20
165#undef CONFIG_SYS_SDRAM_tRFC
166
167
168
169
170#define CONFIG_SYS_LONGHELP
171#define CONFIG_SYS_PROMPT "=> "
172
173#undef CONFIG_SYS_HUSH_PARSER
174#ifdef CONFIG_SYS_HUSH_PARSER
175#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
176#endif
177
178#if defined(CONFIG_CMD_KGDB)
179#define CONFIG_SYS_CBSIZE 1024
180#else
181#define CONFIG_SYS_CBSIZE 256
182#endif
183#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
184#define CONFIG_SYS_MAXARGS 16
185#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
186
187#define CONFIG_SYS_DEVICE_NULLDEV 1
188
189#define CONFIG_SYS_CONSOLE_INFO_QUIET 1
190
191#define CONFIG_SYS_MEMTEST_START 0x0400000
192#define CONFIG_SYS_MEMTEST_END 0x0C00000
193
194#undef CONFIG_SYS_EXT_SERIAL_CLOCK
195#define CONFIG_SYS_BASE_BAUD 691200
196
197
198#define CONFIG_SYS_BAUDRATE_TABLE \
199 { 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, \
200 57600, 115200, 230400, 460800, 921600 }
201
202#define CONFIG_SYS_LOAD_ADDR 0x100000
203#define CONFIG_SYS_EXTBDINFO 1
204
205#define CONFIG_SYS_HZ 1000
206
207#define CONFIG_ZERO_BOOTDELAY_CHECK
208
209
210
211
212
213
214
215
216
217
218
219#define PPCHAMELON_NAND_TIMER_HACK
220
221#define CONFIG_SYS_NAND0_BASE 0xFF400000
222#define CONFIG_SYS_NAND1_BASE 0xFF000000
223#define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND0_BASE, CONFIG_SYS_NAND1_BASE }
224#define NAND_BIG_DELAY_US 25
225#define CONFIG_SYS_MAX_NAND_DEVICE 2
226
227#define CONFIG_SYS_NAND0_CE (0x80000000 >> 1)
228#define CONFIG_SYS_NAND0_RDY (0x80000000 >> 4)
229#define CONFIG_SYS_NAND0_CLE (0x80000000 >> 2)
230#define CONFIG_SYS_NAND0_ALE (0x80000000 >> 3)
231
232#define CONFIG_SYS_NAND1_CE (0x80000000 >> 14)
233#define CONFIG_SYS_NAND1_RDY (0x80000000 >> 31)
234#define CONFIG_SYS_NAND1_CLE (0x80000000 >> 15)
235#define CONFIG_SYS_NAND1_ALE (0x80000000 >> 16)
236
237#define MACRO_NAND_DISABLE_CE(nandptr) do \
238{ \
239 switch((unsigned long)nandptr) \
240 { \
241 case CONFIG_SYS_NAND0_BASE: \
242 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND0_CE); \
243 break; \
244 case CONFIG_SYS_NAND1_BASE: \
245 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND1_CE); \
246 break; \
247 } \
248} while(0)
249
250#define MACRO_NAND_ENABLE_CE(nandptr) do \
251{ \
252 switch((unsigned long)nandptr) \
253 { \
254 case CONFIG_SYS_NAND0_BASE: \
255 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND0_CE); \
256 break; \
257 case CONFIG_SYS_NAND1_BASE: \
258 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND1_CE); \
259 break; \
260 } \
261} while(0)
262
263#define MACRO_NAND_CTL_CLRALE(nandptr) do \
264{ \
265 switch((unsigned long)nandptr) \
266 { \
267 case CONFIG_SYS_NAND0_BASE: \
268 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND0_ALE); \
269 break; \
270 case CONFIG_SYS_NAND1_BASE: \
271 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND1_ALE); \
272 break; \
273 } \
274} while(0)
275
276#define MACRO_NAND_CTL_SETALE(nandptr) do \
277{ \
278 switch((unsigned long)nandptr) \
279 { \
280 case CONFIG_SYS_NAND0_BASE: \
281 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND0_ALE); \
282 break; \
283 case CONFIG_SYS_NAND1_BASE: \
284 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND1_ALE); \
285 break; \
286 } \
287} while(0)
288
289#define MACRO_NAND_CTL_CLRCLE(nandptr) do \
290{ \
291 switch((unsigned long)nandptr) \
292 { \
293 case CONFIG_SYS_NAND0_BASE: \
294 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND0_CLE); \
295 break; \
296 case CONFIG_SYS_NAND1_BASE: \
297 out32(GPIO0_OR, in32(GPIO0_OR) & ~CONFIG_SYS_NAND1_CLE); \
298 break; \
299 } \
300} while(0)
301
302#define MACRO_NAND_CTL_SETCLE(nandptr) do { \
303 switch((unsigned long)nandptr) { \
304 case CONFIG_SYS_NAND0_BASE: \
305 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND0_CLE); \
306 break; \
307 case CONFIG_SYS_NAND1_BASE: \
308 out32(GPIO0_OR, in32(GPIO0_OR) | CONFIG_SYS_NAND1_CLE); \
309 break; \
310 } \
311} while(0)
312
313
314
315
316
317#define PCI_HOST_ADAPTER 0
318#define PCI_HOST_FORCE 1
319#define PCI_HOST_AUTO 2
320
321#define CONFIG_PCI
322#define CONFIG_PCI_HOST PCI_HOST_FORCE
323#undef CONFIG_PCI_PNP
324
325
326#define CONFIG_PCI_SCAN_SHOW
327
328#define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1014
329#define CONFIG_SYS_PCI_SUBSYS_DEVICEID 0x0000
330#define CONFIG_SYS_PCI_CLASSCODE 0x0b20
331
332#define CONFIG_SYS_PCI_PTM1LA 0x00000000
333#define CONFIG_SYS_PCI_PTM1MS 0xfc000001
334#define CONFIG_SYS_PCI_PTM1PCI 0x00000000
335#define CONFIG_SYS_PCI_PTM2LA 0xffc00000
336#define CONFIG_SYS_PCI_PTM2MS 0xffc00001
337#define CONFIG_SYS_PCI_PTM2PCI 0x04000000
338
339
340
341
342
343
344#define CONFIG_SYS_SDRAM_BASE 0x00000000
345
346
347
348
349
350
351
352
353
354#define CONFIG_SYS_FLASH_BASE 0xFFFB0000
355#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
356#define CONFIG_SYS_MONITOR_LEN (320 * 1024)
357
358#define CONFIG_SYS_MALLOC_LEN (256 * 1024)
359
360
361
362
363
364
365#define CONFIG_SYS_BOOTMAPSZ (8 << 20)
366
367
368
369#define CONFIG_SYS_MAX_FLASH_BANKS 1
370#define CONFIG_SYS_MAX_FLASH_SECT 256
371
372#define CONFIG_SYS_FLASH_ERASE_TOUT 120000
373#define CONFIG_SYS_FLASH_WRITE_TOUT 1000
374
375#define CONFIG_SYS_FLASH_WORD_SIZE unsigned short
376#define CONFIG_SYS_FLASH_ADDR0 0x5555
377#define CONFIG_SYS_FLASH_ADDR1 0x2AAA
378
379
380
381
382#define CONFIG_SYS_FLASH_READ0 0x0000
383#define CONFIG_SYS_FLASH_READ1 0x0001
384#define CONFIG_SYS_FLASH_READ2 0x0002
385
386#define CONFIG_SYS_FLASH_EMPTY_INFO
387
388
389
390
391#ifdef ENVIRONMENT_IN_EEPROM
392
393#define CONFIG_ENV_IS_IN_EEPROM 1
394#define CONFIG_ENV_OFFSET 0x100
395#define CONFIG_ENV_SIZE 0x700
396
397#else
398
399#define CONFIG_ENV_IS_IN_FLASH 1
400#define CONFIG_ENV_ADDR 0xFFFF8000
401#define CONFIG_ENV_SECT_SIZE 0x2000
402#define CONFIG_ENV_ADDR_REDUND 0xFFFFA000
403#define CONFIG_ENV_SIZE_REDUND 0x2000
404
405#define CONFIG_SYS_USE_PPCENV
406
407#endif
408
409
410#define CONFIG_SYS_NVRAM_BASE_ADDR 0xF0000500
411#define CONFIG_SYS_NVRAM_SIZE 242
412
413
414
415
416#define CONFIG_HARD_I2C
417#define CONFIG_PPC4XX_I2C
418#define CONFIG_SYS_I2C_SPEED 400000
419#define CONFIG_SYS_I2C_SLAVE 0x7F
420
421#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50
422#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
423
424
425#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4
426
427
428#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
429
430
431
432
433
434
435
436#define FLASH_BASE0_PRELIM 0xFFC00000
437
438
439
440
441
442
443#define CONFIG_SYS_EBC_PB0AP 0x92015480
444#define CONFIG_SYS_EBC_PB0CR 0xFFC5A000
445
446
447
448#define CONFIG_SYS_EBC_PB1AP 0x92015480
449#define CONFIG_SYS_EBC_PB1CR 0xFF85A000
450
451
452#define CONFIG_SYS_EBC_PB2AP 0x92015480
453#define CONFIG_SYS_EBC_PB2CR 0xFF458000
454
455
456#define CONFIG_SYS_EBC_PB3AP 0x92015480
457#define CONFIG_SYS_EBC_PB3CR 0xFF058000
458
459#ifdef CONFIG_PPCHAMELEON_SMI712
460
461
462
463#define CONFIG_VIDEO
464#define CONFIG_CFB_CONSOLE
465#define CONFIG_VIDEO_SMI_LYNXEM
466#define CONFIG_VIDEO_LOGO
467
468#define CONFIG_CONSOLE_EXTRA_INFO
469#define CONFIG_VGA_AS_SINGLE_DEVICE
470
471#define CONFIG_SYS_ISA_IO 0xE8000000
472
473#define CONFIG_SYS_DEFAULT_VIDEO_MODE 0x303
474#endif
475
476
477
478
479
480#define CONFIG_SYS_FPGA_MODE 0x00
481#define CONFIG_SYS_FPGA_STATUS 0x02
482#define CONFIG_SYS_FPGA_TS 0x04
483#define CONFIG_SYS_FPGA_TS_LOW 0x06
484#define CONFIG_SYS_FPGA_TS_CAP0 0x10
485#define CONFIG_SYS_FPGA_TS_CAP0_LOW 0x12
486#define CONFIG_SYS_FPGA_TS_CAP1 0x14
487#define CONFIG_SYS_FPGA_TS_CAP1_LOW 0x16
488#define CONFIG_SYS_FPGA_TS_CAP2 0x18
489#define CONFIG_SYS_FPGA_TS_CAP2_LOW 0x1a
490#define CONFIG_SYS_FPGA_TS_CAP3 0x1c
491#define CONFIG_SYS_FPGA_TS_CAP3_LOW 0x1e
492
493
494#define CONFIG_SYS_FPGA_MODE_CF_RESET 0x0001
495#define CONFIG_SYS_FPGA_MODE_TS_IRQ_ENABLE 0x0100
496#define CONFIG_SYS_FPGA_MODE_TS_IRQ_CLEAR 0x1000
497#define CONFIG_SYS_FPGA_MODE_TS_CLEAR 0x2000
498
499
500#define CONFIG_SYS_FPGA_STATUS_DIP0 0x0001
501#define CONFIG_SYS_FPGA_STATUS_DIP1 0x0002
502#define CONFIG_SYS_FPGA_STATUS_DIP2 0x0004
503#define CONFIG_SYS_FPGA_STATUS_FLASH 0x0008
504#define CONFIG_SYS_FPGA_STATUS_TS_IRQ 0x1000
505
506#define CONFIG_SYS_FPGA_SPARTAN2 1
507#define CONFIG_SYS_FPGA_MAX_SIZE 128*1024
508
509
510#define CONFIG_SYS_FPGA_PRG 0x04000000
511#define CONFIG_SYS_FPGA_CLK 0x02000000
512#define CONFIG_SYS_FPGA_DATA 0x01000000
513#define CONFIG_SYS_FPGA_INIT 0x00010000
514#define CONFIG_SYS_FPGA_DONE 0x00008000
515
516
517
518
519
520#define CONFIG_SYS_TEMP_STACK_OCM 1
521
522
523#define CONFIG_SYS_OCM_DATA_ADDR 0xF8000000
524#define CONFIG_SYS_OCM_DATA_SIZE 0x1000
525#define CONFIG_SYS_INIT_RAM_ADDR CONFIG_SYS_OCM_DATA_ADDR
526#define CONFIG_SYS_INIT_RAM_END CONFIG_SYS_OCM_DATA_SIZE
527
528#define CONFIG_SYS_GBL_DATA_SIZE 128
529#define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE)
530#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545#define CONFIG_SYS_GPIO0_OSRH 0x40000550
546#define CONFIG_SYS_GPIO0_OSRL 0x00000110
547#define CONFIG_SYS_GPIO0_ISR1H 0x00000000
548
549#define CONFIG_SYS_GPIO0_ISR1L 0x15555444
550#define CONFIG_SYS_GPIO0_TSRH 0x00000000
551#define CONFIG_SYS_GPIO0_TSRL 0x00000000
552#define CONFIG_SYS_GPIO0_TCR 0xF7FF8014
553
554
555
556
557
558
559#define BOOTFLAG_COLD 0x01
560#define BOOTFLAG_WARM 0x02
561
562
563#define CONFIG_NO_SERIAL_EEPROM
564
565
566
567#ifdef CONFIG_NO_SERIAL_EEPROM
568
569
570
571
572
573
574
575
576#undef AUTO_MEMORY_CONFIG
577#define DIMM_READ_ADDR 0xAB
578#define DIMM_WRITE_ADDR 0xAA
579
580#define CPC0_PLLMR0 (CNTRL_DCR_BASE+0x0)
581#define CPC0_BOOT (CNTRL_DCR_BASE+0x1)
582#define CPC0_CR1 (CNTRL_DCR_BASE+0x2)
583#define CPC0_EPRCSR (CNTRL_DCR_BASE+0x3)
584#define CPC0_PLLMR1 (CNTRL_DCR_BASE+0x4)
585#define CPC0_UCR (CNTRL_DCR_BASE+0x5)
586#define CPC0_SRR (CNTRL_DCR_BASE+0x6)
587#define CPC0_JTAGID (CNTRL_DCR_BASE+0x7)
588#define CPC0_SPARE (CNTRL_DCR_BASE+0x8)
589#define CPC0_PCI (CNTRL_DCR_BASE+0x9)
590
591
592#define PLL_ACTIVE 0x80000000
593#define CPC0_PLLMR1_SSCS 0x80000000
594#define PLL_RESET 0x40000000
595#define CPC0_PLLMR1_PLLR 0x40000000
596
597#define PLL_FBKDIV 0x00F00000
598#define CPC0_PLLMR1_FBDV 0x00F00000
599#define PLL_FBKDIV_16 0x00000000
600#define PLL_FBKDIV_1 0x00100000
601#define PLL_FBKDIV_2 0x00200000
602#define PLL_FBKDIV_3 0x00300000
603#define PLL_FBKDIV_4 0x00400000
604#define PLL_FBKDIV_5 0x00500000
605#define PLL_FBKDIV_6 0x00600000
606#define PLL_FBKDIV_7 0x00700000
607#define PLL_FBKDIV_8 0x00800000
608#define PLL_FBKDIV_9 0x00900000
609#define PLL_FBKDIV_10 0x00A00000
610#define PLL_FBKDIV_11 0x00B00000
611#define PLL_FBKDIV_12 0x00C00000
612#define PLL_FBKDIV_13 0x00D00000
613#define PLL_FBKDIV_14 0x00E00000
614#define PLL_FBKDIV_15 0x00F00000
615
616#define PLL_FWDDIVA 0x00070000
617#define CPC0_PLLMR1_FWDVA 0x00070000
618#define PLL_FWDDIVA_8 0x00000000
619#define PLL_FWDDIVA_7 0x00010000
620#define PLL_FWDDIVA_6 0x00020000
621#define PLL_FWDDIVA_5 0x00030000
622#define PLL_FWDDIVA_4 0x00040000
623#define PLL_FWDDIVA_3 0x00050000
624#define PLL_FWDDIVA_2 0x00060000
625#define PLL_FWDDIVA_1 0x00070000
626
627#define PLL_FWDDIVB 0x00007000
628#define CPC0_PLLMR1_FWDVB 0x00007000
629#define PLL_FWDDIVB_8 0x00000000
630#define PLL_FWDDIVB_7 0x00001000
631#define PLL_FWDDIVB_6 0x00002000
632#define PLL_FWDDIVB_5 0x00003000
633#define PLL_FWDDIVB_4 0x00004000
634#define PLL_FWDDIVB_3 0x00005000
635#define PLL_FWDDIVB_2 0x00006000
636#define PLL_FWDDIVB_1 0x00007000
637
638#define PLL_TUNE_MASK 0x000003FF
639#define PLL_TUNE_2_M_3 0x00000133
640#define PLL_TUNE_4_M_6 0x00000134
641#define PLL_TUNE_7_M_10 0x00000138
642#define PLL_TUNE_11_M_14 0x0000013C
643#define PLL_TUNE_15_M_40 0x0000023E
644#define PLL_TUNE_VCO_LOW 0x00000000
645#define PLL_TUNE_VCO_HI 0x00000080
646
647
648
649#define PLL_CPUDIV 0x00300000
650#define CPC0_PLLMR0_CCDV 0x00300000
651#define PLL_CPUDIV_1 0x00000000
652#define PLL_CPUDIV_2 0x00100000
653#define PLL_CPUDIV_3 0x00200000
654#define PLL_CPUDIV_4 0x00300000
655
656#define PLL_PLBDIV 0x00030000
657#define CPC0_PLLMR0_CBDV 0x00030000
658#define PLL_PLBDIV_1 0x00000000
659#define PLL_PLBDIV_2 0x00010000
660#define PLL_PLBDIV_3 0x00020000
661#define PLL_PLBDIV_4 0x00030000
662
663#define PLL_OPBDIV 0x00003000
664#define CPC0_PLLMR0_OPDV 0x00003000
665#define PLL_OPBDIV_1 0x00000000
666#define PLL_OPBDIV_2 0x00001000
667#define PLL_OPBDIV_3 0x00002000
668#define PLL_OPBDIV_4 0x00003000
669
670#define PLL_EXTBUSDIV 0x00000300
671#define CPC0_PLLMR0_EPDV 0x00000300
672#define PLL_EXTBUSDIV_2 0x00000000
673#define PLL_EXTBUSDIV_3 0x00000100
674#define PLL_EXTBUSDIV_4 0x00000200
675#define PLL_EXTBUSDIV_5 0x00000300
676
677#define PLL_MALDIV 0x00000030
678#define CPC0_PLLMR0_MPDV 0x00000030
679#define PLL_MALDIV_1 0x00000000
680#define PLL_MALDIV_2 0x00000010
681#define PLL_MALDIV_3 0x00000020
682#define PLL_MALDIV_4 0x00000030
683
684#define PLL_PCIDIV 0x00000003
685#define CPC0_PLLMR0_PPFD 0x00000003
686#define PLL_PCIDIV_1 0x00000000
687#define PLL_PCIDIV_2 0x00000001
688#define PLL_PCIDIV_3 0x00000002
689#define PLL_PCIDIV_4 0x00000003
690
691#ifdef CONFIG_PPCHAMELEON_CLK_25
692
693#define PPCHAMELEON_PLLMR0_133_133_33_66_33 (PLL_CPUDIV_1 | PLL_PLBDIV_1 | \
694 PLL_OPBDIV_2 | PLL_EXTBUSDIV_4 | \
695 PLL_MALDIV_1 | PLL_PCIDIV_4)
696#define PPCHAMELEON_PLLMR1_133_133_33_66_33 (PLL_FBKDIV_8 | \
697 PLL_FWDDIVA_6 | PLL_FWDDIVB_4 | \
698 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
699
700#define PPCHAMELEON_PLLMR0_200_100_50_33 (PLL_CPUDIV_1 | PLL_PLBDIV_2 | \
701 PLL_OPBDIV_2 | PLL_EXTBUSDIV_3 | \
702 PLL_MALDIV_1 | PLL_PCIDIV_4)
703#define PPCHAMELEON_PLLMR1_200_100_50_33 (PLL_FBKDIV_8 | \
704 PLL_FWDDIVA_4 | PLL_FWDDIVB_4 | \
705 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
706
707#define PPCHAMELEON_PLLMR0_266_133_33_66_33 (PLL_CPUDIV_1 | PLL_PLBDIV_2 | \
708 PLL_OPBDIV_2 | PLL_EXTBUSDIV_4 | \
709 PLL_MALDIV_1 | PLL_PCIDIV_4)
710#define PPCHAMELEON_PLLMR1_266_133_33_66_33 (PLL_FBKDIV_8 | \
711 PLL_FWDDIVA_3 | PLL_FWDDIVB_4 | \
712 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
713
714#define PPCHAMELEON_PLLMR0_333_111_37_55_55 (PLL_CPUDIV_1 | PLL_PLBDIV_3 | \
715 PLL_OPBDIV_2 | PLL_EXTBUSDIV_3 | \
716 PLL_MALDIV_1 | PLL_PCIDIV_2)
717#define PPCHAMELEON_PLLMR1_333_111_37_55_55 (PLL_FBKDIV_10 | \
718 PLL_FWDDIVA_3 | PLL_FWDDIVB_4 | \
719 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_HI)
720
721#elif (defined (CONFIG_PPCHAMELEON_CLK_33))
722
723
724#define PPCHAMELEON_PLLMR0_133_133_33_66_33 (PLL_CPUDIV_1 | PLL_PLBDIV_1 | \
725 PLL_OPBDIV_2 | PLL_EXTBUSDIV_4 | \
726 PLL_MALDIV_1 | PLL_PCIDIV_4)
727#define PPCHAMELEON_PLLMR1_133_133_33_66_33 (PLL_FBKDIV_4 | \
728 PLL_FWDDIVA_6 | PLL_FWDDIVB_6 | \
729 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
730
731#define PPCHAMELEON_PLLMR0_200_100_50_33 (PLL_CPUDIV_1 | PLL_PLBDIV_2 | \
732 PLL_OPBDIV_2 | PLL_EXTBUSDIV_3 | \
733 PLL_MALDIV_1 | PLL_PCIDIV_4)
734#define PPCHAMELEON_PLLMR1_200_100_50_33 (PLL_FBKDIV_6 | \
735 PLL_FWDDIVA_4 | PLL_FWDDIVB_4 | \
736 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
737
738#define PPCHAMELEON_PLLMR0_266_133_33_66_33 (PLL_CPUDIV_1 | PLL_PLBDIV_2 | \
739 PLL_OPBDIV_2 | PLL_EXTBUSDIV_4 | \
740 PLL_MALDIV_1 | PLL_PCIDIV_4)
741#define PPCHAMELEON_PLLMR1_266_133_33_66_33 (PLL_FBKDIV_8 | \
742 PLL_FWDDIVA_3 | PLL_FWDDIVB_3 | \
743 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_LOW)
744
745#define PPCHAMELEON_PLLMR0_333_111_37_55_55 (PLL_CPUDIV_1 | PLL_PLBDIV_3 | \
746 PLL_OPBDIV_2 | PLL_EXTBUSDIV_3 | \
747 PLL_MALDIV_1 | PLL_PCIDIV_2)
748#define PPCHAMELEON_PLLMR1_333_111_37_55_55 (PLL_FBKDIV_10 | \
749 PLL_FWDDIVA_3 | PLL_FWDDIVB_3 | \
750 PLL_TUNE_15_M_40 | PLL_TUNE_VCO_HI)
751
752#else
753#error "* External frequency (SysClk) not defined! *"
754#endif
755
756#if (CONFIG_PPCHAMELEON_MODULE_MODEL == CONFIG_PPCHAMELEON_MODULE_HI)
757
758#define PLLMR0_DEFAULT PPCHAMELEON_PLLMR0_333_111_37_55_55
759#define PLLMR1_DEFAULT PPCHAMELEON_PLLMR1_333_111_37_55_55
760#define CONFIG_SYS_OPB_FREQ 55555555
761
762#elif (CONFIG_PPCHAMELEON_MODULE_MODEL == CONFIG_PPCHAMELEON_MODULE_ME)
763#define PLLMR0_DEFAULT PPCHAMELEON_PLLMR0_266_133_33_66_33
764#define PLLMR1_DEFAULT PPCHAMELEON_PLLMR1_266_133_33_66_33
765#define CONFIG_SYS_OPB_FREQ 66666666
766#else
767
768#define PLLMR0_DEFAULT PPCHAMELEON_PLLMR0_133_133_33_66_33
769#define PLLMR1_DEFAULT PPCHAMELEON_PLLMR1_133_133_33_66_33
770#define CONFIG_SYS_OPB_FREQ 66666666
771#endif
772
773#endif
774
775#define CONFIG_JFFS2_NAND 1
776#define NAND_CACHE_PAGES 16
777
778
779
780
781
782
783#undef CONFIG_CMD_MTDPARTS
784#define CONFIG_JFFS2_DEV "nand0"
785#define CONFIG_JFFS2_PART_SIZE 0x00400000
786#define CONFIG_JFFS2_PART_OFFSET 0x00000000
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808#endif
809