summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/86xx
Commit message (Collapse)AuthorAgeFilesLines
...
* [POWERPC] Fix interrupt routing and setup of ULI M1575 on FSL boardsKumar Gala2007-08-172-208/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The interrupt routing in the device trees for the ULI M1575 was inproperly using the interrupt line field as pci function. Fixed up the device tree's to actual conform for to specification and changed the interrupt mapping code so it just uses a static mapping setup as follows: PIRQA - IRQ9 PIRQB - IRQ10 PIRQC - IRQ11 PIRQD - IRQ12 USB 1.1 OCHI (1c.0) - IRQ12 USB 1.1 OCHI (1c.1) - IRQ9 USB 1.1 OCHI (1c.2) - IRQ10 USB 1.1 ECHI (1c.3) - IRQ11 LAN (1b.0) - IRQ6 AC97 (1d.0) - IRQ6 Modem (1d.1) - IRQ6 HD Audio (1d.2) - IRQ6 SATA (1f.1) - IRQ5 SMB (1e.1) - IRQ7 PMU (1e.2) - IRQ7 PATA (1f.0) - IRQ14/15 Took the oppurtunity to refactor the code into a single file so we don't have to duplicate these fixes on the two current boards in the tree and several forth coming boards that will also need the code. Fixed RTC support that requires a dummy memory read on the P2P bridge to unlock the RTC and setup the default of the RTC alarm registers to match with a basic x86 style CMOS RTC. Moved code that poked ISA registers to a FIXUP_FINAL quirk to ensure the PCI IO space has been setup properly before we start poking ISA registers at random locations. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Make endianess of cfg_addr for indirect pci ops runtimeKumar Gala2007-07-231-1/+0
| | | | | | | | Make it so we do a runtime check to know if we need to write cfg_addr as big or little endian. This is needed if we want to allow 86xx support to co-exist in the same kernel as other 6xx PPCs. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Fixup resources on pci_bus for PCIe PHB when no device is connectedKumar Gala2007-07-231-1/+1
| | | | | | | | | On the 85xx/86xx PCIe controllers if there is no device connected to the PHB we will still allocate a pci_bus for downstream bus of the virtual P2P bridge. However the resources allocated to the downstream bus are not correct and so we just mimic the resources from the upstream pci_bus. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Rewrite Freescale PCI/PCIe support for 8{3,5,6}xxZang Roy-r619112007-07-232-7/+9
| | | | | | | | Rewrite the Freescale PCI code to support PCI on 83xx/85xx/86xx and PCIe on 85xx/86xx. Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Create common fsl pci/e files based on 86xx platformsRoy Zang2007-07-233-241/+2
| | | | | | | | | | | | | Move arch/powerpc/platforms/86xx/pci.c -> arch/powerpc/sysdev/fsl_pci.c arch/powerpc/sysdev/fsl_pcie.h -> arch/powerpc/sysdev/fsl_pci.h as the base to unify 83xx/85xx/86xx pci and pcie. Add CONFIG_FSL_PCI to build fsl_pci.c for Freescale pci and pcie option. The code still works for 86xx platforms. Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Reworked interrupt numbers for OpenPIC based Freescale chipsKumar Gala2007-07-031-14/+1
| | | | | | | | | | Make the interrupt numbers match the OpenPIC spec intead of the Freescale docs which distinguish between internal and external interrupts. Now we can use the interrupt number directly to find the register offset associated with it. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Move pci_bus_to_hose users to pci_bus_to_hostKumar Gala2007-06-291-1/+1
| | | | | | | In the places we can move to using pci_bus_to_host, this allows us to make pci_bus_to_host static and remove its export. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Merge ppc32 and ppc64 pcibios_alloc_controller() prototypesKumar Gala2007-06-291-2/+2
| | | | | | | Make the ppc32 pcibios_alloc_controller take a device node to match the ppc64 prototypes and have it set arch_data. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] 86xx: Created quirk_fsl_pcie_transparent() to initialize bridge ↵Zhang Wei2007-06-291-0/+37
| | | | | | | | | | | | | | | | | | | resources. The Freescale PCI-e RC poses as a transparent bridge, but does not implement the IO_BASE or IO_LIMIT registers in the config space. This means that the code which initializes the bridge resources ends up setting the IO resources erroneously. Add quick_fsl_pcie_transparent() to handle this. This change sets RC of mpc8641 to be a transparent bridge for legacy I/O access and initializes the RC bridge resources from the device tree. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Signed-off-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] MPC8641HPCN: Set IDE in ULI1575 to not native mode.Zhang Wei2007-06-291-0/+1
| | | | | | | | Set IDE in ULI1575 to not 100% native mode, which forces the IDE driver to probe the irq itself. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] 86xx: Workaround PCI_PRIMARY_BUS usageKumar Gala2007-06-291-1/+3
| | | | | | | | | | | | | | | The Freescale PCI-e controllers have an issue in that they use the PCI_PRIMARY_BUS register in the virtual P2P bridge to determine which bus number to match on when generating a type 0 config cycle. The issue is if we are renumbering bus numbers to match Linux we will try setting the PCI_PRIMARY_BUS and will not know which bus number to use for generating type 0 config cycles. We surpress writing the register in the P2P bridge and always keep it at zero. In the future when proper PCI domain support is working we should be able to remove this. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] 86xx: Avoid system halt if link training isn't at least L0.Zhang Wei2007-06-291-1/+10
| | | | | | | | | We check the Link Training and State Status register to make sure we are at least at the L0 state. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Acked-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Remove PCI-e errata for MPC8641 silicon ver 1.0Zhang Wei2007-06-293-24/+2
| | | | | | | | | Remove errata for PCI-e support of Rev 1.0 of MPC8641 since its considered obselete and is not production level silicon from Freescale. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Acked-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Pass the pci_controller into pci_exclude_deviceKumar Gala2007-06-292-2/+3
| | | | | | | | | | There are times that we need to know which controller we are on to decide how to exclude devices properly. We now pass the pci_controller that we are going to use down to the pci_exclude_device function. This will greatly simplify being able to exclude the PHBs in multiple controller setups. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Remove set_cfg_type for PCI indirect users that don't need itKumar Gala2007-06-291-1/+0
| | | | | | | | | | | The Freescale and Marvell PCI controllers dont require explicit setting for type 1 config cycles. They handle producing them by implicitly looking at the bus, devfn. The TSI108 and 52xx don't use the generic PCI indirect code and thus don't bother with set_cfg_type. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] kill isa_{io,mem}_base definitions for !PCIArnd Bergmann2007-06-291-7/+0
| | | | | | | | | | | When CONFIG_PCI is disabled, the definitions for isa_io_base, isa_mem_base and pci_dram_offset are entirely unused, but they can result in link failure because they are defined in multiple places. The easiest fix is to just remove all these definitions. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* [POWERPC] rename add_bridge to avoid namespace clashesArnd Bergmann2007-06-293-3/+3
| | | | | | | | | Many platforms currently define their own add_bridge function, some of them globally. This breaks some multiplatform configurations. Prefixing each of these functions with the platform name avoids this problem. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* [POWERPC] move 82xx/83xx/86xx Kconfig options to platform selectionArnd Bergmann2007-06-291-1/+1
| | | | | | | | | | | | The cores used in the MPC82xx/83xx/86xx embedded controllers are very similar to those in the 32 bit general-purpose processors, so it makes sense to treat them as the same CPU family. Choosing between the embedded platforms and the multiplatform code is now done in the platform menu, but functionally everything stays the same. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* [POWERPC] 86xx: Enable the AC97 interface on 8641D board.Jason Jin2007-05-091-1/+6
| | | | | | | | | | HD interface and AC97 interface share some pins and they are enabled at the same time, In order to use AC97 interface, we need to disable the HD interface first. Signed-off-by:Jason Jin<jason.jin@freescale.com> Acked-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] Further fixes for the removal of 4level-fixup hack from ppc32David Gibson2007-05-091-1/+1
| | | | | | | | | | | Commit d1953c8888ef034b912ee33bc2ea2cce6a414402 removed the use of 4level-fixup.h for 32-bit systems under arch/powerpc. However, I missed a few things activated on some configurations, resulting in some warnings (at least with STRICT_MM_TYPECHECKS enabled) and build errors in some circumstances. This fixes it. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] Rename device_is_compatible to of_device_is_compatibleStephen Rothwell2007-05-071-1/+1
| | | | | | | | | | | for consistency with other Open Firmware interfaces (and Sparc). This is just a straight replacement. This leaves the compatibility define in place. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* Merge branch 'kconfig' of ↵Paul Mackerras2007-04-241-15/+3
|\ | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc into for-2.6.22
| * [POWERPC] Convert 86xx platform to unified platform KconfigKumar Gala2007-04-121-15/+3
| | | | | | | | | | | | | | Moved 86xx platform Kconfig over to being sourced by the unified arch/powerpc/platforms/Kconfig. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | [POWERPC] Rename get_property to of_get_property: arch/powerpcStephen Rothwell2007-04-132-3/+3
|/ | | | | | Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] 86xx/85xx: Unify Freescale PCI Express memory map registers structureZang Roy-r619112007-03-261-1/+1
| | | | | | | | | Unify PCI Express memory map registers structure define to arch/pwoerpc/sysdev/fsl_pcie.h for Freescale 85xx/86xx processor family. Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] 86xx/85xx: Move 8641 PCI-Express to arch/powerpc/sysdev/fsl_pcie.c.Jon Loeliger2007-03-262-174/+1
| | | | | | | | | | This move sets the stage for the use of generic PCI Express code in 85xx and 86xx parts from FSL. Subsequent patches for 8548 and 8544 will be able to use this shared code. Signed-off-by: Jon Loeliger <jdl@freescale.com> Acked-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Merge branch '85xx' into for_paulusKumar Gala2007-02-161-7/+0
|\
| * [POWERPC] 8[56]xx: Remove obsolete setting of ROOT_DEV for 85xx and 86xx ↵Jon Loeliger2007-02-161-7/+0
| | | | | | | | | | | | | | platforms. Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | [POWERPC] 86xx: Add missing of_node_put() in mpc86xx_hpcn_init_irq().Jon Loeliger2007-02-161-0/+2
|/ | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* [POWERPC] 86xx: local_irq_disable() is redundant after local_irq_save()Jiri Kosina2007-02-071-1/+0
| | | | | | | | | | arch/powerpc/platforms/86xx/mpc86xx_smp.c::smp_86xx_kick_cpu() contains local_irq_disable() call after local_irq_save(). This looks redundant. Signed-off-by: Jiri Kosina <jkosina@suse.cz> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] Select DEFAULT_UIMAGE for HPC-NET/8641Paul Gortmaker2007-01-241-0/+1
| | | | | | | | | | I suspect this was meant to be added like it was to a whole slew of other u-boot based boards, but probably just fell through the cracks. Add "select DEFAULT_UIMAGE" for the 8641/HPC-NET. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] Make pci_read_irq_line the defaultBenjamin Herrenschmidt2006-12-041-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | This patch reworks the way IRQs are fixed up on PCI for arch powerpc. It makes pci_read_irq_line() called by default in the PCI code for devices that are probed, and add an optional per-device fixup in ppc_md for platforms that really need to correct what they obtain from pci_read_irq_line(). It also removes ppc_md.irq_bus_setup which was only used by pSeries and should not be needed anymore. I've also removed the pSeries s7a workaround as it can't work with the current interrupt code anyway. I'm trying to get one of these machines working so I can test a proper fix for that problem. I also haven't updated the old-style fixup code from 85xx_cds.c because it's actually buggy :) It assigns pci_dev->irq hard coded numbers which is no good with the new IRQ mapping code. It should at least use irq_create_mapping(NULL, hard_coded_number); and possibly also set_irq_type() to set them as level low. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] Fix up after irq changesOlaf Hering2006-10-071-3/+2
| | | | | | | | | Remove struct pt_regs * from all handlers. Also remove the regs argument from get_irq() functions. Compile tested with arch/powerpc/config/* and arch/ppc/configs/prep_defconfig Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: irq change build breaksOlof Johansson2006-10-051-1/+1
| | | | | | | Fix up some of the buildbreaks from the irq handler changes. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge branch 'linux-2.6'Paul Mackerras2006-09-141-1/+1
|\
| * [POWERPC] Add new, missing argument to of_irq_map_raw() for 86xx.Jon Loeliger2006-09-131-1/+1
| | | | | | | | | | | | | | Ben speaks; we follow. Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | Merge branch 'merge'Paul Mackerras2006-08-251-10/+9
|\ \ | |/
| * [POWERPC] Use mpc8641hpcn PIC base address from dev tree.Jon Loeliger2006-08-251-10/+9
| | | | | | | | | | | | | | | | | | After going through the trouble of setting up the PIC base address in the pic@40000 device tree node, use it instead of the obsolete hard-coded value. Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [POWERPC] Allow MPC8641 HPCN to build with CONFIG_PCI disabled too.Jon Loeliger2006-08-252-3/+9
| | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [POWERPC] Rewrite the PPC 86xx IRQ handling to use Flat Device TreeJon Loeliger2006-08-232-180/+176
| | | | | | | | | | | | | | | | | | | | | | IRQ setup now comes from the Flat Device Tree and use the new generic IRQ code. Fixed the fsl_soc.c IRQ OF interrupt node parsing. Removed some unused MPC86xx macro definition. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 919fede6edab94cccb3ca8c1c0b32fa62c9369a5 commit)
* | [POWERPC] Allow MPC8641 HPCN to build with CONFIG_PCI disabled too.Jon Loeliger2006-08-252-3/+9
| | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [POWERPC] Rewrite the PPC 86xx IRQ handling to use Flat Device TreeJon Loeliger2006-08-082-180/+176
| | | | | | | | | | | | | | | | | | | | IRQ setup now comes from the Flat Device Tree and use the new generic IRQ code. Fixed the fsl_soc.c IRQ OF interrupt node parsing. Removed some unused MPC86xx macro definition. Signed-off-by: Zhang Wei <wei.zhang@freescale.com> Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [POWERPC] mpc: Constify & voidify get_property()Jeremy Kerr2006-07-312-4/+4
|/ | | | | | | | | | | Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. mpc* platform changes. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* Merge branch 'for_paulus' of ↵Paul Mackerras2006-06-284-143/+138
|\ | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc
| * powerpc: minor cleanups for mpc86xxKumar Gala2006-06-284-143/+138
| | | | | | | | | | | | | | | | | | | | | | * Remove duplicated cputable entry for 8641 (matches w/7448) * Removed __init from function prototypes in mpc86xx.h * Moved pci fixups into board specific code * Moved mpc86xx_exclude_device to generic mpc86xx pci code * Fixed sparse warnings in mpc86xx_smp.c * Removed board specific header include from asm-powerpc/mpc86xx.h Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | [POWERPC] Remove obsolete #include <linux/config.h>.Jon Loeliger2006-06-284-4/+0
| | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [POWERPC] Remove redundant STD_MMU selection.Jon Loeliger2006-06-281-5/+0
| | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [POWERPC] Move I8259 selection under MPC8641HPCN boardJon Loeliger2006-06-281-0/+1
| | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [POWERPC] Remove redundant PPC_86XX check.Jon Loeliger2006-06-281-3/+0
|/ | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [POWERPC] Add mpc8641hpcn PCI/PCI-Express platform files.Jon Loeliger2006-06-212-0/+498
| | | | | | | | Signed-off-by: Xianghua Xiao <x.xiao@freescale.com> Signed-off-by: Wei Zhang <Wei.Zhang@freescale.com> Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com> Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
OpenPOWER on IntegriCloud