diff options
author | Anton Vorontsov <avorontsov@ru.mvista.com> | 2008-05-04 14:46:27 -0400 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2008-05-13 09:53:48 -0400 |
commit | 34b4a8731f50fb6fe772f1e47432bfb1da1f4edd (patch) | |
tree | adc8ebc4522d5aab46a2db7bd96410b84c64c323 | |
parent | 94833a42765509a7aa95ed1ba7b227ead3c29c08 (diff) |
[POWERPC] 86xx: mpc8610_hpcd: add support for NOR and NAND flashes
This patch adds device tree nodes for NOR and NAND flashes and places
board-control node inside the localbus.
defconfig and board file updated appropriately.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/boot/dts/mpc8610_hpcd.dts | 60 | ||||
-rw-r--r-- | arch/powerpc/configs/mpc8610_hpcd_defconfig | 88 | ||||
-rw-r--r-- | arch/powerpc/platforms/86xx/mpc8610_hpcd.c | 1 |
3 files changed, 145 insertions, 4 deletions
diff --git a/arch/powerpc/boot/dts/mpc8610_hpcd.dts b/arch/powerpc/boot/dts/mpc8610_hpcd.dts index bba234eb14a9..08a780d89807 100644 --- a/arch/powerpc/boot/dts/mpc8610_hpcd.dts +++ b/arch/powerpc/boot/dts/mpc8610_hpcd.dts | |||
@@ -46,9 +46,63 @@ | |||
46 | reg = <0x00000000 0x20000000>; // 512M at 0x0 | 46 | reg = <0x00000000 0x20000000>; // 512M at 0x0 |
47 | }; | 47 | }; |
48 | 48 | ||
49 | board-control@e8000000 { | 49 | localbus@e0005000 { |
50 | compatible = "fsl,fpga-pixis"; | 50 | #address-cells = <2>; |
51 | reg = <0xe8000000 32>; // pixis at 0xe8000000 | 51 | #size-cells = <1>; |
52 | compatible = "fsl,mpc8610-elbc", "fsl,elbc", "simple-bus"; | ||
53 | reg = <0xe0005000 0x1000>; | ||
54 | interrupts = <19 2>; | ||
55 | interrupt-parent = <&mpic>; | ||
56 | ranges = <0 0 0xf8000000 0x08000000 | ||
57 | 1 0 0xf0000000 0x08000000 | ||
58 | 2 0 0xe8400000 0x00008000 | ||
59 | 4 0 0xe8440000 0x00008000 | ||
60 | 5 0 0xe8480000 0x00008000 | ||
61 | 6 0 0xe84c0000 0x00008000 | ||
62 | 3 0 0xe8000000 0x00000020>; | ||
63 | |||
64 | flash@0,0 { | ||
65 | compatible = "cfi-flash"; | ||
66 | reg = <0 0 0x8000000>; | ||
67 | bank-width = <2>; | ||
68 | device-width = <1>; | ||
69 | }; | ||
70 | |||
71 | flash@1,0 { | ||
72 | compatible = "cfi-flash"; | ||
73 | reg = <1 0 0x8000000>; | ||
74 | bank-width = <2>; | ||
75 | device-width = <1>; | ||
76 | }; | ||
77 | |||
78 | flash@2,0 { | ||
79 | compatible = "fsl,mpc8610-fcm-nand", | ||
80 | "fsl,elbc-fcm-nand"; | ||
81 | reg = <2 0 0x8000>; | ||
82 | }; | ||
83 | |||
84 | flash@4,0 { | ||
85 | compatible = "fsl,mpc8610-fcm-nand", | ||
86 | "fsl,elbc-fcm-nand"; | ||
87 | reg = <4 0 0x8000>; | ||
88 | }; | ||
89 | |||
90 | flash@5,0 { | ||
91 | compatible = "fsl,mpc8610-fcm-nand", | ||
92 | "fsl,elbc-fcm-nand"; | ||
93 | reg = <5 0 0x8000>; | ||
94 | }; | ||
95 | |||
96 | flash@6,0 { | ||
97 | compatible = "fsl,mpc8610-fcm-nand", | ||
98 | "fsl,elbc-fcm-nand"; | ||
99 | reg = <6 0 0x8000>; | ||
100 | }; | ||
101 | |||
102 | board-control@3,0 { | ||
103 | compatible = "fsl,fpga-pixis"; | ||
104 | reg = <3 0 0x20>; | ||
105 | }; | ||
52 | }; | 106 | }; |
53 | 107 | ||
54 | soc@e0000000 { | 108 | soc@e0000000 { |
diff --git a/arch/powerpc/configs/mpc8610_hpcd_defconfig b/arch/powerpc/configs/mpc8610_hpcd_defconfig index f9e53bdc07cf..7e5b9ce58d89 100644 --- a/arch/powerpc/configs/mpc8610_hpcd_defconfig +++ b/arch/powerpc/configs/mpc8610_hpcd_defconfig | |||
@@ -358,7 +358,93 @@ CONFIG_FW_LOADER=y | |||
358 | # CONFIG_DEBUG_DEVRES is not set | 358 | # CONFIG_DEBUG_DEVRES is not set |
359 | # CONFIG_SYS_HYPERVISOR is not set | 359 | # CONFIG_SYS_HYPERVISOR is not set |
360 | # CONFIG_CONNECTOR is not set | 360 | # CONFIG_CONNECTOR is not set |
361 | # CONFIG_MTD is not set | 361 | CONFIG_MTD=y |
362 | # CONFIG_MTD_DEBUG is not set | ||
363 | # CONFIG_MTD_CONCAT is not set | ||
364 | CONFIG_MTD_PARTITIONS=y | ||
365 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
366 | CONFIG_MTD_CMDLINE_PARTS=y | ||
367 | # CONFIG_MTD_OF_PARTS is not set | ||
368 | # CONFIG_MTD_AR7_PARTS is not set | ||
369 | |||
370 | # | ||
371 | # User Modules And Translation Layers | ||
372 | # | ||
373 | CONFIG_MTD_CHAR=y | ||
374 | CONFIG_MTD_BLKDEVS=y | ||
375 | CONFIG_MTD_BLOCK=y | ||
376 | # CONFIG_FTL is not set | ||
377 | # CONFIG_NFTL is not set | ||
378 | # CONFIG_INFTL is not set | ||
379 | # CONFIG_RFD_FTL is not set | ||
380 | # CONFIG_SSFDC is not set | ||
381 | # CONFIG_MTD_OOPS is not set | ||
382 | |||
383 | # | ||
384 | # RAM/ROM/Flash chip drivers | ||
385 | # | ||
386 | CONFIG_MTD_CFI=y | ||
387 | # CONFIG_MTD_JEDECPROBE is not set | ||
388 | CONFIG_MTD_GEN_PROBE=y | ||
389 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set | ||
390 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
391 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
392 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
393 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
394 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
395 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
396 | CONFIG_MTD_CFI_I1=y | ||
397 | CONFIG_MTD_CFI_I2=y | ||
398 | # CONFIG_MTD_CFI_I4 is not set | ||
399 | # CONFIG_MTD_CFI_I8 is not set | ||
400 | # CONFIG_MTD_CFI_INTELEXT is not set | ||
401 | CONFIG_MTD_CFI_AMDSTD=y | ||
402 | # CONFIG_MTD_CFI_STAA is not set | ||
403 | CONFIG_MTD_CFI_UTIL=y | ||
404 | # CONFIG_MTD_RAM is not set | ||
405 | # CONFIG_MTD_ROM is not set | ||
406 | # CONFIG_MTD_ABSENT is not set | ||
407 | |||
408 | # | ||
409 | # Mapping drivers for chip access | ||
410 | # | ||
411 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
412 | # CONFIG_MTD_PHYSMAP is not set | ||
413 | CONFIG_MTD_PHYSMAP_OF=y | ||
414 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
415 | # CONFIG_MTD_PLATRAM is not set | ||
416 | |||
417 | # | ||
418 | # Self-contained MTD device drivers | ||
419 | # | ||
420 | # CONFIG_MTD_PMC551 is not set | ||
421 | # CONFIG_MTD_SLRAM is not set | ||
422 | # CONFIG_MTD_PHRAM is not set | ||
423 | # CONFIG_MTD_MTDRAM is not set | ||
424 | # CONFIG_MTD_BLOCK2MTD is not set | ||
425 | |||
426 | # | ||
427 | # Disk-On-Chip Device Drivers | ||
428 | # | ||
429 | # CONFIG_MTD_DOC2000 is not set | ||
430 | # CONFIG_MTD_DOC2001 is not set | ||
431 | # CONFIG_MTD_DOC2001PLUS is not set | ||
432 | CONFIG_MTD_NAND=y | ||
433 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
434 | # CONFIG_MTD_NAND_ECC_SMC is not set | ||
435 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | ||
436 | CONFIG_MTD_NAND_IDS=y | ||
437 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
438 | # CONFIG_MTD_NAND_CAFE is not set | ||
439 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
440 | # CONFIG_MTD_NAND_PLATFORM is not set | ||
441 | CONFIG_MTD_NAND_FSL_ELBC=y | ||
442 | # CONFIG_MTD_ONENAND is not set | ||
443 | |||
444 | # | ||
445 | # UBI - Unsorted block images | ||
446 | # | ||
447 | # CONFIG_MTD_UBI is not set | ||
362 | CONFIG_OF_DEVICE=y | 448 | CONFIG_OF_DEVICE=y |
363 | # CONFIG_PARPORT is not set | 449 | # CONFIG_PARPORT is not set |
364 | CONFIG_BLK_DEV=y | 450 | CONFIG_BLK_DEV=y |
diff --git a/arch/powerpc/platforms/86xx/mpc8610_hpcd.c b/arch/powerpc/platforms/86xx/mpc8610_hpcd.c index 5e1e8cf14e75..782d1cb28b72 100644 --- a/arch/powerpc/platforms/86xx/mpc8610_hpcd.c +++ b/arch/powerpc/platforms/86xx/mpc8610_hpcd.c | |||
@@ -43,6 +43,7 @@ static unsigned char *pixis_bdcfg0, *pixis_arch; | |||
43 | 43 | ||
44 | static struct of_device_id __initdata mpc8610_ids[] = { | 44 | static struct of_device_id __initdata mpc8610_ids[] = { |
45 | { .compatible = "fsl,mpc8610-immr", }, | 45 | { .compatible = "fsl,mpc8610-immr", }, |
46 | { .compatible = "simple-bus", }, | ||
46 | {} | 47 | {} |
47 | }; | 48 | }; |
48 | 49 | ||