This patch adds a target for the IBM PowerXCell Accelerator Board. (aka mvXCell-8i from MatrixVision or GigaAccel 180 from Fixstars)

http://us.fixstars.com/products/gigaaccel/

This build will create zImage suitable for TFTP boot image.

* v2
- add axonram device driver
- switch to 2.6.30.1

Signed-off-by: Akinobu Mita <mita@fixstars.com>

SVN-Revision: 16860
master
Florian Fainelli 16 years ago
parent a4f397c5a5
commit 2ec0cba393
  1. 15
      package/kernel/modules/block.mk
  2. 29
      target/linux/pxcab/Makefile
  3. 2
      target/linux/pxcab/base-files/etc/preinit.arch
  4. 497
      target/linux/pxcab/config-2.6.30
  5. 20
      target/linux/pxcab/image/Makefile
  6. 107
      target/linux/pxcab/patches-2.6.30/0001-powerpc-mpic-Fix-mapping-of-DCR-based-MPIC-variants.patch
  7. 6
      toolchain/Config.in
  8. 1
      toolchain/gcc/Config.in
  9. 1
      toolchain/gcc/Config.version

@ -374,3 +374,18 @@ define KernelPackage/ps3vram/description
endef
$(eval $(call KernelPackage,ps3vram))
define KernelPackage/axonram
SUBMENU:=$(BLOCK_MENU)
TITLE:=Axon DDR2 memory device driver
DEPENDS:=@TARGET_pxcab
KCONFIG:=CONFIG_AXON_RAM
FILES:=$(LINUX_DIR)/arch/powerpc/sysdev/axonram.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,01,axonram)
endef
define KernelPackage/axonram/description
Kernel support for Axon DDR2 memory device
endef
$(eval $(call KernelPackage,axonram))

@ -0,0 +1,29 @@
#
# Copyright (C) 2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
ARCH:=powerpc
BOARD:=pxcab
BOARDNAME:=PowerXCell Accelerator Board
FEATURES:=fpu ramdisk
LINUX_VERSION:=2.6.30.1
KERNEL_CC:=
include $(INCLUDE_DIR)/target.mk
define Target/Description
Build zImage for the IBM PowerXCell Accelerator Board
(aka mvXCell-8i from MatrixVision or GigaAccel 180 from Fixstars)
endef
KERNELNAME:="zImage"
DEFAULT_PACKAGES += kmod-tg3
$(eval $(call BuildTarget))

@ -0,0 +1,2 @@
mount -t proc none /proc
grep 'failsafe=' /proc/cmdline > /dev/null && export FAILSAFE=true

@ -0,0 +1,497 @@
CONFIG_64BIT=y
# CONFIG_AGP is not set
CONFIG_ALTIVEC=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_ARCH_HAS_ILOG2_U64=y
CONFIG_ARCH_HAS_WALK_MEMORY=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_ARCH_MEMORY_PROBE=y
CONFIG_ARCH_NO_VIRT_TO_BUS=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
# CONFIG_ARPD is not set
CONFIG_AUDIT_ARCH=y
CONFIG_AXON_RAM=m
# CONFIG_BACKTRACE_SELF_TEST is not set
CONFIG_BASE_SMALL=0
# CONFIG_BINARY_PRINTF is not set
CONFIG_BITREVERSE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=65535
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_BLOCK_COMPAT=y
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
# CONFIG_BOOTX_TEXT is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
CONFIG_BOUNCE=y
# CONFIG_BRIDGE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_CBE_CPUFREQ=y
# CONFIG_CBE_CPUFREQ_PMI_ENABLE is not set
CONFIG_CBE_CPUFREQ_SPU_GOVERNOR=y
CONFIG_CBE_RAS=y
CONFIG_CBE_THERM=y
# CONFIG_CGROUP_SCHED is not set
CONFIG_CMDLINE_BOOL=y
# CONFIG_CODE_PATCHING_SELFTEST is not set
CONFIG_COMPAT=y
CONFIG_COMPAT_BINFMT_ELF=y
CONFIG_COMPAT_BRK=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_FREQ_DEBUG is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CRASH_DUMP is not set
CONFIG_CRC16=y
CONFIG_CRC_CCITT=m
# CONFIG_CRYPTO is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_FS is not set
CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_SHIRQ is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_WRITECOUNT is not set
CONFIG_DECOMPRESS_LZMA=y
# CONFIG_DEFAULT_UIMAGE is not set
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DETECT_SOFTLOCKUP=y
CONFIG_DEVKMEM=y
CONFIG_DEVPORT=y
CONFIG_DNOTIFY=y
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_EARLY_PRINTK=y
# CONFIG_EDAC is not set
# CONFIG_EEH is not set
CONFIG_ELF_CORE=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
# CONFIG_EXT4DEV_COMPAT is not set
CONFIG_EXT4_FS=y
# CONFIG_EXT4_FS_XATTR is not set
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_FAT_FS=y
# CONFIG_FAULT_INJECTION is not set
CONFIG_FB=y
# CONFIG_FB_3DFX is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_BACKLIGHT is not set
# CONFIG_FB_BOOT_VESA_SUPPORT is not set
# CONFIG_FB_BROADSHEET is not set
# CONFIG_FB_CARMINE is not set
# CONFIG_FB_CFB_COPYAREA is not set
# CONFIG_FB_CFB_FILLRECT is not set
# CONFIG_FB_CFB_IMAGEBLIT is not set
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_DDC is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_MB862XX is not set
# CONFIG_FB_METRONOME is not set
# CONFIG_FB_MODE_HELPERS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_OF is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_S3 is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_VIA is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set
# CONFIG_FIRMWARE_EDID is not set
CONFIG_FIRMWARE_IN_KERNEL=y
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_FONTS is not set
CONFIG_FONT_8x16=y
CONFIG_FONT_8x8=y
CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FRAME_WARN=2048
# CONFIG_FSL_ULI1575 is not set
# CONFIG_FTR_FIXUP_SELFTEST is not set
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_ISA_DMA=y
# CONFIG_GENERIC_TBSYNC is not set
CONFIG_GENERIC_TIME_VSYSCALL=y
# CONFIG_GEN_RTC is not set
CONFIG_GROUP_SCHED=y
# CONFIG_HAMRADIO is not set
# CONFIG_HANGCHECK_TIMER is not set
CONFIG_HAS_DMA=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
# CONFIG_HAS_RAPIDIO is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_HAVE_IDE=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_HAVE_LMB=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_HAVE_MLOCK=y
CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_HAVE_SYSCALL_WRAPPERS=y
CONFIG_HID=y
CONFIG_HID_APPLE=y
CONFIG_HID_BELKIN=y
CONFIG_HID_CHERRY=y
CONFIG_HID_EZKEY=y
# CONFIG_HID_KENSINGTON is not set
# CONFIG_HID_KYE is not set
CONFIG_HID_LOGITECH=y
CONFIG_HID_MICROSOFT=y
# CONFIG_HID_NTRIG is not set
CONFIG_HID_SONY=y
CONFIG_HID_SUNPLUS=y
CONFIG_HID_SUPPORT=y
# CONFIG_HID_TOPSEED is not set
# CONFIG_HIGH_RES_TIMERS is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HVCS is not set
CONFIG_HVC_CONSOLE=y
CONFIG_HVC_DRIVER=y
CONFIG_HVC_IRQ=y
# CONFIG_HVC_RTAS is not set
# CONFIG_HVC_UDBG is not set
CONFIG_HW_CONSOLE=y
# CONFIG_HW_RANDOM is not set
CONFIG_HZ=250
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_I2C is not set
# CONFIG_IBMEBUS is not set
CONFIG_IBMVIO=y
# CONFIG_IBM_BSR is not set
CONFIG_IBM_NEW_EMAC_EMAC4=y
CONFIG_IBM_NEW_EMAC_RGMII=y
CONFIG_IBM_NEW_EMAC_TAH=y
CONFIG_IBM_NEW_EMAC_ZMII=y
CONFIG_INITRAMFS_ROOT_GID=500
CONFIG_INITRAMFS_ROOT_UID=500
CONFIG_INITRAMFS_SOURCE="/home/mita/scm/openwrt/build_dir/target-powerpc_uClibc-0.9.30.1/root-pxcab /home/mita/scm/openwrt/target/linux/generic-2.6/image/initramfs-base-files.txt"
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_INPUT=y
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_JOYSTICK=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_YEALINK is not set
CONFIG_IOMMU_HELPER=y
# CONFIG_IOMMU_VMERGE is not set
# CONFIG_IPIC is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_MULTICAST is not set
# CONFIG_IRQSTACKS is not set
# CONFIG_IRQ_ALL_CPUS is not set
CONFIG_IRQ_PER_CPU=y
CONFIG_ISA_DMA_API=y
# CONFIG_ISDN is not set
CONFIG_ISO9660_FS=y
CONFIG_JBD=y
CONFIG_JBD2=y
# CONFIG_JOYSTICK_A3D is not set
# CONFIG_JOYSTICK_ADI is not set
# CONFIG_JOYSTICK_ANALOG is not set
# CONFIG_JOYSTICK_COBRA is not set
# CONFIG_JOYSTICK_GF2K is not set
# CONFIG_JOYSTICK_GRIP is not set
# CONFIG_JOYSTICK_GRIP_MP is not set
# CONFIG_JOYSTICK_GUILLEMOT is not set
# CONFIG_JOYSTICK_IFORCE is not set
# CONFIG_JOYSTICK_INTERACT is not set
# CONFIG_JOYSTICK_JOYDUMP is not set
# CONFIG_JOYSTICK_MAGELLAN is not set
# CONFIG_JOYSTICK_SIDEWINDER is not set
# CONFIG_JOYSTICK_SPACEBALL is not set
# CONFIG_JOYSTICK_SPACEORB is not set
# CONFIG_JOYSTICK_STINGER is not set
# CONFIG_JOYSTICK_TMDC is not set
# CONFIG_JOYSTICK_TWIDJOY is not set
# CONFIG_JOYSTICK_WARRIOR is not set
# CONFIG_JOYSTICK_XPAD is not set
# CONFIG_JOYSTICK_ZHENHUA is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_KERNEL_START=0xc000000000000000
CONFIG_KEXEC=y
# CONFIG_KGDB is not set
# CONFIG_LEDS_TRIGGERS is not set
CONFIG_LOCK_KERNEL=y
# CONFIG_LOCK_STAT is not set
# CONFIG_LOGO is not set
CONFIG_LOG_BUF_SHIFT=15
# CONFIG_LPARCFG is not set
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTPLUG_SPARSE=y
# CONFIG_MEMORY_HOTREMOVE is not set
CONFIG_MIGRATION=y
# CONFIG_MINI_FO is not set
# CONFIG_MISC_DEVICES is not set
CONFIG_MMIO_NVRAM=y
CONFIG_MPIC=y
# CONFIG_MPIC_WEIRD is not set
CONFIG_MSDOS_FS=y
# CONFIG_MSI_BITMAP_SELFTEST is not set
CONFIG_MTD_OF_PARTS=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_NEED_MULTIPLE_NODES=y
# CONFIG_NETFILTER is not set
# CONFIG_NETWORK_FILESYSTEMS is not set
# CONFIG_NET_ETHERNET is not set
CONFIG_NLS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NODES_SHIFT=4
CONFIG_NODES_SPAN_OTHER_NODES=y
CONFIG_NR_CPUS=2
CONFIG_NUMA=y
CONFIG_OF=y
CONFIG_OF_DEVICE=y
# CONFIG_PACKET_MMAP is not set
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_PAGE_OFFSET=0xc000000000000000
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_PCI=y
# CONFIG_PCIEPORTBUS is not set
# CONFIG_PCI_DEBUG is not set
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_PHYLIB=y
# CONFIG_PHYP_DUMP is not set
CONFIG_PHYSICAL_START=0x00000000
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_POWER3=y
CONFIG_POWER4=y
# CONFIG_POWER4_ONLY is not set
CONFIG_PPC=y
CONFIG_PPC64=y
# CONFIG_PPC_16K_PAGES is not set
# CONFIG_PPC_256K_PAGES is not set
CONFIG_PPC_4K_PAGES=y
# CONFIG_PPC_64K_PAGES is not set
# CONFIG_PPC_970_NAP is not set
CONFIG_PPC_BOOK3S=y
CONFIG_PPC_CELL=y
# CONFIG_PPC_CELLEB is not set
CONFIG_PPC_CELL_COMMON=y
CONFIG_PPC_CELL_NATIVE=y
# CONFIG_PPC_CELL_QPACE is not set
# CONFIG_PPC_CLOCK is not set
CONFIG_PPC_DCR=y
CONFIG_PPC_DCR_MMIO=y
# CONFIG_PPC_DCR_NATIVE is not set
# CONFIG_PPC_EARLY_DEBUG is not set
CONFIG_PPC_FPU=y
# CONFIG_PPC_HAS_HASH_64K is not set
CONFIG_PPC_I8259=y
CONFIG_PPC_IBM_CELL_BLADE=y
# CONFIG_PPC_IBM_CELL_POWERBUTTON is not set
CONFIG_PPC_IBM_CELL_RESETBUTTON=y
CONFIG_PPC_INDIRECT_IO=y
# CONFIG_PPC_INDIRECT_PCI is not set
# CONFIG_PPC_ISERIES is not set
# CONFIG_PPC_MAPLE is not set
# CONFIG_PPC_MM_SLICES is not set
# CONFIG_PPC_MPC106 is not set
CONFIG_PPC_NATIVE=y
CONFIG_PPC_OF=y
CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
CONFIG_PPC_OF_PLATFORM_PCI=y
# CONFIG_PPC_PASEMI is not set
CONFIG_PPC_PCI_CHOICE=y
# CONFIG_PPC_PMAC is not set
# CONFIG_PPC_PS3 is not set
CONFIG_PPC_PSERIES=y
CONFIG_PPC_RTAS=y
# CONFIG_PPC_SMLPAR is not set
# CONFIG_PPC_SPLPAR is not set
CONFIG_PPC_STD_MMU=y
CONFIG_PPC_STD_MMU_64=y
CONFIG_PPC_UDBG_16550=y
CONFIG_PPP=m
CONFIG_PPPOE=m
CONFIG_PPP_ASYNC=m
# CONFIG_PQ2ADS is not set
CONFIG_PRINT_STACK_DEPTH=64
CONFIG_PROC_DEVICETREE=y
CONFIG_PROC_PAGE_MONITOR=y
# CONFIG_PROVE_LOCKING is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RELOCATABLE is not set
CONFIG_RTAS_ERROR_LOGGING=y
CONFIG_RTAS_FLASH=y
CONFIG_RTAS_PROC=y
# CONFIG_RT_GROUP_SCHED is not set
# CONFIG_RT_MUTEX_TESTER is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_SCANLOG is not set
# CONFIG_SCHEDSTATS is not set
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHED_HRTICK is not set
CONFIG_SCHED_OMIT_FRAME_POINTER=y
# CONFIG_SCHED_SMT is not set
CONFIG_SCSI=y
# CONFIG_SCSI_LOWLEVEL is not set
# CONFIG_SCSI_PROC_FS is not set
# CONFIG_SERIAL_8250_EXTENDED is not set
# CONFIG_SERIAL_ICOM is not set
# CONFIG_SERIAL_OF_PLATFORM is not set
# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
# CONFIG_SIMPLE_GPIO is not set
# CONFIG_SLAB is not set
CONFIG_SLHC=m
# CONFIG_SLOW_WORK is not set
CONFIG_SLUB=y
CONFIG_SMP=y
CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_MANUAL=y
# CONFIG_SPARSEMEM_VMEMMAP is not set
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
# CONFIG_SPIDER_NET is not set
CONFIG_SPU_BASE=y
CONFIG_SPU_FS=y
# CONFIG_SQUASHFS is not set
CONFIG_STOP_MACHINE=y
# CONFIG_SWAP is not set
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
CONFIG_SYSVIPC_COMPAT=y
# CONFIG_TEXTSEARCH is not set
CONFIG_TIGON3=y
# CONFIG_TIMER_STATS is not set
CONFIG_TRACING_SUPPORT=y
CONFIG_TUNE_CELL=y
# CONFIG_U3_DART is not set
CONFIG_UDBG_RTAS_CONSOLE=y
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug2"
CONFIG_USB=y
# CONFIG_USB_DEVICEFS is not set
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_HCD_PPC_OF=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
CONFIG_USB_HID=y
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_HCD_PPC_OF is not set
CONFIG_USB_STORAGE=y
# CONFIG_USB_STORAGE_ALAUDA is not set
# CONFIG_USB_STORAGE_DATAFAB is not set
# CONFIG_USB_STORAGE_FREECOM is not set
# CONFIG_USB_STORAGE_JUMPSHOT is not set
# CONFIG_USB_STORAGE_KARMA is not set
# CONFIG_USB_STORAGE_SDDR09 is not set
# CONFIG_USB_STORAGE_SDDR55 is not set
# CONFIG_USB_STORAGE_USBAT is not set
CONFIG_USB_SUPPORT=y
# CONFIG_USB_UHCI_HCD is not set
CONFIG_USER_SCHED=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_VFAT_FS=y
# CONFIG_VGA_CONSOLE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_VIRT_CPU_ACCOUNTING=y
# CONFIG_VLAN_8021Q is not set
CONFIG_VM_EVENT_COUNTERS=y
# CONFIG_VSX is not set
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
# CONFIG_WATCHDOG is not set
# CONFIG_WIRELESS is not set
# CONFIG_WLAN_80211 is not set
CONFIG_WORD_SIZE=64
CONFIG_XICS=y
# CONFIG_XMON is not set
# CONFIG_ZISOFS is not set

@ -0,0 +1,20 @@
#
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
define Image/Prepare
cp $(LINUX_DIR)/arch/powerpc/boot/zImage $(KDIR)/zImage
endef
define Image/BuildKernel
mkdir -p $(BIN_DIR)
cp $(KDIR)/zImage $(BIN_DIR)/openwrt-$(BOARD)-zImage
cp $(KDIR)/vmlinux.elf $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.elf
endef
$(eval $(call BuildImage))

@ -0,0 +1,107 @@
commit 5a2642f620eb6e40792822fa0eafe23046fbb55e
Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: Mon Jun 22 16:47:59 2009 +0000
powerpc/mpic: Fix mapping of "DCR" based MPIC variants
Commit 31207dab7d2e63795eb15823947bd2f7025b08e2
"Fix incorrect allocation of interrupt rev-map"
introduced a regression crashing on boot on machines using
a "DCR" based MPIC, such as the Cell blades.
The reason is that the irq host data structure is initialized
much later as a result of that patch, causing our calls to
mpic_map() do be done before we have a host setup.
Unfortunately, this breaks _mpic_map_dcr() which uses the
mpic->irqhost to get to the device node.
This fixes it by, instead, passing the device node explicitely
to mpic_map().
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index 9c3af50..32a2e95 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -279,28 +279,29 @@ static void _mpic_map_mmio(struct mpic *mpic, phys_addr_t phys_addr,
}
#ifdef CONFIG_PPC_DCR
-static void _mpic_map_dcr(struct mpic *mpic, struct mpic_reg_bank *rb,
+static void _mpic_map_dcr(struct mpic *mpic, struct device_node *node,
+ struct mpic_reg_bank *rb,
unsigned int offset, unsigned int size)
{
const u32 *dbasep;
- dbasep = of_get_property(mpic->irqhost->of_node, "dcr-reg", NULL);
+ dbasep = of_get_property(node, "dcr-reg", NULL);
- rb->dhost = dcr_map(mpic->irqhost->of_node, *dbasep + offset, size);
+ rb->dhost = dcr_map(node, *dbasep + offset, size);
BUG_ON(!DCR_MAP_OK(rb->dhost));
}
-static inline void mpic_map(struct mpic *mpic, phys_addr_t phys_addr,
- struct mpic_reg_bank *rb, unsigned int offset,
- unsigned int size)
+static inline void mpic_map(struct mpic *mpic, struct device_node *node,
+ phys_addr_t phys_addr, struct mpic_reg_bank *rb,
+ unsigned int offset, unsigned int size)
{
if (mpic->flags & MPIC_USES_DCR)
- _mpic_map_dcr(mpic, rb, offset, size);
+ _mpic_map_dcr(mpic, node, rb, offset, size);
else
_mpic_map_mmio(mpic, phys_addr, rb, offset, size);
}
#else /* CONFIG_PPC_DCR */
-#define mpic_map(m,p,b,o,s) _mpic_map_mmio(m,p,b,o,s)
+#define mpic_map(m,n,p,b,o,s) _mpic_map_mmio(m,p,b,o,s)
#endif /* !CONFIG_PPC_DCR */
@@ -1152,8 +1153,8 @@ struct mpic * __init mpic_alloc(struct device_node *node,
}
/* Map the global registers */
- mpic_map(mpic, paddr, &mpic->gregs, MPIC_INFO(GREG_BASE), 0x1000);
- mpic_map(mpic, paddr, &mpic->tmregs, MPIC_INFO(TIMER_BASE), 0x1000);
+ mpic_map(mpic, node, paddr, &mpic->gregs, MPIC_INFO(GREG_BASE), 0x1000);
+ mpic_map(mpic, node, paddr, &mpic->tmregs, MPIC_INFO(TIMER_BASE), 0x1000);
/* Reset */
if (flags & MPIC_WANTS_RESET) {
@@ -1194,7 +1195,7 @@ struct mpic * __init mpic_alloc(struct device_node *node,
/* Map the per-CPU registers */
for (i = 0; i < mpic->num_cpus; i++) {
- mpic_map(mpic, paddr, &mpic->cpuregs[i],
+ mpic_map(mpic, node, paddr, &mpic->cpuregs[i],
MPIC_INFO(CPU_BASE) + i * MPIC_INFO(CPU_STRIDE),
0x1000);
}
@@ -1202,7 +1203,7 @@ struct mpic * __init mpic_alloc(struct device_node *node,
/* Initialize main ISU if none provided */
if (mpic->isu_size == 0) {
mpic->isu_size = mpic->num_sources;
- mpic_map(mpic, paddr, &mpic->isus[0],
+ mpic_map(mpic, node, paddr, &mpic->isus[0],
MPIC_INFO(IRQ_BASE), MPIC_INFO(IRQ_STRIDE) * mpic->isu_size);
}
mpic->isu_shift = 1 + __ilog2(mpic->isu_size - 1);
@@ -1256,8 +1257,10 @@ void __init mpic_assign_isu(struct mpic *mpic, unsigned int isu_num,
BUG_ON(isu_num >= MPIC_MAX_ISU);
- mpic_map(mpic, paddr, &mpic->isus[isu_num], 0,
+ mpic_map(mpic, mpic->irqhost->of_node,
+ paddr, &mpic->isus[isu_num], 0,
MPIC_INFO(IRQ_STRIDE) * mpic->isu_size);
+
if ((isu_first + mpic->isu_size) > mpic->num_sources)
mpic->num_sources = isu_first + mpic->isu_size;
}

@ -13,7 +13,7 @@ menuconfig TOOLCHAINOPTS
menuconfig EXTRA_TARGET_ARCH
bool
prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
default y if TARGET_ps3
default y if TARGET_ps3 || TARGET_pxcab
default n
help
Some builds may require a 'biarch' toolchain. This option
@ -23,7 +23,7 @@ menuconfig EXTRA_TARGET_ARCH
config EXTRA_TARGET_ARCH_NAME
string
default "powerpc64" if TARGET_ps3
default "powerpc64" if TARGET_ps3 || TARGET_pxcab
prompt "Extra architecture name" if EXTRA_TARGET_ARCH
help
Specify the cpu name (eg powerpc64 or x86_64) of the
@ -31,7 +31,7 @@ menuconfig EXTRA_TARGET_ARCH
config EXTRA_TARGET_ARCH_OPTS
string
default "-m64" if TARGET_ps3
default "-m64" if TARGET_ps3 || TARGET_pxcab
prompt "Extra architecture compiler options" if EXTRA_TARGET_ARCH
help
If you're specifying an addition target architecture,

@ -7,6 +7,7 @@ choice
default GCC_VERSION_4_2_4 if TARGET_ppc40x
default GCC_VERSION_4_2_4 if TARGET_ppc44x
default GCC_VERSION_4_3_3 if TARGET_ps3_petitboot
default GCC_VERSION_4_3_3 if TARGET_pxcab
default GCC_VERSION_4_3_3 if TARGET_etrax
default GCC_VERSION_4_3_3 if TARGET_coldfire
default GCC_VERSION_4_1_2

@ -49,6 +49,7 @@ if !TOOLCHAINOPTS
config GCC_VERSION_4_3_3
default y if TARGET_ps3_petitboot
default y if TARGET_pxcab
default y if TARGET_etrax
default y if TARGET_coldfire
endif

Loading…
Cancel
Save