Skip to content
Snippets Groups Projects
Commit d58a75ef authored by Linus Torvalds's avatar Linus Torvalds
Browse files
parents f6ff56cd 5d66da3d
No related branches found
No related tags found
No related merge requests found
Showing
with 380 additions and 239 deletions
# #
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# Linux kernel version: 2.6.14-rc4 # Linux kernel version: 2.6.15-rc1
# Thu Oct 20 08:30:56 2005 # Tue Nov 15 14:38:09 2005
# #
CONFIG_PPC64=y
CONFIG_64BIT=y CONFIG_64BIT=y
CONFIG_PPC_MERGE=y
CONFIG_MMU=y CONFIG_MMU=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_ISA_DMA=y CONFIG_PPC=y
CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK=y
CONFIG_COMPAT=y CONFIG_COMPAT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_FORCE_MAX_ZONEORDER=13
#
# Processor support
#
# CONFIG_POWER4_ONLY is not set
CONFIG_POWER3=y
CONFIG_POWER4=y
CONFIG_PPC_FPU=y
# CONFIG_ALTIVEC is not set
CONFIG_PPC_STD_MMU=y
CONFIG_SMP=y
CONFIG_NR_CPUS=32
# #
# Code maturity level options # Code maturity level options
...@@ -68,22 +83,60 @@ CONFIG_MODVERSIONS=y ...@@ -68,22 +83,60 @@ CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_KMOD=y CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y CONFIG_STOP_MACHINE=y
CONFIG_SYSVIPC_COMPAT=y
#
# Block layer
#
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
# #
# Platform support # Platform support
# #
CONFIG_PPC_ISERIES=y
# CONFIG_PPC_MULTIPLATFORM is not set # CONFIG_PPC_MULTIPLATFORM is not set
CONFIG_PPC=y CONFIG_PPC_ISERIES=y
CONFIG_PPC64=y # CONFIG_EMBEDDED6xx is not set
# CONFIG_APUS is not set
# CONFIG_PPC_RTAS is not set
# CONFIG_MMIO_NVRAM is not set
CONFIG_IBMVIO=y CONFIG_IBMVIO=y
# CONFIG_POWER4_ONLY is not set # CONFIG_PPC_MPC106 is not set
# CONFIG_GENERIC_TBSYNC is not set
# CONFIG_CPU_FREQ is not set
# CONFIG_WANT_EARLY_SERIAL is not set
#
# Kernel options
#
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_BKL is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_IOMMU_VMERGE=y CONFIG_IOMMU_VMERGE=y
CONFIG_SMP=y CONFIG_IRQ_ALL_CPUS=y
CONFIG_NR_CPUS=32 CONFIG_LPARCFG=y
# CONFIG_NUMA is not set
CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_FLATMEM_ENABLE=y CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_SELECT_MEMORY_MODEL=y CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set # CONFIG_DISCONTIGMEM_MANUAL is not set
...@@ -91,26 +144,20 @@ CONFIG_FLATMEM_MANUAL=y ...@@ -91,26 +144,20 @@ CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set # CONFIG_SPARSEMEM_STATIC is not set
# CONFIG_NUMA is not set CONFIG_SPLIT_PTLOCK_CPUS=4096
# CONFIG_PPC_64K_PAGES is not set
# CONFIG_SCHED_SMT is not set # CONFIG_SCHED_SMT is not set
CONFIG_PREEMPT_NONE=y CONFIG_PROC_DEVICETREE=y
# CONFIG_PREEMPT_VOLUNTARY is not set # CONFIG_PM is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_BKL is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_GENERIC_HARDIRQS=y
CONFIG_LPARCFG=y
CONFIG_SECCOMP=y CONFIG_SECCOMP=y
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_ISA_DMA_API=y CONFIG_ISA_DMA_API=y
# #
# Bus Options # Bus options
# #
CONFIG_GENERIC_ISA_DMA=y
# CONFIG_PPC_I8259 is not set
# CONFIG_PPC_INDIRECT_PCI is not set
CONFIG_PCI=y CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y CONFIG_PCI_DOMAINS=y
CONFIG_PCI_LEGACY_PROC=y CONFIG_PCI_LEGACY_PROC=y
...@@ -125,6 +172,7 @@ CONFIG_PCI_LEGACY_PROC=y ...@@ -125,6 +172,7 @@ CONFIG_PCI_LEGACY_PROC=y
# PCI Hotplug Support # PCI Hotplug Support
# #
# CONFIG_HOTPLUG_PCI is not set # CONFIG_HOTPLUG_PCI is not set
CONFIG_KERNEL_START=0xc000000000000000
# #
# Networking # Networking
...@@ -166,6 +214,10 @@ CONFIG_TCP_CONG_BIC=y ...@@ -166,6 +214,10 @@ CONFIG_TCP_CONG_BIC=y
# CONFIG_IPV6 is not set # CONFIG_IPV6 is not set
CONFIG_NETFILTER=y CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set # CONFIG_NETFILTER_DEBUG is not set
#
# Core Netfilter Configuration
#
# CONFIG_NETFILTER_NETLINK is not set # CONFIG_NETFILTER_NETLINK is not set
# #
...@@ -265,6 +317,10 @@ CONFIG_LLC=y ...@@ -265,6 +317,10 @@ CONFIG_LLC=y
# CONFIG_NET_DIVERT is not set # CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set # CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set # CONFIG_WAN_ROUTER is not set
#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set # CONFIG_NET_SCHED is not set
CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_ROUTE=y
...@@ -326,14 +382,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 ...@@ -326,14 +382,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=65536 CONFIG_BLK_DEV_RAM_SIZE=65536
CONFIG_BLK_DEV_INITRD=y CONFIG_BLK_DEV_INITRD=y
# CONFIG_CDROM_PKTCDVD is not set # CONFIG_CDROM_PKTCDVD is not set
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
# CONFIG_ATA_OVER_ETH is not set # CONFIG_ATA_OVER_ETH is not set
# #
...@@ -377,6 +425,7 @@ CONFIG_SCSI_FC_ATTRS=y ...@@ -377,6 +425,7 @@ CONFIG_SCSI_FC_ATTRS=y
# #
# SCSI low-level drivers # SCSI low-level drivers
# #
# CONFIG_ISCSI_TCP is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_ACARD is not set
...@@ -454,6 +503,7 @@ CONFIG_DM_ZERO=m ...@@ -454,6 +503,7 @@ CONFIG_DM_ZERO=m
# #
# Macintosh device drivers # Macintosh device drivers
# #
# CONFIG_WINDFARM is not set
# #
# Network device support # Network device support
...@@ -561,6 +611,7 @@ CONFIG_PPP_ASYNC=m ...@@ -561,6 +611,7 @@ CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m CONFIG_PPP_BSDCOMP=m
# CONFIG_PPP_MPPE is not set
CONFIG_PPPOE=m CONFIG_PPPOE=m
# CONFIG_SLIP is not set # CONFIG_SLIP is not set
# CONFIG_NET_FC is not set # CONFIG_NET_FC is not set
...@@ -643,6 +694,8 @@ CONFIG_LEGACY_PTY_COUNT=256 ...@@ -643,6 +694,8 @@ CONFIG_LEGACY_PTY_COUNT=256
# #
# CONFIG_WATCHDOG is not set # CONFIG_WATCHDOG is not set
# CONFIG_RTC is not set # CONFIG_RTC is not set
CONFIG_GEN_RTC=y
# CONFIG_GEN_RTC_X is not set
# CONFIG_DTLK is not set # CONFIG_DTLK is not set
# CONFIG_R3964 is not set # CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set # CONFIG_APPLICOM is not set
...@@ -660,6 +713,7 @@ CONFIG_MAX_RAW_DEVS=256 ...@@ -660,6 +713,7 @@ CONFIG_MAX_RAW_DEVS=256
# TPM devices # TPM devices
# #
# CONFIG_TCG_TPM is not set # CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
# #
# I2C support # I2C support
...@@ -712,6 +766,10 @@ CONFIG_USB_ARCH_HAS_HCD=y ...@@ -712,6 +766,10 @@ CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y CONFIG_USB_ARCH_HAS_OHCI=y
# CONFIG_USB is not set # CONFIG_USB is not set
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#
# #
# USB Gadget Support # USB Gadget Support
# #
...@@ -917,10 +975,25 @@ CONFIG_VIOTAPE=m ...@@ -917,10 +975,25 @@ CONFIG_VIOTAPE=m
CONFIG_VIOPATH=y CONFIG_VIOPATH=y
# #
# Profiling support # Library routines
#
CONFIG_CRC_CCITT=m
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
CONFIG_LIBCRC32C=m
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=m
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
#
# Instrumentation Support
# #
CONFIG_PROFILING=y CONFIG_PROFILING=y
CONFIG_OPROFILE=y CONFIG_OPROFILE=y
# CONFIG_KPROBES is not set
# #
# Kernel hacking # Kernel hacking
...@@ -937,11 +1010,11 @@ CONFIG_DETECT_SOFTLOCKUP=y ...@@ -937,11 +1010,11 @@ CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_DEBUG_KOBJECT is not set # CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_INFO is not set
CONFIG_DEBUG_FS=y CONFIG_DEBUG_FS=y
# CONFIG_DEBUG_VM is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_DEBUG_STACKOVERFLOW=y CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_KPROBES is not set
CONFIG_DEBUG_STACK_USAGE=y CONFIG_DEBUG_STACK_USAGE=y
# CONFIG_DEBUGGER is not set # CONFIG_DEBUGGER is not set
# CONFIG_PPCDBG is not set
CONFIG_IRQSTACKS=y CONFIG_IRQSTACKS=y
# #
...@@ -982,17 +1055,3 @@ CONFIG_CRYPTO_TEST=m ...@@ -982,17 +1055,3 @@ CONFIG_CRYPTO_TEST=m
# #
# Hardware crypto devices # Hardware crypto devices
# #
#
# Library routines
#
CONFIG_CRC_CCITT=m
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
CONFIG_LIBCRC32C=m
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=m
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
# #
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# Linux kernel version: 2.6.14-rc4 # Linux kernel version: 2.6.15-rc1
# Thu Oct 20 08:31:24 2005 # Tue Nov 15 14:38:58 2005
# #
CONFIG_PPC64=y
CONFIG_64BIT=y CONFIG_64BIT=y
CONFIG_PPC_MERGE=y
CONFIG_MMU=y CONFIG_MMU=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_ISA_DMA=y CONFIG_PPC=y
CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK=y
CONFIG_COMPAT=y CONFIG_COMPAT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_FORCE_MAX_ZONEORDER=13
#
# Processor support
#
CONFIG_POWER4_ONLY=y
CONFIG_POWER4=y
CONFIG_PPC_FPU=y
# CONFIG_ALTIVEC is not set
CONFIG_PPC_STD_MMU=y
CONFIG_SMP=y
CONFIG_NR_CPUS=2
# #
# Code maturity level options # Code maturity level options
...@@ -67,32 +81,67 @@ CONFIG_MODVERSIONS=y ...@@ -67,32 +81,67 @@ CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_KMOD=y CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y CONFIG_STOP_MACHINE=y
CONFIG_SYSVIPC_COMPAT=y
#
# Block layer
#
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
# #
# Platform support # Platform support
# #
# CONFIG_PPC_ISERIES is not set
CONFIG_PPC_MULTIPLATFORM=y CONFIG_PPC_MULTIPLATFORM=y
# CONFIG_PPC_ISERIES is not set
# CONFIG_EMBEDDED6xx is not set
# CONFIG_APUS is not set
# CONFIG_PPC_PSERIES is not set # CONFIG_PPC_PSERIES is not set
# CONFIG_PPC_BPA is not set
# CONFIG_PPC_PMAC is not set # CONFIG_PPC_PMAC is not set
CONFIG_PPC_MAPLE=y CONFIG_PPC_MAPLE=y
CONFIG_PPC=y # CONFIG_PPC_CELL is not set
CONFIG_PPC64=y
CONFIG_PPC_OF=y CONFIG_PPC_OF=y
CONFIG_MPIC=y
# CONFIG_ALTIVEC is not set
CONFIG_KEXEC=y
CONFIG_U3_DART=y CONFIG_U3_DART=y
CONFIG_MPIC=y
# CONFIG_PPC_RTAS is not set
# CONFIG_MMIO_NVRAM is not set
CONFIG_MPIC_BROKEN_U3=y CONFIG_MPIC_BROKEN_U3=y
CONFIG_BOOTX_TEXT=y # CONFIG_PPC_MPC106 is not set
CONFIG_POWER4_ONLY=y CONFIG_GENERIC_TBSYNC=y
# CONFIG_CPU_FREQ is not set
# CONFIG_WANT_EARLY_SERIAL is not set
#
# Kernel options
#
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_BKL is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_IOMMU_VMERGE=y CONFIG_IOMMU_VMERGE=y
CONFIG_SMP=y CONFIG_KEXEC=y
CONFIG_NR_CPUS=2 CONFIG_IRQ_ALL_CPUS=y
# CONFIG_NUMA is not set
CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_FLATMEM_ENABLE=y CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_SELECT_MEMORY_MODEL=y CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set # CONFIG_DISCONTIGMEM_MANUAL is not set
...@@ -100,27 +149,21 @@ CONFIG_FLATMEM_MANUAL=y ...@@ -100,27 +149,21 @@ CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set # CONFIG_SPARSEMEM_STATIC is not set
# CONFIG_NUMA is not set CONFIG_SPLIT_PTLOCK_CPUS=4096
# CONFIG_PPC_64K_PAGES is not set
# CONFIG_SCHED_SMT is not set # CONFIG_SCHED_SMT is not set
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_BKL is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_GENERIC_HARDIRQS=y
CONFIG_SECCOMP=y
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_PROC_DEVICETREE=y CONFIG_PROC_DEVICETREE=y
# CONFIG_CMDLINE_BOOL is not set # CONFIG_CMDLINE_BOOL is not set
# CONFIG_PM is not set
CONFIG_SECCOMP=y
CONFIG_ISA_DMA_API=y CONFIG_ISA_DMA_API=y
# #
# Bus Options # Bus options
# #
CONFIG_GENERIC_ISA_DMA=y
# CONFIG_PPC_I8259 is not set
# CONFIG_PPC_INDIRECT_PCI is not set
CONFIG_PCI=y CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y CONFIG_PCI_DOMAINS=y
CONFIG_PCI_LEGACY_PROC=y CONFIG_PCI_LEGACY_PROC=y
...@@ -135,6 +178,7 @@ CONFIG_PCI_LEGACY_PROC=y ...@@ -135,6 +178,7 @@ CONFIG_PCI_LEGACY_PROC=y
# PCI Hotplug Support # PCI Hotplug Support
# #
# CONFIG_HOTPLUG_PCI is not set # CONFIG_HOTPLUG_PCI is not set
CONFIG_KERNEL_START=0xc000000000000000
# #
# Networking # Networking
...@@ -193,6 +237,10 @@ CONFIG_TCP_CONG_BIC=y ...@@ -193,6 +237,10 @@ CONFIG_TCP_CONG_BIC=y
# CONFIG_NET_DIVERT is not set # CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set # CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set # CONFIG_WAN_ROUTER is not set
#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set # CONFIG_NET_SCHED is not set
# CONFIG_NET_CLS_ROUTE is not set # CONFIG_NET_CLS_ROUTE is not set
...@@ -254,14 +302,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 ...@@ -254,14 +302,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192 CONFIG_BLK_DEV_RAM_SIZE=8192
# CONFIG_BLK_DEV_INITRD is not set # CONFIG_BLK_DEV_INITRD is not set
# CONFIG_CDROM_PKTCDVD is not set # CONFIG_CDROM_PKTCDVD is not set
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
# CONFIG_ATA_OVER_ETH is not set # CONFIG_ATA_OVER_ETH is not set
# #
...@@ -351,6 +391,7 @@ CONFIG_IDEDMA_AUTO=y ...@@ -351,6 +391,7 @@ CONFIG_IDEDMA_AUTO=y
# #
# Macintosh device drivers # Macintosh device drivers
# #
# CONFIG_WINDFARM is not set
# #
# Network device support # Network device support
...@@ -533,6 +574,8 @@ CONFIG_LEGACY_PTY_COUNT=256 ...@@ -533,6 +574,8 @@ CONFIG_LEGACY_PTY_COUNT=256
# #
# CONFIG_WATCHDOG is not set # CONFIG_WATCHDOG is not set
# CONFIG_RTC is not set # CONFIG_RTC is not set
CONFIG_GEN_RTC=y
# CONFIG_GEN_RTC_X is not set
# CONFIG_DTLK is not set # CONFIG_DTLK is not set
# CONFIG_R3964 is not set # CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set # CONFIG_APPLICOM is not set
...@@ -549,6 +592,7 @@ CONFIG_LEGACY_PTY_COUNT=256 ...@@ -549,6 +592,7 @@ CONFIG_LEGACY_PTY_COUNT=256
# TPM devices # TPM devices
# #
# CONFIG_TCG_TPM is not set # CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
# #
# I2C support # I2C support
...@@ -599,6 +643,7 @@ CONFIG_I2C_AMD8111=y ...@@ -599,6 +643,7 @@ CONFIG_I2C_AMD8111=y
# CONFIG_SENSORS_PCF8591 is not set # CONFIG_SENSORS_PCF8591 is not set
# CONFIG_SENSORS_RTC8564 is not set # CONFIG_SENSORS_RTC8564 is not set
# CONFIG_SENSORS_MAX6875 is not set # CONFIG_SENSORS_MAX6875 is not set
# CONFIG_RTC_X1205_I2C is not set
# CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_BUS is not set
...@@ -681,12 +726,15 @@ CONFIG_USB_UHCI_HCD=y ...@@ -681,12 +726,15 @@ CONFIG_USB_UHCI_HCD=y
# #
# USB Device Class drivers # USB Device Class drivers
# #
# CONFIG_USB_BLUETOOTH_TTY is not set
# CONFIG_USB_ACM is not set # CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set # CONFIG_USB_PRINTER is not set
# #
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#
#
# may also be needed; see USB_STORAGE Help for more information
# #
# CONFIG_USB_STORAGE is not set # CONFIG_USB_STORAGE is not set
...@@ -776,6 +824,7 @@ CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y ...@@ -776,6 +824,7 @@ CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
# CONFIG_USB_SERIAL_KLSI is not set # CONFIG_USB_SERIAL_KLSI is not set
# CONFIG_USB_SERIAL_KOBIL_SCT is not set # CONFIG_USB_SERIAL_KOBIL_SCT is not set
# CONFIG_USB_SERIAL_MCT_U232 is not set # CONFIG_USB_SERIAL_MCT_U232 is not set
# CONFIG_USB_SERIAL_NOKIA_DKU2 is not set
# CONFIG_USB_SERIAL_PL2303 is not set # CONFIG_USB_SERIAL_PL2303 is not set
# CONFIG_USB_SERIAL_HP4X is not set # CONFIG_USB_SERIAL_HP4X is not set
# CONFIG_USB_SERIAL_SAFE is not set # CONFIG_USB_SERIAL_SAFE is not set
...@@ -985,9 +1034,19 @@ CONFIG_NLS_DEFAULT="utf-8" ...@@ -985,9 +1034,19 @@ CONFIG_NLS_DEFAULT="utf-8"
CONFIG_NLS_UTF8=y CONFIG_NLS_UTF8=y
# #
# Profiling support # Library routines
#
CONFIG_CRC_CCITT=y
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
#
# Instrumentation Support
# #
# CONFIG_PROFILING is not set # CONFIG_PROFILING is not set
# CONFIG_KPROBES is not set
# #
# Kernel hacking # Kernel hacking
...@@ -1004,14 +1063,15 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y ...@@ -1004,14 +1063,15 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y
# CONFIG_DEBUG_KOBJECT is not set # CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_INFO is not set
CONFIG_DEBUG_FS=y CONFIG_DEBUG_FS=y
# CONFIG_DEBUG_VM is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_DEBUG_STACKOVERFLOW=y CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_KPROBES is not set
CONFIG_DEBUG_STACK_USAGE=y CONFIG_DEBUG_STACK_USAGE=y
CONFIG_DEBUGGER=y CONFIG_DEBUGGER=y
CONFIG_XMON=y CONFIG_XMON=y
CONFIG_XMON_DEFAULT=y CONFIG_XMON_DEFAULT=y
# CONFIG_PPCDBG is not set
# CONFIG_IRQSTACKS is not set # CONFIG_IRQSTACKS is not set
CONFIG_BOOTX_TEXT=y
# #
# Security options # Security options
...@@ -1051,12 +1111,3 @@ CONFIG_CRYPTO_DES=y ...@@ -1051,12 +1111,3 @@ CONFIG_CRYPTO_DES=y
# #
# Hardware crypto devices # Hardware crypto devices
# #
#
# Library routines
#
CONFIG_CRC_CCITT=y
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
# #
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# Linux kernel version: 2.6.15-rc1 # Linux kernel version: 2.6.15-rc1
# Mon Nov 14 15:27:00 2005 # Tue Nov 15 14:36:55 2005
# #
CONFIG_PPC64=y CONFIG_PPC64=y
CONFIG_64BIT=y CONFIG_64BIT=y
...@@ -144,7 +144,7 @@ CONFIG_FORCE_MAX_ZONEORDER=13 ...@@ -144,7 +144,7 @@ CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_IOMMU_VMERGE=y CONFIG_IOMMU_VMERGE=y
CONFIG_HOTPLUG_CPU=y CONFIG_HOTPLUG_CPU=y
CONFIG_KEXEC=y CONFIG_KEXEC=y
# CONFIG_IRQ_ALL_CPUS is not set CONFIG_IRQ_ALL_CPUS=y
CONFIG_PPC_SPLPAR=y CONFIG_PPC_SPLPAR=y
CONFIG_EEH=y CONFIG_EEH=y
CONFIG_SCANLOG=m CONFIG_SCANLOG=m
......
...@@ -30,10 +30,10 @@ ...@@ -30,10 +30,10 @@
#include <asm/byteorder.h> #include <asm/byteorder.h>
#include <asm/irq.h> #include <asm/irq.h>
#include <asm/machdep.h> #include <asm/machdep.h>
#include <asm/udbg.h>
#include <asm/ppc-pci.h> #include <asm/ppc-pci.h>
#ifdef DEBUG #ifdef DEBUG
#include <asm/udbg.h>
#define DBG(fmt...) udbg_printf(fmt) #define DBG(fmt...) udbg_printf(fmt)
#else #else
#define DBG(fmt...) #define DBG(fmt...)
...@@ -187,7 +187,7 @@ static DEFINE_SPINLOCK(hose_spinlock); ...@@ -187,7 +187,7 @@ static DEFINE_SPINLOCK(hose_spinlock);
/* /*
* pci_controller(phb) initialized common variables. * pci_controller(phb) initialized common variables.
*/ */
void __devinit pci_setup_pci_controller(struct pci_controller *hose) static void __devinit pci_setup_pci_controller(struct pci_controller *hose)
{ {
memset(hose, 0, sizeof(struct pci_controller)); memset(hose, 0, sizeof(struct pci_controller));
...@@ -197,6 +197,65 @@ void __devinit pci_setup_pci_controller(struct pci_controller *hose) ...@@ -197,6 +197,65 @@ void __devinit pci_setup_pci_controller(struct pci_controller *hose)
spin_unlock(&hose_spinlock); spin_unlock(&hose_spinlock);
} }
static void add_linux_pci_domain(struct device_node *dev,
struct pci_controller *phb)
{
struct property *of_prop;
unsigned int size;
of_prop = (struct property *)
get_property(dev, "linux,pci-domain", &size);
if (of_prop != NULL)
return;
WARN_ON(of_prop && size < sizeof(int));
if (of_prop && size < sizeof(int))
of_prop = NULL;
size = sizeof(struct property) + sizeof(int);
if (of_prop == NULL) {
if (mem_init_done)
of_prop = kmalloc(size, GFP_KERNEL);
else
of_prop = alloc_bootmem(size);
}
memset(of_prop, 0, sizeof(struct property));
of_prop->name = "linux,pci-domain";
of_prop->length = sizeof(int);
of_prop->value = (unsigned char *)&of_prop[1];
*((int *)of_prop->value) = phb->global_number;
prom_add_property(dev, of_prop);
}
struct pci_controller * pcibios_alloc_controller(struct device_node *dev)
{
struct pci_controller *phb;
if (mem_init_done)
phb = kmalloc(sizeof(struct pci_controller), GFP_KERNEL);
else
phb = alloc_bootmem(sizeof (struct pci_controller));
if (phb == NULL)
return NULL;
pci_setup_pci_controller(phb);
phb->arch_data = dev;
phb->is_dynamic = mem_init_done;
if (dev)
add_linux_pci_domain(dev, phb);
return phb;
}
void pcibios_free_controller(struct pci_controller *phb)
{
if (phb->arch_data) {
struct device_node *np = phb->arch_data;
int *domain = (int *)get_property(np,
"linux,pci-domain", NULL);
if (domain)
*domain = -1;
}
if (phb->is_dynamic)
kfree(phb);
}
static void __init pcibios_claim_one_bus(struct pci_bus *b) static void __init pcibios_claim_one_bus(struct pci_bus *b)
{ {
struct pci_dev *dev; struct pci_dev *dev;
...@@ -907,9 +966,10 @@ void __devinit pci_process_bridge_OF_ranges(struct pci_controller *hose, ...@@ -907,9 +966,10 @@ void __devinit pci_process_bridge_OF_ranges(struct pci_controller *hose,
* (size depending on dev->n_addr_cells) * (size depending on dev->n_addr_cells)
* cells 4+5 or 5+6: the size of the range * cells 4+5 or 5+6: the size of the range
*/ */
rlen = 0;
hose->io_base_phys = 0;
ranges = (unsigned int *) get_property(dev, "ranges", &rlen); ranges = (unsigned int *) get_property(dev, "ranges", &rlen);
if (ranges == NULL)
return;
hose->io_base_phys = 0;
while ((rlen -= np * sizeof(unsigned int)) >= 0) { while ((rlen -= np * sizeof(unsigned int)) >= 0) {
res = NULL; res = NULL;
pci_space = ranges[0]; pci_space = ranges[0];
...@@ -1107,6 +1167,8 @@ int remap_bus_range(struct pci_bus *bus) ...@@ -1107,6 +1167,8 @@ int remap_bus_range(struct pci_bus *bus)
if (get_bus_io_range(bus, &start_phys, &start_virt, &size)) if (get_bus_io_range(bus, &start_phys, &start_virt, &size))
return 1; return 1;
if (start_phys == 0)
return 1;
printk("mapping IO %lx -> %lx, size: %lx\n", start_phys, start_virt, size); printk("mapping IO %lx -> %lx, size: %lx\n", start_phys, start_virt, size);
if (__ioremap_explicit(start_phys, start_virt, size, if (__ioremap_explicit(start_phys, start_virt, size,
_PAGE_NO_CACHE | _PAGE_GUARDED)) _PAGE_NO_CACHE | _PAGE_GUARDED))
......
...@@ -304,75 +304,18 @@ static int __devinit setup_phb(struct device_node *dev, ...@@ -304,75 +304,18 @@ static int __devinit setup_phb(struct device_node *dev,
struct pci_controller *phb, struct pci_controller *phb,
unsigned int addr_size_words) unsigned int addr_size_words)
{ {
pci_setup_pci_controller(phb);
if (is_python(dev)) if (is_python(dev))
python_countermeasures(dev, addr_size_words); python_countermeasures(dev, addr_size_words);
if (phb_set_bus_ranges(dev, phb)) if (phb_set_bus_ranges(dev, phb))
return 1; return 1;
phb->arch_data = dev;
phb->ops = &rtas_pci_ops; phb->ops = &rtas_pci_ops;
phb->buid = get_phb_buid(dev); phb->buid = get_phb_buid(dev);
return 0; return 0;
} }
static void __devinit add_linux_pci_domain(struct device_node *dev,
struct pci_controller *phb,
struct property *of_prop)
{
memset(of_prop, 0, sizeof(struct property));
of_prop->name = "linux,pci-domain";
of_prop->length = sizeof(phb->global_number);
of_prop->value = (unsigned char *)&of_prop[1];
memcpy(of_prop->value, &phb->global_number, sizeof(phb->global_number));
prom_add_property(dev, of_prop);
}
static struct pci_controller * __init alloc_phb(struct device_node *dev,
unsigned int addr_size_words)
{
struct pci_controller *phb;
struct property *of_prop;
phb = alloc_bootmem(sizeof(struct pci_controller));
if (phb == NULL)
return NULL;
of_prop = alloc_bootmem(sizeof(struct property) +
sizeof(phb->global_number));
if (!of_prop)
return NULL;
if (setup_phb(dev, phb, addr_size_words))
return NULL;
add_linux_pci_domain(dev, phb, of_prop);
return phb;
}
static struct pci_controller * __devinit alloc_phb_dynamic(struct device_node *dev, unsigned int addr_size_words)
{
struct pci_controller *phb;
phb = (struct pci_controller *)kmalloc(sizeof(struct pci_controller),
GFP_KERNEL);
if (phb == NULL)
return NULL;
if (setup_phb(dev, phb, addr_size_words))
return NULL;
phb->is_dynamic = 1;
/* TODO: linux,pci-domain? */
return phb;
}
unsigned long __init find_and_init_phbs(void) unsigned long __init find_and_init_phbs(void)
{ {
struct device_node *node; struct device_node *node;
...@@ -397,10 +340,10 @@ unsigned long __init find_and_init_phbs(void) ...@@ -397,10 +340,10 @@ unsigned long __init find_and_init_phbs(void)
if (node->type == NULL || strcmp(node->type, "pci") != 0) if (node->type == NULL || strcmp(node->type, "pci") != 0)
continue; continue;
phb = alloc_phb(node, root_size_cells); phb = pcibios_alloc_controller(node);
if (!phb) if (!phb)
continue; continue;
setup_phb(node, phb, root_size_cells);
pci_process_bridge_OF_ranges(phb, node, 0); pci_process_bridge_OF_ranges(phb, node, 0);
pci_setup_phb_io(phb, index == 0); pci_setup_phb_io(phb, index == 0);
#ifdef CONFIG_PPC_PSERIES #ifdef CONFIG_PPC_PSERIES
...@@ -446,10 +389,10 @@ struct pci_controller * __devinit init_phb_dynamic(struct device_node *dn) ...@@ -446,10 +389,10 @@ struct pci_controller * __devinit init_phb_dynamic(struct device_node *dn)
root_size_cells = prom_n_size_cells(root); root_size_cells = prom_n_size_cells(root);
primary = list_empty(&hose_list); primary = list_empty(&hose_list);
phb = alloc_phb_dynamic(dn, root_size_cells); phb = pcibios_alloc_controller(dn);
if (!phb) if (!phb)
return NULL; return NULL;
setup_phb(dn, phb, root_size_cells);
pci_process_bridge_OF_ranges(phb, dn, primary); pci_process_bridge_OF_ranges(phb, dn, primary);
pci_setup_phb_io_dynamic(phb, primary); pci_setup_phb_io_dynamic(phb, primary);
...@@ -505,8 +448,7 @@ int pcibios_remove_root_bus(struct pci_controller *phb) ...@@ -505,8 +448,7 @@ int pcibios_remove_root_bus(struct pci_controller *phb)
} }
list_del(&phb->list_node); list_del(&phb->list_node);
if (phb->is_dynamic) pcibios_free_controller(phb);
kfree(phb);
return 0; return 0;
} }
......
...@@ -59,6 +59,7 @@ ...@@ -59,6 +59,7 @@
#undef DEBUG #undef DEBUG
#ifdef DEBUG #ifdef DEBUG
#include <asm/udbg.h>
#define DBG(fmt...) udbg_printf(fmt) #define DBG(fmt...) udbg_printf(fmt)
#else #else
#define DBG(fmt...) #define DBG(fmt...)
......
...@@ -49,15 +49,16 @@ ...@@ -49,15 +49,16 @@
#include <asm/paca.h> #include <asm/paca.h>
#endif #endif
int smp_hw_index[NR_CPUS];
struct thread_info *secondary_ti;
#ifdef DEBUG #ifdef DEBUG
#include <asm/udbg.h>
#define DBG(fmt...) udbg_printf(fmt) #define DBG(fmt...) udbg_printf(fmt)
#else #else
#define DBG(fmt...) #define DBG(fmt...)
#endif #endif
int smp_hw_index[NR_CPUS];
struct thread_info *secondary_ti;
cpumask_t cpu_possible_map = CPU_MASK_NONE; cpumask_t cpu_possible_map = CPU_MASK_NONE;
cpumask_t cpu_online_map = CPU_MASK_NONE; cpumask_t cpu_online_map = CPU_MASK_NONE;
cpumask_t cpu_sibling_map[NR_CPUS] = { [0 ... NR_CPUS-1] = CPU_MASK_NONE }; cpumask_t cpu_sibling_map[NR_CPUS] = { [0 ... NR_CPUS-1] = CPU_MASK_NONE };
......
...@@ -35,6 +35,7 @@ V_FUNCTION_BEGIN(__kernel_sync_dicache) ...@@ -35,6 +35,7 @@ V_FUNCTION_BEGIN(__kernel_sync_dicache)
subf r8,r6,r4 /* compute length */ subf r8,r6,r4 /* compute length */
add r8,r8,r5 /* ensure we get enough */ add r8,r8,r5 /* ensure we get enough */
srwi. r8,r8,7 /* compute line count */ srwi. r8,r8,7 /* compute line count */
crclr cr0*4+so
beqlr /* nothing to do? */ beqlr /* nothing to do? */
mtctr r8 mtctr r8
mr r3,r6 mr r3,r6
...@@ -58,6 +59,7 @@ V_FUNCTION_END(__kernel_sync_dicache) ...@@ -58,6 +59,7 @@ V_FUNCTION_END(__kernel_sync_dicache)
*/ */
V_FUNCTION_BEGIN(__kernel_sync_dicache_p5) V_FUNCTION_BEGIN(__kernel_sync_dicache_p5)
.cfi_startproc .cfi_startproc
crclr cr0*4+so
sync sync
isync isync
li r3,0 li r3,0
......
...@@ -54,7 +54,6 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map) ...@@ -54,7 +54,6 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map)
.cfi_startproc .cfi_startproc
mflr r12 mflr r12
.cfi_register lr,r12 .cfi_register lr,r12
mr r4,r3 mr r4,r3
bl __get_datapage@local bl __get_datapage@local
mtlr r12 mtlr r12
...@@ -63,6 +62,7 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map) ...@@ -63,6 +62,7 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map)
beqlr beqlr
li r0,__NR_syscalls li r0,__NR_syscalls
stw r0,0(r4) stw r0,0(r4)
crclr cr0*4+so
blr blr
.cfi_endproc .cfi_endproc
V_FUNCTION_END(__kernel_get_syscall_map) V_FUNCTION_END(__kernel_get_syscall_map)
...@@ -80,6 +80,7 @@ V_FUNCTION_BEGIN(__kernel_get_tbfreq) ...@@ -80,6 +80,7 @@ V_FUNCTION_BEGIN(__kernel_get_tbfreq)
lwz r4,(CFG_TB_TICKS_PER_SEC + 4)(r3) lwz r4,(CFG_TB_TICKS_PER_SEC + 4)(r3)
lwz r3,CFG_TB_TICKS_PER_SEC(r3) lwz r3,CFG_TB_TICKS_PER_SEC(r3)
mtlr r12 mtlr r12
crclr cr0*4+so
blr blr
.cfi_endproc .cfi_endproc
V_FUNCTION_END(__kernel_get_tbfreq) V_FUNCTION_END(__kernel_get_tbfreq)
...@@ -59,6 +59,7 @@ V_FUNCTION_BEGIN(__kernel_gettimeofday) ...@@ -59,6 +59,7 @@ V_FUNCTION_BEGIN(__kernel_gettimeofday)
stw r5,TZONE_TZ_DSTTIME(r11) stw r5,TZONE_TZ_DSTTIME(r11)
1: mtlr r12 1: mtlr r12
crclr cr0*4+so
li r3,0 li r3,0
blr blr
...@@ -117,6 +118,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime) ...@@ -117,6 +118,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
mulli r5,r5,1000 mulli r5,r5,1000
stw r5,TSPC32_TV_NSEC(r11) stw r5,TSPC32_TV_NSEC(r11)
mtlr r12 mtlr r12
crclr cr0*4+so
li r3,0 li r3,0
blr blr
...@@ -185,6 +187,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime) ...@@ -185,6 +187,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
stw r4,TSPC32_TV_NSEC(r11) stw r4,TSPC32_TV_NSEC(r11)
mtlr r12 mtlr r12
crclr cr0*4+so
li r3,0 li r3,0
blr blr
...@@ -219,6 +222,7 @@ V_FUNCTION_BEGIN(__kernel_clock_getres) ...@@ -219,6 +222,7 @@ V_FUNCTION_BEGIN(__kernel_clock_getres)
li r3,0 li r3,0
cmpli cr0,r4,0 cmpli cr0,r4,0
crclr cr0*4+so
beqlr beqlr
lis r5,CLOCK_REALTIME_RES@h lis r5,CLOCK_REALTIME_RES@h
ori r5,r5,CLOCK_REALTIME_RES@l ori r5,r5,CLOCK_REALTIME_RES@l
......
...@@ -35,6 +35,7 @@ V_FUNCTION_BEGIN(__kernel_sync_dicache) ...@@ -35,6 +35,7 @@ V_FUNCTION_BEGIN(__kernel_sync_dicache)
subf r8,r6,r4 /* compute length */ subf r8,r6,r4 /* compute length */
add r8,r8,r5 /* ensure we get enough */ add r8,r8,r5 /* ensure we get enough */
srwi. r8,r8,7 /* compute line count */ srwi. r8,r8,7 /* compute line count */
crclr cr0*4+so
beqlr /* nothing to do? */ beqlr /* nothing to do? */
mtctr r8 mtctr r8
mr r3,r6 mr r3,r6
...@@ -58,6 +59,7 @@ V_FUNCTION_END(__kernel_sync_dicache) ...@@ -58,6 +59,7 @@ V_FUNCTION_END(__kernel_sync_dicache)
*/ */
V_FUNCTION_BEGIN(__kernel_sync_dicache_p5) V_FUNCTION_BEGIN(__kernel_sync_dicache_p5)
.cfi_startproc .cfi_startproc
crclr cr0*4+so
sync sync
isync isync
li r3,0 li r3,0
......
...@@ -54,12 +54,12 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map) ...@@ -54,12 +54,12 @@ V_FUNCTION_BEGIN(__kernel_get_syscall_map)
.cfi_startproc .cfi_startproc
mflr r12 mflr r12
.cfi_register lr,r12 .cfi_register lr,r12
mr r4,r3 mr r4,r3
bl V_LOCAL_FUNC(__get_datapage) bl V_LOCAL_FUNC(__get_datapage)
mtlr r12 mtlr r12
addi r3,r3,CFG_SYSCALL_MAP64 addi r3,r3,CFG_SYSCALL_MAP64
cmpli cr0,r4,0 cmpli cr0,r4,0
crclr cr0*4+so
beqlr beqlr
li r0,__NR_syscalls li r0,__NR_syscalls
stw r0,0(r4) stw r0,0(r4)
...@@ -80,6 +80,7 @@ V_FUNCTION_BEGIN(__kernel_get_tbfreq) ...@@ -80,6 +80,7 @@ V_FUNCTION_BEGIN(__kernel_get_tbfreq)
bl V_LOCAL_FUNC(__get_datapage) bl V_LOCAL_FUNC(__get_datapage)
ld r3,CFG_TB_TICKS_PER_SEC(r3) ld r3,CFG_TB_TICKS_PER_SEC(r3)
mtlr r12 mtlr r12
crclr cr0*4+so
blr blr
.cfi_endproc .cfi_endproc
V_FUNCTION_END(__kernel_get_tbfreq) V_FUNCTION_END(__kernel_get_tbfreq)
...@@ -52,6 +52,7 @@ V_FUNCTION_BEGIN(__kernel_gettimeofday) ...@@ -52,6 +52,7 @@ V_FUNCTION_BEGIN(__kernel_gettimeofday)
stw r4,TZONE_TZ_MINWEST(r10) stw r4,TZONE_TZ_MINWEST(r10)
stw r5,TZONE_TZ_DSTTIME(r10) stw r5,TZONE_TZ_DSTTIME(r10)
1: mtlr r12 1: mtlr r12
crclr cr0*4+so
li r3,0 /* always success */ li r3,0 /* always success */
blr blr
.cfi_endproc .cfi_endproc
...@@ -99,6 +100,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime) ...@@ -99,6 +100,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
std r0,TSPC64_TV_NSEC(r11) /* store nsec in tp */ std r0,TSPC64_TV_NSEC(r11) /* store nsec in tp */
mtlr r12 mtlr r12
crclr cr0*4+so
li r3,0 li r3,0
blr blr
...@@ -159,6 +161,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime) ...@@ -159,6 +161,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
std r7,TSPC64_TV_NSEC(r11) std r7,TSPC64_TV_NSEC(r11)
mtlr r12 mtlr r12
crclr cr0*4+so
li r3,0 li r3,0
blr blr
...@@ -193,6 +196,7 @@ V_FUNCTION_BEGIN(__kernel_clock_getres) ...@@ -193,6 +196,7 @@ V_FUNCTION_BEGIN(__kernel_clock_getres)
li r3,0 li r3,0
cmpli cr0,r4,0 cmpli cr0,r4,0
crclr cr0*4+so
beqlr beqlr
lis r5,CLOCK_REALTIME_RES@h lis r5,CLOCK_REALTIME_RES@h
ori r5,r5,CLOCK_REALTIME_RES@l ori r5,r5,CLOCK_REALTIME_RES@l
......
...@@ -22,35 +22,38 @@ ...@@ -22,35 +22,38 @@
#include "mmu_decl.h" /* for __max_low_memory */ #include "mmu_decl.h" /* for __max_low_memory */
#endif #endif
struct lmb lmb;
#undef DEBUG #undef DEBUG
#ifdef DEBUG
#include <asm/udbg.h>
#define DBG(fmt...) udbg_printf(fmt)
#else
#define DBG(fmt...)
#endif
struct lmb lmb;
void lmb_dump_all(void) void lmb_dump_all(void)
{ {
#ifdef DEBUG #ifdef DEBUG
unsigned long i; unsigned long i;
udbg_printf("lmb_dump_all:\n"); DBG("lmb_dump_all:\n");
udbg_printf(" memory.cnt = 0x%lx\n", DBG(" memory.cnt = 0x%lx\n", lmb.memory.cnt);
lmb.memory.cnt); DBG(" memory.size = 0x%lx\n", lmb.memory.size);
udbg_printf(" memory.size = 0x%lx\n",
lmb.memory.size);
for (i=0; i < lmb.memory.cnt ;i++) { for (i=0; i < lmb.memory.cnt ;i++) {
udbg_printf(" memory.region[0x%x].base = 0x%lx\n", DBG(" memory.region[0x%x].base = 0x%lx\n",
i, lmb.memory.region[i].base); i, lmb.memory.region[i].base);
udbg_printf(" .size = 0x%lx\n", DBG(" .size = 0x%lx\n",
lmb.memory.region[i].size); lmb.memory.region[i].size);
} }
udbg_printf("\n reserved.cnt = 0x%lx\n", DBG("\n reserved.cnt = 0x%lx\n", lmb.reserved.cnt);
lmb.reserved.cnt); DBG(" reserved.size = 0x%lx\n", lmb.reserved.size);
udbg_printf(" reserved.size = 0x%lx\n",
lmb.reserved.size);
for (i=0; i < lmb.reserved.cnt ;i++) { for (i=0; i < lmb.reserved.cnt ;i++) {
udbg_printf(" reserved.region[0x%x].base = 0x%lx\n", DBG(" reserved.region[0x%x].base = 0x%lx\n",
i, lmb.reserved.region[i].base); i, lmb.reserved.region[i].base);
udbg_printf(" .size = 0x%lx\n", DBG(" .size = 0x%lx\n",
lmb.reserved.region[i].size); lmb.reserved.region[i].size);
} }
#endif /* DEBUG */ #endif /* DEBUG */
......
...@@ -244,10 +244,9 @@ unsigned long __init find_and_init_phbs(void) ...@@ -244,10 +244,9 @@ unsigned long __init find_and_init_phbs(void)
if (ret == 0) { if (ret == 0) {
printk("bus %d appears to exist\n", bus); printk("bus %d appears to exist\n", bus);
phb = (struct pci_controller *)kmalloc(sizeof(struct pci_controller), GFP_KERNEL); phb = pcibios_alloc_controller(NULL);
if (phb == NULL) if (phb == NULL)
return -ENOMEM; return -ENOMEM;
pci_setup_pci_controller(phb);
phb->pci_mem_offset = phb->local_number = bus; phb->pci_mem_offset = phb->local_number = bus;
phb->first_busno = bus; phb->first_busno = bus;
......
...@@ -326,26 +326,12 @@ static int __init add_bridge(struct device_node *dev) ...@@ -326,26 +326,12 @@ static int __init add_bridge(struct device_node *dev)
dev->full_name); dev->full_name);
} }
hose = alloc_bootmem(sizeof(struct pci_controller)); hose = pcibios_alloc_controller(dev);
if (hose == NULL) if (hose == NULL)
return -ENOMEM; return -ENOMEM;
pci_setup_pci_controller(hose);
hose->arch_data = dev;
hose->first_busno = bus_range ? bus_range[0] : 0; hose->first_busno = bus_range ? bus_range[0] : 0;
hose->last_busno = bus_range ? bus_range[1] : 0xff; hose->last_busno = bus_range ? bus_range[1] : 0xff;
of_prop = alloc_bootmem(sizeof(struct property) +
sizeof(hose->global_number));
if (of_prop) {
memset(of_prop, 0, sizeof(struct property));
of_prop->name = "linux,pci-domain";
of_prop->length = sizeof(hose->global_number);
of_prop->value = (unsigned char *)&of_prop[1];
memcpy(of_prop->value, &hose->global_number, sizeof(hose->global_number));
prom_add_property(dev, of_prop);
}
disp_name = NULL; disp_name = NULL;
if (device_is_compatible(dev, "u3-agp")) { if (device_is_compatible(dev, "u3-agp")) {
setup_u3_agp(hose); setup_u3_agp(hose);
......
...@@ -2362,6 +2362,14 @@ static struct pmac_mb_def pmac_mb_defs[] = { ...@@ -2362,6 +2362,14 @@ static struct pmac_mb_def pmac_mb_defs[] = {
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features, PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE, PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
}, },
{ "PowerBook5,8", "PowerBook G4 15\"",
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
},
{ "PowerBook5,9", "PowerBook G4 17\"",
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
},
{ "PowerBook6,1", "PowerBook G4 12\"", { "PowerBook6,1", "PowerBook G4 12\"",
PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features, PMAC_TYPE_UNKNOWN_INTREPID, intrepid_features,
PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE, PMAC_MB_MAY_SLEEP | PMAC_MB_HAS_FW_POWER | PMAC_MB_MOBILE,
......
...@@ -640,15 +640,16 @@ static void __init setup_u3_ht(struct pci_controller* hose) ...@@ -640,15 +640,16 @@ static void __init setup_u3_ht(struct pci_controller* hose)
* the reg address cell, we shall fix that by killing struct * the reg address cell, we shall fix that by killing struct
* reg_property and using some accessor functions instead * reg_property and using some accessor functions instead
*/ */
hose->cfg_data = (volatile unsigned char *)ioremap(0xf2000000, 0x02000000); hose->cfg_data = (volatile unsigned char *)ioremap(0xf2000000,
0x02000000);
/* /*
* /ht node doesn't expose a "ranges" property, so we "remove" regions that * /ht node doesn't expose a "ranges" property, so we "remove"
* have been allocated to AGP. So far, this version of the code doesn't assign * regions that have been allocated to AGP. So far, this version of
* any of the 0xfxxxxxxx "fine" memory regions to /ht. * the code doesn't assign any of the 0xfxxxxxxx "fine" memory regions
* We need to fix that sooner or later by either parsing all child "ranges" * to /ht. We need to fix that sooner or later by either parsing all
* properties or figuring out the U3 address space decoding logic and * child "ranges" properties or figuring out the U3 address space
* then read its configuration register (if any). * decoding logic and then read its configuration register (if any).
*/ */
hose->io_base_phys = 0xf4000000; hose->io_base_phys = 0xf4000000;
hose->pci_io_size = 0x00400000; hose->pci_io_size = 0x00400000;
...@@ -671,10 +672,10 @@ static void __init setup_u3_ht(struct pci_controller* hose) ...@@ -671,10 +672,10 @@ static void __init setup_u3_ht(struct pci_controller* hose)
return; return;
} }
/* We "remove" the AGP resources from the resources allocated to HT, that /* We "remove" the AGP resources from the resources allocated to HT,
* is we create "holes". However, that code does assumptions that so far * that is we create "holes". However, that code does assumptions
* happen to be true (cross fingers...), typically that resources in the * that so far happen to be true (cross fingers...), typically that
* AGP node are properly ordered * resources in the AGP node are properly ordered
*/ */
cur = 0; cur = 0;
for (i=0; i<3; i++) { for (i=0; i<3; i++) {
...@@ -684,23 +685,30 @@ static void __init setup_u3_ht(struct pci_controller* hose) ...@@ -684,23 +685,30 @@ static void __init setup_u3_ht(struct pci_controller* hose)
/* We don't care about "fine" resources */ /* We don't care about "fine" resources */
if (res->start >= 0xf0000000) if (res->start >= 0xf0000000)
continue; continue;
/* Check if it's just a matter of "shrinking" us in one direction */ /* Check if it's just a matter of "shrinking" us in one
* direction
*/
if (hose->mem_resources[cur].start == res->start) { if (hose->mem_resources[cur].start == res->start) {
DBG("U3/HT: shrink start of %d, %08lx -> %08lx\n", DBG("U3/HT: shrink start of %d, %08lx -> %08lx\n",
cur, hose->mem_resources[cur].start, res->end + 1); cur, hose->mem_resources[cur].start,
res->end + 1);
hose->mem_resources[cur].start = res->end + 1; hose->mem_resources[cur].start = res->end + 1;
continue; continue;
} }
if (hose->mem_resources[cur].end == res->end) { if (hose->mem_resources[cur].end == res->end) {
DBG("U3/HT: shrink end of %d, %08lx -> %08lx\n", DBG("U3/HT: shrink end of %d, %08lx -> %08lx\n",
cur, hose->mem_resources[cur].end, res->start - 1); cur, hose->mem_resources[cur].end,
res->start - 1);
hose->mem_resources[cur].end = res->start - 1; hose->mem_resources[cur].end = res->start - 1;
continue; continue;
} }
/* No, it's not the case, we need a hole */ /* No, it's not the case, we need a hole */
if (cur == 2) { if (cur == 2) {
/* not enough resources for a hole, we drop part of the range */ /* not enough resources for a hole, we drop part
printk(KERN_WARNING "Running out of resources for /ht host !\n"); * of the range
*/
printk(KERN_WARNING "Running out of resources"
" for /ht host !\n");
hose->mem_resources[cur].end = res->start - 1; hose->mem_resources[cur].end = res->start - 1;
continue; continue;
} }
...@@ -714,17 +722,6 @@ static void __init setup_u3_ht(struct pci_controller* hose) ...@@ -714,17 +722,6 @@ static void __init setup_u3_ht(struct pci_controller* hose)
hose->mem_resources[cur-1].end = res->start - 1; hose->mem_resources[cur-1].end = res->start - 1;
} }
} }
/* XXX this needs to be converged between ppc32 and ppc64... */
static struct pci_controller * __init pcibios_alloc_controller(void)
{
struct pci_controller *hose;
hose = alloc_bootmem(sizeof(struct pci_controller));
if (hose)
pci_setup_pci_controller(hose);
return hose;
}
#endif #endif
/* /*
...@@ -756,11 +753,16 @@ static int __init add_bridge(struct device_node *dev) ...@@ -756,11 +753,16 @@ static int __init add_bridge(struct device_node *dev)
#endif #endif
bus_range = (int *) get_property(dev, "bus-range", &len); bus_range = (int *) get_property(dev, "bus-range", &len);
if (bus_range == NULL || len < 2 * sizeof(int)) { if (bus_range == NULL || len < 2 * sizeof(int)) {
printk(KERN_WARNING "Can't get bus-range for %s, assume bus 0\n", printk(KERN_WARNING "Can't get bus-range for %s, assume"
dev->full_name); " bus 0\n", dev->full_name);
} }
/* XXX Different prototypes, to be merged */
#ifdef CONFIG_PPC64
hose = pcibios_alloc_controller(dev);
#else
hose = pcibios_alloc_controller(); hose = pcibios_alloc_controller();
#endif
if (!hose) if (!hose)
return -ENOMEM; return -ENOMEM;
hose->arch_data = dev; hose->arch_data = dev;
...@@ -768,7 +770,7 @@ static int __init add_bridge(struct device_node *dev) ...@@ -768,7 +770,7 @@ static int __init add_bridge(struct device_node *dev)
hose->last_busno = bus_range ? bus_range[1] : 0xff; hose->last_busno = bus_range ? bus_range[1] : 0xff;
disp_name = NULL; disp_name = NULL;
#ifdef CONFIG_POWER4 #ifdef CONFIG_PPC64
if (device_is_compatible(dev, "u3-agp")) { if (device_is_compatible(dev, "u3-agp")) {
setup_u3_agp(hose); setup_u3_agp(hose);
disp_name = "U3-AGP"; disp_name = "U3-AGP";
......
...@@ -51,6 +51,7 @@ ...@@ -51,6 +51,7 @@
#include "plpar_wrappers.h" #include "plpar_wrappers.h"
#ifdef DEBUG #ifdef DEBUG
#include <asm/udbg.h>
#define DBG(fmt...) udbg_printf(fmt) #define DBG(fmt...) udbg_printf(fmt)
#else #else
#define DBG(fmt...) #define DBG(fmt...)
......
...@@ -602,7 +602,19 @@ void parse_bootinfo(struct bi_record *rec) ...@@ -602,7 +602,19 @@ void parse_bootinfo(struct bi_record *rec)
#endif /* CONFIG_BLK_DEV_INITRD */ #endif /* CONFIG_BLK_DEV_INITRD */
#ifdef CONFIG_PPC_MULTIPLATFORM #ifdef CONFIG_PPC_MULTIPLATFORM
case BI_MACHTYPE: case BI_MACHTYPE:
/* Machine types changed with the merge. Since the
* bootinfo are now deprecated, we can just hard code
* the appropriate conversion here for when we are
* called with yaboot which passes us a machine type
* this way.
*/
switch(data[0]) {
case 1: _machine = _MACH_prep; break;
case 2: _machine = _MACH_Pmac; break;
case 4: _machine = _MACH_chrp; break;
default:
_machine = data[0]; _machine = data[0];
}
break; break;
#endif #endif
case BI_MEMSIZE: case BI_MEMSIZE:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment