aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/powerpc/boot/dts/p1023rdb.dts234
-rw-r--r--arch/powerpc/configs/85xx/p1023_defconfig (renamed from arch/powerpc/configs/85xx/p1023rds_defconfig)24
-rw-r--r--arch/powerpc/platforms/85xx/Kconfig4
-rw-r--r--arch/powerpc/platforms/85xx/p1023_rds.c24
4 files changed, 280 insertions, 6 deletions
diff --git a/arch/powerpc/boot/dts/p1023rdb.dts b/arch/powerpc/boot/dts/p1023rdb.dts
new file mode 100644
index 000000000000..0a06a88ddbd5
--- /dev/null
+++ b/arch/powerpc/boot/dts/p1023rdb.dts
@@ -0,0 +1,234 @@
1/*
2 * P1023 RDB Device Tree Source
3 *
4 * Copyright 2013 Freescale Semiconductor Inc.
5 *
6 * Author: Chunhe Lan <Chunhe.Lan@freescale.com>
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions are met:
10 * * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * * Neither the name of Freescale Semiconductor nor the
16 * names of its contributors may be used to endorse or promote products
17 * derived from this software without specific prior written permission.
18 *
19 *
20 * ALTERNATIVELY, this software may be distributed under the terms of the
21 * GNU General Public License ("GPL") as published by the Free Software
22 * Foundation, either version 2 of that License or (at your option) any
23 * later version.
24 *
25 * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
26 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
27 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
28 * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
29 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
30 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
31 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
32 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
34 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 */
36
37/include/ "fsl/p1023si-pre.dtsi"
38
39/ {
40 model = "fsl,P1023";
41 compatible = "fsl,P1023RDB";
42 #address-cells = <2>;
43 #size-cells = <2>;
44 interrupt-parent = <&mpic>;
45
46 memory {
47 device_type = "memory";
48 };
49
50 soc: soc@ff600000 {
51 ranges = <0x0 0x0 0xff600000 0x200000>;
52
53 i2c@3000 {
54 eeprom@53 {
55 compatible = "at24,24c04";
56 reg = <0x53>;
57 };
58
59 rtc@6f {
60 compatible = "microchip,mcp7941x";
61 reg = <0x6f>;
62 };
63 };
64
65 usb@22000 {
66 dr_mode = "host";
67 phy_type = "ulpi";
68 };
69 };
70
71 lbc: localbus@ff605000 {
72 reg = <0 0xff605000 0 0x1000>;
73
74 /* NOR, NAND Flashes */
75 ranges = <0x0 0x0 0x0 0xec000000 0x04000000
76 0x1 0x0 0x0 0xffa00000 0x08000000>;
77
78 nor@0,0 {
79 #address-cells = <1>;
80 #size-cells = <1>;
81 compatible = "cfi-flash";
82 reg = <0x0 0x0 0x04000000>;
83 bank-width = <2>;
84 device-width = <1>;
85
86 partition@0 {
87 /* 48MB for Root File System */
88 reg = <0x00000000 0x03000000>;
89 label = "NOR Root File System";
90 };
91
92 partition@3000000 {
93 /* 1MB for DTB Image */
94 reg = <0x03000000 0x00100000>;
95 label = "NOR DTB Image";
96 };
97
98 partition@3100000 {
99 /* 14MB for Linux Kernel Image */
100 reg = <0x03100000 0x00e00000>;
101 label = "NOR Linux Kernel Image";
102 };
103
104 partition@3f00000 {
105 /* This location must not be altered */
106 /* 512KB for u-boot Bootloader Image */
107 /* 512KB for u-boot Environment Variables */
108 reg = <0x03f00000 0x00100000>;
109 label = "NOR U-Boot Image";
110 read-only;
111 };
112 };
113
114 nand@1,0 {
115 #address-cells = <1>;
116 #size-cells = <1>;
117 compatible = "fsl,elbc-fcm-nand";
118 reg = <0x1 0x0 0x40000>;
119
120 partition@0 {
121 /* This location must not be altered */
122 /* 1MB for u-boot Bootloader Image */
123 reg = <0x0 0x00100000>;
124 label = "NAND U-Boot Image";
125 read-only;
126 };
127
128 partition@100000 {
129 /* 1MB for DTB Image */
130 reg = <0x00100000 0x00100000>;
131 label = "NAND DTB Image";
132 };
133
134 partition@200000 {
135 /* 14MB for Linux Kernel Image */
136 reg = <0x00200000 0x00e00000>;
137 label = "NAND Linux Kernel Image";
138 };
139
140 partition@1000000 {
141 /* 96MB for Root File System Image */
142 reg = <0x01000000 0x06000000>;
143 label = "NAND Root File System";
144 };
145
146 partition@7000000 {
147 /* 16MB for User Writable Area */
148 reg = <0x07000000 0x01000000>;
149 label = "NAND Writable User area";
150 };
151 };
152 };
153
154 pci0: pcie@ff60a000 {
155 reg = <0 0xff60a000 0 0x1000>;
156 ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x20000000
157 0x1000000 0x0 0x00000000 0 0xffc20000 0x0 0x10000>;
158 pcie@0 {
159 /* IRQ[0:3] are pulled up on board, set to active-low */
160 interrupt-map-mask = <0xf800 0 0 7>;
161 interrupt-map = <
162 /* IDSEL 0x0 */
163 0000 0 0 1 &mpic 0 1 0 0
164 0000 0 0 2 &mpic 1 1 0 0
165 0000 0 0 3 &mpic 2 1 0 0
166 0000 0 0 4 &mpic 3 1 0 0
167 >;
168 ranges = <0x2000000 0x0 0xc0000000
169 0x2000000 0x0 0xc0000000
170 0x0 0x20000000
171
172 0x1000000 0x0 0x0
173 0x1000000 0x0 0x0
174 0x0 0x100000>;
175 };
176 };
177
178 board_pci1: pci1: pcie@ff609000 {
179 reg = <0 0xff609000 0 0x1000>;
180 ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
181 0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>;
182 pcie@0 {
183 /*
184 * IRQ[4:6] only for PCIe, set to active-high,
185 * IRQ[7] is pulled up on board, set to active-low
186 */
187 interrupt-map-mask = <0xf800 0 0 7>;
188 interrupt-map = <
189 /* IDSEL 0x0 */
190 0000 0 0 1 &mpic 4 2 0 0
191 0000 0 0 2 &mpic 5 2 0 0
192 0000 0 0 3 &mpic 6 2 0 0
193 0000 0 0 4 &mpic 7 1 0 0
194 >;
195 ranges = <0x2000000 0x0 0xa0000000
196 0x2000000 0x0 0xa0000000
197 0x0 0x20000000
198
199 0x1000000 0x0 0x0
200 0x1000000 0x0 0x0
201 0x0 0x100000>;
202 };
203 };
204
205 pci2: pcie@ff60b000 {
206 reg = <0 0xff60b000 0 0x1000>;
207 ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000
208 0x1000000 0x0 0x00000000 0 0xffc00000 0x0 0x10000>;
209 pcie@0 {
210 /*
211 * IRQ[8:10] are pulled up on board, set to active-low
212 * IRQ[11] only for PCIe, set to active-high,
213 */
214 interrupt-map-mask = <0xf800 0 0 7>;
215 interrupt-map = <
216 /* IDSEL 0x0 */
217 0000 0 0 1 &mpic 8 1 0 0
218 0000 0 0 2 &mpic 9 1 0 0
219 0000 0 0 3 &mpic 10 1 0 0
220 0000 0 0 4 &mpic 11 2 0 0
221 >;
222 ranges = <0x2000000 0x0 0x80000000
223 0x2000000 0x0 0x80000000
224 0x0 0x20000000
225
226 0x1000000 0x0 0x0
227 0x1000000 0x0 0x0
228 0x0 0x100000>;
229 };
230 };
231
232};
233
234/include/ "fsl/p1023si-post.dtsi"
diff --git a/arch/powerpc/configs/85xx/p1023rds_defconfig b/arch/powerpc/configs/85xx/p1023_defconfig
index 18badca726c6..b06d37da44f4 100644
--- a/arch/powerpc/configs/85xx/p1023rds_defconfig
+++ b/arch/powerpc/configs/85xx/p1023_defconfig
@@ -1,14 +1,13 @@
1CONFIG_PPC_85xx=y 1CONFIG_PPC_85xx=y
2CONFIG_SMP=y 2CONFIG_SMP=y
3CONFIG_NR_CPUS=2 3CONFIG_NR_CPUS=2
4CONFIG_EXPERIMENTAL=y
5CONFIG_SYSVIPC=y 4CONFIG_SYSVIPC=y
6CONFIG_POSIX_MQUEUE=y 5CONFIG_POSIX_MQUEUE=y
7CONFIG_BSD_PROCESS_ACCT=y 6CONFIG_BSD_PROCESS_ACCT=y
8CONFIG_AUDIT=y 7CONFIG_AUDIT=y
9CONFIG_IRQ_DOMAIN_DEBUG=y
10CONFIG_NO_HZ=y 8CONFIG_NO_HZ=y
11CONFIG_HIGH_RES_TIMERS=y 9CONFIG_HIGH_RES_TIMERS=y
10CONFIG_RCU_FANOUT=32
12CONFIG_IKCONFIG=y 11CONFIG_IKCONFIG=y
13CONFIG_IKCONFIG_PROC=y 12CONFIG_IKCONFIG_PROC=y
14CONFIG_LOG_BUF_SHIFT=14 13CONFIG_LOG_BUF_SHIFT=14
@@ -22,6 +21,8 @@ CONFIG_MODVERSIONS=y
22# CONFIG_BLK_DEV_BSG is not set 21# CONFIG_BLK_DEV_BSG is not set
23CONFIG_PARTITION_ADVANCED=y 22CONFIG_PARTITION_ADVANCED=y
24CONFIG_MAC_PARTITION=y 23CONFIG_MAC_PARTITION=y
24CONFIG_PHYSICAL_START=0x00000000
25CONFIG_P1023_RDB=y
25CONFIG_P1023_RDS=y 26CONFIG_P1023_RDS=y
26CONFIG_QUICC_ENGINE=y 27CONFIG_QUICC_ENGINE=y
27CONFIG_QE_GPIO=y 28CONFIG_QE_GPIO=y
@@ -64,10 +65,20 @@ CONFIG_IP_SCTP=m
64CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 65CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
65CONFIG_DEVTMPFS=y 66CONFIG_DEVTMPFS=y
66CONFIG_DEVTMPFS_MOUNT=y 67CONFIG_DEVTMPFS_MOUNT=y
68CONFIG_MTD=y
69CONFIG_MTD_CMDLINE_PARTS=y
70CONFIG_MTD_CHAR=y
71CONFIG_MTD_BLOCK=y
72CONFIG_MTD_CFI=y
73CONFIG_MTD_CFI_AMDSTD=y
74CONFIG_MTD_PHYSMAP_OF=y
75CONFIG_MTD_NAND=y
76CONFIG_MTD_NAND_FSL_ELBC=y
67CONFIG_PROC_DEVICETREE=y 77CONFIG_PROC_DEVICETREE=y
68CONFIG_BLK_DEV_LOOP=y 78CONFIG_BLK_DEV_LOOP=y
69CONFIG_BLK_DEV_RAM=y 79CONFIG_BLK_DEV_RAM=y
70CONFIG_BLK_DEV_RAM_SIZE=131072 80CONFIG_BLK_DEV_RAM_SIZE=131072
81CONFIG_EEPROM_AT24=y
71CONFIG_EEPROM_LEGACY=y 82CONFIG_EEPROM_LEGACY=y
72CONFIG_BLK_DEV_SD=y 83CONFIG_BLK_DEV_SD=y
73CONFIG_CHR_DEV_ST=y 84CONFIG_CHR_DEV_ST=y
@@ -83,6 +94,8 @@ CONFIG_DUMMY=y
83CONFIG_FS_ENET=y 94CONFIG_FS_ENET=y
84CONFIG_FSL_PQ_MDIO=y 95CONFIG_FSL_PQ_MDIO=y
85CONFIG_E1000E=y 96CONFIG_E1000E=y
97CONFIG_PHYLIB=y
98CONFIG_AT803X_PHY=y
86CONFIG_MARVELL_PHY=y 99CONFIG_MARVELL_PHY=y
87CONFIG_DAVICOM_PHY=y 100CONFIG_DAVICOM_PHY=y
88CONFIG_CICADA_PHY=y 101CONFIG_CICADA_PHY=y
@@ -97,12 +110,15 @@ CONFIG_SERIAL_8250=y
97CONFIG_SERIAL_8250_CONSOLE=y 110CONFIG_SERIAL_8250_CONSOLE=y
98CONFIG_SERIAL_8250_NR_UARTS=2 111CONFIG_SERIAL_8250_NR_UARTS=2
99CONFIG_SERIAL_8250_RUNTIME_UARTS=2 112CONFIG_SERIAL_8250_RUNTIME_UARTS=2
113CONFIG_SERIAL_8250_EXTENDED=y
100CONFIG_SERIAL_8250_MANY_PORTS=y 114CONFIG_SERIAL_8250_MANY_PORTS=y
115CONFIG_SERIAL_8250_SHARE_IRQ=y
101CONFIG_SERIAL_8250_DETECT_IRQ=y 116CONFIG_SERIAL_8250_DETECT_IRQ=y
102CONFIG_SERIAL_8250_RSA=y 117CONFIG_SERIAL_8250_RSA=y
103CONFIG_SERIAL_QE=m 118CONFIG_HW_RANDOM=y
104CONFIG_NVRAM=y 119CONFIG_NVRAM=y
105CONFIG_I2C=y 120CONFIG_I2C=y
121CONFIG_I2C_CHARDEV=y
106CONFIG_I2C_CPM=m 122CONFIG_I2C_CPM=m
107CONFIG_I2C_MPC=y 123CONFIG_I2C_MPC=y
108CONFIG_GPIO_MPC8XXX=y 124CONFIG_GPIO_MPC8XXX=y
@@ -122,6 +138,7 @@ CONFIG_USB_STORAGE=y
122CONFIG_EDAC=y 138CONFIG_EDAC=y
123CONFIG_EDAC_MM_EDAC=y 139CONFIG_EDAC_MM_EDAC=y
124CONFIG_RTC_CLASS=y 140CONFIG_RTC_CLASS=y
141CONFIG_RTC_DRV_DS1307=y
125CONFIG_RTC_DRV_CMOS=y 142CONFIG_RTC_DRV_CMOS=y
126CONFIG_DMADEVICES=y 143CONFIG_DMADEVICES=y
127CONFIG_FSL_DMA=y 144CONFIG_FSL_DMA=y
@@ -162,6 +179,7 @@ CONFIG_DEBUG_FS=y
162CONFIG_DETECT_HUNG_TASK=y 179CONFIG_DETECT_HUNG_TASK=y
163# CONFIG_DEBUG_BUGVERBOSE is not set 180# CONFIG_DEBUG_BUGVERBOSE is not set
164CONFIG_DEBUG_INFO=y 181CONFIG_DEBUG_INFO=y
182CONFIG_STRICT_DEVMEM=y
165CONFIG_CRYPTO_PCBC=m 183CONFIG_CRYPTO_PCBC=m
166CONFIG_CRYPTO_SHA256=y 184CONFIG_CRYPTO_SHA256=y
167CONFIG_CRYPTO_SHA512=y 185CONFIG_CRYPTO_SHA512=y
diff --git a/arch/powerpc/platforms/85xx/Kconfig b/arch/powerpc/platforms/85xx/Kconfig
index efdd37c775ad..b8f0d3270d7a 100644
--- a/arch/powerpc/platforms/85xx/Kconfig
+++ b/arch/powerpc/platforms/85xx/Kconfig
@@ -112,10 +112,10 @@ config P1022_RDK
112 reference board. 112 reference board.
113 113
114config P1023_RDS 114config P1023_RDS
115 bool "Freescale P1023 RDS" 115 bool "Freescale P1023 RDS/RDB"
116 select DEFAULT_UIMAGE 116 select DEFAULT_UIMAGE
117 help 117 help
118 This option enables support for the P1023 RDS board 118 This option enables support for the P1023 RDS and RDB boards
119 119
120config SOCRATES 120config SOCRATES
121 bool "Socrates" 121 bool "Socrates"
diff --git a/arch/powerpc/platforms/85xx/p1023_rds.c b/arch/powerpc/platforms/85xx/p1023_rds.c
index 9cc60a738834..2ae9d490c3d9 100644
--- a/arch/powerpc/platforms/85xx/p1023_rds.c
+++ b/arch/powerpc/platforms/85xx/p1023_rds.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2010-2011 Freescale Semiconductor, Inc. 2 * Copyright 2010-2011, 2013 Freescale Semiconductor, Inc.
3 * 3 *
4 * Author: Roy Zang <tie-fei.zang@freescale.com> 4 * Author: Roy Zang <tie-fei.zang@freescale.com>
5 * 5 *
@@ -86,6 +86,7 @@ static void __init mpc85xx_rds_setup_arch(void)
86} 86}
87 87
88machine_arch_initcall(p1023_rds, mpc85xx_common_publish_devices); 88machine_arch_initcall(p1023_rds, mpc85xx_common_publish_devices);
89machine_arch_initcall(p1023_rdb, mpc85xx_common_publish_devices);
89 90
90static void __init mpc85xx_rds_pic_init(void) 91static void __init mpc85xx_rds_pic_init(void)
91{ 92{
@@ -106,6 +107,14 @@ static int __init p1023_rds_probe(void)
106 107
107} 108}
108 109
110static int __init p1023_rdb_probe(void)
111{
112 unsigned long root = of_get_flat_dt_root();
113
114 return of_flat_dt_is_compatible(root, "fsl,P1023RDB");
115
116}
117
109define_machine(p1023_rds) { 118define_machine(p1023_rds) {
110 .name = "P1023 RDS", 119 .name = "P1023 RDS",
111 .probe = p1023_rds_probe, 120 .probe = p1023_rds_probe,
@@ -120,3 +129,16 @@ define_machine(p1023_rds) {
120#endif 129#endif
121}; 130};
122 131
132define_machine(p1023_rdb) {
133 .name = "P1023 RDB",
134 .probe = p1023_rdb_probe,
135 .setup_arch = mpc85xx_rds_setup_arch,
136 .init_IRQ = mpc85xx_rds_pic_init,
137 .get_irq = mpic_get_irq,
138 .restart = fsl_rstcr_restart,
139 .calibrate_decr = generic_calibrate_decr,
140 .progress = udbg_progress,
141#ifdef CONFIG_PCI
142 .pcibios_fixup_bus = fsl_pcibios_fixup_bus,
143#endif
144};