aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorKumar Gala <galak@freescale.com>2005-09-03 18:55:20 -0400
committerLinus Torvalds <torvalds@evo.osdl.org>2005-09-05 03:05:52 -0400
commita3800d8ffa0a91f3047cbfa82e435d483ffc8dd4 (patch)
tree9f21eecb73886b4fe6b53d2427e2ad7f43005e40 /arch
parent4b4dc82247184504ba6d0689566a25d03eb1095c (diff)
[PATCH] ppc32: Remove board support for ADIR
Support for the ADIR board is no longer maintained and thus being removed Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/ppc/Kconfig3
-rw-r--r--arch/ppc/configs/adir_defconfig805
-rw-r--r--arch/ppc/platforms/Makefile1
-rw-r--r--arch/ppc/platforms/adir.h95
-rw-r--r--arch/ppc/platforms/adir_pci.c247
-rw-r--r--arch/ppc/platforms/adir_pic.c130
-rw-r--r--arch/ppc/platforms/adir_setup.c210
-rw-r--r--arch/ppc/syslib/Makefile2
8 files changed, 0 insertions, 1493 deletions
diff --git a/arch/ppc/Kconfig b/arch/ppc/Kconfig
index e6fa1d1cc03a..2f3598662f24 100644
--- a/arch/ppc/Kconfig
+++ b/arch/ppc/Kconfig
@@ -637,9 +637,6 @@ config SANDPOINT
637config RADSTONE_PPC7D 637config RADSTONE_PPC7D
638 bool "Radstone Technology PPC7D board" 638 bool "Radstone Technology PPC7D board"
639 639
640config ADIR
641 bool "SBS-Adirondack"
642
643config K2 640config K2
644 bool "SBS-K2" 641 bool "SBS-K2"
645 642
diff --git a/arch/ppc/configs/adir_defconfig b/arch/ppc/configs/adir_defconfig
deleted file mode 100644
index f20e6533dc79..000000000000
--- a/arch/ppc/configs/adir_defconfig
+++ /dev/null
@@ -1,805 +0,0 @@
1#
2# Automatically generated make config: don't edit
3#
4CONFIG_MMU=y
5CONFIG_RWSEM_XCHGADD_ALGORITHM=y
6CONFIG_HAVE_DEC_LOCK=y
7
8#
9# Code maturity level options
10#
11CONFIG_EXPERIMENTAL=y
12
13#
14# General setup
15#
16CONFIG_SWAP=y
17CONFIG_SYSVIPC=y
18# CONFIG_BSD_PROCESS_ACCT is not set
19CONFIG_SYSCTL=y
20CONFIG_LOG_BUF_SHIFT=14
21# CONFIG_EMBEDDED is not set
22CONFIG_FUTEX=y
23CONFIG_EPOLL=y
24
25#
26# Loadable module support
27#
28CONFIG_MODULES=y
29CONFIG_MODULE_UNLOAD=y
30# CONFIG_MODULE_FORCE_UNLOAD is not set
31CONFIG_OBSOLETE_MODPARM=y
32# CONFIG_MODVERSIONS is not set
33CONFIG_KMOD=y
34
35#
36# Platform support
37#
38CONFIG_PPC=y
39CONFIG_PPC32=y
40CONFIG_6xx=y
41# CONFIG_40x is not set
42# CONFIG_POWER3 is not set
43# CONFIG_8xx is not set
44
45#
46# IBM 4xx options
47#
48# CONFIG_8260 is not set
49CONFIG_GENERIC_ISA_DMA=y
50CONFIG_PPC_STD_MMU=y
51# CONFIG_PPC_MULTIPLATFORM is not set
52# CONFIG_APUS is not set
53# CONFIG_WILLOW_2 is not set
54# CONFIG_PCORE is not set
55# CONFIG_POWERPMC250 is not set
56# CONFIG_EV64260 is not set
57# CONFIG_SPRUCE is not set
58# CONFIG_LOPEC is not set
59# CONFIG_MCPN765 is not set
60# CONFIG_MVME5100 is not set
61# CONFIG_PPLUS is not set
62# CONFIG_PRPMC750 is not set
63# CONFIG_PRPMC800 is not set
64# CONFIG_SANDPOINT is not set
65CONFIG_ADIR=y
66# CONFIG_K2 is not set
67# CONFIG_PAL4 is not set
68# CONFIG_GEMINI is not set
69# CONFIG_SMP is not set
70# CONFIG_PREEMPT is not set
71# CONFIG_ALTIVEC is not set
72# CONFIG_TAU is not set
73# CONFIG_CPU_FREQ is not set
74
75#
76# General setup
77#
78# CONFIG_HIGHMEM is not set
79CONFIG_PCI=y
80CONFIG_PCI_DOMAINS=y
81CONFIG_KCORE_ELF=y
82CONFIG_BINFMT_ELF=y
83CONFIG_KERNEL_ELF=y
84# CONFIG_BINFMT_MISC is not set
85CONFIG_PCI_LEGACY_PROC=y
86# CONFIG_PCI_NAMES is not set
87# CONFIG_HOTPLUG is not set
88
89#
90# Parallel port support
91#
92CONFIG_PARPORT=y
93CONFIG_PARPORT_PC=y
94CONFIG_PARPORT_PC_CML1=y
95# CONFIG_PARPORT_SERIAL is not set
96CONFIG_PARPORT_PC_FIFO=y
97CONFIG_PARPORT_PC_SUPERIO=y
98# CONFIG_PARPORT_OTHER is not set
99CONFIG_PARPORT_1284=y
100# CONFIG_PPC601_SYNC_FIX is not set
101CONFIG_CMDLINE_BOOL=y
102CONFIG_CMDLINE="ip=on"
103
104#
105# Advanced setup
106#
107# CONFIG_ADVANCED_OPTIONS is not set
108
109#
110# Default settings for advanced configuration options are used
111#
112CONFIG_HIGHMEM_START=0xfe000000
113CONFIG_LOWMEM_SIZE=0x30000000
114CONFIG_KERNEL_START=0xc0000000
115CONFIG_TASK_SIZE=0x80000000
116CONFIG_BOOT_LOAD=0x00800000
117
118#
119# Memory Technology Devices (MTD)
120#
121# CONFIG_MTD is not set
122
123#
124# Plug and Play support
125#
126# CONFIG_PNP is not set
127
128#
129# Block devices
130#
131CONFIG_BLK_DEV_FD=y
132# CONFIG_PARIDE is not set
133# CONFIG_BLK_CPQ_DA is not set
134# CONFIG_BLK_CPQ_CISS_DA is not set
135# CONFIG_BLK_DEV_DAC960 is not set
136# CONFIG_BLK_DEV_UMEM is not set
137CONFIG_BLK_DEV_LOOP=y
138# CONFIG_BLK_DEV_NBD is not set
139CONFIG_BLK_DEV_RAM=y
140CONFIG_BLK_DEV_RAM_SIZE=4096
141CONFIG_BLK_DEV_INITRD=y
142
143#
144# Multi-device support (RAID and LVM)
145#
146# CONFIG_MD is not set
147
148#
149# ATA/IDE/MFM/RLL support
150#
151# CONFIG_IDE is not set
152
153#
154# SCSI support
155#
156CONFIG_SCSI=y
157
158#
159# SCSI support type (disk, tape, CD-ROM)
160#
161CONFIG_BLK_DEV_SD=y
162CONFIG_CHR_DEV_ST=y
163# CONFIG_CHR_DEV_OSST is not set
164CONFIG_BLK_DEV_SR=y
165CONFIG_BLK_DEV_SR_VENDOR=y
166CONFIG_CHR_DEV_SG=y
167
168#
169# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
170#
171# CONFIG_SCSI_MULTI_LUN is not set
172# CONFIG_SCSI_REPORT_LUNS is not set
173CONFIG_SCSI_CONSTANTS=y
174# CONFIG_SCSI_LOGGING is not set
175
176#
177# SCSI low-level drivers
178#
179# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
180# CONFIG_SCSI_ACARD is not set
181# CONFIG_SCSI_AACRAID is not set
182# CONFIG_SCSI_AIC7XXX is not set
183# CONFIG_SCSI_AIC7XXX_OLD is not set
184# CONFIG_SCSI_AIC79XX is not set
185# CONFIG_SCSI_DPT_I2O is not set
186# CONFIG_SCSI_ADVANSYS is not set
187# CONFIG_SCSI_IN2000 is not set
188# CONFIG_SCSI_AM53C974 is not set
189# CONFIG_SCSI_MEGARAID is not set
190# CONFIG_SCSI_BUSLOGIC is not set
191# CONFIG_SCSI_CPQFCTS is not set
192# CONFIG_SCSI_DMX3191D is not set
193# CONFIG_SCSI_EATA is not set
194# CONFIG_SCSI_EATA_PIO is not set
195# CONFIG_SCSI_FUTURE_DOMAIN is not set
196# CONFIG_SCSI_GDTH is not set
197# CONFIG_SCSI_GENERIC_NCR5380 is not set
198# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
199# CONFIG_SCSI_INITIO is not set
200# CONFIG_SCSI_INIA100 is not set
201# CONFIG_SCSI_PPA is not set
202# CONFIG_SCSI_IMM is not set
203# CONFIG_SCSI_NCR53C7xx is not set
204# CONFIG_SCSI_SYM53C8XX_2 is not set
205CONFIG_SCSI_NCR53C8XX=y
206CONFIG_SCSI_SYM53C8XX=y
207CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8
208CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32
209CONFIG_SCSI_NCR53C8XX_SYNC=20
210# CONFIG_SCSI_NCR53C8XX_PROFILE is not set
211# CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set
212# CONFIG_SCSI_NCR53C8XX_PQS_PDS is not set
213# CONFIG_SCSI_NCR53C8XX_SYMBIOS_COMPAT is not set
214# CONFIG_SCSI_PCI2000 is not set
215# CONFIG_SCSI_PCI2220I is not set
216# CONFIG_SCSI_QLOGIC_ISP is not set
217# CONFIG_SCSI_QLOGIC_FC is not set
218# CONFIG_SCSI_QLOGIC_1280 is not set
219# CONFIG_SCSI_DC395x is not set
220# CONFIG_SCSI_DC390T is not set
221# CONFIG_SCSI_U14_34F is not set
222# CONFIG_SCSI_NSP32 is not set
223# CONFIG_SCSI_DEBUG is not set
224
225#
226# Fusion MPT device support
227#
228# CONFIG_FUSION is not set
229
230#
231# IEEE 1394 (FireWire) support (EXPERIMENTAL)
232#
233# CONFIG_IEEE1394 is not set
234
235#
236# I2O device support
237#
238# CONFIG_I2O is not set
239
240#
241# Networking support
242#
243CONFIG_NET=y
244
245#
246# Networking options
247#
248CONFIG_PACKET=y
249# CONFIG_PACKET_MMAP is not set
250# CONFIG_NETLINK_DEV is not set
251CONFIG_NETFILTER=y
252# CONFIG_NETFILTER_DEBUG is not set
253CONFIG_UNIX=y
254# CONFIG_NET_KEY is not set
255CONFIG_INET=y
256# CONFIG_IP_MULTICAST is not set
257# CONFIG_IP_ADVANCED_ROUTER is not set
258CONFIG_IP_PNP=y
259CONFIG_IP_PNP_DHCP=y
260# CONFIG_IP_PNP_BOOTP is not set
261# CONFIG_IP_PNP_RARP is not set
262# CONFIG_NET_IPIP is not set
263# CONFIG_NET_IPGRE is not set
264# CONFIG_ARPD is not set
265# CONFIG_INET_ECN is not set
266# CONFIG_SYN_COOKIES is not set
267# CONFIG_INET_AH is not set
268# CONFIG_INET_ESP is not set
269# CONFIG_INET_IPCOMP is not set
270
271#
272# IP: Netfilter Configuration
273#
274CONFIG_IP_NF_CONNTRACK=m
275CONFIG_IP_NF_FTP=m
276CONFIG_IP_NF_IRC=m
277CONFIG_IP_NF_TFTP=m
278CONFIG_IP_NF_AMANDA=m
279# CONFIG_IP_NF_QUEUE is not set
280CONFIG_IP_NF_IPTABLES=m
281CONFIG_IP_NF_MATCH_LIMIT=m
282CONFIG_IP_NF_MATCH_MAC=m
283CONFIG_IP_NF_MATCH_PKTTYPE=m
284CONFIG_IP_NF_MATCH_MARK=m
285CONFIG_IP_NF_MATCH_MULTIPORT=m
286CONFIG_IP_NF_MATCH_TOS=m
287CONFIG_IP_NF_MATCH_ECN=m
288CONFIG_IP_NF_MATCH_DSCP=m
289CONFIG_IP_NF_MATCH_AH_ESP=m
290CONFIG_IP_NF_MATCH_LENGTH=m
291CONFIG_IP_NF_MATCH_TTL=m
292CONFIG_IP_NF_MATCH_TCPMSS=m
293CONFIG_IP_NF_MATCH_HELPER=m
294CONFIG_IP_NF_MATCH_STATE=m
295CONFIG_IP_NF_MATCH_CONNTRACK=m
296CONFIG_IP_NF_MATCH_UNCLEAN=m
297CONFIG_IP_NF_MATCH_OWNER=m
298CONFIG_IP_NF_FILTER=m
299CONFIG_IP_NF_TARGET_REJECT=m
300CONFIG_IP_NF_TARGET_MIRROR=m
301CONFIG_IP_NF_NAT=m
302CONFIG_IP_NF_NAT_NEEDED=y
303CONFIG_IP_NF_TARGET_MASQUERADE=m
304CONFIG_IP_NF_TARGET_REDIRECT=m
305CONFIG_IP_NF_NAT_SNMP_BASIC=m
306CONFIG_IP_NF_NAT_IRC=m
307CONFIG_IP_NF_NAT_FTP=m
308CONFIG_IP_NF_NAT_TFTP=m
309CONFIG_IP_NF_NAT_AMANDA=m
310# CONFIG_IP_NF_MANGLE is not set
311# CONFIG_IP_NF_TARGET_LOG is not set
312# CONFIG_IP_NF_TARGET_ULOG is not set
313CONFIG_IP_NF_TARGET_TCPMSS=m
314CONFIG_IP_NF_ARPTABLES=m
315CONFIG_IP_NF_ARPFILTER=m
316CONFIG_IP_NF_COMPAT_IPCHAINS=m
317# CONFIG_IP_NF_COMPAT_IPFWADM is not set
318# CONFIG_IPV6 is not set
319# CONFIG_XFRM_USER is not set
320
321#
322# SCTP Configuration (EXPERIMENTAL)
323#
324CONFIG_IPV6_SCTP__=y
325# CONFIG_IP_SCTP is not set
326# CONFIG_ATM is not set
327# CONFIG_VLAN_8021Q is not set
328# CONFIG_LLC is not set
329# CONFIG_DECNET is not set
330# CONFIG_BRIDGE is not set
331# CONFIG_X25 is not set
332# CONFIG_LAPB is not set
333# CONFIG_NET_DIVERT is not set
334# CONFIG_ECONET is not set
335# CONFIG_WAN_ROUTER is not set
336# CONFIG_NET_HW_FLOWCONTROL is not set
337
338#
339# QoS and/or fair queueing
340#
341# CONFIG_NET_SCHED is not set
342
343#
344# Network testing
345#
346# CONFIG_NET_PKTGEN is not set
347CONFIG_NETDEVICES=y
348
349#
350# ARCnet devices
351#
352# CONFIG_ARCNET is not set
353# CONFIG_DUMMY is not set
354# CONFIG_BONDING is not set
355# CONFIG_EQUALIZER is not set
356# CONFIG_TUN is not set
357# CONFIG_ETHERTAP is not set
358
359#
360# Ethernet (10 or 100Mbit)
361#
362CONFIG_NET_ETHERNET=y
363CONFIG_MII=y
364# CONFIG_OAKNET is not set
365# CONFIG_HAPPYMEAL is not set
366# CONFIG_SUNGEM is not set
367# CONFIG_NET_VENDOR_3COM is not set
368
369#
370# Tulip family network device support
371#
372# CONFIG_NET_TULIP is not set
373# CONFIG_HP100 is not set
374CONFIG_NET_PCI=y
375# CONFIG_PCNET32 is not set
376# CONFIG_AMD8111_ETH is not set
377# CONFIG_ADAPTEC_STARFIRE is not set
378# CONFIG_B44 is not set
379# CONFIG_DGRS is not set
380CONFIG_EEPRO100=y
381# CONFIG_EEPRO100_PIO is not set
382# CONFIG_E100 is not set
383# CONFIG_FEALNX is not set
384# CONFIG_NATSEMI is not set
385# CONFIG_NE2K_PCI is not set
386# CONFIG_8139CP is not set
387# CONFIG_8139TOO is not set
388# CONFIG_SIS900 is not set
389# CONFIG_EPIC100 is not set
390# CONFIG_SUNDANCE is not set
391# CONFIG_TLAN is not set
392# CONFIG_VIA_RHINE is not set
393
394#
395# Ethernet (1000 Mbit)
396#
397# CONFIG_ACENIC is not set
398# CONFIG_DL2K is not set
399# CONFIG_E1000 is not set
400# CONFIG_NS83820 is not set
401# CONFIG_HAMACHI is not set
402# CONFIG_YELLOWFIN is not set
403# CONFIG_R8169 is not set
404# CONFIG_SK98LIN is not set
405# CONFIG_TIGON3 is not set
406
407#
408# Ethernet (10000 Mbit)
409#
410# CONFIG_IXGB is not set
411# CONFIG_FDDI is not set
412# CONFIG_HIPPI is not set
413# CONFIG_PLIP is not set
414# CONFIG_PPP is not set
415# CONFIG_SLIP is not set
416
417#
418# Wireless LAN (non-hamradio)
419#
420# CONFIG_NET_RADIO is not set
421
422#
423# Token Ring devices (depends on LLC=y)
424#
425# CONFIG_NET_FC is not set
426# CONFIG_RCPCI is not set
427# CONFIG_SHAPER is not set
428
429#
430# Wan interfaces
431#
432# CONFIG_WAN is not set
433
434#
435# Amateur Radio support
436#
437# CONFIG_HAMRADIO is not set
438
439#
440# IrDA (infrared) support
441#
442# CONFIG_IRDA is not set
443
444#
445# ISDN subsystem
446#
447# CONFIG_ISDN_BOOL is not set
448
449#
450# Graphics support
451#
452# CONFIG_FB is not set
453
454#
455# Old CD-ROM drivers (not SCSI, not IDE)
456#
457# CONFIG_CD_NO_IDESCSI is not set
458
459#
460# Input device support
461#
462# CONFIG_INPUT is not set
463
464#
465# Userland interfaces
466#
467
468#
469# Input I/O drivers
470#
471# CONFIG_GAMEPORT is not set
472CONFIG_SOUND_GAMEPORT=y
473# CONFIG_SERIO is not set
474
475#
476# Input Device Drivers
477#
478
479#
480# Macintosh device drivers
481#
482
483#
484# Character devices
485#
486# CONFIG_SERIAL_NONSTANDARD is not set
487
488#
489# Serial drivers
490#
491CONFIG_SERIAL_8250=y
492CONFIG_SERIAL_8250_CONSOLE=y
493# CONFIG_SERIAL_8250_EXTENDED is not set
494
495#
496# Non-8250 serial port support
497#
498CONFIG_SERIAL_CORE=y
499CONFIG_SERIAL_CORE_CONSOLE=y
500CONFIG_UNIX98_PTYS=y
501CONFIG_UNIX98_PTY_COUNT=256
502# CONFIG_PRINTER is not set
503# CONFIG_PPDEV is not set
504# CONFIG_TIPAR is not set
505
506#
507# I2C support
508#
509# CONFIG_I2C is not set
510
511#
512# I2C Hardware Sensors Mainboard support
513#
514
515#
516# I2C Hardware Sensors Chip support
517#
518# CONFIG_I2C_SENSOR is not set
519
520#
521# Mice
522#
523# CONFIG_BUSMOUSE is not set
524# CONFIG_QIC02_TAPE is not set
525
526#
527# IPMI
528#
529# CONFIG_IPMI_HANDLER is not set
530
531#
532# Watchdog Cards
533#
534# CONFIG_WATCHDOG is not set
535# CONFIG_NVRAM is not set
536CONFIG_GEN_RTC=y
537# CONFIG_GEN_RTC_X is not set
538# CONFIG_DTLK is not set
539# CONFIG_R3964 is not set
540# CONFIG_APPLICOM is not set
541
542#
543# Ftape, the floppy tape device driver
544#
545# CONFIG_FTAPE is not set
546# CONFIG_AGP is not set
547# CONFIG_DRM is not set
548# CONFIG_RAW_DRIVER is not set
549# CONFIG_HANGCHECK_TIMER is not set
550
551#
552# Multimedia devices
553#
554# CONFIG_VIDEO_DEV is not set
555
556#
557# Digital Video Broadcasting Devices
558#
559# CONFIG_DVB is not set
560
561#
562# File systems
563#
564CONFIG_EXT2_FS=y
565# CONFIG_EXT2_FS_XATTR is not set
566CONFIG_EXT3_FS=y
567CONFIG_EXT3_FS_XATTR=y
568# CONFIG_EXT3_FS_POSIX_ACL is not set
569# CONFIG_EXT3_FS_SECURITY is not set
570CONFIG_JBD=y
571# CONFIG_JBD_DEBUG is not set
572CONFIG_FS_MBCACHE=y
573# CONFIG_REISERFS_FS is not set
574# CONFIG_JFS_FS is not set
575# CONFIG_XFS_FS is not set
576# CONFIG_MINIX_FS is not set
577# CONFIG_ROMFS_FS is not set
578# CONFIG_QUOTA is not set
579# CONFIG_AUTOFS_FS is not set
580# CONFIG_AUTOFS4_FS is not set
581
582#
583# CD-ROM/DVD Filesystems
584#
585# CONFIG_ISO9660_FS is not set
586# CONFIG_UDF_FS is not set
587
588#
589# DOS/FAT/NT Filesystems
590#
591# CONFIG_FAT_FS is not set
592# CONFIG_NTFS_FS is not set
593
594#
595# Pseudo filesystems
596#
597CONFIG_PROC_FS=y
598# CONFIG_DEVFS_FS is not set
599CONFIG_DEVPTS_FS=y
600# CONFIG_DEVPTS_FS_XATTR is not set
601CONFIG_TMPFS=y
602CONFIG_RAMFS=y
603
604#
605# Miscellaneous filesystems
606#
607# CONFIG_ADFS_FS is not set
608# CONFIG_AFFS_FS is not set
609# CONFIG_HFS_FS is not set
610# CONFIG_BEFS_FS is not set
611# CONFIG_BFS_FS is not set
612# CONFIG_EFS_FS is not set
613# CONFIG_CRAMFS is not set
614# CONFIG_VXFS_FS is not set
615# CONFIG_HPFS_FS is not set
616# CONFIG_QNX4FS_FS is not set
617# CONFIG_SYSV_FS is not set
618# CONFIG_UFS_FS is not set
619
620#
621# Network File Systems
622#
623CONFIG_NFS_FS=y
624# CONFIG_NFS_V3 is not set
625# CONFIG_NFS_V4 is not set
626# CONFIG_NFSD is not set
627CONFIG_ROOT_NFS=y
628CONFIG_LOCKD=y
629# CONFIG_EXPORTFS is not set
630CONFIG_SUNRPC=y
631# CONFIG_SUNRPC_GSS is not set
632# CONFIG_SMB_FS is not set
633# CONFIG_CIFS is not set
634# CONFIG_NCP_FS is not set
635# CONFIG_CODA_FS is not set
636# CONFIG_INTERMEZZO_FS is not set
637# CONFIG_AFS_FS is not set
638
639#
640# Partition Types
641#
642# CONFIG_PARTITION_ADVANCED is not set
643CONFIG_MSDOS_PARTITION=y
644
645#
646# Sound
647#
648# CONFIG_SOUND is not set
649
650#
651# USB support
652#
653CONFIG_USB=y
654# CONFIG_USB_DEBUG is not set
655
656#
657# Miscellaneous USB options
658#
659CONFIG_USB_DEVICEFS=y
660# CONFIG_USB_BANDWIDTH is not set
661CONFIG_USB_DYNAMIC_MINORS=y
662
663#
664# USB Host Controller Drivers
665#
666# CONFIG_USB_EHCI_HCD is not set
667CONFIG_USB_OHCI_HCD=y
668# CONFIG_USB_UHCI_HCD is not set
669
670#
671# USB Device Class drivers
672#
673# CONFIG_USB_BLUETOOTH_TTY is not set
674CONFIG_USB_ACM=m
675# CONFIG_USB_PRINTER is not set
676CONFIG_USB_STORAGE=m
677# CONFIG_USB_STORAGE_DEBUG is not set
678# CONFIG_USB_STORAGE_DATAFAB is not set
679CONFIG_USB_STORAGE_FREECOM=y
680# CONFIG_USB_STORAGE_ISD200 is not set
681CONFIG_USB_STORAGE_DPCM=y
682# CONFIG_USB_STORAGE_HP8200e is not set
683# CONFIG_USB_STORAGE_SDDR09 is not set
684# CONFIG_USB_STORAGE_SDDR55 is not set
685# CONFIG_USB_STORAGE_JUMPSHOT is not set
686
687#
688# USB Human Interface Devices (HID)
689#
690CONFIG_USB_HID=m
691
692#
693# Input core support is needed for USB HID input layer or HIDBP support
694#
695CONFIG_USB_HIDDEV=y
696
697#
698# USB HID Boot Protocol drivers
699#
700
701#
702# USB Imaging devices
703#
704# CONFIG_USB_MDC800 is not set
705# CONFIG_USB_SCANNER is not set
706# CONFIG_USB_MICROTEK is not set
707# CONFIG_USB_HPUSBSCSI is not set
708
709#
710# USB Multimedia devices
711#
712# CONFIG_USB_DABUSB is not set
713
714#
715# Video4Linux support is needed for USB Multimedia device support
716#
717
718#
719# USB Network adaptors
720#
721# CONFIG_USB_CATC is not set
722# CONFIG_USB_KAWETH is not set
723# CONFIG_USB_PEGASUS is not set
724# CONFIG_USB_RTL8150 is not set
725# CONFIG_USB_USBNET is not set
726
727#
728# USB port drivers
729#
730# CONFIG_USB_USS720 is not set
731
732#
733# USB Serial Converter support
734#
735CONFIG_USB_SERIAL=m
736# CONFIG_USB_SERIAL_GENERIC is not set
737# CONFIG_USB_SERIAL_BELKIN is not set
738# CONFIG_USB_SERIAL_WHITEHEAT is not set
739# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
740# CONFIG_USB_SERIAL_EMPEG is not set
741# CONFIG_USB_SERIAL_FTDI_SIO is not set
742CONFIG_USB_SERIAL_VISOR=m
743# CONFIG_USB_SERIAL_IPAQ is not set
744# CONFIG_USB_SERIAL_IR is not set
745# CONFIG_USB_SERIAL_EDGEPORT is not set
746# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
747# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
748CONFIG_USB_SERIAL_KEYSPAN=m
749# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set
750CONFIG_USB_SERIAL_KEYSPAN_USA28=y
751CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
752# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set
753# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set
754CONFIG_USB_SERIAL_KEYSPAN_USA19=y
755CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
756CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
757CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
758CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
759CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
760# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set
761# CONFIG_USB_SERIAL_KLSI is not set
762# CONFIG_USB_SERIAL_KOBIL_SCT is not set
763# CONFIG_USB_SERIAL_MCT_U232 is not set
764# CONFIG_USB_SERIAL_PL2303 is not set
765# CONFIG_USB_SERIAL_SAFE is not set
766# CONFIG_USB_SERIAL_CYBERJACK is not set
767# CONFIG_USB_SERIAL_XIRCOM is not set
768# CONFIG_USB_SERIAL_OMNINET is not set
769CONFIG_USB_EZUSB=y
770
771#
772# USB Miscellaneous drivers
773#
774# CONFIG_USB_TIGL is not set
775# CONFIG_USB_AUERSWALD is not set
776# CONFIG_USB_RIO500 is not set
777# CONFIG_USB_LCD is not set
778# CONFIG_USB_TEST is not set
779# CONFIG_USB_GADGET is not set
780
781#
782# Bluetooth support
783#
784# CONFIG_BT is not set
785
786#
787# Library routines
788#
789# CONFIG_CRC32 is not set
790
791#
792# Kernel hacking
793#
794# CONFIG_DEBUG_KERNEL is not set
795# CONFIG_KALLSYMS is not set
796
797#
798# Security options
799#
800# CONFIG_SECURITY is not set
801
802#
803# Cryptographic options
804#
805# CONFIG_CRYPTO is not set
diff --git a/arch/ppc/platforms/Makefile b/arch/ppc/platforms/Makefile
index 5488a053f415..fcd03e52f602 100644
--- a/arch/ppc/platforms/Makefile
+++ b/arch/ppc/platforms/Makefile
@@ -21,7 +21,6 @@ obj-$(CONFIG_CPU_FREQ_PMAC) += pmac_cpufreq.o
21endif 21endif
22obj-$(CONFIG_PMAC_BACKLIGHT) += pmac_backlight.o 22obj-$(CONFIG_PMAC_BACKLIGHT) += pmac_backlight.o
23obj-$(CONFIG_PREP_RESIDUAL) += residual.o 23obj-$(CONFIG_PREP_RESIDUAL) += residual.o
24obj-$(CONFIG_ADIR) += adir_setup.o adir_pic.o adir_pci.o
25obj-$(CONFIG_PQ2ADS) += pq2ads.o 24obj-$(CONFIG_PQ2ADS) += pq2ads.o
26obj-$(CONFIG_TQM8260) += tqm8260_setup.o 25obj-$(CONFIG_TQM8260) += tqm8260_setup.o
27obj-$(CONFIG_CPCI690) += cpci690.o 26obj-$(CONFIG_CPCI690) += cpci690.o
diff --git a/arch/ppc/platforms/adir.h b/arch/ppc/platforms/adir.h
deleted file mode 100644
index 13a748b46956..000000000000
--- a/arch/ppc/platforms/adir.h
+++ /dev/null
@@ -1,95 +0,0 @@
1/*
2 * arch/ppc/platforms/adir.h
3 *
4 * Definitions for SBS Adirondack board support
5 *
6 * By Michael Sokolov <msokolov@ivan.Harhan.ORG>
7 */
8
9#ifndef __PPC_PLATFORMS_ADIR_H
10#define __PPC_PLATFORMS_ADIR_H
11
12/*
13 * SBS Adirondack definitions
14 */
15
16/* PPC physical address space layout. We use the one set up by the firmware. */
17#define ADIR_PCI32_MEM_BASE 0x80000000
18#define ADIR_PCI32_MEM_SIZE 0x20000000
19#define ADIR_PCI64_MEM_BASE 0xA0000000
20#define ADIR_PCI64_MEM_SIZE 0x20000000
21#define ADIR_PCI32_IO_BASE 0xC0000000
22#define ADIR_PCI32_IO_SIZE 0x10000000
23#define ADIR_PCI64_IO_BASE 0xD0000000
24#define ADIR_PCI64_IO_SIZE 0x10000000
25#define ADIR_PCI64_PHB 0xFF400000
26#define ADIR_PCI32_PHB 0xFF500000
27
28#define ADIR_PCI64_CONFIG_ADDR (ADIR_PCI64_PHB + 0x000f8000)
29#define ADIR_PCI64_CONFIG_DATA (ADIR_PCI64_PHB + 0x000f8010)
30
31#define ADIR_PCI32_CONFIG_ADDR (ADIR_PCI32_PHB + 0x000f8000)
32#define ADIR_PCI32_CONFIG_DATA (ADIR_PCI32_PHB + 0x000f8010)
33
34/* System memory as seen from PCI */
35#define ADIR_PCI_SYS_MEM_BASE 0x80000000
36
37/* Static virtual mapping of PCI I/O */
38#define ADIR_PCI32_VIRT_IO_BASE 0xFE000000
39#define ADIR_PCI32_VIRT_IO_SIZE 0x01000000
40#define ADIR_PCI64_VIRT_IO_BASE 0xFF000000
41#define ADIR_PCI64_VIRT_IO_SIZE 0x01000000
42
43/* Registers */
44#define ADIR_NVRAM_RTC_ADDR 0x74
45#define ADIR_NVRAM_RTC_DATA 0x75
46
47#define ADIR_BOARD_ID_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF0)
48#define ADIR_CPLD1REV_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF1)
49#define ADIR_CPLD2REV_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF2)
50#define ADIR_FLASHCTL_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF3)
51#define ADIR_CPC710_STAT_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF4)
52#define ADIR_CLOCK_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF5)
53#define ADIR_GPIO_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF8)
54#define ADIR_MISC_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFF9)
55#define ADIR_LED_REG (ADIR_PCI32_VIRT_IO_BASE + 0x08FFFA)
56
57#define ADIR_CLOCK_REG_PD 0x10
58#define ADIR_CLOCK_REG_SPREAD 0x08
59#define ADIR_CLOCK_REG_SEL133 0x04
60#define ADIR_CLOCK_REG_SEL1 0x02
61#define ADIR_CLOCK_REG_SEL0 0x01
62
63#define ADIR_PROCA_INT_MASK (ADIR_PCI32_VIRT_IO_BASE + 0x0EFFF0)
64#define ADIR_PROCB_INT_MASK (ADIR_PCI32_VIRT_IO_BASE + 0x0EFFF2)
65#define ADIR_PROCA_INT_STAT (ADIR_PCI32_VIRT_IO_BASE + 0x0EFFF4)
66#define ADIR_PROCB_INT_STAT (ADIR_PCI32_VIRT_IO_BASE + 0x0EFFF6)
67
68/* Linux IRQ numbers */
69#define ADIR_IRQ_NONE -1
70#define ADIR_IRQ_SERIAL2 3
71#define ADIR_IRQ_SERIAL1 4
72#define ADIR_IRQ_FDC 6
73#define ADIR_IRQ_PARALLEL 7
74#define ADIR_IRQ_VIA_AUDIO 10
75#define ADIR_IRQ_VIA_USB 11
76#define ADIR_IRQ_IDE0 14
77#define ADIR_IRQ_IDE1 15
78#define ADIR_IRQ_PCI0_INTA 16
79#define ADIR_IRQ_PCI0_INTB 17
80#define ADIR_IRQ_PCI0_INTC 18
81#define ADIR_IRQ_PCI0_INTD 19
82#define ADIR_IRQ_PCI1_INTA 20
83#define ADIR_IRQ_PCI1_INTB 21
84#define ADIR_IRQ_PCI1_INTC 22
85#define ADIR_IRQ_PCI1_INTD 23
86#define ADIR_IRQ_MBSCSI 24 /* motherboard SCSI */
87#define ADIR_IRQ_MBETH1 25 /* motherboard Ethernet 1 */
88#define ADIR_IRQ_MBETH0 26 /* motherboard Ethernet 0 */
89#define ADIR_IRQ_CPC710_INT1 27
90#define ADIR_IRQ_CPC710_INT2 28
91#define ADIR_IRQ_VT82C686_NMI 29
92#define ADIR_IRQ_VT82C686_INTR 30
93#define ADIR_IRQ_INTERPROC 31
94
95#endif /* __PPC_PLATFORMS_ADIR_H */
diff --git a/arch/ppc/platforms/adir_pci.c b/arch/ppc/platforms/adir_pci.c
deleted file mode 100644
index f94ac53e0711..000000000000
--- a/arch/ppc/platforms/adir_pci.c
+++ /dev/null
@@ -1,247 +0,0 @@
1/*
2 * arch/ppc/platforms/adir_pci.c
3 *
4 * PCI support for SBS Adirondack
5 *
6 * By Michael Sokolov <msokolov@ivan.Harhan.ORG>
7 * based on the K2 version by Matt Porter <mporter@mvista.com>
8 */
9
10#include <linux/kernel.h>
11#include <linux/init.h>
12#include <linux/pci.h>
13#include <linux/slab.h>
14
15#include <asm/byteorder.h>
16#include <asm/io.h>
17#include <asm/uaccess.h>
18#include <asm/machdep.h>
19#include <asm/pci-bridge.h>
20
21#include <syslib/cpc710.h>
22#include "adir.h"
23
24#undef DEBUG
25#ifdef DEBUG
26#define DBG(x...) printk(x)
27#else
28#define DBG(x...)
29#endif /* DEBUG */
30
31static inline int __init
32adir_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin)
33{
34#define PCIIRQ(a,b,c,d) {ADIR_IRQ_##a,ADIR_IRQ_##b,ADIR_IRQ_##c,ADIR_IRQ_##d},
35 struct pci_controller *hose = pci_bus_to_hose(dev->bus->number);
36 /*
37 * The three PCI devices on the motherboard have dedicated lines to the
38 * CPLD interrupt controller, bypassing the standard PCI INTA-D and the
39 * PC interrupt controller. All other PCI devices (slots) have usual
40 * staggered INTA-D lines, resulting in 8 lines total (PCI0 INTA-D and
41 * PCI1 INTA-D). All 8 go to the CPLD interrupt controller. PCI0 INTA-D
42 * also go to the south bridge, so we have the option of taking them
43 * via the CPLD interrupt controller or via the south bridge 8259
44 * 8258 thingy. PCI1 INTA-D can only be taken via the CPLD interrupt
45 * controller. We take all PCI interrupts via the CPLD interrupt
46 * controller as recommended by SBS.
47 *
48 * We also have some monkey business with the PCI devices within the
49 * VT82C686B south bridge itself. This chip actually has 7 functions on
50 * its IDSEL. Function 0 is the actual south bridge, function 1 is IDE,
51 * and function 4 is some special stuff. The other 4 functions are just
52 * regular PCI devices bundled in the chip. 2 and 3 are USB UHCIs and 5
53 * and 6 are audio (not supported on the Adirondack).
54 *
55 * This is where the monkey business begins. PCI devices are supposed
56 * to signal normal PCI interrupts. But the 4 functions in question are
57 * located in the south bridge chip, which is designed with the
58 * assumption that it will be fielding PCI INTA-D interrupts rather
59 * than generating them. Here's what it does. Each of the functions in
60 * question routes its interrupt to one of the IRQs on the 8259 thingy.
61 * Which one? It looks at the Interrupt Line register in the PCI config
62 * space, even though the PCI spec says it's for BIOS/OS interaction
63 * only.
64 *
65 * How do we deal with this? We take these interrupts via 8259 IRQs as
66 * we have to. We return the desired IRQ numbers from this routine when
67 * called for the functions in question. The PCI scan code will then
68 * stick our return value into the Interrupt Line register in the PCI
69 * config space, and the interrupt will actually go there. We identify
70 * these functions within the south bridge IDSEL by their interrupt pin
71 * numbers, as the VT82C686B has 04 in the Interrupt Pin register for
72 * USB and 03 for audio.
73 */
74 if (!hose->index) {
75 static char pci_irq_table[][4] =
76 /*
77 * PCI IDSEL/INTPIN->INTLINE
78 * A B C D
79 */
80 {
81 /* south bridge */ PCIIRQ(IDE0, NONE, VIA_AUDIO, VIA_USB)
82 /* Ethernet 0 */ PCIIRQ(MBETH0, MBETH0, MBETH0, MBETH0)
83 /* PCI0 slot 1 */ PCIIRQ(PCI0_INTB, PCI0_INTC, PCI0_INTD, PCI0_INTA)
84 /* PCI0 slot 2 */ PCIIRQ(PCI0_INTC, PCI0_INTD, PCI0_INTA, PCI0_INTB)
85 /* PCI0 slot 3 */ PCIIRQ(PCI0_INTD, PCI0_INTA, PCI0_INTB, PCI0_INTC)
86 };
87 const long min_idsel = 3, max_idsel = 7, irqs_per_slot = 4;
88 return PCI_IRQ_TABLE_LOOKUP;
89 } else {
90 static char pci_irq_table[][4] =
91 /*
92 * PCI IDSEL/INTPIN->INTLINE
93 * A B C D
94 */
95 {
96 /* Ethernet 1 */ PCIIRQ(MBETH1, MBETH1, MBETH1, MBETH1)
97 /* SCSI */ PCIIRQ(MBSCSI, MBSCSI, MBSCSI, MBSCSI)
98 /* PCI1 slot 1 */ PCIIRQ(PCI1_INTB, PCI1_INTC, PCI1_INTD, PCI1_INTA)
99 /* PCI1 slot 2 */ PCIIRQ(PCI1_INTC, PCI1_INTD, PCI1_INTA, PCI1_INTB)
100 /* PCI1 slot 3 */ PCIIRQ(PCI1_INTD, PCI1_INTA, PCI1_INTB, PCI1_INTC)
101 };
102 const long min_idsel = 3, max_idsel = 7, irqs_per_slot = 4;
103 return PCI_IRQ_TABLE_LOOKUP;
104 }
105#undef PCIIRQ
106}
107
108static void
109adir_pcibios_fixup_resources(struct pci_dev *dev)
110{
111 int i;
112
113 if ((dev->vendor == PCI_VENDOR_ID_IBM) &&
114 (dev->device == PCI_DEVICE_ID_IBM_CPC710_PCI64))
115 {
116 DBG("Fixup CPC710 resources\n");
117 for (i=0; i<DEVICE_COUNT_RESOURCE; i++)
118 {
119 dev->resource[i].start = 0;
120 dev->resource[i].end = 0;
121 }
122 }
123}
124
125/*
126 * CPC710 DD3 has an errata causing it to hang the system if a type 0 config
127 * cycle is attempted on its PCI32 interface with a device number > 21.
128 * CPC710's PCI bridges map device numbers 1 through 21 to AD11 through AD31.
129 * Per the PCI spec it MUST accept all other device numbers and do nothing, and
130 * software MUST scan all device numbers without assuming how IDSELs are
131 * mapped. However, as the CPC710 DD3's errata causes such correct scanning
132 * procedure to hang the system, we have no choice but to introduce this hack
133 * of knowingly avoiding device numbers > 21 on PCI0,
134 */
135static int
136adir_exclude_device(u_char bus, u_char devfn)
137{
138 if ((bus == 0) && (PCI_SLOT(devfn) > 21))
139 return PCIBIOS_DEVICE_NOT_FOUND;
140 else
141 return PCIBIOS_SUCCESSFUL;
142}
143
144void adir_find_bridges(void)
145{
146 struct pci_controller *hose_a, *hose_b;
147
148 /* Setup PCI32 hose */
149 hose_a = pcibios_alloc_controller();
150 if (!hose_a)
151 return;
152
153 hose_a->first_busno = 0;
154 hose_a->last_busno = 0xff;
155 hose_a->pci_mem_offset = ADIR_PCI32_MEM_BASE;
156 hose_a->io_space.start = 0;
157 hose_a->io_space.end = ADIR_PCI32_VIRT_IO_SIZE - 1;
158 hose_a->mem_space.start = 0;
159 hose_a->mem_space.end = ADIR_PCI32_MEM_SIZE - 1;
160 hose_a->io_resource.start = 0;
161 hose_a->io_resource.end = ADIR_PCI32_VIRT_IO_SIZE - 1;
162 hose_a->io_resource.flags = IORESOURCE_IO;
163 hose_a->mem_resources[0].start = ADIR_PCI32_MEM_BASE;
164 hose_a->mem_resources[0].end = ADIR_PCI32_MEM_BASE +
165 ADIR_PCI32_MEM_SIZE - 1;
166 hose_a->mem_resources[0].flags = IORESOURCE_MEM;
167 hose_a->io_base_phys = ADIR_PCI32_IO_BASE;
168 hose_a->io_base_virt = (void *) ADIR_PCI32_VIRT_IO_BASE;
169
170 ppc_md.pci_exclude_device = adir_exclude_device;
171 setup_indirect_pci(hose_a, ADIR_PCI32_CONFIG_ADDR,
172 ADIR_PCI32_CONFIG_DATA);
173
174 /* Initialize PCI32 bus registers */
175 early_write_config_byte(hose_a,
176 hose_a->first_busno,
177 PCI_DEVFN(0, 0),
178 CPC710_BUS_NUMBER,
179 hose_a->first_busno);
180 early_write_config_byte(hose_a,
181 hose_a->first_busno,
182 PCI_DEVFN(0, 0),
183 CPC710_SUB_BUS_NUMBER,
184 hose_a->last_busno);
185
186 hose_a->last_busno = pciauto_bus_scan(hose_a, hose_a->first_busno);
187
188 /* Write out correct max subordinate bus number for hose A */
189 early_write_config_byte(hose_a,
190 hose_a->first_busno,
191 PCI_DEVFN(0, 0),
192 CPC710_SUB_BUS_NUMBER,
193 hose_a->last_busno);
194
195 /* Setup PCI64 hose */
196 hose_b = pcibios_alloc_controller();
197 if (!hose_b)
198 return;
199
200 hose_b->first_busno = hose_a->last_busno + 1;
201 hose_b->last_busno = 0xff;
202 hose_b->pci_mem_offset = ADIR_PCI64_MEM_BASE;
203 hose_b->io_space.start = 0;
204 hose_b->io_space.end = ADIR_PCI64_VIRT_IO_SIZE - 1;
205 hose_b->mem_space.start = 0;
206 hose_b->mem_space.end = ADIR_PCI64_MEM_SIZE - 1;
207 hose_b->io_resource.start = 0;
208 hose_b->io_resource.end = ADIR_PCI64_VIRT_IO_SIZE - 1;
209 hose_b->io_resource.flags = IORESOURCE_IO;
210 hose_b->mem_resources[0].start = ADIR_PCI64_MEM_BASE;
211 hose_b->mem_resources[0].end = ADIR_PCI64_MEM_BASE +
212 ADIR_PCI64_MEM_SIZE - 1;
213 hose_b->mem_resources[0].flags = IORESOURCE_MEM;
214 hose_b->io_base_phys = ADIR_PCI64_IO_BASE;
215 hose_b->io_base_virt = (void *) ADIR_PCI64_VIRT_IO_BASE;
216
217 setup_indirect_pci(hose_b, ADIR_PCI64_CONFIG_ADDR,
218 ADIR_PCI64_CONFIG_DATA);
219
220 /* Initialize PCI64 bus registers */
221 early_write_config_byte(hose_b,
222 0,
223 PCI_DEVFN(0, 0),
224 CPC710_SUB_BUS_NUMBER,
225 0xff);
226
227 early_write_config_byte(hose_b,
228 0,
229 PCI_DEVFN(0, 0),
230 CPC710_BUS_NUMBER,
231 hose_b->first_busno);
232
233 hose_b->last_busno = pciauto_bus_scan(hose_b,
234 hose_b->first_busno);
235
236 /* Write out correct max subordinate bus number for hose B */
237 early_write_config_byte(hose_b,
238 hose_b->first_busno,
239 PCI_DEVFN(0, 0),
240 CPC710_SUB_BUS_NUMBER,
241 hose_b->last_busno);
242
243 ppc_md.pcibios_fixup = NULL;
244 ppc_md.pcibios_fixup_resources = adir_pcibios_fixup_resources;
245 ppc_md.pci_swizzle = common_swizzle;
246 ppc_md.pci_map_irq = adir_map_irq;
247}
diff --git a/arch/ppc/platforms/adir_pic.c b/arch/ppc/platforms/adir_pic.c
deleted file mode 100644
index 9947cba52af5..000000000000
--- a/arch/ppc/platforms/adir_pic.c
+++ /dev/null
@@ -1,130 +0,0 @@
1/*
2 * arch/ppc/platforms/adir_pic.c
3 *
4 * Interrupt controller support for SBS Adirondack
5 *
6 * By Michael Sokolov <msokolov@ivan.Harhan.ORG>
7 * based on the K2 and SCM versions by Matt Porter <mporter@mvista.com>
8 */
9
10#include <linux/stddef.h>
11#include <linux/init.h>
12#include <linux/sched.h>
13#include <linux/pci.h>
14#include <linux/interrupt.h>
15
16#include <asm/io.h>
17#include <asm/i8259.h>
18#include "adir.h"
19
20static void adir_onboard_pic_enable(unsigned int irq);
21static void adir_onboard_pic_disable(unsigned int irq);
22
23__init static void
24adir_onboard_pic_init(void)
25{
26 volatile u_short *maskreg = (volatile u_short *) ADIR_PROCA_INT_MASK;
27
28 /* Disable all Adirondack onboard interrupts */
29 out_be16(maskreg, 0xFFFF);
30}
31
32static int
33adir_onboard_pic_get_irq(void)
34{
35 volatile u_short *statreg = (volatile u_short *) ADIR_PROCA_INT_STAT;
36 int irq;
37 u_short int_status, int_test;
38
39 int_status = in_be16(statreg);
40 for (irq = 0, int_test = 1; irq < 16; irq++, int_test <<= 1) {
41 if (int_status & int_test)
42 break;
43 }
44
45 if (irq == 16)
46 return -1;
47
48 return (irq+16);
49}
50
51static void
52adir_onboard_pic_enable(unsigned int irq)
53{
54 volatile u_short *maskreg = (volatile u_short *) ADIR_PROCA_INT_MASK;
55
56 /* Change irq to Adirondack onboard native value */
57 irq -= 16;
58
59 /* Enable requested irq number */
60 out_be16(maskreg, in_be16(maskreg) & ~(1 << irq));
61}
62
63static void
64adir_onboard_pic_disable(unsigned int irq)
65{
66 volatile u_short *maskreg = (volatile u_short *) ADIR_PROCA_INT_MASK;
67
68 /* Change irq to Adirondack onboard native value */
69 irq -= 16;
70
71 /* Disable requested irq number */
72 out_be16(maskreg, in_be16(maskreg) | (1 << irq));
73}
74
75static struct hw_interrupt_type adir_onboard_pic = {
76 " ADIR PIC ",
77 NULL,
78 NULL,
79 adir_onboard_pic_enable, /* unmask */
80 adir_onboard_pic_disable, /* mask */
81 adir_onboard_pic_disable, /* mask and ack */
82 NULL,
83 NULL
84};
85
86static struct irqaction noop_action = {
87 .handler = no_action,
88 .flags = SA_INTERRUPT,
89 .mask = CPU_MASK_NONE,
90 .name = "82c59 primary cascade",
91};
92
93/*
94 * Linux interrupt values are assigned as follows:
95 *
96 * 0-15 VT82C686 8259 interrupts
97 * 16-31 Adirondack CPLD interrupts
98 */
99__init void
100adir_init_IRQ(void)
101{
102 int i;
103
104 /* Initialize the cascaded 8259's on the VT82C686 */
105 for (i=0; i<16; i++)
106 irq_desc[i].handler = &i8259_pic;
107 i8259_init(NULL);
108
109 /* Initialize Adirondack CPLD PIC and enable 8259 interrupt cascade */
110 for (i=16; i<32; i++)
111 irq_desc[i].handler = &adir_onboard_pic;
112 adir_onboard_pic_init();
113
114 /* Enable 8259 interrupt cascade */
115 setup_irq(ADIR_IRQ_VT82C686_INTR, &noop_action);
116}
117
118int
119adir_get_irq(struct pt_regs *regs)
120{
121 int irq;
122
123 if ((irq = adir_onboard_pic_get_irq()) < 0)
124 return irq;
125
126 if (irq == ADIR_IRQ_VT82C686_INTR)
127 irq = i8259_irq(regs);
128
129 return irq;
130}
diff --git a/arch/ppc/platforms/adir_setup.c b/arch/ppc/platforms/adir_setup.c
deleted file mode 100644
index 6a6754ee0617..000000000000
--- a/arch/ppc/platforms/adir_setup.c
+++ /dev/null
@@ -1,210 +0,0 @@
1/*
2 * arch/ppc/platforms/adir_setup.c
3 *
4 * Board setup routines for SBS Adirondack
5 *
6 * By Michael Sokolov <msokolov@ivan.Harhan.ORG>
7 * based on the K2 version by Matt Porter <mporter@mvista.com>
8 */
9
10#include <linux/config.h>
11#include <linux/stddef.h>
12#include <linux/kernel.h>
13#include <linux/init.h>
14#include <linux/errno.h>
15#include <linux/reboot.h>
16#include <linux/pci.h>
17#include <linux/kdev_t.h>
18#include <linux/types.h>
19#include <linux/major.h>
20#include <linux/initrd.h>
21#include <linux/console.h>
22#include <linux/delay.h>
23#include <linux/ide.h>
24#include <linux/seq_file.h>
25#include <linux/root_dev.h>
26
27#include <asm/system.h>
28#include <asm/pgtable.h>
29#include <asm/page.h>
30#include <asm/dma.h>
31#include <asm/io.h>
32#include <asm/machdep.h>
33#include <asm/time.h>
34#include <asm/todc.h>
35#include <asm/bootinfo.h>
36
37#include "adir.h"
38
39extern void adir_init_IRQ(void);
40extern int adir_get_irq(struct pt_regs *);
41extern void adir_find_bridges(void);
42extern unsigned long loops_per_jiffy;
43
44static unsigned int cpu_750cx[16] = {
45 5, 15, 14, 0, 4, 13, 0, 9, 6, 11, 8, 10, 16, 12, 7, 0
46};
47
48static int
49adir_get_bus_speed(void)
50{
51 if (!(*((u_char *) ADIR_CLOCK_REG) & ADIR_CLOCK_REG_SEL133))
52 return 100000000;
53 else
54 return 133333333;
55}
56
57static int
58adir_get_cpu_speed(void)
59{
60 unsigned long hid1;
61 int cpu_speed;
62
63 hid1 = mfspr(SPRN_HID1) >> 28;
64
65 hid1 = cpu_750cx[hid1];
66
67 cpu_speed = adir_get_bus_speed()*hid1/2;
68 return cpu_speed;
69}
70
71static void __init
72adir_calibrate_decr(void)
73{
74 int freq, divisor = 4;
75
76 /* determine processor bus speed */
77 freq = adir_get_bus_speed();
78 tb_ticks_per_jiffy = freq / HZ / divisor;
79 tb_to_us = mulhwu_scale_factor(freq/divisor, 1000000);
80}
81
82static int
83adir_show_cpuinfo(struct seq_file *m)
84{
85 seq_printf(m, "vendor\t\t: SBS\n");
86 seq_printf(m, "machine\t\t: Adirondack\n");
87 seq_printf(m, "cpu speed\t: %dMhz\n", adir_get_cpu_speed()/1000000);
88 seq_printf(m, "bus speed\t: %dMhz\n", adir_get_bus_speed()/1000000);
89 seq_printf(m, "memory type\t: SDRAM\n");
90
91 return 0;
92}
93
94extern char cmd_line[];
95
96TODC_ALLOC();
97
98static void __init
99adir_setup_arch(void)
100{
101 unsigned int cpu;
102
103 /* Setup TODC access */
104 TODC_INIT(TODC_TYPE_MC146818, ADIR_NVRAM_RTC_ADDR, 0,
105 ADIR_NVRAM_RTC_DATA, 8);
106
107 /* init to some ~sane value until calibrate_delay() runs */
108 loops_per_jiffy = 50000000/HZ;
109
110 /* Setup PCI host bridges */
111 adir_find_bridges();
112
113#ifdef CONFIG_BLK_DEV_INITRD
114 if (initrd_start)
115 ROOT_DEV = Root_RAM0;
116 else
117#endif
118#ifdef CONFIG_ROOT_NFS
119 ROOT_DEV = Root_NFS;
120#else
121 ROOT_DEV = Root_SDA1;
122#endif
123
124 /* Identify the system */
125 printk("System Identification: SBS Adirondack - PowerPC 750CXe @ %d Mhz\n", adir_get_cpu_speed()/1000000);
126 printk("SBS Adirondack port (C) 2001 SBS Technologies, Inc.\n");
127
128 /* Identify the CPU manufacturer */
129 cpu = mfspr(SPRN_PVR);
130 printk("CPU manufacturer: IBM [rev=%04x]\n", (cpu & 0xffff));
131}
132
133static void
134adir_restart(char *cmd)
135{
136 local_irq_disable();
137 /* SRR0 has system reset vector, SRR1 has default MSR value */
138 /* rfi restores MSR from SRR1 and sets the PC to the SRR0 value */
139 __asm__ __volatile__
140 ("lis 3,0xfff0\n\t"
141 "ori 3,3,0x0100\n\t"
142 "mtspr 26,3\n\t"
143 "li 3,0\n\t"
144 "mtspr 27,3\n\t"
145 "rfi\n\t");
146 for(;;);
147}
148
149static void
150adir_power_off(void)
151{
152 for(;;);
153}
154
155static void
156adir_halt(void)
157{
158 adir_restart(NULL);
159}
160
161static unsigned long __init
162adir_find_end_of_memory(void)
163{
164 return boot_mem_size;
165}
166
167static void __init
168adir_map_io(void)
169{
170 io_block_mapping(ADIR_PCI32_VIRT_IO_BASE, ADIR_PCI32_IO_BASE,
171 ADIR_PCI32_VIRT_IO_SIZE, _PAGE_IO);
172 io_block_mapping(ADIR_PCI64_VIRT_IO_BASE, ADIR_PCI64_IO_BASE,
173 ADIR_PCI64_VIRT_IO_SIZE, _PAGE_IO);
174}
175
176void __init
177platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
178 unsigned long r6, unsigned long r7)
179{
180 /*
181 * On the Adirondack we use bi_recs and pass the pointer to them in R3.
182 */
183 parse_bootinfo((struct bi_record *) (r3 + KERNELBASE));
184
185 /* Remember, isa_io_base is virtual but isa_mem_base is physical! */
186 isa_io_base = ADIR_PCI32_VIRT_IO_BASE;
187 isa_mem_base = ADIR_PCI32_MEM_BASE;
188 pci_dram_offset = ADIR_PCI_SYS_MEM_BASE;
189
190 ppc_md.setup_arch = adir_setup_arch;
191 ppc_md.show_cpuinfo = adir_show_cpuinfo;
192 ppc_md.irq_canonicalize = NULL;
193 ppc_md.init_IRQ = adir_init_IRQ;
194 ppc_md.get_irq = adir_get_irq;
195 ppc_md.init = NULL;
196
197 ppc_md.find_end_of_memory = adir_find_end_of_memory;
198 ppc_md.setup_io_mappings = adir_map_io;
199
200 ppc_md.restart = adir_restart;
201 ppc_md.power_off = adir_power_off;
202 ppc_md.halt = adir_halt;
203
204 ppc_md.time_init = todc_time_init;
205 ppc_md.set_rtc_time = todc_set_rtc_time;
206 ppc_md.get_rtc_time = todc_get_rtc_time;
207 ppc_md.nvram_read_val = todc_mc146818_read_val;
208 ppc_md.nvram_write_val = todc_mc146818_write_val;
209 ppc_md.calibrate_decr = adir_calibrate_decr;
210}
diff --git a/arch/ppc/syslib/Makefile b/arch/ppc/syslib/Makefile
index 220a65ab0a51..0d6f1948fb28 100644
--- a/arch/ppc/syslib/Makefile
+++ b/arch/ppc/syslib/Makefile
@@ -43,8 +43,6 @@ obj-$(CONFIG_PPC_PMAC) += open_pic.o indirect_pci.o
43obj-$(CONFIG_POWER4) += open_pic2.o 43obj-$(CONFIG_POWER4) += open_pic2.o
44obj-$(CONFIG_PPC_CHRP) += open_pic.o indirect_pci.o i8259.o 44obj-$(CONFIG_PPC_CHRP) += open_pic.o indirect_pci.o i8259.o
45obj-$(CONFIG_PPC_PREP) += open_pic.o indirect_pci.o i8259.o todc_time.o 45obj-$(CONFIG_PPC_PREP) += open_pic.o indirect_pci.o i8259.o todc_time.o
46obj-$(CONFIG_ADIR) += i8259.o indirect_pci.o pci_auto.o \
47 todc_time.o
48obj-$(CONFIG_BAMBOO) += indirect_pci.o pci_auto.o todc_time.o 46obj-$(CONFIG_BAMBOO) += indirect_pci.o pci_auto.o todc_time.o
49obj-$(CONFIG_CPCI690) += todc_time.o pci_auto.o 47obj-$(CONFIG_CPCI690) += todc_time.o pci_auto.o
50obj-$(CONFIG_EBONY) += indirect_pci.o pci_auto.o todc_time.o 48obj-$(CONFIG_EBONY) += indirect_pci.o pci_auto.o todc_time.o