Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] ppc32: Remove board support for K2

Support for the K2 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>

authored by

Kumar Gala and committed by
Linus Torvalds
ba9d1e2a 94cb20e9

+1 -1390
+1 -8
arch/ppc/Kconfig
··· 637 637 config RADSTONE_PPC7D 638 638 bool "Radstone Technology PPC7D board" 639 639 640 - config K2 641 - bool "SBS-K2" 642 - 643 640 config PAL4 644 641 bool "SBS-Palomar4" 645 642 ··· 791 794 config PPC_GEN550 792 795 bool 793 796 depends on SANDPOINT || MCPN765 || SPRUCE || PPLUS || PCORE || \ 794 - PRPMC750 || K2 || PRPMC800 || LOPEC || \ 797 + PRPMC750 || PRPMC800 || LOPEC || \ 795 798 (EV64260 && !SERIAL_MPSC) || CHESTNUT || RADSTONE_PPC7D || \ 796 799 83xx 797 800 default y ··· 879 882 help 880 883 If this option is enabled then the MPC824x processor will run 881 884 in DUART mode instead of UART mode. 882 - 883 - config CPC710_DATA_GATHERING 884 - bool "Enable CPC710 data gathering" 885 - depends on K2 886 885 887 886 config HARRIER_STORE_GATHERING 888 887 bool "Enable Harrier store gathering"
-4
arch/ppc/boot/simple/Makefile
··· 96 96 zimageinitrd-$(CONFIG_GEMINI) := zImage.initrd-STRIPELF 97 97 end-$(CONFIG_GEMINI) := gemini 98 98 99 - extra.o-$(CONFIG_K2) := prepmap.o 100 - end-$(CONFIG_K2) := k2 101 - cacheflag-$(CONFIG_K2) := -include $(clear_L2_L3) 102 - 103 99 extra.o-$(CONFIG_KATANA) := misc-katana.o 104 100 end-$(CONFIG_KATANA) := katana 105 101 cacheflag-$(CONFIG_KATANA) := -include $(clear_L2_L3)
-680
arch/ppc/configs/k2_defconfig
··· 1 - # 2 - # Automatically generated make config: don't edit 3 - # 4 - CONFIG_MMU=y 5 - CONFIG_RWSEM_XCHGADD_ALGORITHM=y 6 - CONFIG_HAVE_DEC_LOCK=y 7 - CONFIG_PPC=y 8 - CONFIG_PPC32=y 9 - CONFIG_GENERIC_NVRAM=y 10 - 11 - # 12 - # Code maturity level options 13 - # 14 - CONFIG_EXPERIMENTAL=y 15 - CONFIG_CLEAN_COMPILE=y 16 - CONFIG_STANDALONE=y 17 - CONFIG_BROKEN_ON_SMP=y 18 - 19 - # 20 - # General setup 21 - # 22 - CONFIG_SWAP=y 23 - CONFIG_SYSVIPC=y 24 - # CONFIG_POSIX_MQUEUE is not set 25 - # CONFIG_BSD_PROCESS_ACCT is not set 26 - CONFIG_SYSCTL=y 27 - # CONFIG_AUDIT is not set 28 - CONFIG_LOG_BUF_SHIFT=14 29 - # CONFIG_HOTPLUG is not set 30 - # CONFIG_IKCONFIG is not set 31 - CONFIG_EMBEDDED=y 32 - CONFIG_KALLSYMS=y 33 - CONFIG_FUTEX=y 34 - CONFIG_EPOLL=y 35 - CONFIG_IOSCHED_NOOP=y 36 - CONFIG_IOSCHED_AS=y 37 - CONFIG_IOSCHED_DEADLINE=y 38 - CONFIG_IOSCHED_CFQ=y 39 - # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 40 - 41 - # 42 - # Loadable module support 43 - # 44 - CONFIG_MODULES=y 45 - CONFIG_MODULE_UNLOAD=y 46 - # CONFIG_MODULE_FORCE_UNLOAD is not set 47 - CONFIG_OBSOLETE_MODPARM=y 48 - # CONFIG_MODVERSIONS is not set 49 - CONFIG_KMOD=y 50 - 51 - # 52 - # Processor 53 - # 54 - CONFIG_6xx=y 55 - # CONFIG_40x is not set 56 - # CONFIG_44x is not set 57 - # CONFIG_POWER3 is not set 58 - # CONFIG_POWER4 is not set 59 - # CONFIG_8xx is not set 60 - # CONFIG_ALTIVEC is not set 61 - # CONFIG_TAU is not set 62 - # CONFIG_CPU_FREQ is not set 63 - CONFIG_PPC_STD_MMU=y 64 - 65 - # 66 - # Platform options 67 - # 68 - # CONFIG_PPC_MULTIPLATFORM is not set 69 - # CONFIG_APUS is not set 70 - # CONFIG_WILLOW is not set 71 - # CONFIG_PCORE is not set 72 - # CONFIG_POWERPMC250 is not set 73 - # CONFIG_EV64260 is not set 74 - # CONFIG_SPRUCE is not set 75 - # CONFIG_LOPEC is not set 76 - # CONFIG_MCPN765 is not set 77 - # CONFIG_MVME5100 is not set 78 - # CONFIG_PPLUS is not set 79 - # CONFIG_PRPMC750 is not set 80 - # CONFIG_PRPMC800 is not set 81 - # CONFIG_SANDPOINT is not set 82 - # CONFIG_ADIR is not set 83 - CONFIG_K2=y 84 - # CONFIG_PAL4 is not set 85 - # CONFIG_GEMINI is not set 86 - # CONFIG_EST8260 is not set 87 - # CONFIG_SBS8260 is not set 88 - # CONFIG_RPX6 is not set 89 - # CONFIG_TQM8260 is not set 90 - CONFIG_PPC_GEN550=y 91 - # CONFIG_CPC710_DATA_GATHERING is not set 92 - # CONFIG_SMP is not set 93 - # CONFIG_PREEMPT is not set 94 - # CONFIG_HIGHMEM is not set 95 - CONFIG_KERNEL_ELF=y 96 - CONFIG_BINFMT_ELF=y 97 - # CONFIG_BINFMT_MISC is not set 98 - CONFIG_CMDLINE_BOOL=y 99 - CONFIG_CMDLINE="ip=on" 100 - 101 - # 102 - # Bus options 103 - # 104 - CONFIG_GENERIC_ISA_DMA=y 105 - CONFIG_PCI=y 106 - CONFIG_PCI_DOMAINS=y 107 - # CONFIG_PCI_LEGACY_PROC is not set 108 - # CONFIG_PCI_NAMES is not set 109 - 110 - # 111 - # Advanced setup 112 - # 113 - # CONFIG_ADVANCED_OPTIONS is not set 114 - 115 - # 116 - # Default settings for advanced configuration options are used 117 - # 118 - CONFIG_HIGHMEM_START=0xfe000000 119 - CONFIG_LOWMEM_SIZE=0x30000000 120 - CONFIG_KERNEL_START=0xc0000000 121 - CONFIG_TASK_SIZE=0x80000000 122 - CONFIG_BOOT_LOAD=0x00800000 123 - 124 - # 125 - # Device Drivers 126 - # 127 - 128 - # 129 - # Generic Driver Options 130 - # 131 - 132 - # 133 - # Memory Technology Devices (MTD) 134 - # 135 - # CONFIG_MTD is not set 136 - 137 - # 138 - # Parallel port support 139 - # 140 - # CONFIG_PARPORT is not set 141 - 142 - # 143 - # Plug and Play support 144 - # 145 - 146 - # 147 - # Block devices 148 - # 149 - # CONFIG_BLK_DEV_FD is not set 150 - # CONFIG_BLK_CPQ_DA is not set 151 - # CONFIG_BLK_CPQ_CISS_DA is not set 152 - # CONFIG_BLK_DEV_DAC960 is not set 153 - # CONFIG_BLK_DEV_UMEM is not set 154 - CONFIG_BLK_DEV_LOOP=y 155 - # CONFIG_BLK_DEV_CRYPTOLOOP is not set 156 - # CONFIG_BLK_DEV_NBD is not set 157 - # CONFIG_BLK_DEV_CARMEL is not set 158 - CONFIG_BLK_DEV_RAM=y 159 - CONFIG_BLK_DEV_RAM_SIZE=4096 160 - CONFIG_BLK_DEV_INITRD=y 161 - # CONFIG_LBD is not set 162 - 163 - # 164 - # ATA/ATAPI/MFM/RLL support 165 - # 166 - CONFIG_IDE=y 167 - CONFIG_BLK_DEV_IDE=y 168 - 169 - # 170 - # Please see Documentation/ide.txt for help/info on IDE drives 171 - # 172 - CONFIG_BLK_DEV_IDEDISK=y 173 - # CONFIG_IDEDISK_MULTI_MODE is not set 174 - # CONFIG_IDEDISK_STROKE is not set 175 - # CONFIG_BLK_DEV_IDECD is not set 176 - # CONFIG_BLK_DEV_IDETAPE is not set 177 - # CONFIG_BLK_DEV_IDEFLOPPY is not set 178 - # CONFIG_IDE_TASK_IOCTL is not set 179 - # CONFIG_IDE_TASKFILE_IO is not set 180 - 181 - # 182 - # IDE chipset support/bugfixes 183 - # 184 - # CONFIG_IDE_GENERIC is not set 185 - CONFIG_BLK_DEV_IDEPCI=y 186 - # CONFIG_IDEPCI_SHARE_IRQ is not set 187 - # CONFIG_BLK_DEV_OFFBOARD is not set 188 - # CONFIG_BLK_DEV_GENERIC is not set 189 - # CONFIG_BLK_DEV_OPTI621 is not set 190 - # CONFIG_BLK_DEV_SL82C105 is not set 191 - CONFIG_BLK_DEV_IDEDMA_PCI=y 192 - # CONFIG_BLK_DEV_IDEDMA_FORCED is not set 193 - # CONFIG_IDEDMA_PCI_AUTO is not set 194 - CONFIG_BLK_DEV_ADMA=y 195 - # CONFIG_BLK_DEV_AEC62XX is not set 196 - CONFIG_BLK_DEV_ALI15X3=y 197 - # CONFIG_WDC_ALI15X3 is not set 198 - # CONFIG_BLK_DEV_AMD74XX is not set 199 - # CONFIG_BLK_DEV_CMD64X is not set 200 - # CONFIG_BLK_DEV_TRIFLEX is not set 201 - # CONFIG_BLK_DEV_CY82C693 is not set 202 - # CONFIG_BLK_DEV_CS5520 is not set 203 - # CONFIG_BLK_DEV_CS5530 is not set 204 - # CONFIG_BLK_DEV_HPT34X is not set 205 - # CONFIG_BLK_DEV_HPT366 is not set 206 - # CONFIG_BLK_DEV_SC1200 is not set 207 - # CONFIG_BLK_DEV_PIIX is not set 208 - # CONFIG_BLK_DEV_NS87415 is not set 209 - # CONFIG_BLK_DEV_PDC202XX_OLD is not set 210 - # CONFIG_BLK_DEV_PDC202XX_NEW is not set 211 - # CONFIG_BLK_DEV_SVWKS is not set 212 - # CONFIG_BLK_DEV_SIIMAGE is not set 213 - # CONFIG_BLK_DEV_SLC90E66 is not set 214 - # CONFIG_BLK_DEV_TRM290 is not set 215 - # CONFIG_BLK_DEV_VIA82CXXX is not set 216 - CONFIG_BLK_DEV_IDEDMA=y 217 - # CONFIG_IDEDMA_IVB is not set 218 - # CONFIG_IDEDMA_AUTO is not set 219 - # CONFIG_BLK_DEV_HD is not set 220 - 221 - # 222 - # SCSI device support 223 - # 224 - # CONFIG_SCSI is not set 225 - 226 - # 227 - # Multi-device support (RAID and LVM) 228 - # 229 - # CONFIG_MD is not set 230 - 231 - # 232 - # Fusion MPT device support 233 - # 234 - # CONFIG_FUSION is not set 235 - 236 - # 237 - # IEEE 1394 (FireWire) support 238 - # 239 - # CONFIG_IEEE1394 is not set 240 - 241 - # 242 - # I2O device support 243 - # 244 - # CONFIG_I2O is not set 245 - 246 - # 247 - # Macintosh device drivers 248 - # 249 - 250 - # 251 - # Networking support 252 - # 253 - CONFIG_NET=y 254 - 255 - # 256 - # Networking options 257 - # 258 - CONFIG_PACKET=y 259 - # CONFIG_PACKET_MMAP is not set 260 - # CONFIG_NETLINK_DEV is not set 261 - CONFIG_UNIX=y 262 - # CONFIG_NET_KEY is not set 263 - CONFIG_INET=y 264 - # CONFIG_IP_MULTICAST is not set 265 - # CONFIG_IP_ADVANCED_ROUTER is not set 266 - CONFIG_IP_PNP=y 267 - CONFIG_IP_PNP_DHCP=y 268 - # CONFIG_IP_PNP_BOOTP is not set 269 - # CONFIG_IP_PNP_RARP is not set 270 - # CONFIG_NET_IPIP is not set 271 - # CONFIG_NET_IPGRE is not set 272 - # CONFIG_ARPD is not set 273 - # CONFIG_SYN_COOKIES is not set 274 - # CONFIG_INET_AH is not set 275 - # CONFIG_INET_ESP is not set 276 - # CONFIG_INET_IPCOMP is not set 277 - 278 - # 279 - # IP: Virtual Server Configuration 280 - # 281 - # CONFIG_IP_VS is not set 282 - # CONFIG_IPV6 is not set 283 - CONFIG_NETFILTER=y 284 - # CONFIG_NETFILTER_DEBUG is not set 285 - 286 - # 287 - # IP: Netfilter Configuration 288 - # 289 - CONFIG_IP_NF_CONNTRACK=m 290 - CONFIG_IP_NF_FTP=m 291 - # CONFIG_IP_NF_IRC is not set 292 - # CONFIG_IP_NF_TFTP is not set 293 - # CONFIG_IP_NF_AMANDA is not set 294 - # CONFIG_IP_NF_QUEUE is not set 295 - CONFIG_IP_NF_IPTABLES=m 296 - CONFIG_IP_NF_MATCH_LIMIT=m 297 - # CONFIG_IP_NF_MATCH_IPRANGE is not set 298 - CONFIG_IP_NF_MATCH_MAC=m 299 - CONFIG_IP_NF_MATCH_PKTTYPE=m 300 - CONFIG_IP_NF_MATCH_MARK=m 301 - CONFIG_IP_NF_MATCH_MULTIPORT=m 302 - CONFIG_IP_NF_MATCH_TOS=m 303 - # CONFIG_IP_NF_MATCH_RECENT is not set 304 - CONFIG_IP_NF_MATCH_ECN=m 305 - CONFIG_IP_NF_MATCH_DSCP=m 306 - CONFIG_IP_NF_MATCH_AH_ESP=m 307 - # CONFIG_IP_NF_MATCH_LENGTH is not set 308 - # CONFIG_IP_NF_MATCH_TTL is not set 309 - CONFIG_IP_NF_MATCH_TCPMSS=m 310 - CONFIG_IP_NF_MATCH_HELPER=m 311 - CONFIG_IP_NF_MATCH_STATE=m 312 - CONFIG_IP_NF_MATCH_CONNTRACK=m 313 - CONFIG_IP_NF_MATCH_OWNER=m 314 - CONFIG_IP_NF_FILTER=m 315 - CONFIG_IP_NF_TARGET_REJECT=m 316 - CONFIG_IP_NF_NAT=m 317 - CONFIG_IP_NF_NAT_NEEDED=y 318 - CONFIG_IP_NF_TARGET_MASQUERADE=m 319 - CONFIG_IP_NF_TARGET_REDIRECT=m 320 - # CONFIG_IP_NF_TARGET_NETMAP is not set 321 - # CONFIG_IP_NF_TARGET_SAME is not set 322 - # CONFIG_IP_NF_NAT_SNMP_BASIC is not set 323 - CONFIG_IP_NF_NAT_FTP=m 324 - # CONFIG_IP_NF_MANGLE is not set 325 - # CONFIG_IP_NF_TARGET_LOG is not set 326 - CONFIG_IP_NF_TARGET_ULOG=m 327 - CONFIG_IP_NF_TARGET_TCPMSS=m 328 - CONFIG_IP_NF_ARPTABLES=m 329 - CONFIG_IP_NF_ARPFILTER=m 330 - # CONFIG_IP_NF_ARP_MANGLE is not set 331 - CONFIG_IP_NF_COMPAT_IPCHAINS=m 332 - # CONFIG_IP_NF_COMPAT_IPFWADM is not set 333 - # CONFIG_IP_NF_RAW is not set 334 - 335 - # 336 - # SCTP Configuration (EXPERIMENTAL) 337 - # 338 - # CONFIG_IP_SCTP is not set 339 - # CONFIG_ATM is not set 340 - # CONFIG_BRIDGE is not set 341 - # CONFIG_VLAN_8021Q is not set 342 - # CONFIG_DECNET is not set 343 - # CONFIG_LLC2 is not set 344 - # CONFIG_IPX is not set 345 - # CONFIG_ATALK is not set 346 - # CONFIG_X25 is not set 347 - # CONFIG_LAPB is not set 348 - # CONFIG_NET_DIVERT is not set 349 - # CONFIG_ECONET is not set 350 - # CONFIG_WAN_ROUTER is not set 351 - # CONFIG_NET_HW_FLOWCONTROL is not set 352 - 353 - # 354 - # QoS and/or fair queueing 355 - # 356 - # CONFIG_NET_SCHED is not set 357 - 358 - # 359 - # Network testing 360 - # 361 - # CONFIG_NET_PKTGEN is not set 362 - # CONFIG_NETPOLL is not set 363 - # CONFIG_NET_POLL_CONTROLLER is not set 364 - # CONFIG_HAMRADIO is not set 365 - # CONFIG_IRDA is not set 366 - # CONFIG_BT is not set 367 - CONFIG_NETDEVICES=y 368 - # CONFIG_DUMMY is not set 369 - # CONFIG_BONDING is not set 370 - # CONFIG_EQUALIZER is not set 371 - # CONFIG_TUN is not set 372 - 373 - # 374 - # ARCnet devices 375 - # 376 - # CONFIG_ARCNET is not set 377 - 378 - # 379 - # Ethernet (10 or 100Mbit) 380 - # 381 - CONFIG_NET_ETHERNET=y 382 - CONFIG_MII=y 383 - # CONFIG_OAKNET is not set 384 - # CONFIG_HAPPYMEAL is not set 385 - # CONFIG_SUNGEM is not set 386 - # CONFIG_NET_VENDOR_3COM is not set 387 - 388 - # 389 - # Tulip family network device support 390 - # 391 - # CONFIG_NET_TULIP is not set 392 - # CONFIG_HP100 is not set 393 - CONFIG_NET_PCI=y 394 - # CONFIG_PCNET32 is not set 395 - # CONFIG_AMD8111_ETH is not set 396 - # CONFIG_ADAPTEC_STARFIRE is not set 397 - # CONFIG_B44 is not set 398 - # CONFIG_FORCEDETH is not set 399 - # CONFIG_DGRS is not set 400 - CONFIG_EEPRO100=y 401 - # CONFIG_EEPRO100_PIO is not set 402 - # CONFIG_E100 is not set 403 - # CONFIG_FEALNX is not set 404 - # CONFIG_NATSEMI is not set 405 - # CONFIG_NE2K_PCI is not set 406 - # CONFIG_8139CP is not set 407 - # CONFIG_8139TOO is not set 408 - # CONFIG_SIS900 is not set 409 - # CONFIG_EPIC100 is not set 410 - # CONFIG_SUNDANCE is not set 411 - # CONFIG_TLAN is not set 412 - # CONFIG_VIA_RHINE is not set 413 - 414 - # 415 - # Ethernet (1000 Mbit) 416 - # 417 - # CONFIG_ACENIC is not set 418 - # CONFIG_DL2K is not set 419 - # CONFIG_E1000 is not set 420 - # CONFIG_NS83820 is not set 421 - # CONFIG_HAMACHI is not set 422 - # CONFIG_YELLOWFIN is not set 423 - # CONFIG_R8169 is not set 424 - # CONFIG_SK98LIN is not set 425 - # CONFIG_TIGON3 is not set 426 - 427 - # 428 - # Ethernet (10000 Mbit) 429 - # 430 - # CONFIG_IXGB is not set 431 - # CONFIG_S2IO is not set 432 - 433 - # 434 - # Token Ring devices 435 - # 436 - # CONFIG_TR is not set 437 - 438 - # 439 - # Wireless LAN (non-hamradio) 440 - # 441 - # CONFIG_NET_RADIO is not set 442 - 443 - # 444 - # Wan interfaces 445 - # 446 - # CONFIG_WAN is not set 447 - # CONFIG_FDDI is not set 448 - # CONFIG_HIPPI is not set 449 - # CONFIG_PPP is not set 450 - # CONFIG_SLIP is not set 451 - # CONFIG_RCPCI is not set 452 - # CONFIG_SHAPER is not set 453 - # CONFIG_NETCONSOLE is not set 454 - 455 - # 456 - # ISDN subsystem 457 - # 458 - # CONFIG_ISDN is not set 459 - 460 - # 461 - # Telephony Support 462 - # 463 - # CONFIG_PHONE is not set 464 - 465 - # 466 - # Input device support 467 - # 468 - # CONFIG_INPUT is not set 469 - 470 - # 471 - # Userland interfaces 472 - # 473 - 474 - # 475 - # Input I/O drivers 476 - # 477 - # CONFIG_GAMEPORT is not set 478 - CONFIG_SOUND_GAMEPORT=y 479 - # CONFIG_SERIO is not set 480 - # CONFIG_SERIO_I8042 is not set 481 - 482 - # 483 - # Input Device Drivers 484 - # 485 - 486 - # 487 - # Character devices 488 - # 489 - # CONFIG_VT is not set 490 - # CONFIG_SERIAL_NONSTANDARD is not set 491 - 492 - # 493 - # Serial drivers 494 - # 495 - CONFIG_SERIAL_8250=y 496 - CONFIG_SERIAL_8250_CONSOLE=y 497 - CONFIG_SERIAL_8250_NR_UARTS=2 498 - # CONFIG_SERIAL_8250_EXTENDED is not set 499 - 500 - # 501 - # Non-8250 serial port support 502 - # 503 - CONFIG_SERIAL_CORE=y 504 - CONFIG_SERIAL_CORE_CONSOLE=y 505 - CONFIG_UNIX98_PTYS=y 506 - CONFIG_LEGACY_PTYS=y 507 - CONFIG_LEGACY_PTY_COUNT=256 508 - # CONFIG_QIC02_TAPE is not set 509 - 510 - # 511 - # IPMI 512 - # 513 - # CONFIG_IPMI_HANDLER is not set 514 - 515 - # 516 - # Watchdog Cards 517 - # 518 - # CONFIG_WATCHDOG is not set 519 - # CONFIG_NVRAM is not set 520 - CONFIG_GEN_RTC=y 521 - # CONFIG_GEN_RTC_X is not set 522 - # CONFIG_DTLK is not set 523 - # CONFIG_R3964 is not set 524 - # CONFIG_APPLICOM is not set 525 - 526 - # 527 - # Ftape, the floppy tape device driver 528 - # 529 - # CONFIG_FTAPE is not set 530 - # CONFIG_AGP is not set 531 - # CONFIG_DRM is not set 532 - # CONFIG_RAW_DRIVER is not set 533 - 534 - # 535 - # I2C support 536 - # 537 - # CONFIG_I2C is not set 538 - 539 - # 540 - # Misc devices 541 - # 542 - 543 - # 544 - # Multimedia devices 545 - # 546 - # CONFIG_VIDEO_DEV is not set 547 - 548 - # 549 - # Digital Video Broadcasting Devices 550 - # 551 - # CONFIG_DVB is not set 552 - 553 - # 554 - # Graphics support 555 - # 556 - # CONFIG_FB is not set 557 - 558 - # 559 - # Sound 560 - # 561 - # CONFIG_SOUND is not set 562 - 563 - # 564 - # USB support 565 - # 566 - # CONFIG_USB is not set 567 - 568 - # 569 - # USB Gadget Support 570 - # 571 - # CONFIG_USB_GADGET is not set 572 - 573 - # 574 - # File systems 575 - # 576 - CONFIG_EXT2_FS=y 577 - # CONFIG_EXT2_FS_XATTR is not set 578 - # CONFIG_EXT3_FS is not set 579 - # CONFIG_JBD is not set 580 - # CONFIG_REISERFS_FS is not set 581 - # CONFIG_JFS_FS is not set 582 - # CONFIG_XFS_FS is not set 583 - # CONFIG_MINIX_FS is not set 584 - # CONFIG_ROMFS_FS is not set 585 - # CONFIG_QUOTA is not set 586 - # CONFIG_AUTOFS_FS is not set 587 - # CONFIG_AUTOFS4_FS is not set 588 - 589 - # 590 - # CD-ROM/DVD Filesystems 591 - # 592 - # CONFIG_ISO9660_FS is not set 593 - # CONFIG_UDF_FS is not set 594 - 595 - # 596 - # DOS/FAT/NT Filesystems 597 - # 598 - # CONFIG_FAT_FS is not set 599 - # CONFIG_NTFS_FS is not set 600 - 601 - # 602 - # Pseudo filesystems 603 - # 604 - CONFIG_PROC_FS=y 605 - CONFIG_PROC_KCORE=y 606 - CONFIG_SYSFS=y 607 - # CONFIG_DEVFS_FS is not set 608 - # CONFIG_DEVPTS_FS_XATTR is not set 609 - CONFIG_TMPFS=y 610 - # CONFIG_HUGETLB_PAGE is not set 611 - CONFIG_RAMFS=y 612 - 613 - # 614 - # Miscellaneous filesystems 615 - # 616 - # CONFIG_ADFS_FS is not set 617 - # CONFIG_AFFS_FS is not set 618 - # CONFIG_HFS_FS is not set 619 - # CONFIG_HFSPLUS_FS is not set 620 - # CONFIG_BEFS_FS is not set 621 - # CONFIG_BFS_FS is not set 622 - # CONFIG_EFS_FS is not set 623 - # CONFIG_CRAMFS is not set 624 - # CONFIG_VXFS_FS is not set 625 - # CONFIG_HPFS_FS is not set 626 - # CONFIG_QNX4FS_FS is not set 627 - # CONFIG_SYSV_FS is not set 628 - # CONFIG_UFS_FS is not set 629 - 630 - # 631 - # Network File Systems 632 - # 633 - CONFIG_NFS_FS=y 634 - # CONFIG_NFS_V3 is not set 635 - # CONFIG_NFS_V4 is not set 636 - # CONFIG_NFS_DIRECTIO is not set 637 - # CONFIG_NFSD is not set 638 - CONFIG_ROOT_NFS=y 639 - CONFIG_LOCKD=y 640 - # CONFIG_EXPORTFS is not set 641 - CONFIG_SUNRPC=y 642 - # CONFIG_RPCSEC_GSS_KRB5 is not set 643 - # CONFIG_SMB_FS is not set 644 - # CONFIG_CIFS is not set 645 - # CONFIG_NCP_FS is not set 646 - # CONFIG_CODA_FS is not set 647 - # CONFIG_INTERMEZZO_FS is not set 648 - # CONFIG_AFS_FS is not set 649 - 650 - # 651 - # Partition Types 652 - # 653 - # CONFIG_PARTITION_ADVANCED is not set 654 - CONFIG_MSDOS_PARTITION=y 655 - 656 - # 657 - # Native Language Support 658 - # 659 - # CONFIG_NLS is not set 660 - 661 - # 662 - # Library routines 663 - # 664 - # CONFIG_CRC32 is not set 665 - 666 - # 667 - # Kernel hacking 668 - # 669 - # CONFIG_DEBUG_KERNEL is not set 670 - # CONFIG_SERIAL_TEXT_DEBUG is not set 671 - 672 - # 673 - # Security options 674 - # 675 - # CONFIG_SECURITY is not set 676 - 677 - # 678 - # Cryptographic options 679 - # 680 - # CONFIG_CRYPTO is not set
-1
arch/ppc/platforms/Makefile
··· 27 27 obj-$(CONFIG_EV64260) += ev64260.o 28 28 obj-$(CONFIG_CHESTNUT) += chestnut.o 29 29 obj-$(CONFIG_GEMINI) += gemini_pci.o gemini_setup.o gemini_prom.o 30 - obj-$(CONFIG_K2) += k2.o 31 30 obj-$(CONFIG_LOPEC) += lopec.o 32 31 obj-$(CONFIG_KATANA) += katana.o 33 32 obj-$(CONFIG_HDPU) += hdpu.o
-613
arch/ppc/platforms/k2.c
··· 1 - /* 2 - * arch/ppc/platforms/k2.c 3 - * 4 - * Board setup routines for SBS K2 5 - * 6 - * Author: Matt Porter <mporter@mvista.com> 7 - * 8 - * Updated by: Randy Vinson <rvinson@mvista.com. 9 - * 10 - * 2001-2004 (c) MontaVista, Software, Inc. This file is licensed under 11 - * the terms of the GNU General Public License version 2. This program 12 - * is licensed "as is" without any warranty of any kind, whether express 13 - * or implied. 14 - */ 15 - 16 - #include <linux/config.h> 17 - #include <linux/stddef.h> 18 - #include <linux/kernel.h> 19 - #include <linux/init.h> 20 - #include <linux/errno.h> 21 - #include <linux/reboot.h> 22 - #include <linux/pci.h> 23 - #include <linux/kdev_t.h> 24 - #include <linux/types.h> 25 - #include <linux/major.h> 26 - #include <linux/initrd.h> 27 - #include <linux/console.h> 28 - #include <linux/delay.h> 29 - #include <linux/ide.h> 30 - #include <linux/irq.h> 31 - #include <linux/seq_file.h> 32 - #include <linux/root_dev.h> 33 - 34 - #include <asm/system.h> 35 - #include <asm/pgtable.h> 36 - #include <asm/page.h> 37 - #include <asm/dma.h> 38 - #include <asm/io.h> 39 - #include <asm/machdep.h> 40 - #include <asm/time.h> 41 - #include <asm/i8259.h> 42 - #include <asm/todc.h> 43 - #include <asm/bootinfo.h> 44 - 45 - #include <syslib/cpc710.h> 46 - #include "k2.h" 47 - 48 - extern unsigned long loops_per_jiffy; 49 - extern void gen550_progress(char *, unsigned short); 50 - 51 - static unsigned int cpu_7xx[16] = { 52 - 0, 15, 14, 0, 0, 13, 5, 9, 6, 11, 8, 10, 16, 12, 7, 0 53 - }; 54 - static unsigned int cpu_6xx[16] = { 55 - 0, 0, 14, 0, 0, 13, 5, 9, 6, 11, 8, 10, 0, 12, 7, 0 56 - }; 57 - 58 - static inline int __init 59 - k2_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin) 60 - { 61 - struct pci_controller *hose = pci_bus_to_hose(dev->bus->number); 62 - /* 63 - * Check our hose index. If we are zero then we are on the 64 - * local PCI hose, otherwise we are on the cPCI hose. 65 - */ 66 - if (!hose->index) { 67 - static char pci_irq_table[][4] = 68 - /* 69 - * PCI IDSEL/INTPIN->INTLINE 70 - * A B C D 71 - */ 72 - { 73 - {1, 0, 0, 0}, /* Ethernet */ 74 - {5, 5, 5, 5}, /* PMC Site 1 */ 75 - {6, 6, 6, 6}, /* PMC Site 2 */ 76 - {0, 0, 0, 0}, /* unused */ 77 - {0, 0, 0, 0}, /* unused */ 78 - {0, 0, 0, 0}, /* PCI-ISA Bridge */ 79 - {0, 0, 0, 0}, /* unused */ 80 - {0, 0, 0, 0}, /* unused */ 81 - {0, 0, 0, 0}, /* unused */ 82 - {0, 0, 0, 0}, /* unused */ 83 - {0, 0, 0, 0}, /* unused */ 84 - {0, 0, 0, 0}, /* unused */ 85 - {0, 0, 0, 0}, /* unused */ 86 - {0, 0, 0, 0}, /* unused */ 87 - {15, 0, 0, 0}, /* M5229 IDE */ 88 - }; 89 - const long min_idsel = 3, max_idsel = 17, irqs_per_slot = 4; 90 - return PCI_IRQ_TABLE_LOOKUP; 91 - } else { 92 - static char pci_irq_table[][4] = 93 - /* 94 - * PCI IDSEL/INTPIN->INTLINE 95 - * A B C D 96 - */ 97 - { 98 - {10, 11, 12, 9}, /* cPCI slot 8 */ 99 - {11, 12, 9, 10}, /* cPCI slot 7 */ 100 - {12, 9, 10, 11}, /* cPCI slot 6 */ 101 - {9, 10, 11, 12}, /* cPCI slot 5 */ 102 - {10, 11, 12, 9}, /* cPCI slot 4 */ 103 - {11, 12, 9, 10}, /* cPCI slot 3 */ 104 - {12, 9, 10, 11}, /* cPCI slot 2 */ 105 - }; 106 - const long min_idsel = 15, max_idsel = 21, irqs_per_slot = 4; 107 - return PCI_IRQ_TABLE_LOOKUP; 108 - } 109 - } 110 - 111 - void k2_pcibios_fixup(void) 112 - { 113 - #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) 114 - struct pci_dev *ide_dev; 115 - 116 - /* 117 - * Enable DMA support on hdc 118 - */ 119 - ide_dev = pci_get_device(PCI_VENDOR_ID_AL, 120 - PCI_DEVICE_ID_AL_M5229, NULL); 121 - 122 - if (ide_dev) { 123 - 124 - unsigned long ide_dma_base; 125 - 126 - ide_dma_base = pci_resource_start(ide_dev, 4); 127 - outb(0x00, ide_dma_base + 0x2); 128 - outb(0x20, ide_dma_base + 0xa); 129 - pci_dev_put(ide_dev); 130 - } 131 - #endif 132 - } 133 - 134 - void k2_pcibios_fixup_resources(struct pci_dev *dev) 135 - { 136 - int i; 137 - 138 - if ((dev->vendor == PCI_VENDOR_ID_IBM) && 139 - (dev->device == PCI_DEVICE_ID_IBM_CPC710_PCI64)) { 140 - pr_debug("Fixup CPC710 resources\n"); 141 - for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { 142 - dev->resource[i].start = 0; 143 - dev->resource[i].end = 0; 144 - } 145 - } 146 - } 147 - 148 - void k2_setup_hoses(void) 149 - { 150 - struct pci_controller *hose_a, *hose_b; 151 - 152 - /* 153 - * Reconfigure CPC710 memory map so 154 - * we have some more PCI memory space. 155 - */ 156 - 157 - /* Set FPHB mode */ 158 - __raw_writel(0x808000e0, PGCHP); /* Set FPHB mode */ 159 - 160 - /* PCI32 mappings */ 161 - __raw_writel(0x00000000, K2_PCI32_BAR + PIBAR); /* PCI I/O base */ 162 - __raw_writel(0x00000000, K2_PCI32_BAR + PMBAR); /* PCI Mem base */ 163 - __raw_writel(0xf0000000, K2_PCI32_BAR + MSIZE); /* 256MB */ 164 - __raw_writel(0xfff00000, K2_PCI32_BAR + IOSIZE); /* 1MB */ 165 - __raw_writel(0xc0000000, K2_PCI32_BAR + SMBAR); /* Base@0xc0000000 */ 166 - __raw_writel(0x80000000, K2_PCI32_BAR + SIBAR); /* Base@0x80000000 */ 167 - __raw_writel(0x000000c0, K2_PCI32_BAR + PSSIZE); /* 1GB space */ 168 - __raw_writel(0x000000c0, K2_PCI32_BAR + PPSIZE); /* 1GB space */ 169 - __raw_writel(0x00000000, K2_PCI32_BAR + BARPS); /* Base@0x00000000 */ 170 - __raw_writel(0x00000000, K2_PCI32_BAR + BARPP); /* Base@0x00000000 */ 171 - __raw_writel(0x00000080, K2_PCI32_BAR + PSBAR); /* Base@0x80 */ 172 - __raw_writel(0x00000000, K2_PCI32_BAR + PPBAR); 173 - 174 - __raw_writel(0xc0000000, K2_PCI32_BAR + BPMDLK); 175 - __raw_writel(0xd0000000, K2_PCI32_BAR + TPMDLK); 176 - __raw_writel(0x80000000, K2_PCI32_BAR + BIODLK); 177 - __raw_writel(0x80100000, K2_PCI32_BAR + TIODLK); 178 - __raw_writel(0xe0008000, K2_PCI32_BAR + DLKCTRL); 179 - __raw_writel(0xffffffff, K2_PCI32_BAR + DLKDEV); 180 - 181 - /* PCI64 mappings */ 182 - __raw_writel(0x00100000, K2_PCI64_BAR + PIBAR); /* PCI I/O base */ 183 - __raw_writel(0x10000000, K2_PCI64_BAR + PMBAR); /* PCI Mem base */ 184 - __raw_writel(0xf0000000, K2_PCI64_BAR + MSIZE); /* 256MB */ 185 - __raw_writel(0xfff00000, K2_PCI64_BAR + IOSIZE); /* 1MB */ 186 - __raw_writel(0xd0000000, K2_PCI64_BAR + SMBAR); /* Base@0xd0000000 */ 187 - __raw_writel(0x80100000, K2_PCI64_BAR + SIBAR); /* Base@0x80100000 */ 188 - __raw_writel(0x000000c0, K2_PCI64_BAR + PSSIZE); /* 1GB space */ 189 - __raw_writel(0x000000c0, K2_PCI64_BAR + PPSIZE); /* 1GB space */ 190 - __raw_writel(0x00000000, K2_PCI64_BAR + BARPS); /* Base@0x00000000 */ 191 - __raw_writel(0x00000000, K2_PCI64_BAR + BARPP); /* Base@0x00000000 */ 192 - 193 - /* Setup PCI32 hose */ 194 - hose_a = pcibios_alloc_controller(); 195 - if (!hose_a) 196 - return; 197 - 198 - hose_a->first_busno = 0; 199 - hose_a->last_busno = 0xff; 200 - hose_a->pci_mem_offset = K2_PCI32_MEM_BASE; 201 - 202 - pci_init_resource(&hose_a->io_resource, 203 - K2_PCI32_LOWER_IO, 204 - K2_PCI32_UPPER_IO, 205 - IORESOURCE_IO, "PCI32 host bridge"); 206 - 207 - pci_init_resource(&hose_a->mem_resources[0], 208 - K2_PCI32_LOWER_MEM + K2_PCI32_MEM_BASE, 209 - K2_PCI32_UPPER_MEM + K2_PCI32_MEM_BASE, 210 - IORESOURCE_MEM, "PCI32 host bridge"); 211 - 212 - hose_a->io_space.start = K2_PCI32_LOWER_IO; 213 - hose_a->io_space.end = K2_PCI32_UPPER_IO; 214 - hose_a->mem_space.start = K2_PCI32_LOWER_MEM; 215 - hose_a->mem_space.end = K2_PCI32_UPPER_MEM; 216 - hose_a->io_base_virt = (void *)K2_ISA_IO_BASE; 217 - 218 - setup_indirect_pci(hose_a, K2_PCI32_CONFIG_ADDR, K2_PCI32_CONFIG_DATA); 219 - 220 - /* Initialize PCI32 bus registers */ 221 - early_write_config_byte(hose_a, 222 - hose_a->first_busno, 223 - PCI_DEVFN(0, 0), 224 - CPC710_BUS_NUMBER, hose_a->first_busno); 225 - 226 - early_write_config_byte(hose_a, 227 - hose_a->first_busno, 228 - PCI_DEVFN(0, 0), 229 - CPC710_SUB_BUS_NUMBER, hose_a->last_busno); 230 - 231 - /* Enable PCI interrupt polling */ 232 - early_write_config_byte(hose_a, 233 - hose_a->first_busno, 234 - PCI_DEVFN(8, 0), 0x45, 0x80); 235 - 236 - /* Route polled PCI interrupts */ 237 - early_write_config_byte(hose_a, 238 - hose_a->first_busno, 239 - PCI_DEVFN(8, 0), 0x48, 0x58); 240 - 241 - early_write_config_byte(hose_a, 242 - hose_a->first_busno, 243 - PCI_DEVFN(8, 0), 0x49, 0x07); 244 - 245 - early_write_config_byte(hose_a, 246 - hose_a->first_busno, 247 - PCI_DEVFN(8, 0), 0x4a, 0x31); 248 - 249 - early_write_config_byte(hose_a, 250 - hose_a->first_busno, 251 - PCI_DEVFN(8, 0), 0x4b, 0xb9); 252 - 253 - /* route secondary IDE channel interrupt to IRQ 15 */ 254 - early_write_config_byte(hose_a, 255 - hose_a->first_busno, 256 - PCI_DEVFN(8, 0), 0x75, 0x0f); 257 - 258 - /* enable IDE controller IDSEL */ 259 - early_write_config_byte(hose_a, 260 - hose_a->first_busno, 261 - PCI_DEVFN(8, 0), 0x58, 0x48); 262 - 263 - /* Enable IDE function */ 264 - early_write_config_byte(hose_a, 265 - hose_a->first_busno, 266 - PCI_DEVFN(17, 0), 0x50, 0x03); 267 - 268 - /* Set M5229 IDE controller to native mode */ 269 - early_write_config_byte(hose_a, 270 - hose_a->first_busno, 271 - PCI_DEVFN(17, 0), PCI_CLASS_PROG, 0xdf); 272 - 273 - hose_a->last_busno = pciauto_bus_scan(hose_a, hose_a->first_busno); 274 - 275 - /* Write out correct max subordinate bus number for hose A */ 276 - early_write_config_byte(hose_a, 277 - hose_a->first_busno, 278 - PCI_DEVFN(0, 0), 279 - CPC710_SUB_BUS_NUMBER, hose_a->last_busno); 280 - 281 - /* Only setup PCI64 hose if we are in the system slot */ 282 - if (!(readb(K2_MISC_REG) & K2_SYS_SLOT_MASK)) { 283 - /* Setup PCI64 hose */ 284 - hose_b = pcibios_alloc_controller(); 285 - if (!hose_b) 286 - return; 287 - 288 - hose_b->first_busno = hose_a->last_busno + 1; 289 - hose_b->last_busno = 0xff; 290 - 291 - /* Reminder: quit changing the following, it is correct. */ 292 - hose_b->pci_mem_offset = K2_PCI32_MEM_BASE; 293 - 294 - pci_init_resource(&hose_b->io_resource, 295 - K2_PCI64_LOWER_IO, 296 - K2_PCI64_UPPER_IO, 297 - IORESOURCE_IO, "PCI64 host bridge"); 298 - 299 - pci_init_resource(&hose_b->mem_resources[0], 300 - K2_PCI64_LOWER_MEM + K2_PCI32_MEM_BASE, 301 - K2_PCI64_UPPER_MEM + K2_PCI32_MEM_BASE, 302 - IORESOURCE_MEM, "PCI64 host bridge"); 303 - 304 - hose_b->io_space.start = K2_PCI64_LOWER_IO; 305 - hose_b->io_space.end = K2_PCI64_UPPER_IO; 306 - hose_b->mem_space.start = K2_PCI64_LOWER_MEM; 307 - hose_b->mem_space.end = K2_PCI64_UPPER_MEM; 308 - hose_b->io_base_virt = (void *)K2_ISA_IO_BASE; 309 - 310 - setup_indirect_pci(hose_b, 311 - K2_PCI64_CONFIG_ADDR, K2_PCI64_CONFIG_DATA); 312 - 313 - /* Initialize PCI64 bus registers */ 314 - early_write_config_byte(hose_b, 315 - 0, 316 - PCI_DEVFN(0, 0), 317 - CPC710_SUB_BUS_NUMBER, 0xff); 318 - 319 - early_write_config_byte(hose_b, 320 - 0, 321 - PCI_DEVFN(0, 0), 322 - CPC710_BUS_NUMBER, hose_b->first_busno); 323 - 324 - hose_b->last_busno = pciauto_bus_scan(hose_b, 325 - hose_b->first_busno); 326 - 327 - /* Write out correct max subordinate bus number for hose B */ 328 - early_write_config_byte(hose_b, 329 - hose_b->first_busno, 330 - PCI_DEVFN(0, 0), 331 - CPC710_SUB_BUS_NUMBER, 332 - hose_b->last_busno); 333 - 334 - /* Configure PCI64 PSBAR */ 335 - early_write_config_dword(hose_b, 336 - hose_b->first_busno, 337 - PCI_DEVFN(0, 0), 338 - PCI_BASE_ADDRESS_0, 339 - K2_PCI64_SYS_MEM_BASE); 340 - } 341 - 342 - /* Configure i8259 level/edge settings */ 343 - outb(0x62, 0x4d0); 344 - outb(0xde, 0x4d1); 345 - 346 - #ifdef CONFIG_CPC710_DATA_GATHERING 347 - { 348 - unsigned int tmp; 349 - tmp = __raw_readl(ABCNTL); 350 - /* Enable data gathering on both PCI interfaces */ 351 - __raw_writel(tmp | 0x05000000, ABCNTL); 352 - } 353 - #endif 354 - 355 - ppc_md.pcibios_fixup = k2_pcibios_fixup; 356 - ppc_md.pcibios_fixup_resources = k2_pcibios_fixup_resources; 357 - ppc_md.pci_swizzle = common_swizzle; 358 - ppc_md.pci_map_irq = k2_map_irq; 359 - } 360 - 361 - static int k2_get_bus_speed(void) 362 - { 363 - int bus_speed; 364 - unsigned char board_id; 365 - 366 - board_id = *(unsigned char *)K2_BOARD_ID_REG; 367 - 368 - switch (K2_BUS_SPD(board_id)) { 369 - 370 - case 0: 371 - default: 372 - bus_speed = 100000000; 373 - break; 374 - 375 - case 1: 376 - bus_speed = 83333333; 377 - break; 378 - 379 - case 2: 380 - bus_speed = 75000000; 381 - break; 382 - 383 - case 3: 384 - bus_speed = 66666666; 385 - break; 386 - } 387 - return bus_speed; 388 - } 389 - 390 - static int k2_get_cpu_speed(void) 391 - { 392 - unsigned long hid1; 393 - int cpu_speed; 394 - 395 - hid1 = mfspr(SPRN_HID1) >> 28; 396 - 397 - if ((mfspr(SPRN_PVR) >> 16) == 8) 398 - hid1 = cpu_7xx[hid1]; 399 - else 400 - hid1 = cpu_6xx[hid1]; 401 - 402 - cpu_speed = k2_get_bus_speed() * hid1 / 2; 403 - return cpu_speed; 404 - } 405 - 406 - static void __init k2_calibrate_decr(void) 407 - { 408 - int freq, divisor = 4; 409 - 410 - /* determine processor bus speed */ 411 - freq = k2_get_bus_speed(); 412 - tb_ticks_per_jiffy = freq / HZ / divisor; 413 - tb_to_us = mulhwu_scale_factor(freq / divisor, 1000000); 414 - } 415 - 416 - static int k2_show_cpuinfo(struct seq_file *m) 417 - { 418 - unsigned char k2_geo_bits, k2_system_slot; 419 - 420 - seq_printf(m, "vendor\t\t: SBS\n"); 421 - seq_printf(m, "machine\t\t: K2\n"); 422 - seq_printf(m, "cpu speed\t: %dMhz\n", k2_get_cpu_speed() / 1000000); 423 - seq_printf(m, "bus speed\t: %dMhz\n", k2_get_bus_speed() / 1000000); 424 - seq_printf(m, "memory type\t: SDRAM\n"); 425 - 426 - k2_geo_bits = readb(K2_MSIZ_GEO_REG) & K2_GEO_ADR_MASK; 427 - k2_system_slot = !(readb(K2_MISC_REG) & K2_SYS_SLOT_MASK); 428 - seq_printf(m, "backplane\t: %s slot board", 429 - k2_system_slot ? "System" : "Non system"); 430 - seq_printf(m, "with geographical address %x\n", k2_geo_bits); 431 - 432 - return 0; 433 - } 434 - 435 - TODC_ALLOC(); 436 - 437 - static void __init k2_setup_arch(void) 438 - { 439 - unsigned int cpu; 440 - 441 - /* Setup TODC access */ 442 - TODC_INIT(TODC_TYPE_MK48T37, 0, 0, 443 - ioremap(K2_RTC_BASE_ADDRESS, K2_RTC_SIZE), 8); 444 - 445 - /* init to some ~sane value until calibrate_delay() runs */ 446 - loops_per_jiffy = 50000000 / HZ; 447 - 448 - /* make FLASH transactions higher priority than PCI to avoid deadlock */ 449 - __raw_writel(__raw_readl(SIOC1) | 0x80000000, SIOC1); 450 - 451 - /* Set hardware to access FLASH page 2 */ 452 - __raw_writel(1 << 29, GPOUT); 453 - 454 - /* Setup PCI host bridges */ 455 - k2_setup_hoses(); 456 - 457 - #ifdef CONFIG_BLK_DEV_INITRD 458 - if (initrd_start) 459 - ROOT_DEV = Root_RAM0; 460 - else 461 - #endif 462 - #ifdef CONFIG_ROOT_NFS 463 - ROOT_DEV = Root_NFS; 464 - #else 465 - ROOT_DEV = Root_HDC1; 466 - #endif 467 - 468 - /* Identify the system */ 469 - printk(KERN_INFO "System Identification: SBS K2 - PowerPC 750 @ " 470 - "%d Mhz\n", k2_get_cpu_speed() / 1000000); 471 - printk(KERN_INFO "Port by MontaVista Software, Inc. " 472 - "(source@mvista.com)\n"); 473 - 474 - /* Identify the CPU manufacturer */ 475 - cpu = PVR_REV(mfspr(SPRN_PVR)); 476 - printk(KERN_INFO "CPU manufacturer: %s [rev=%04x]\n", 477 - (cpu & (1 << 15)) ? "IBM" : "Motorola", cpu); 478 - } 479 - 480 - static void k2_restart(char *cmd) 481 - { 482 - local_irq_disable(); 483 - 484 - /* Flip FLASH back to page 1 to access firmware image */ 485 - __raw_writel(0, GPOUT); 486 - 487 - /* SRR0 has system reset vector, SRR1 has default MSR value */ 488 - /* rfi restores MSR from SRR1 and sets the PC to the SRR0 value */ 489 - mtspr(SPRN_SRR0, 0xfff00100); 490 - mtspr(SPRN_SRR1, 0); 491 - __asm__ __volatile__("rfi\n\t"); 492 - 493 - /* not reached */ 494 - for (;;) ; 495 - } 496 - 497 - static void k2_power_off(void) 498 - { 499 - for (;;) ; 500 - } 501 - 502 - static void k2_halt(void) 503 - { 504 - k2_restart(NULL); 505 - } 506 - 507 - /* 508 - * Set BAT 3 to map PCI32 I/O space. 509 - */ 510 - static __inline__ void k2_set_bat(void) 511 - { 512 - /* wait for all outstanding memory accesses to complete */ 513 - mb(); 514 - 515 - /* setup DBATs */ 516 - mtspr(SPRN_DBAT2U, 0x80001ffe); 517 - mtspr(SPRN_DBAT2L, 0x8000002a); 518 - mtspr(SPRN_DBAT3U, 0xf0001ffe); 519 - mtspr(SPRN_DBAT3L, 0xf000002a); 520 - 521 - /* wait for updates */ 522 - mb(); 523 - } 524 - 525 - static unsigned long __init k2_find_end_of_memory(void) 526 - { 527 - unsigned long total; 528 - unsigned char msize = 7; /* Default to 128MB */ 529 - 530 - msize = K2_MEM_SIZE(readb(K2_MSIZ_GEO_REG)); 531 - 532 - switch (msize) { 533 - case 2: 534 - /* 535 - * This will break without a lowered 536 - * KERNELBASE or CONFIG_HIGHMEM on. 537 - * It seems non 1GB builds exist yet, 538 - * though. 539 - */ 540 - total = K2_MEM_SIZE_1GB; 541 - break; 542 - case 3: 543 - case 4: 544 - total = K2_MEM_SIZE_512MB; 545 - break; 546 - case 5: 547 - case 6: 548 - total = K2_MEM_SIZE_256MB; 549 - break; 550 - case 7: 551 - total = K2_MEM_SIZE_128MB; 552 - break; 553 - default: 554 - printk 555 - ("K2: Invalid memory size detected, defaulting to 128MB\n"); 556 - total = K2_MEM_SIZE_128MB; 557 - break; 558 - } 559 - return total; 560 - } 561 - 562 - static void __init k2_map_io(void) 563 - { 564 - io_block_mapping(K2_PCI32_IO_BASE, 565 - K2_PCI32_IO_BASE, 0x00200000, _PAGE_IO); 566 - io_block_mapping(0xff000000, 0xff000000, 0x01000000, _PAGE_IO); 567 - } 568 - 569 - static void __init k2_init_irq(void) 570 - { 571 - int i; 572 - 573 - for (i = 0; i < 16; i++) 574 - irq_desc[i].handler = &i8259_pic; 575 - 576 - i8259_init(0); 577 - } 578 - 579 - void __init platform_init(unsigned long r3, unsigned long r4, 580 - unsigned long r5, unsigned long r6, unsigned long r7) 581 - { 582 - parse_bootinfo((struct bi_record *)(r3 + KERNELBASE)); 583 - 584 - k2_set_bat(); 585 - 586 - isa_io_base = K2_ISA_IO_BASE; 587 - isa_mem_base = K2_ISA_MEM_BASE; 588 - pci_dram_offset = K2_PCI32_SYS_MEM_BASE; 589 - 590 - ppc_md.setup_arch = k2_setup_arch; 591 - ppc_md.show_cpuinfo = k2_show_cpuinfo; 592 - ppc_md.init_IRQ = k2_init_irq; 593 - ppc_md.get_irq = i8259_irq; 594 - 595 - ppc_md.find_end_of_memory = k2_find_end_of_memory; 596 - ppc_md.setup_io_mappings = k2_map_io; 597 - 598 - ppc_md.restart = k2_restart; 599 - ppc_md.power_off = k2_power_off; 600 - ppc_md.halt = k2_halt; 601 - 602 - ppc_md.time_init = todc_time_init; 603 - ppc_md.set_rtc_time = todc_set_rtc_time; 604 - ppc_md.get_rtc_time = todc_get_rtc_time; 605 - ppc_md.calibrate_decr = k2_calibrate_decr; 606 - 607 - ppc_md.nvram_read_val = todc_direct_read_val; 608 - ppc_md.nvram_write_val = todc_direct_write_val; 609 - 610 - #ifdef CONFIG_SERIAL_TEXT_DEBUG 611 - ppc_md.progress = gen550_progress; 612 - #endif 613 - }
-82
arch/ppc/platforms/k2.h
··· 1 - /* 2 - * arch/ppc/platforms/k2.h 3 - * 4 - * Definitions for SBS K2 board support 5 - * 6 - * Author: Matt Porter <mporter@mvista.com> 7 - * 8 - * 2001 (c) MontaVista, Software, Inc. This file is licensed under 9 - * the terms of the GNU General Public License version 2. This program 10 - * is licensed "as is" without any warranty of any kind, whether express 11 - * or implied. 12 - */ 13 - 14 - #ifndef __PPC_PLATFORMS_K2_H 15 - #define __PPC_PLATFORMS_K2_H 16 - 17 - /* 18 - * SBS K2 definitions 19 - */ 20 - 21 - #define K2_PCI64_BAR 0xff400000 22 - #define K2_PCI32_BAR 0xff500000 23 - 24 - #define K2_PCI64_CONFIG_ADDR (K2_PCI64_BAR + 0x000f8000) 25 - #define K2_PCI64_CONFIG_DATA (K2_PCI64_BAR + 0x000f8010) 26 - 27 - #define K2_PCI32_CONFIG_ADDR (K2_PCI32_BAR + 0x000f8000) 28 - #define K2_PCI32_CONFIG_DATA (K2_PCI32_BAR + 0x000f8010) 29 - 30 - #define K2_PCI64_MEM_BASE 0xd0000000 31 - #define K2_PCI64_IO_BASE 0x80100000 32 - 33 - #define K2_PCI32_MEM_BASE 0xc0000000 34 - #define K2_PCI32_IO_BASE 0x80000000 35 - 36 - #define K2_PCI32_SYS_MEM_BASE 0x80000000 37 - #define K2_PCI64_SYS_MEM_BASE K2_PCI32_SYS_MEM_BASE 38 - 39 - #define K2_PCI32_LOWER_MEM 0x00000000 40 - #define K2_PCI32_UPPER_MEM 0x0fffffff 41 - #define K2_PCI32_LOWER_IO 0x00000000 42 - #define K2_PCI32_UPPER_IO 0x000fffff 43 - 44 - #define K2_PCI64_LOWER_MEM 0x10000000 45 - #define K2_PCI64_UPPER_MEM 0x1fffffff 46 - #define K2_PCI64_LOWER_IO 0x00100000 47 - #define K2_PCI64_UPPER_IO 0x001fffff 48 - 49 - #define K2_ISA_IO_BASE K2_PCI32_IO_BASE 50 - #define K2_ISA_MEM_BASE K2_PCI32_MEM_BASE 51 - 52 - #define K2_BOARD_ID_REG (K2_ISA_IO_BASE + 0x800) 53 - #define K2_MISC_REG (K2_ISA_IO_BASE + 0x804) 54 - #define K2_MSIZ_GEO_REG (K2_ISA_IO_BASE + 0x808) 55 - #define K2_HOT_SWAP_REG (K2_ISA_IO_BASE + 0x80c) 56 - #define K2_PLD2_REG (K2_ISA_IO_BASE + 0x80e) 57 - #define K2_PLD3_REG (K2_ISA_IO_BASE + 0x80f) 58 - 59 - #define K2_BUS_SPD(board_id) (board_id >> 2) & 3 60 - 61 - #define K2_RTC_BASE_OFFSET 0x90000 62 - #define K2_RTC_BASE_ADDRESS (K2_PCI32_MEM_BASE + K2_RTC_BASE_OFFSET) 63 - #define K2_RTC_SIZE 0x8000 64 - 65 - #define K2_MEM_SIZE_MASK 0xe0 66 - #define K2_MEM_SIZE(size_reg) (size_reg & K2_MEM_SIZE_MASK) >> 5 67 - #define K2_MEM_SIZE_1GB 0x40000000 68 - #define K2_MEM_SIZE_512MB 0x20000000 69 - #define K2_MEM_SIZE_256MB 0x10000000 70 - #define K2_MEM_SIZE_128MB 0x08000000 71 - 72 - #define K2_L2CACHE_MASK 0x03 /* Mask for 2 L2 Cache bits */ 73 - #define K2_L2CACHE_512KB 0x00 /* 512KB */ 74 - #define K2_L2CACHE_256KB 0x01 /* 256KB */ 75 - #define K2_L2CACHE_1MB 0x02 /* 1MB */ 76 - #define K2_L2CACHE_NONE 0x03 /* None */ 77 - 78 - #define K2_GEO_ADR_MASK 0x1f 79 - 80 - #define K2_SYS_SLOT_MASK 0x08 81 - 82 - #endif /* __PPC_PLATFORMS_K2_H */
-2
arch/ppc/syslib/Makefile
··· 50 50 obj-$(CONFIG_CHESTNUT) += mv64360_pic.o pci_auto.o 51 51 obj-$(CONFIG_GEMINI) += open_pic.o indirect_pci.o 52 52 obj-$(CONFIG_GT64260) += gt64260_pic.o 53 - obj-$(CONFIG_K2) += i8259.o indirect_pci.o todc_time.o \ 54 - pci_auto.o 55 53 obj-$(CONFIG_LOPEC) += i8259.o pci_auto.o todc_time.o 56 54 obj-$(CONFIG_HDPU) += pci_auto.o 57 55 obj-$(CONFIG_LUAN) += indirect_pci.o pci_auto.o todc_time.o