aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-04-07[POWERPC] Convert pci and eeh code to of_device_is_availableNathan Lynch
A couple of places are duplicating the function of of_device_is_available; convert them to use it. Signed-off-by: Nathan Lynch <ntl@pobox.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Add of_device_is_available functionJosh Boyer
IEEE 1275 defined a standard "status" property to indicate the operational status of a device. The property has four possible values: okay, disabled, fail, fail-xxx. The absence of this property means the operational status of the device is unknown or okay. This adds a function called of_device_is_available that checks the state of the status property of a device. If the property is absent or set to either "okay" or "ok", it returns 1. Otherwise it returns 0. Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Enable CONFIG_FORCE_MAX_ZONEORDER for all PowerPC, and make selectableTimur Tabi
This enables the FORCE_MAX_ZONEORDER Kconfig option for all PowerPC systems. Previously, it was enabled only for 64-bit systems. We also make the option selectable from the menu, so that the user can specify different values. This is useful for 32-bit systems that need to allocate more than 4MB of physically contiguous memory. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Use __SPIN_LOCK_UNLOCKED macro in mpc52xx_set_psc_clkdivRobert P. J. Day
__SPIN_LOCK_UNLOCKED is newer and is not deprecated. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Fix kernel panic in arch_arm_kprobeIonut Nicu
The code in arch_arm_kprobe was trying to set a breakpoint which resulted in a page fault because the kernel text pages were write protected. Disable the write protect when CONFIG_KPROBES is defined. Signed-off-by: Ionut Nicu <ionut.nicu@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Add hand-coded assembly strcmpSteven Rostedt
We have an assembly version of strncmp for the bootwrapper, but not for the kernel, so we end up using the C version in the kernel. This takes the strncmp code from the bootup and copies it to the kernel proper, adding two instructions so it copes correctly with len==0. Signed-off-by: Steven Rostedt <srostedt@redhat.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-07[POWERPC] Replace logical-AND by bit-AND in pci_process_ISA_OF_ranges()Roel Kluin
Replace logical "&&" by bit "&" for ISA_SPACE_MASK. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-05[POWERPC] 4xx: Add Canyonlands and Yosemite to multi-board defconfigJosh Boyer
Include the newly added Canyonlands and Yosemite ports in the mutli-board 440 defconfig. Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-05[POWERPC] 4xx: Use machine_device_initcall() for warp_nandValentine Barshak
With a multiplatform kernel, once built we always have warp_setup_nand_flash() called and NDFC probed, no matter what machine we actually run on. This potentially can cause problems (such as kernel crash), since NDFC is probed at a warp-predefined address. Using machine_device_initcall() NAND devices are registered if we run on a warp only. Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-05[POWERPC] 4xx: Change dts files to support jumbo framesStefan Roese
This patch changes the "max-frame-size" property to 9000 for all gbit enabled 4xx boards. All those ports generally support jumbo frames, so let's give the user a chance to enable it. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-05[POWERPC] 4xx: Some EMAC related changes in Canyonlands & Glacier dts filesStefan Roese
This patch fixes some problems in the Canyonlands 460EX and Glacier 460GT dts files: - Add "mdio-device = <&EMAC0>" to all all EMAC's except for EMAC0 itself (the 460EX/GT only can access the PHY via the EMAC0 instance) - Add TAH support to Canyonlands dts Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] 4xx: Create common ppc4xx_reset_system() in ppc4xx_soc.cStefan Roese
This patch creates a common system reset routine for all 40x and 44x systems. Previously only a 44x routine existed. But since this system reset via the debug control register is common for 40x and 44x let's share this code for all those platforms in ppc4xx_soc.c. This patch also enables CONFIG_4xx_SOC for all 40x and 44x platforms. Tested on Kilauea (405EX) and Canyonlands (440EX). Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] bootwrapper: Add a firmware-independent simpleboot target.Grant Likely
This target produces a flat binary rather than an ELF file, fixes the entry point at the beginning of the image, and takes a complete device tree with no fixups needed. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] of_serial: Fix possible null dereference.Stephen Neuendorffer
The of_serial driver queries the current-speed property and attempts to use it to register the custom_divisor property of the uart_port. However, if current-speed is not set, then this code will dereference a bad pointer. The fix is to only set custom_divisor when a current-speed property appears in the device tree. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Signed-off-by: John Linn <john.linn@xilinx.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] 4xx: Fix PESDRn_UTLSET1 register setup on 460EX/GTStefan Roese
The patch fixes a bug, where the PESDRn_UTLSET1 register was setup wrongly resulting in a non working PCIe port 1. With this fix both PCIe ports work fine again. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] 4xx: Only reset PCIe PHY on 405EX systems when no link is detectedStefan Roese
Since the arch/powerpc PCI subsystem now does a complete re-assignment of the resources, we can move from the unconditional PCIe PHY reset to the conditional version. Now the PHY is only reset, if no link is established yet. An additional PHY reset (one is already done in U-Boot) leads to problems with some Atheros PCIe boards and some HP FPGA PCIe designs. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-02[POWERPC] add target for building .dtb filesGrant Likely
Call dtc from the Makefile instead of the wrapper script so that the dt blobs can be generated with a simple make invocation. Using this patch allows board ports to trigger automatic building of .dtb files by adding them to the image-y target list. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-04-01[POWERPC] ppc: Remove redundant display of free swap space in show_mem()Johannes Weiner
show_mem() has no need to print the amount of free swap space manually because show_free_areas() does this already and is called by the former. The two outputs only differ in text formatting: printk("Free swap = %lukB\n", ...); printk("Free swap: %6ldkB\n", ...); Signed-off-by: Johannes Weiner <hannes@saeurebad.de> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] Remove redundant display of free swap space in show_mem()Johannes Weiner
show_mem() has no need to print the amount of free swap space manually because show_free_areas() does this already and is called by the former. The two outputs only differ in text formatting: printk("Free swap = %lukB\n", ...); printk("Free swap: %6ldkB\n", ...); Signed-off-by: Johannes Weiner <hannes@saeurebad.de> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] Use FIELD_SIZEOF in drivers/block/viodasd.cJulia Lawall
Robert P.J. Day proposed to use the macro FIELD_SIZEOF in replace of code that matches its definition. The modification was made using the following semantic patch (http://www.emn.fr/x-info/coccinelle/) // <smpl> @haskernel@ @@ #include <linux/kernel.h> @depends on haskernel@ type t; identifier f; @@ - (sizeof(((t*)0)->f)) + FIELD_SIZEOF(t, f) @depends on haskernel@ type t; identifier f; @@ - sizeof(((t*)0)->f) + FIELD_SIZEOF(t, f) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Cc: Jens Axboe <jens.axboe@oracle.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] ppc: Replace remaining __FUNCTION__ occurrencesHarvey Harrison
__FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] Replace remaining __FUNCTION__ occurrencesHarvey Harrison
__FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] Add kernel parameter to set l3cr for MPC745xRobert Brose
Old-world powermacs don't set L2CR or L3CR on processor upgrade cards. This simple patch allows the setting of L3CR via a kernel parameter (like the existing kernel parameter to set L2CR). Signed-off-by: Robert Brose <bob@qbjnet.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Split device setup for static vs. dynamic devicesGeert Uytterhoeven
Split the device setup code in ps3_register_repository_device() in two routines: 1. ps3_setup_static_device(), to handle the setup of static devices in the PS3 repository, which can be __init, 2. ps3_setup_dynamic_device(), to handle the setup of storage devices that may appear later in the PS3 repository. This fixes a few section mismatch warnings. Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] arch_add_memory() cannot be __devinitGeert Uytterhoeven
WARNING: vmlinux.o(.text+0xb41b0): Section mismatch in reference from the function .add_memory() to the function .devinit.text:.arch_add_memory() The function .add_memory() references the function __devinit .arch_add_memory(). This is often because .add_memory lacks a __devinit annotation or the annotation of .arch_add_memory is wrong. arch_add_memory() is also not __devinit on other architectures Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] move_device_tree() should be __initGeert Uytterhoeven
WARNING: vmlinux.o(.text+0x1e4c0): Section mismatch in reference from the function .move_device_tree() to the function .init.text:.lmb_alloc_base() The function .move_device_tree() references the function __init .lmb_alloc_base(). This is often because .move_device_tree lacks a __init annotation or the annotation of .lmb_alloc_base is wrong. move_device_tree() is called from early_init_devtree() only, which is __init Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] Add error return from htab_remove_mapping()Badari Pulavarty
If the platform doesn't support hpte_removebolted(), gracefully return failure rather than success. Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Gelic network driver Wake-on-LAN supportMasakazu Mokuno
Add Wake-on-LAN support to the PS3 Gelic network driver. Other OS WOL support was introduced in PS3 system firmware 2.20. Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Sys-manager Wake-on-LAN supportGeoff Levand
Add Wake-on-LAN support to the PS3 system-manager. Other OS WOL support was introduced in PS3 system firmware 2.20. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Save power in busy loops on haltGeert Uytterhoeven
PS3 save power on halt: - Replace infinite busy loops by smarter loops calling lv1_pause() to save power. - Add ps3_halt() and ps3_sys_manager_halt(). - Add __noreturn annotations. Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Bootwrapper improvementsGeoff Levand
Improve the debugging support of the PS3 bootwraper code: o Increase the size of the PS3 bootwrapper overlay from 256 to 512 bytes to allow for more debugging code in the overlay. o Use the dot symbol to set the size of __system_reset_overlay. The assembler will then emit an error if the overlay code is too big. o Remove some unused instructions. o Update the text describing the PS3 bootwrapper overlay. o Add a check for null pointer writes. o Change hcall return value from s64. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Add ps3_get_speid routineTakashi Yamamoto
Add a new routine ps3_get_speid() which returns the logical SPE ID. This ID is needed for profiling support. Signed-off-by: Takashi Yamamoto <TakashiA.Yamamoto@jp.sony.com> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01[POWERPC] PS3: Fix unlikely typo in ps3_get_irqRoel Kluin
Fix a typo bug 'unlikely(x) == y' and add an unlikely() call to an unlikely code path in the PS3 interrupt routine ps3_get_irq(). Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-04-01Merge branch 'powerpc-next' of ↵Paul Mackerras
master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc
2008-03-26[POWERPC] 85xx: Emerson KSI8560 device treeAlexandr Smirnov
Add device tree file for Emerson KSI8560 board. Signed-off-by: Alexandr Smirnov <asmirnov@ru.mvista.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-03-26[POWERPC] 85xx: Emerson KSI8560 default configAlexandr Smirnov
Add default config for Emerson KSI8560 board. Signed-off-by: Alexandr Smirnov <asmirnov@ru.mvista.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-03-26[POWERPC] 85xx: Emerson KSI8560 bootwrapperAlexandr Smirnov
Add boot wrapper for Emerson KSI8560 board. Signed-off-by: Alexandr Smirnov <asmirnov@ru.mvista.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-03-26[POWERPC] 85xx: Emerson KSI8560 base supportAlexandr Smirnov
The KSI8560 is a single compact, mid-, or full-size Advanced Mezzanine Card (AdvancedMC™) based on the Freescale™ Semiconductor MPC8560 PowerQUICC III™ microprocessor. This product will serve in data and signaling applications such as signaling gateways (SGW) and softswitch signaling interface cards. The board has altera maxii CPLD, that is used to obtain and manage board configuration. Also there are two SCC UART serial consoles and FCC ethernet, that is routed to the front panel, while other ethernet controlers (TSEC's) are routed to the backplane. Signed-off-by: Alexandr Smirnov <asmirnov@ru.mvista.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-03-26[POWERPC] 4xx: Add L2 cache node to AMCC Taishan dts fileStefan Roese
This patch adds the L2 cache node to the Taishan 440GX dts file. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add PPC4xx L2-cache support (440GX)Stefan Roese
This patch adds support for the 256k L2 cache found on some IBM/AMCC 4xx PPC's. It introduces a common 4xx SoC file (sysdev/ppc4xx_soc.c) which currently "only" adds the L2 cache init code. Other common 4xx stuff can be added later here. The L2 cache handling code is a copy of Eugene's code in arch/ppc with small modifications. Tested on AMCC Taishan 440GX. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add "amcc, haleakala" to the toplevel compatible propertyStefan Roese
Currently Haleakala uses the Kilauea platform code. This patch adds "haleakala" to the compatible property, in case later kernel versions will introduce a Haleakala platform code. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add AMCC Glacier 460GT eval board dtsStefan Roese
The patch adds the Glacier dts. The Glacier is nearly identical to the Canyonlands (460EX). Here the differences: - 4 ethernet ports instead of 2 - no SATA port - no USB port Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] Xilinx: hwicap: Use fixed device major.Stephen Neuendorffer
Major 259 has been assigned by lanana. Use it. Also, publish /dev/icap[0-k] as the device entries, and register platform devices named 'icap' to be consistent. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] Xilinx: hwicap: Verify sync before reading idcode.Stephen Neuendorffer
It appears that in some cases, the sync word might not be recognized by the hardware correctly. If this happens, then attempting to read from the port results in an unrecoverable error because of the design of the FPGA core. This patch updates the code to check the status of the device before reading the IDCODE, in order to avoid entering this unrecoverable state. This patch also adds additional NOOP commands into the sychronization sequence, which appears to be necessary to avoid the condition on some hardware. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] Xilinx: hwicap: Refactor status handling code.Stephen Neuendorffer
Both the buffer-based and fifo-based icap cores have a status register. Previously, this was only used internally to check whether transactions have completed. However, the status can be useful to the main driver as well. This patch exposes these status functions to the main driver along with some masks for the differnet bits. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add TAH support to taishan dtsStefan Roese
This patch adds TAH (TCP/IP Acceleration Hardware) support to the taishan 440GX dts. It depends on the NEWEMAC/tah patch that adds the compatible "ibm,tah" property to the matching table. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Use dcri_clrset() for PCIe indirect dcr read/modify/write accessValentine Barshak
Use dcri_clrset() for PCIe SDR0 read/modify/write access. Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add dcri_clrset() for locked read/modify/write functionalityValentine Barshak
This adds dcri_clrset() macro which does read/modify/write on indirect dcr registers while holding indirect dcr lock. Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add bootwrapper for AMCC Yosemite boardJosh Boyer
Add the cuboot wrapper for the AMCC 440EP Yosemite board Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
2008-03-26[POWERPC] 4xx: Add platform support for the AMCC Yosemite boardJosh Boyer
The AMCC 440EP Yosemite board is very similar to the original AMCC Bamboo board. This adds a YOSEMITE option to Kconfig, and reuses the existing bamboo board support in the kernel. Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>