aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeiko Schocher <hs@denx.de>2010-03-23 03:57:01 -0400
committerKumar Gala <galak@kernel.crashing.org>2010-08-04 15:25:22 -0400
commitc4b6a77663f5879de20561144716cfb675815e82 (patch)
tree501d265cdb34871dcb0cf97eff92ebdfd3dfcc61
parent30be4c965c37418606006940f45919694693e3f9 (diff)
powerpc/8xx: Add support for the MPC8xx based boards from TQC
Supported SMC1 (serial console), SCC1 Ethernet (10Mbps HD). FEC Ethernet, 8MB NOR CFI Flash. Tested on STK8xx with TQM860L (with FEC) and with TQM855M (without FEC). Signed-off-by: Heiko Schocher <hs@denx.de> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-rw-r--r--arch/powerpc/boot/dts/tqm8xx.dts172
-rw-r--r--arch/powerpc/configs/tqm8xx_defconfig934
-rw-r--r--arch/powerpc/platforms/8xx/Kconfig6
-rw-r--r--arch/powerpc/platforms/8xx/Makefile1
-rw-r--r--arch/powerpc/platforms/8xx/tqm8xx_setup.c156
5 files changed, 1269 insertions, 0 deletions
diff --git a/arch/powerpc/boot/dts/tqm8xx.dts b/arch/powerpc/boot/dts/tqm8xx.dts
new file mode 100644
index 000000000000..f6da7ec49a8e
--- /dev/null
+++ b/arch/powerpc/boot/dts/tqm8xx.dts
@@ -0,0 +1,172 @@
1/*
2 * TQM8XX Device Tree Source
3 *
4 * Heiko Schocher <hs@denx.de>
5 * 2010 DENX Software Engineering GmbH
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation; either version 2 of the License, or (at your
10 * option) any later version.
11 */
12
13/dts-v1/;
14
15/ {
16 model = "TQM8xx";
17 compatible = "tqc,tqm8xx";
18 #address-cells = <1>;
19 #size-cells = <1>;
20
21 aliases {
22 ethernet0 = &eth0;
23 ethernet1 = &eth1;
24 mdio1 = &phy1;
25 serial0 = &smc1;
26 };
27
28 cpus {
29 #address-cells = <1>;
30 #size-cells = <0>;
31
32 PowerPC,860@0 {
33 device_type = "cpu";
34 reg = <0x0>;
35 d-cache-line-size = <16>; // 16 bytes
36 i-cache-line-size = <16>; // 16 bytes
37 d-cache-size = <0x1000>; // L1, 4K
38 i-cache-size = <0x1000>; // L1, 4K
39 timebase-frequency = <0>;
40 bus-frequency = <0>;
41 clock-frequency = <0>;
42 interrupts = <15 2>; // decrementer interrupt
43 interrupt-parent = <&PIC>;
44 };
45 };
46
47 memory {
48 device_type = "memory";
49 reg = <0x0 0x2000000>;
50 };
51
52 localbus@fff00100 {
53 compatible = "fsl,mpc860-localbus", "fsl,pq1-localbus";
54 #address-cells = <2>;
55 #size-cells = <1>;
56 reg = <0xfff00100 0x40>;
57
58 ranges = <
59 0x0 0x0 0x40000000 0x800000
60 >;
61
62 flash@0,0 {
63 compatible = "cfi-flash";
64 reg = <0 0 0x800000>;
65 #address-cells = <1>;
66 #size-cells = <1>;
67 bank-width = <4>;
68 device-width = <2>;
69 };
70 };
71
72 soc@fff00000 {
73 #address-cells = <1>;
74 #size-cells = <1>;
75 device_type = "soc";
76 ranges = <0x0 0xfff00000 0x00004000>;
77
78 phy1: mdio@e00 {
79 compatible = "fsl,mpc866-fec-mdio", "fsl,pq1-fec-mdio";
80 reg = <0xe00 0x188>;
81 #address-cells = <1>;
82 #size-cells = <0>;
83 PHY: ethernet-phy@f {
84 reg = <0xf>;
85 device_type = "ethernet-phy";
86 };
87 };
88
89 eth1: ethernet@e00 {
90 device_type = "network";
91 compatible = "fsl,mpc866-fec-enet",
92 "fsl,pq1-fec-enet";
93 reg = <0xe00 0x188>;
94 interrupts = <3 1>;
95 interrupt-parent = <&PIC>;
96 phy-handle = <&PHY>;
97 linux,network-index = <1>;
98 };
99
100 PIC: pic@0 {
101 interrupt-controller;
102 #interrupt-cells = <2>;
103 reg = <0x0 0x24>;
104 compatible = "fsl,mpc860-pic", "fsl,pq1-pic";
105 };
106
107 cpm@9c0 {
108 #address-cells = <1>;
109 #size-cells = <1>;
110 compatible = "fsl,mpc860-cpm", "fsl,cpm1";
111 ranges;
112 reg = <0x9c0 0x40>;
113 brg-frequency = <0>;
114 interrupts = <0 2>; // cpm error interrupt
115 interrupt-parent = <&CPM_PIC>;
116
117 muram@2000 {
118 #address-cells = <1>;
119 #size-cells = <1>;
120 ranges = <0x0 0x2000 0x2000>;
121
122 data@0 {
123 compatible = "fsl,cpm-muram-data";
124 reg = <0x0 0x2000>;
125 };
126 };
127
128 brg@9f0 {
129 compatible = "fsl,mpc860-brg",
130 "fsl,cpm1-brg",
131 "fsl,cpm-brg";
132 reg = <0x9f0 0x10>;
133 clock-frequency = <0>;
134 };
135
136 CPM_PIC: pic@930 {
137 interrupt-controller;
138 #address-cells = <0>;
139 #interrupt-cells = <1>;
140 interrupts = <5 2 0 2>;
141 interrupt-parent = <&PIC>;
142 reg = <0x930 0x20>;
143 compatible = "fsl,mpc860-cpm-pic",
144 "fsl,cpm1-pic";
145 };
146
147
148 smc1: serial@a80 {
149 device_type = "serial";
150 compatible = "fsl,mpc860-smc-uart",
151 "fsl,cpm1-smc-uart";
152 reg = <0xa80 0x10 0x3e80 0x40>;
153 interrupts = <4>;
154 interrupt-parent = <&CPM_PIC>;
155 fsl,cpm-brg = <1>;
156 fsl,cpm-command = <0x90>;
157 };
158
159 eth0: ethernet@a00 {
160 device_type = "network";
161 compatible = "fsl,mpc860-scc-enet",
162 "fsl,cpm1-scc-enet";
163 reg = <0xa00 0x18 0x3c00 0x100>;
164 interrupts = <30>;
165 interrupt-parent = <&CPM_PIC>;
166 fsl,cpm-command = <0000>;
167 linux,network-index = <0>;
168 fixed-link = <0 0 10 0 0>;
169 };
170 };
171 };
172};
diff --git a/arch/powerpc/configs/tqm8xx_defconfig b/arch/powerpc/configs/tqm8xx_defconfig
new file mode 100644
index 000000000000..85e654b64874
--- /dev/null
+++ b/arch/powerpc/configs/tqm8xx_defconfig
@@ -0,0 +1,934 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.34-rc1
4# Tue Mar 23 08:22:15 2010
5#
6# CONFIG_PPC64 is not set
7
8#
9# Processor support
10#
11# CONFIG_PPC_BOOK3S_32 is not set
12# CONFIG_PPC_85xx is not set
13CONFIG_PPC_8xx=y
14# CONFIG_40x is not set
15# CONFIG_44x is not set
16# CONFIG_E200 is not set
17CONFIG_8xx=y
18CONFIG_PPC_MMU_NOHASH=y
19CONFIG_PPC_MMU_NOHASH_32=y
20# CONFIG_PPC_MM_SLICES is not set
21CONFIG_NOT_COHERENT_CACHE=y
22CONFIG_PPC32=y
23CONFIG_WORD_SIZE=32
24# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
25CONFIG_MMU=y
26CONFIG_GENERIC_CMOS_UPDATE=y
27CONFIG_GENERIC_TIME=y
28CONFIG_GENERIC_TIME_VSYSCALL=y
29CONFIG_GENERIC_CLOCKEVENTS=y
30CONFIG_GENERIC_HARDIRQS=y
31CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
32# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
33# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
34CONFIG_IRQ_PER_CPU=y
35CONFIG_NR_IRQS=512
36CONFIG_STACKTRACE_SUPPORT=y
37CONFIG_HAVE_LATENCYTOP_SUPPORT=y
38CONFIG_TRACE_IRQFLAGS_SUPPORT=y
39CONFIG_LOCKDEP_SUPPORT=y
40CONFIG_RWSEM_XCHGADD_ALGORITHM=y
41CONFIG_ARCH_HAS_ILOG2_U32=y
42CONFIG_GENERIC_HWEIGHT=y
43CONFIG_GENERIC_FIND_NEXT_BIT=y
44# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
45CONFIG_PPC=y
46CONFIG_EARLY_PRINTK=y
47CONFIG_GENERIC_NVRAM=y
48CONFIG_SCHED_OMIT_FRAME_POINTER=y
49CONFIG_ARCH_MAY_HAVE_PC_FDC=y
50CONFIG_PPC_OF=y
51CONFIG_OF=y
52# CONFIG_PPC_UDBG_16550 is not set
53# CONFIG_GENERIC_TBSYNC is not set
54CONFIG_AUDIT_ARCH=y
55CONFIG_GENERIC_BUG=y
56CONFIG_DTC=y
57# CONFIG_DEFAULT_UIMAGE is not set
58CONFIG_ARCH_HIBERNATION_POSSIBLE=y
59# CONFIG_PPC_DCR_NATIVE is not set
60# CONFIG_PPC_DCR_MMIO is not set
61CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
62CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
63CONFIG_CONSTRUCTORS=y
64
65#
66# General setup
67#
68CONFIG_EXPERIMENTAL=y
69CONFIG_BROKEN_ON_SMP=y
70CONFIG_INIT_ENV_ARG_LIMIT=32
71CONFIG_LOCALVERSION=""
72CONFIG_LOCALVERSION_AUTO=y
73# CONFIG_SWAP is not set
74CONFIG_SYSVIPC=y
75CONFIG_SYSVIPC_SYSCTL=y
76# CONFIG_POSIX_MQUEUE is not set
77# CONFIG_BSD_PROCESS_ACCT is not set
78# CONFIG_TASKSTATS is not set
79# CONFIG_AUDIT is not set
80
81#
82# RCU Subsystem
83#
84CONFIG_TREE_RCU=y
85# CONFIG_TREE_PREEMPT_RCU is not set
86# CONFIG_TINY_RCU is not set
87# CONFIG_RCU_TRACE is not set
88CONFIG_RCU_FANOUT=32
89# CONFIG_RCU_FANOUT_EXACT is not set
90# CONFIG_TREE_RCU_TRACE is not set
91# CONFIG_IKCONFIG is not set
92CONFIG_LOG_BUF_SHIFT=14
93# CONFIG_CGROUPS is not set
94CONFIG_SYSFS_DEPRECATED=y
95CONFIG_SYSFS_DEPRECATED_V2=y
96# CONFIG_RELAY is not set
97# CONFIG_NAMESPACES is not set
98# CONFIG_BLK_DEV_INITRD is not set
99# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
100CONFIG_SYSCTL=y
101CONFIG_ANON_INODES=y
102CONFIG_EMBEDDED=y
103# CONFIG_SYSCTL_SYSCALL is not set
104CONFIG_KALLSYMS=y
105# CONFIG_KALLSYMS_ALL is not set
106# CONFIG_KALLSYMS_EXTRA_PASS is not set
107CONFIG_HOTPLUG=y
108CONFIG_PRINTK=y
109CONFIG_BUG=y
110# CONFIG_ELF_CORE is not set
111# CONFIG_BASE_FULL is not set
112# CONFIG_FUTEX is not set
113CONFIG_EPOLL=y
114CONFIG_SIGNALFD=y
115CONFIG_TIMERFD=y
116CONFIG_EVENTFD=y
117CONFIG_SHMEM=y
118CONFIG_AIO=y
119CONFIG_HAVE_PERF_EVENTS=y
120
121#
122# Kernel Performance Events And Counters
123#
124# CONFIG_PERF_EVENTS is not set
125# CONFIG_PERF_COUNTERS is not set
126# CONFIG_VM_EVENT_COUNTERS is not set
127CONFIG_SLUB_DEBUG=y
128CONFIG_COMPAT_BRK=y
129# CONFIG_SLAB is not set
130CONFIG_SLUB=y
131# CONFIG_SLOB is not set
132# CONFIG_PROFILING is not set
133CONFIG_HAVE_OPROFILE=y
134# CONFIG_KPROBES is not set
135CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
136CONFIG_HAVE_IOREMAP_PROT=y
137CONFIG_HAVE_KPROBES=y
138CONFIG_HAVE_KRETPROBES=y
139CONFIG_HAVE_ARCH_TRACEHOOK=y
140CONFIG_HAVE_DMA_ATTRS=y
141CONFIG_HAVE_CLK=y
142CONFIG_HAVE_DMA_API_DEBUG=y
143
144#
145# GCOV-based kernel profiling
146#
147# CONFIG_SLOW_WORK is not set
148# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
149CONFIG_SLABINFO=y
150CONFIG_BASE_SMALL=1
151CONFIG_MODULES=y
152# CONFIG_MODULE_FORCE_LOAD is not set
153CONFIG_MODULE_UNLOAD=y
154# CONFIG_MODULE_FORCE_UNLOAD is not set
155# CONFIG_MODVERSIONS is not set
156CONFIG_MODULE_SRCVERSION_ALL=y
157CONFIG_BLOCK=y
158CONFIG_LBDAF=y
159# CONFIG_BLK_DEV_BSG is not set
160# CONFIG_BLK_DEV_INTEGRITY is not set
161
162#
163# IO Schedulers
164#
165CONFIG_IOSCHED_NOOP=y
166CONFIG_IOSCHED_DEADLINE=y
167# CONFIG_IOSCHED_CFQ is not set
168CONFIG_DEFAULT_DEADLINE=y
169# CONFIG_DEFAULT_CFQ is not set
170# CONFIG_DEFAULT_NOOP is not set
171CONFIG_DEFAULT_IOSCHED="deadline"
172# CONFIG_INLINE_SPIN_TRYLOCK is not set
173# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
174# CONFIG_INLINE_SPIN_LOCK is not set
175# CONFIG_INLINE_SPIN_LOCK_BH is not set
176# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
177# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
178CONFIG_INLINE_SPIN_UNLOCK=y
179# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
180CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
181# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
182# CONFIG_INLINE_READ_TRYLOCK is not set
183# CONFIG_INLINE_READ_LOCK is not set
184# CONFIG_INLINE_READ_LOCK_BH is not set
185# CONFIG_INLINE_READ_LOCK_IRQ is not set
186# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
187CONFIG_INLINE_READ_UNLOCK=y
188# CONFIG_INLINE_READ_UNLOCK_BH is not set
189CONFIG_INLINE_READ_UNLOCK_IRQ=y
190# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
191# CONFIG_INLINE_WRITE_TRYLOCK is not set
192# CONFIG_INLINE_WRITE_LOCK is not set
193# CONFIG_INLINE_WRITE_LOCK_BH is not set
194# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
195# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
196CONFIG_INLINE_WRITE_UNLOCK=y
197# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
198CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
199# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
200# CONFIG_MUTEX_SPIN_ON_OWNER is not set
201# CONFIG_FREEZER is not set
202
203#
204# Platform support
205#
206# CONFIG_PPC_CELL is not set
207# CONFIG_PPC_CELL_NATIVE is not set
208CONFIG_CPM1=y
209# CONFIG_MPC8XXFADS is not set
210# CONFIG_MPC86XADS is not set
211# CONFIG_MPC885ADS is not set
212# CONFIG_PPC_EP88XC is not set
213# CONFIG_PPC_ADDER875 is not set
214# CONFIG_PPC_MGSUVD is not set
215CONFIG_TQM8XX=y
216
217#
218# MPC8xx CPM Options
219#
220
221#
222# Generic MPC8xx Options
223#
224CONFIG_8xx_COPYBACK=y
225# CONFIG_8xx_GPIO is not set
226# CONFIG_8xx_CPU6 is not set
227# CONFIG_8xx_CPU15 is not set
228CONFIG_NO_UCODE_PATCH=y
229# CONFIG_USB_SOF_UCODE_PATCH is not set
230# CONFIG_I2C_SPI_UCODE_PATCH is not set
231# CONFIG_I2C_SPI_SMC1_UCODE_PATCH is not set
232# CONFIG_PQ2ADS is not set
233# CONFIG_IPIC is not set
234# CONFIG_MPIC is not set
235# CONFIG_MPIC_WEIRD is not set
236# CONFIG_PPC_I8259 is not set
237# CONFIG_PPC_RTAS is not set
238# CONFIG_MMIO_NVRAM is not set
239# CONFIG_PPC_MPC106 is not set
240# CONFIG_PPC_970_NAP is not set
241# CONFIG_PPC_INDIRECT_IO is not set
242# CONFIG_GENERIC_IOMAP is not set
243# CONFIG_CPU_FREQ is not set
244# CONFIG_QUICC_ENGINE is not set
245# CONFIG_FSL_ULI1575 is not set
246CONFIG_CPM=y
247# CONFIG_SIMPLE_GPIO is not set
248
249#
250# Kernel options
251#
252# CONFIG_HIGHMEM is not set
253CONFIG_TICK_ONESHOT=y
254CONFIG_NO_HZ=y
255CONFIG_HIGH_RES_TIMERS=y
256CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
257CONFIG_HZ_100=y
258# CONFIG_HZ_250 is not set
259# CONFIG_HZ_300 is not set
260# CONFIG_HZ_1000 is not set
261CONFIG_HZ=100
262CONFIG_SCHED_HRTICK=y
263CONFIG_PREEMPT_NONE=y
264# CONFIG_PREEMPT_VOLUNTARY is not set
265# CONFIG_PREEMPT is not set
266CONFIG_BINFMT_ELF=y
267# CONFIG_HAVE_AOUT is not set
268# CONFIG_BINFMT_MISC is not set
269# CONFIG_MATH_EMULATION is not set
270CONFIG_8XX_MINIMAL_FPEMU=y
271# CONFIG_IOMMU_HELPER is not set
272# CONFIG_SWIOTLB is not set
273CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
274CONFIG_ARCH_HAS_WALK_MEMORY=y
275CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
276CONFIG_SPARSE_IRQ=y
277CONFIG_MAX_ACTIVE_REGIONS=32
278CONFIG_ARCH_FLATMEM_ENABLE=y
279CONFIG_ARCH_POPULATES_NODE_MAP=y
280CONFIG_SELECT_MEMORY_MODEL=y
281CONFIG_FLATMEM_MANUAL=y
282# CONFIG_DISCONTIGMEM_MANUAL is not set
283# CONFIG_SPARSEMEM_MANUAL is not set
284CONFIG_FLATMEM=y
285CONFIG_FLAT_NODE_MEM_MAP=y
286CONFIG_PAGEFLAGS_EXTENDED=y
287CONFIG_SPLIT_PTLOCK_CPUS=4
288CONFIG_MIGRATION=y
289# CONFIG_PHYS_ADDR_T_64BIT is not set
290CONFIG_ZONE_DMA_FLAG=1
291CONFIG_BOUNCE=y
292CONFIG_VIRT_TO_BUS=y
293# CONFIG_KSM is not set
294CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
295CONFIG_PPC_4K_PAGES=y
296# CONFIG_PPC_16K_PAGES is not set
297# CONFIG_PPC_64K_PAGES is not set
298# CONFIG_PPC_256K_PAGES is not set
299CONFIG_FORCE_MAX_ZONEORDER=11
300CONFIG_PROC_DEVICETREE=y
301# CONFIG_CMDLINE_BOOL is not set
302CONFIG_EXTRA_TARGETS=""
303# CONFIG_PM is not set
304# CONFIG_SECCOMP is not set
305CONFIG_ISA_DMA_API=y
306
307#
308# Bus options
309#
310CONFIG_ZONE_DMA=y
311CONFIG_NEED_DMA_MAP_STATE=y
312CONFIG_FSL_SOC=y
313# CONFIG_PCI is not set
314# CONFIG_PCI_DOMAINS is not set
315# CONFIG_PCI_SYSCALL is not set
316# CONFIG_PCI_QSPAN is not set
317# CONFIG_ARCH_SUPPORTS_MSI is not set
318# CONFIG_PCCARD is not set
319# CONFIG_HAS_RAPIDIO is not set
320
321#
322# Advanced setup
323#
324# CONFIG_ADVANCED_OPTIONS is not set
325
326#
327# Default settings for advanced configuration options are used
328#
329CONFIG_LOWMEM_SIZE=0x30000000
330CONFIG_PAGE_OFFSET=0xc0000000
331CONFIG_KERNEL_START=0xc0000000
332CONFIG_PHYSICAL_START=0x00000000
333CONFIG_TASK_SIZE=0x80000000
334CONFIG_CONSISTENT_SIZE=0x00200000
335CONFIG_NET=y
336
337#
338# Networking options
339#
340CONFIG_PACKET=y
341CONFIG_UNIX=y
342# CONFIG_NET_KEY is not set
343CONFIG_INET=y
344# CONFIG_IP_MULTICAST is not set
345# CONFIG_IP_ADVANCED_ROUTER is not set
346CONFIG_IP_FIB_HASH=y
347CONFIG_IP_PNP=y
348# CONFIG_IP_PNP_DHCP is not set
349# CONFIG_IP_PNP_BOOTP is not set
350# CONFIG_IP_PNP_RARP is not set
351# CONFIG_NET_IPIP is not set
352# CONFIG_NET_IPGRE is not set
353# CONFIG_ARPD is not set
354CONFIG_SYN_COOKIES=y
355# CONFIG_INET_AH is not set
356# CONFIG_INET_ESP is not set
357# CONFIG_INET_IPCOMP is not set
358# CONFIG_INET_XFRM_TUNNEL is not set
359# CONFIG_INET_TUNNEL is not set
360# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
361# CONFIG_INET_XFRM_MODE_TUNNEL is not set
362# CONFIG_INET_XFRM_MODE_BEET is not set
363# CONFIG_INET_LRO is not set
364CONFIG_INET_DIAG=y
365CONFIG_INET_TCP_DIAG=y
366# CONFIG_TCP_CONG_ADVANCED is not set
367CONFIG_TCP_CONG_CUBIC=y
368CONFIG_DEFAULT_TCP_CONG="cubic"
369# CONFIG_TCP_MD5SIG is not set
370# CONFIG_IPV6 is not set
371# CONFIG_NETWORK_SECMARK is not set
372# CONFIG_NETFILTER is not set
373# CONFIG_IP_DCCP is not set
374# CONFIG_IP_SCTP is not set
375# CONFIG_RDS is not set
376# CONFIG_TIPC is not set
377# CONFIG_ATM is not set
378# CONFIG_BRIDGE is not set
379# CONFIG_NET_DSA is not set
380# CONFIG_VLAN_8021Q is not set
381# CONFIG_DECNET is not set
382# CONFIG_LLC2 is not set
383# CONFIG_IPX is not set
384# CONFIG_ATALK is not set
385# CONFIG_X25 is not set
386# CONFIG_LAPB is not set
387# CONFIG_ECONET is not set
388# CONFIG_WAN_ROUTER is not set
389# CONFIG_PHONET is not set
390# CONFIG_IEEE802154 is not set
391# CONFIG_NET_SCHED is not set
392# CONFIG_DCB is not set
393
394#
395# Network testing
396#
397# CONFIG_NET_PKTGEN is not set
398# CONFIG_HAMRADIO is not set
399# CONFIG_CAN is not set
400# CONFIG_IRDA is not set
401# CONFIG_BT is not set
402# CONFIG_AF_RXRPC is not set
403# CONFIG_WIRELESS is not set
404# CONFIG_WIMAX is not set
405# CONFIG_RFKILL is not set
406# CONFIG_NET_9P is not set
407
408#
409# Device Drivers
410#
411
412#
413# Generic Driver Options
414#
415CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
416# CONFIG_DEVTMPFS is not set
417CONFIG_STANDALONE=y
418CONFIG_PREVENT_FIRMWARE_BUILD=y
419# CONFIG_FW_LOADER is not set
420# CONFIG_DEBUG_DRIVER is not set
421# CONFIG_DEBUG_DEVRES is not set
422# CONFIG_SYS_HYPERVISOR is not set
423# CONFIG_CONNECTOR is not set
424CONFIG_MTD=y
425# CONFIG_MTD_DEBUG is not set
426# CONFIG_MTD_TESTS is not set
427CONFIG_MTD_CONCAT=y
428CONFIG_MTD_PARTITIONS=y
429# CONFIG_MTD_REDBOOT_PARTS is not set
430CONFIG_MTD_CMDLINE_PARTS=y
431CONFIG_MTD_OF_PARTS=y
432# CONFIG_MTD_AR7_PARTS is not set
433
434#
435# User Modules And Translation Layers
436#
437CONFIG_MTD_CHAR=y
438CONFIG_MTD_BLKDEVS=y
439CONFIG_MTD_BLOCK=y
440# CONFIG_FTL is not set
441# CONFIG_NFTL is not set
442# CONFIG_INFTL is not set
443# CONFIG_RFD_FTL is not set
444# CONFIG_SSFDC is not set
445# CONFIG_MTD_OOPS is not set
446
447#
448# RAM/ROM/Flash chip drivers
449#
450CONFIG_MTD_CFI=y
451# CONFIG_MTD_JEDECPROBE is not set
452CONFIG_MTD_GEN_PROBE=y
453# CONFIG_MTD_CFI_ADV_OPTIONS is not set
454CONFIG_MTD_MAP_BANK_WIDTH_1=y
455CONFIG_MTD_MAP_BANK_WIDTH_2=y
456CONFIG_MTD_MAP_BANK_WIDTH_4=y
457# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
458# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
459# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
460CONFIG_MTD_CFI_I1=y
461CONFIG_MTD_CFI_I2=y
462# CONFIG_MTD_CFI_I4 is not set
463# CONFIG_MTD_CFI_I8 is not set
464CONFIG_MTD_CFI_INTELEXT=y
465CONFIG_MTD_CFI_AMDSTD=y
466# CONFIG_MTD_CFI_STAA is not set
467CONFIG_MTD_CFI_UTIL=y
468# CONFIG_MTD_RAM is not set
469# CONFIG_MTD_ROM is not set
470# CONFIG_MTD_ABSENT is not set
471
472#
473# Mapping drivers for chip access
474#
475# CONFIG_MTD_COMPLEX_MAPPINGS is not set
476# CONFIG_MTD_PHYSMAP is not set
477CONFIG_MTD_PHYSMAP_OF=y
478# CONFIG_MTD_CFI_FLAGADM is not set
479# CONFIG_MTD_PLATRAM is not set
480
481#
482# Self-contained MTD device drivers
483#
484# CONFIG_MTD_SLRAM is not set
485# CONFIG_MTD_PHRAM is not set
486# CONFIG_MTD_MTDRAM is not set
487# CONFIG_MTD_BLOCK2MTD is not set
488
489#
490# Disk-On-Chip Device Drivers
491#
492# CONFIG_MTD_DOC2000 is not set
493# CONFIG_MTD_DOC2001 is not set
494# CONFIG_MTD_DOC2001PLUS is not set
495# CONFIG_MTD_NAND is not set
496# CONFIG_MTD_ONENAND is not set
497
498#
499# LPDDR flash memory drivers
500#
501# CONFIG_MTD_LPDDR is not set
502
503#
504# UBI - Unsorted block images
505#
506# CONFIG_MTD_UBI is not set
507CONFIG_OF_FLATTREE=y
508CONFIG_OF_DYNAMIC=y
509CONFIG_OF_DEVICE=y
510CONFIG_OF_MDIO=y
511# CONFIG_PARPORT is not set
512# CONFIG_BLK_DEV is not set
513# CONFIG_MISC_DEVICES is not set
514CONFIG_HAVE_IDE=y
515# CONFIG_IDE is not set
516
517#
518# SCSI device support
519#
520# CONFIG_RAID_ATTRS is not set
521# CONFIG_SCSI is not set
522# CONFIG_SCSI_DMA is not set
523# CONFIG_SCSI_NETLINK is not set
524# CONFIG_ATA is not set
525# CONFIG_MD is not set
526# CONFIG_MACINTOSH_DRIVERS is not set
527CONFIG_NETDEVICES=y
528# CONFIG_DUMMY is not set
529# CONFIG_BONDING is not set
530# CONFIG_MACVLAN is not set
531# CONFIG_EQUALIZER is not set
532# CONFIG_TUN is not set
533# CONFIG_VETH is not set
534CONFIG_PHYLIB=y
535
536#
537# MII PHY device drivers
538#
539# CONFIG_MARVELL_PHY is not set
540CONFIG_DAVICOM_PHY=y
541# CONFIG_QSEMI_PHY is not set
542# CONFIG_LXT_PHY is not set
543# CONFIG_CICADA_PHY is not set
544# CONFIG_VITESSE_PHY is not set
545# CONFIG_SMSC_PHY is not set
546# CONFIG_BROADCOM_PHY is not set
547# CONFIG_ICPLUS_PHY is not set
548# CONFIG_REALTEK_PHY is not set
549# CONFIG_NATIONAL_PHY is not set
550# CONFIG_STE10XP is not set
551# CONFIG_LSI_ET1011C_PHY is not set
552CONFIG_FIXED_PHY=y
553# CONFIG_MDIO_BITBANG is not set
554CONFIG_NET_ETHERNET=y
555CONFIG_MII=y
556# CONFIG_ETHOC is not set
557# CONFIG_DNET is not set
558# CONFIG_IBM_NEW_EMAC_ZMII is not set
559# CONFIG_IBM_NEW_EMAC_RGMII is not set
560# CONFIG_IBM_NEW_EMAC_TAH is not set
561# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
562# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
563# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
564# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
565# CONFIG_B44 is not set
566# CONFIG_KS8842 is not set
567# CONFIG_KS8851_MLL is not set
568# CONFIG_XILINX_EMACLITE is not set
569CONFIG_FS_ENET=y
570CONFIG_FS_ENET_HAS_SCC=y
571CONFIG_FS_ENET_HAS_FEC=y
572CONFIG_FS_ENET_MDIO_FEC=y
573# CONFIG_NETDEV_1000 is not set
574# CONFIG_NETDEV_10000 is not set
575# CONFIG_WLAN is not set
576
577#
578# Enable WiMAX (Networking options) to see the WiMAX drivers
579#
580# CONFIG_WAN is not set
581# CONFIG_PPP is not set
582# CONFIG_SLIP is not set
583# CONFIG_NETCONSOLE is not set
584# CONFIG_NETPOLL is not set
585# CONFIG_NET_POLL_CONTROLLER is not set
586# CONFIG_ISDN is not set
587# CONFIG_PHONE is not set
588
589#
590# Input device support
591#
592# CONFIG_INPUT is not set
593
594#
595# Hardware I/O ports
596#
597# CONFIG_SERIO is not set
598# CONFIG_GAMEPORT is not set
599
600#
601# Character devices
602#
603# CONFIG_VT is not set
604CONFIG_DEVKMEM=y
605# CONFIG_SERIAL_NONSTANDARD is not set
606
607#
608# Serial drivers
609#
610# CONFIG_SERIAL_8250 is not set
611
612#
613# Non-8250 serial port support
614#
615# CONFIG_SERIAL_UARTLITE is not set
616CONFIG_SERIAL_CORE=y
617CONFIG_SERIAL_CORE_CONSOLE=y
618CONFIG_SERIAL_CPM=y
619CONFIG_SERIAL_CPM_CONSOLE=y
620# CONFIG_SERIAL_TIMBERDALE is not set
621# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
622CONFIG_UNIX98_PTYS=y
623# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
624# CONFIG_LEGACY_PTYS is not set
625# CONFIG_HVC_UDBG is not set
626# CONFIG_IPMI_HANDLER is not set
627CONFIG_HW_RANDOM=y
628# CONFIG_HW_RANDOM_TIMERIOMEM is not set
629# CONFIG_NVRAM is not set
630CONFIG_GEN_RTC=y
631# CONFIG_GEN_RTC_X is not set
632# CONFIG_R3964 is not set
633# CONFIG_RAW_DRIVER is not set
634# CONFIG_TCG_TPM is not set
635# CONFIG_I2C is not set
636# CONFIG_SPI is not set
637
638#
639# PPS support
640#
641# CONFIG_PPS is not set
642CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
643# CONFIG_GPIOLIB is not set
644# CONFIG_W1 is not set
645# CONFIG_POWER_SUPPLY is not set
646# CONFIG_HWMON is not set
647# CONFIG_THERMAL is not set
648# CONFIG_WATCHDOG is not set
649CONFIG_SSB_POSSIBLE=y
650
651#
652# Sonics Silicon Backplane
653#
654# CONFIG_SSB is not set
655
656#
657# Multifunction device drivers
658#
659# CONFIG_MFD_CORE is not set
660# CONFIG_MFD_SM501 is not set
661# CONFIG_HTC_PASIC3 is not set
662# CONFIG_MFD_TMIO is not set
663# CONFIG_REGULATOR is not set
664# CONFIG_MEDIA_SUPPORT is not set
665
666#
667# Graphics support
668#
669# CONFIG_VGASTATE is not set
670# CONFIG_VIDEO_OUTPUT_CONTROL is not set
671# CONFIG_FB is not set
672# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
673
674#
675# Display device support
676#
677# CONFIG_DISPLAY_SUPPORT is not set
678# CONFIG_SOUND is not set
679# CONFIG_USB_SUPPORT is not set
680# CONFIG_MMC is not set
681# CONFIG_MEMSTICK is not set
682# CONFIG_NEW_LEDS is not set
683# CONFIG_ACCESSIBILITY is not set
684# CONFIG_EDAC is not set
685# CONFIG_RTC_CLASS is not set
686# CONFIG_DMADEVICES is not set
687# CONFIG_AUXDISPLAY is not set
688# CONFIG_UIO is not set
689
690#
691# TI VLYNQ
692#
693# CONFIG_STAGING is not set
694
695#
696# File systems
697#
698# CONFIG_EXT2_FS is not set
699# CONFIG_EXT3_FS is not set
700# CONFIG_EXT4_FS is not set
701# CONFIG_REISERFS_FS is not set
702# CONFIG_JFS_FS is not set
703# CONFIG_FS_POSIX_ACL is not set
704# CONFIG_XFS_FS is not set
705# CONFIG_GFS2_FS is not set
706# CONFIG_OCFS2_FS is not set
707# CONFIG_BTRFS_FS is not set
708# CONFIG_NILFS2_FS is not set
709CONFIG_FILE_LOCKING=y
710CONFIG_FSNOTIFY=y
711# CONFIG_DNOTIFY is not set
712# CONFIG_INOTIFY is not set
713CONFIG_INOTIFY_USER=y
714# CONFIG_QUOTA is not set
715# CONFIG_AUTOFS_FS is not set
716# CONFIG_AUTOFS4_FS is not set
717# CONFIG_FUSE_FS is not set
718
719#
720# Caches
721#
722# CONFIG_FSCACHE is not set
723
724#
725# CD-ROM/DVD Filesystems
726#
727# CONFIG_ISO9660_FS is not set
728# CONFIG_UDF_FS is not set
729
730#
731# DOS/FAT/NT Filesystems
732#
733# CONFIG_MSDOS_FS is not set
734# CONFIG_VFAT_FS is not set
735# CONFIG_NTFS_FS is not set
736
737#
738# Pseudo filesystems
739#
740CONFIG_PROC_FS=y
741# CONFIG_PROC_KCORE is not set
742CONFIG_PROC_SYSCTL=y
743CONFIG_PROC_PAGE_MONITOR=y
744CONFIG_SYSFS=y
745CONFIG_TMPFS=y
746# CONFIG_TMPFS_POSIX_ACL is not set
747# CONFIG_HUGETLB_PAGE is not set
748# CONFIG_CONFIGFS_FS is not set
749CONFIG_MISC_FILESYSTEMS=y
750# CONFIG_ADFS_FS is not set
751# CONFIG_AFFS_FS is not set
752# CONFIG_HFS_FS is not set
753# CONFIG_HFSPLUS_FS is not set
754# CONFIG_BEFS_FS is not set
755# CONFIG_BFS_FS is not set
756# CONFIG_EFS_FS is not set
757# CONFIG_JFFS2_FS is not set
758# CONFIG_LOGFS is not set
759CONFIG_CRAMFS=y
760# CONFIG_SQUASHFS is not set
761# CONFIG_VXFS_FS is not set
762# CONFIG_MINIX_FS is not set
763# CONFIG_OMFS_FS is not set
764# CONFIG_HPFS_FS is not set
765# CONFIG_QNX4FS_FS is not set
766# CONFIG_ROMFS_FS is not set
767# CONFIG_SYSV_FS is not set
768# CONFIG_UFS_FS is not set
769CONFIG_NETWORK_FILESYSTEMS=y
770CONFIG_NFS_FS=y
771CONFIG_NFS_V3=y
772# CONFIG_NFS_V3_ACL is not set
773# CONFIG_NFS_V4 is not set
774CONFIG_ROOT_NFS=y
775# CONFIG_NFSD is not set
776CONFIG_LOCKD=y
777CONFIG_LOCKD_V4=y
778CONFIG_NFS_COMMON=y
779CONFIG_SUNRPC=y
780# CONFIG_RPCSEC_GSS_KRB5 is not set
781# CONFIG_RPCSEC_GSS_SPKM3 is not set
782# CONFIG_SMB_FS is not set
783# CONFIG_CIFS is not set
784# CONFIG_NCP_FS is not set
785# CONFIG_CODA_FS is not set
786# CONFIG_AFS_FS is not set
787
788#
789# Partition Types
790#
791CONFIG_PARTITION_ADVANCED=y
792# CONFIG_ACORN_PARTITION is not set
793# CONFIG_OSF_PARTITION is not set
794# CONFIG_AMIGA_PARTITION is not set
795# CONFIG_ATARI_PARTITION is not set
796# CONFIG_MAC_PARTITION is not set
797CONFIG_MSDOS_PARTITION=y
798# CONFIG_BSD_DISKLABEL is not set
799# CONFIG_MINIX_SUBPARTITION is not set
800# CONFIG_SOLARIS_X86_PARTITION is not set
801# CONFIG_UNIXWARE_DISKLABEL is not set
802# CONFIG_LDM_PARTITION is not set
803# CONFIG_SGI_PARTITION is not set
804# CONFIG_ULTRIX_PARTITION is not set
805# CONFIG_SUN_PARTITION is not set
806# CONFIG_KARMA_PARTITION is not set
807# CONFIG_EFI_PARTITION is not set
808# CONFIG_SYSV68_PARTITION is not set
809# CONFIG_NLS is not set
810# CONFIG_DLM is not set
811# CONFIG_BINARY_PRINTF is not set
812
813#
814# Library routines
815#
816CONFIG_GENERIC_FIND_LAST_BIT=y
817# CONFIG_CRC_CCITT is not set
818# CONFIG_CRC16 is not set
819# CONFIG_CRC_T10DIF is not set
820# CONFIG_CRC_ITU_T is not set
821# CONFIG_CRC32 is not set
822# CONFIG_CRC7 is not set
823# CONFIG_LIBCRC32C is not set
824CONFIG_ZLIB_INFLATE=y
825CONFIG_HAS_IOMEM=y
826CONFIG_HAS_IOPORT=y
827CONFIG_HAS_DMA=y
828CONFIG_HAVE_LMB=y
829CONFIG_NLATTR=y
830CONFIG_GENERIC_ATOMIC64=y
831
832#
833# Kernel hacking
834#
835# CONFIG_PRINTK_TIME is not set
836CONFIG_ENABLE_WARN_DEPRECATED=y
837CONFIG_ENABLE_MUST_CHECK=y
838CONFIG_FRAME_WARN=1024
839CONFIG_MAGIC_SYSRQ=y
840# CONFIG_STRIP_ASM_SYMS is not set
841# CONFIG_UNUSED_SYMBOLS is not set
842# CONFIG_DEBUG_FS is not set
843# CONFIG_HEADERS_CHECK is not set
844CONFIG_DEBUG_KERNEL=y
845# CONFIG_DEBUG_SHIRQ is not set
846CONFIG_DETECT_SOFTLOCKUP=y
847# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
848CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
849CONFIG_DETECT_HUNG_TASK=y
850# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
851CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
852CONFIG_SCHED_DEBUG=y
853# CONFIG_SCHEDSTATS is not set
854# CONFIG_TIMER_STATS is not set
855# CONFIG_DEBUG_OBJECTS is not set
856# CONFIG_SLUB_DEBUG_ON is not set
857# CONFIG_SLUB_STATS is not set
858# CONFIG_DEBUG_KMEMLEAK is not set
859# CONFIG_DEBUG_SPINLOCK is not set
860# CONFIG_DEBUG_MUTEXES is not set
861# CONFIG_DEBUG_LOCK_ALLOC is not set
862# CONFIG_PROVE_LOCKING is not set
863# CONFIG_LOCK_STAT is not set
864# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
865# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
866# CONFIG_DEBUG_KOBJECT is not set
867CONFIG_DEBUG_BUGVERBOSE=y
868CONFIG_DEBUG_INFO=y
869# CONFIG_DEBUG_VM is not set
870# CONFIG_DEBUG_WRITECOUNT is not set
871# CONFIG_DEBUG_MEMORY_INIT is not set
872# CONFIG_DEBUG_LIST is not set
873# CONFIG_DEBUG_SG is not set
874# CONFIG_DEBUG_NOTIFIERS is not set
875# CONFIG_DEBUG_CREDENTIALS is not set
876# CONFIG_RCU_TORTURE_TEST is not set
877# CONFIG_RCU_CPU_STALL_DETECTOR is not set
878# CONFIG_BACKTRACE_SELF_TEST is not set
879# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
880# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
881# CONFIG_FAULT_INJECTION is not set
882# CONFIG_LATENCYTOP is not set
883# CONFIG_SYSCTL_SYSCALL_CHECK is not set
884# CONFIG_DEBUG_PAGEALLOC is not set
885CONFIG_HAVE_FUNCTION_TRACER=y
886CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
887CONFIG_HAVE_DYNAMIC_FTRACE=y
888CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
889CONFIG_TRACING_SUPPORT=y
890CONFIG_FTRACE=y
891# CONFIG_FUNCTION_TRACER is not set
892# CONFIG_IRQSOFF_TRACER is not set
893# CONFIG_SCHED_TRACER is not set
894# CONFIG_ENABLE_DEFAULT_TRACERS is not set
895# CONFIG_BOOT_TRACER is not set
896CONFIG_BRANCH_PROFILE_NONE=y
897# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
898# CONFIG_PROFILE_ALL_BRANCHES is not set
899# CONFIG_STACK_TRACER is not set
900# CONFIG_KMEMTRACE is not set
901# CONFIG_WORKQUEUE_TRACER is not set
902# CONFIG_BLK_DEV_IO_TRACE is not set
903# CONFIG_DMA_API_DEBUG is not set
904# CONFIG_SAMPLES is not set
905CONFIG_HAVE_ARCH_KGDB=y
906# CONFIG_KGDB is not set
907# CONFIG_PPC_DISABLE_WERROR is not set
908CONFIG_PPC_WERROR=y
909CONFIG_PRINT_STACK_DEPTH=64
910# CONFIG_DEBUG_STACKOVERFLOW is not set
911# CONFIG_DEBUG_STACK_USAGE is not set
912# CONFIG_CODE_PATCHING_SELFTEST is not set
913# CONFIG_FTR_FIXUP_SELFTEST is not set
914# CONFIG_MSI_BITMAP_SELFTEST is not set
915# CONFIG_XMON is not set
916# CONFIG_IRQSTACKS is not set
917# CONFIG_BDI_SWITCH is not set
918# CONFIG_PPC_EARLY_DEBUG is not set
919
920#
921# Security options
922#
923# CONFIG_KEYS is not set
924# CONFIG_SECURITY is not set
925# CONFIG_SECURITYFS is not set
926# CONFIG_DEFAULT_SECURITY_SELINUX is not set
927# CONFIG_DEFAULT_SECURITY_SMACK is not set
928# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
929CONFIG_DEFAULT_SECURITY_DAC=y
930CONFIG_DEFAULT_SECURITY=""
931# CONFIG_CRYPTO is not set
932CONFIG_PPC_CLOCK=y
933CONFIG_PPC_LIB_RHEAP=y
934# CONFIG_VIRTUALIZATION is not set
diff --git a/arch/powerpc/platforms/8xx/Kconfig b/arch/powerpc/platforms/8xx/Kconfig
index 48a920a98e7b..dd35ce081cff 100644
--- a/arch/powerpc/platforms/8xx/Kconfig
+++ b/arch/powerpc/platforms/8xx/Kconfig
@@ -55,6 +55,12 @@ config PPC_MGSUVD
55 help 55 help
56 This enables support for the Keymile MGSUVD board. 56 This enables support for the Keymile MGSUVD board.
57 57
58config TQM8XX
59 bool "TQM8XX"
60 select CPM1
61 help
62 support for the mpc8xx based boards from TQM.
63
58endchoice 64endchoice
59 65
60menu "Freescale Ethernet driver platform-specific options" 66menu "Freescale Ethernet driver platform-specific options"
diff --git a/arch/powerpc/platforms/8xx/Makefile b/arch/powerpc/platforms/8xx/Makefile
index bdbfd7496018..a491fe6b94fc 100644
--- a/arch/powerpc/platforms/8xx/Makefile
+++ b/arch/powerpc/platforms/8xx/Makefile
@@ -7,3 +7,4 @@ obj-$(CONFIG_MPC86XADS) += mpc86xads_setup.o
7obj-$(CONFIG_PPC_EP88XC) += ep88xc.o 7obj-$(CONFIG_PPC_EP88XC) += ep88xc.o
8obj-$(CONFIG_PPC_ADDER875) += adder875.o 8obj-$(CONFIG_PPC_ADDER875) += adder875.o
9obj-$(CONFIG_PPC_MGSUVD) += mgsuvd.o 9obj-$(CONFIG_PPC_MGSUVD) += mgsuvd.o
10obj-$(CONFIG_TQM8XX) += tqm8xx_setup.o
diff --git a/arch/powerpc/platforms/8xx/tqm8xx_setup.c b/arch/powerpc/platforms/8xx/tqm8xx_setup.c
new file mode 100644
index 000000000000..b71c650fbb11
--- /dev/null
+++ b/arch/powerpc/platforms/8xx/tqm8xx_setup.c
@@ -0,0 +1,156 @@
1/*
2 * Platform setup for the MPC8xx based boards from TQM.
3 *
4 * Heiko Schocher <hs@denx.de>
5 * Copyright 2010 DENX Software Engineering GmbH
6 *
7 * based on:
8 * Vitaly Bordug <vbordug@ru.mvista.com>
9 *
10 * Copyright 2005 MontaVista Software Inc.
11 *
12 * Heavily modified by Scott Wood <scottwood@freescale.com>
13 * Copyright 2007 Freescale Semiconductor, Inc.
14 *
15 * This file is licensed under the terms of the GNU General Public License
16 * version 2. This program is licensed "as is" without any warranty of any
17 * kind, whether express or implied.
18 */
19
20#include <linux/init.h>
21#include <linux/module.h>
22#include <linux/param.h>
23#include <linux/string.h>
24#include <linux/ioport.h>
25#include <linux/device.h>
26#include <linux/delay.h>
27
28#include <linux/fs_enet_pd.h>
29#include <linux/fs_uart_pd.h>
30#include <linux/fsl_devices.h>
31#include <linux/mii.h>
32#include <linux/of_platform.h>
33
34#include <asm/delay.h>
35#include <asm/io.h>
36#include <asm/machdep.h>
37#include <asm/page.h>
38#include <asm/processor.h>
39#include <asm/system.h>
40#include <asm/time.h>
41#include <asm/mpc8xx.h>
42#include <asm/8xx_immap.h>
43#include <asm/cpm1.h>
44#include <asm/fs_pd.h>
45#include <asm/udbg.h>
46
47#include "mpc8xx.h"
48
49struct cpm_pin {
50 int port, pin, flags;
51};
52
53static struct __initdata cpm_pin tqm8xx_pins[] = {
54 /* SMC1 */
55 {CPM_PORTB, 24, CPM_PIN_INPUT}, /* RX */
56 {CPM_PORTB, 25, CPM_PIN_INPUT | CPM_PIN_SECONDARY}, /* TX */
57
58 /* SCC1 */
59 {CPM_PORTA, 5, CPM_PIN_INPUT}, /* CLK1 */
60 {CPM_PORTA, 7, CPM_PIN_INPUT}, /* CLK2 */
61 {CPM_PORTA, 14, CPM_PIN_INPUT}, /* TX */
62 {CPM_PORTA, 15, CPM_PIN_INPUT}, /* RX */
63 {CPM_PORTC, 15, CPM_PIN_INPUT | CPM_PIN_SECONDARY}, /* TENA */
64 {CPM_PORTC, 10, CPM_PIN_INPUT | CPM_PIN_SECONDARY | CPM_PIN_GPIO},
65 {CPM_PORTC, 11, CPM_PIN_INPUT | CPM_PIN_SECONDARY | CPM_PIN_GPIO},
66};
67
68static struct __initdata cpm_pin tqm8xx_fec_pins[] = {
69 /* MII */
70 {CPM_PORTD, 3, CPM_PIN_OUTPUT},
71 {CPM_PORTD, 4, CPM_PIN_OUTPUT},
72 {CPM_PORTD, 5, CPM_PIN_OUTPUT},
73 {CPM_PORTD, 6, CPM_PIN_OUTPUT},
74 {CPM_PORTD, 7, CPM_PIN_OUTPUT},
75 {CPM_PORTD, 8, CPM_PIN_OUTPUT},
76 {CPM_PORTD, 9, CPM_PIN_OUTPUT},
77 {CPM_PORTD, 10, CPM_PIN_OUTPUT},
78 {CPM_PORTD, 11, CPM_PIN_OUTPUT},
79 {CPM_PORTD, 12, CPM_PIN_OUTPUT},
80 {CPM_PORTD, 13, CPM_PIN_OUTPUT},
81 {CPM_PORTD, 14, CPM_PIN_OUTPUT},
82 {CPM_PORTD, 15, CPM_PIN_OUTPUT},
83};
84
85static void __init init_pins(int n, struct cpm_pin *pin)
86{
87 int i;
88
89 for (i = 0; i < n; i++) {
90 cpm1_set_pin(pin->port, pin->pin, pin->flags);
91 pin++;
92 }
93}
94
95static void __init init_ioports(void)
96{
97 struct device_node *dnode;
98 struct property *prop;
99 int len;
100
101 init_pins(ARRAY_SIZE(tqm8xx_pins), &tqm8xx_pins[0]);
102
103 cpm1_clk_setup(CPM_CLK_SMC1, CPM_BRG1, CPM_CLK_RTX);
104
105 dnode = of_find_node_by_name(NULL, "aliases");
106 if (dnode == NULL)
107 return;
108 prop = of_find_property(dnode, "ethernet1", &len);
109 if (prop == NULL)
110 return;
111
112 /* init FEC pins */
113 init_pins(ARRAY_SIZE(tqm8xx_fec_pins), &tqm8xx_fec_pins[0]);
114}
115
116static void __init tqm8xx_setup_arch(void)
117{
118 cpm_reset();
119 init_ioports();
120}
121
122static int __init tqm8xx_probe(void)
123{
124 unsigned long node = of_get_flat_dt_root();
125
126 return of_flat_dt_is_compatible(node, "tqc,tqm8xx");
127}
128
129static struct of_device_id __initdata of_bus_ids[] = {
130 { .name = "soc", },
131 { .name = "cpm", },
132 { .name = "localbus", },
133 { .compatible = "simple-bus" },
134 {},
135};
136
137static int __init declare_of_platform_devices(void)
138{
139 of_platform_bus_probe(NULL, of_bus_ids, NULL);
140
141 return 0;
142}
143machine_device_initcall(tqm8xx, declare_of_platform_devices);
144
145define_machine(tqm8xx) {
146 .name = "TQM8xx",
147 .probe = tqm8xx_probe,
148 .setup_arch = tqm8xx_setup_arch,
149 .init_IRQ = mpc8xx_pics_init,
150 .get_irq = mpc8xx_get_irq,
151 .restart = mpc8xx_restart,
152 .calibrate_decr = mpc8xx_calibrate_decr,
153 .set_rtc_time = mpc8xx_set_rtc_time,
154 .get_rtc_time = mpc8xx_get_rtc_time,
155 .progress = udbg_progress,
156};