linux-2.6
16 years ago[POWERPC] 83xx: convert boards to use machine_device_initcall
Kumar Gala [Tue, 15 Jan 2008 15:47:10 +0000 (09:47 -0600)] 
[POWERPC] 83xx: convert boards to use machine_device_initcall

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 85xx: convert boards to use machine_device_initcall
Kumar Gala [Tue, 15 Jan 2008 15:42:36 +0000 (09:42 -0600)] 
[POWERPC] 85xx: convert boards to use machine_device_initcall

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Fixup use of phys_addr_t in mpic code
Becky Bruce [Tue, 15 Jan 2008 02:56:18 +0000 (20:56 -0600)] 
[POWERPC] Fixup use of phys_addr_t in mpic code

The mpic_map() and __mpic_map_mmio() need to use phys_addr_t for the
physical address they are passed.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Remove update_bridge_resource
Kumar Gala [Tue, 15 Jan 2008 02:42:53 +0000 (20:42 -0600)] 
[POWERPC] Remove update_bridge_resource

The 85xx/86xx pci code no longer uses update_bridge_resource and it was the
only caller.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] FSL: Rework PCI/PCIe support for 85xx/86xx
Kumar Gala [Mon, 14 Jan 2008 23:02:19 +0000 (17:02 -0600)] 
[POWERPC] FSL: Rework PCI/PCIe support for 85xx/86xx

The current PCI code for Freescale 85xx/86xx was treating the virtual
P2P PCIe bridge as a transparent bridge.  Rather than doing that fixup
the virtual P2P bridge by copying the resources from the PHB.

Also, fixup a bit of the code for dealing with resource_size_t being
64-bits and how we set ATMU registers for >4G.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Fixup transparent P2P resources
Kumar Gala [Mon, 14 Jan 2008 15:41:36 +0000 (09:41 -0600)] 
[POWERPC] Fixup transparent P2P resources

For transparent P2P bridges the first 3 resources may get set from based on
BAR registers and need to get fixed up. Where as the remainder come from the
parent bus and have already been fixed up.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Ensure we only handle PowerMac PCI bus fixup for memory resources
Kumar Gala [Sat, 12 Jan 2008 23:23:26 +0000 (17:23 -0600)] 
[POWERPC] Ensure we only handle PowerMac PCI bus fixup for memory resources

The fixup code that handles the case for PowerMac's that leave bridge
windows open over an inaccessible region should only be applied to
memory resources (IORESOURCE_MEM).  If not we can get it trying to fixup
IORESOURCE_IO on some systems since the other conditions that are used to
detect the case can easily match for IORESOURCE_IO.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Fix handling of memreserve if the range lands in highmem
Kumar Gala [Wed, 9 Jan 2008 17:27:23 +0000 (11:27 -0600)] 
[POWERPC] Fix handling of memreserve if the range lands in highmem

There were several issues if a memreserve range existed and happened
to be in highmem:

* The bootmem allocator is only aware of lowmem so calling
  reserve_bootmem with a highmem address would cause a BUG_ON
* All highmem pages were provided to the buddy allocator

Added a lmb_is_reserved() api that we now use to determine if a highem
page should continue to be PageReserved or provided to the buddy
allocator.

Also, we incorrectly reported the amount of pages reserved since all
highmem pages are initally marked reserved and we clear the
PageReserved flag as we "free" up the highmem pages.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agoMerge branch 'for-2.6.25' of master.kernel.org:/pub/scm/linux/kernel/git/olof/pasemi...
Paul Mackerras [Thu, 17 Jan 2008 05:17:58 +0000 (16:17 +1100)] 
Merge branch 'for-2.6.25' of /linux/kernel/git/olof/pasemi into for-2.6.25

16 years ago[POWERPC] Use <linux/of_{platform, device}.h> and not <asm/...> variants.
Jon Loeliger [Mon, 7 Jan 2008 18:07:15 +0000 (05:07 +1100)] 
[POWERPC] Use <linux/of_{platform, device}.h> and not <asm/...> variants.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Check that the syscall table matches the syscall numbers
Stephen Rothwell [Mon, 7 Jan 2008 05:12:44 +0000 (16:12 +1100)] 
[POWERPC] Check that the syscall table matches the syscall numbers

Also check that __NR_syscalls has been updated appropriately.

Hopefully this will catch any out of order additions to the
table in the future.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Add hugepagesz boot-time parameter
Jon Tollefson [Thu, 3 Jan 2008 22:59:50 +0000 (09:59 +1100)] 
[POWERPC] Add hugepagesz boot-time parameter

This adds the hugepagesz boot-time parameter for ppc64.  It lets one
pick the size for huge pages.  The choices available are 64K and 16M
when the base page size is 4k.  It defaults to 16M (previously the
only only choice) if nothing or an invalid choice is specified.

Tested 64K huge pages successfully with the libhugetlbfs 1.2.

Signed-off-by: Jon Tollefson <kniht@linux.vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] #address-cells & #size-cells properties are not inherited
Mark A. Greer [Thu, 3 Jan 2008 15:40:47 +0000 (02:40 +1100)] 
[POWERPC] #address-cells & #size-cells properties are not inherited

Fix error in booting-without-of.txt that indicates that a node can inherit
its #address-cells and #size-cells definitions from its parent's parent.
This is not correct.

Signed-off-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] therm_adt746x: Eliminate some build warnings
Stephen Rothwell [Thu, 3 Jan 2008 04:17:12 +0000 (15:17 +1100)] 
[POWERPC] therm_adt746x: Eliminate some build warnings

We don't care if the device_create_file calls fail, the driver will work
just as well without them, so just issue a runtime warning.

drivers/macintosh/therm_adt746x.c: In function 'thermostat_init':
drivers/macintosh/therm_adt746x.c:615: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:616: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:617: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:618: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:619: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:620: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:621: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:622: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:623: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_adt746x.c:625: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] therm_windtunnel: Eliminate some build warnings
Stephen Rothwell [Thu, 3 Jan 2008 04:15:28 +0000 (15:15 +1100)] 
[POWERPC] therm_windtunnel: Eliminate some build warnings

We don't care if the device_create_file calls fail, the driver will work
just as well without them, so just issue a runtime warning.

drivers/macintosh/therm_windtunnel.c: In function 'setup_hardware':
drivers/macintosh/therm_windtunnel.c:268: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_windtunnel.c:269: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] arch/powerpc/kernel: Use for_each_child_of_node
Stephen Rothwell [Thu, 3 Jan 2008 04:13:37 +0000 (15:13 +1100)] 
[POWERPC] arch/powerpc/kernel: Use for_each_child_of_node

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] cell: Use machine_*_initcall() hooks in platform code
Grant Likely [Wed, 2 Jan 2008 19:14:36 +0000 (06:14 +1100)] 
[POWERPC] cell: Use machine_*_initcall() hooks in platform code

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] powermac: Use machine_*_initcall() hooks in platform code
Grant Likely [Wed, 2 Jan 2008 19:14:28 +0000 (06:14 +1100)] 
[POWERPC] powermac: Use machine_*_initcall() hooks in platform code

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] therm_pm72: Suppress some compile warnings
Stephen Rothwell [Wed, 2 Jan 2008 05:25:32 +0000 (16:25 +1100)] 
[POWERPC] therm_pm72: Suppress some compile warnings

We don't really care if any of these calls to device_create_file fails,
so just issue warnings in that case.

drivers/macintosh/therm_pm72.c: In function 'init_cpu_state':
drivers/macintosh/therm_pm72.c:1185: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1186: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1187: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1188: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1189: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1191: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1192: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1193: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1194: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1195: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c: In function 'init_backside_state':
drivers/macintosh/therm_pm72.c:1383: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1384: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c: In function 'init_drives_state':
drivers/macintosh/therm_pm72.c:1503: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1504: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c: In function 'init_dimms_state':
drivers/macintosh/therm_pm72.c:1625: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c: In function 'init_slots_state':
drivers/macintosh/therm_pm72.c:1743: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result
drivers/macintosh/therm_pm72.c:1744: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Update .gitignore files
Jochen Friedrich [Mon, 31 Dec 2007 16:14:53 +0000 (03:14 +1100)] 
[POWERPC] Update .gitignore files

Update .gitignore as needed by dtc addition.

Signed-off-by: Jochen Friedrich <jochen@scram.de>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] pci_32.c: Use for_each_child_of_node
Stephen Rothwell [Fri, 21 Dec 2007 04:52:43 +0000 (15:52 +1100)] 
[POWERPC] pci_32.c: Use for_each_child_of_node

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] eeh.c: Use for_each_child_of_node
Stephen Rothwell [Fri, 21 Dec 2007 04:52:07 +0000 (15:52 +1100)] 
[POWERPC] eeh.c: Use for_each_child_of_node

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] iSeries: eliminate pci_dn bussubno
Stephen Rothwell [Fri, 21 Dec 2007 04:50:09 +0000 (15:50 +1100)] 
[POWERPC] iSeries: eliminate pci_dn bussubno

xlate_iomm_address() really wants the ds_addr to pass to the HV, so store
that value (instead of the BAR number) when we allocate the device bars.
This is not a fast path, so we can look up the device_node property
there instead of using the bussubno field of the pci_dn.

The other user of iseries_ds_addr() was already scanning the device tree,
so looking up a property will not slow it down any more.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] The pci_dn pcidev is only used by EEH
Stephen Rothwell [Fri, 21 Dec 2007 04:49:11 +0000 (15:49 +1100)] 
[POWERPC] The pci_dn pcidev is only used by EEH

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] The pci_dn class_code is only used by EEH
Stephen Rothwell [Fri, 21 Dec 2007 04:48:18 +0000 (15:48 +1100)] 
[POWERPC] The pci_dn class_code is only used by EEH

... so move it into the #ifdef CONFIG_EEH section.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] booting-without-of: localbus should not include board name
Anton Vorontsov [Fri, 14 Dec 2007 18:48:26 +0000 (05:48 +1100)] 
[POWERPC] booting-without-of: localbus should not include board name

Fix documentation once and for ever, because I'm pretty tired of
repeating that I am merely following it. ;-)

http://ozlabs.org/pipermail/linuxppc-dev/2007-December/048096.html

http://ozlabs.org/pipermail/linuxppc-dev/2007-November/046977.html
http://ozlabs.org/pipermail/linuxppc-dev/2007-November/046979.html

http://ozlabs.org/pipermail/linuxppc-dev/2007-October/044411.html
http://ozlabs.org/pipermail/linuxppc-dev/2007-October/044413.html

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Use for_each macros in arch/powerpc/platforms/powermac
Cyrill Gorcunov [Thu, 29 Nov 2007 19:46:54 +0000 (06:46 +1100)] 
[POWERPC] Use for_each macros in arch/powerpc/platforms/powermac

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Use for_each macros in arch/powerpc/kernel
Cyrill Gorcunov [Thu, 29 Nov 2007 19:45:47 +0000 (06:45 +1100)] 
[POWERPC] Use for_each macros in arch/powerpc/kernel

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Use for_each macros in arch/powerpc/sysdev
Cyrill Gorcunov [Thu, 29 Nov 2007 19:44:36 +0000 (06:44 +1100)] 
[POWERPC] Use for_each macros in arch/powerpc/sysdev

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Add of_find_matching_node() helper function
Grant Likely [Tue, 8 Jan 2008 19:20:40 +0000 (06:20 +1100)] 
[POWERPC] Add of_find_matching_node() helper function

Similar to of_find_compatible_node(), of_find_matching_node() and
for_each_matching_node() allow you to iterate over the device tree
looking for specific nodes, except that they take of_device_id
tables instead of strings.

This also moves of_match_node() from driver/of/device.c to
driver/of/base.c to colocate it with the of_find_matching_node which
depends on it.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Kill sparse warning in HPTE_V_COMPARE()
Geert Uytterhoeven [Mon, 26 Nov 2007 16:24:43 +0000 (03:24 +1100)] 
[POWERPC] Kill sparse warning in HPTE_V_COMPARE()

Fixes sparse warning: constant 0xffffffffffffff80 is so big it is
unsigned long

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] pasemi: Move electra-ide to pata_of_platform
Olof Johansson [Tue, 4 Dec 2007 20:44:32 +0000 (14:44 -0600)] 
[POWERPC] pasemi: Move electra-ide to pata_of_platform

Move electra-ide glue over to the new pata_of_platform framework, and
add the quirks needed to that driver.

Signed-off-by: Olof Johansson <olof@lixom.net>
16 years agolibata: pata_of_platform: OF-Platform PATA device driver
Anton Vorontsov [Wed, 9 Jan 2008 19:10:41 +0000 (22:10 +0300)] 
libata: pata_of_platform: OF-Platform PATA device driver

This driver nicely wraps around pata_platform library functions,
and provides OF platform bus bindings to the PATA devices.

Also add || PPC to the PATA_PLATFORM's "depends on" Kconfig entry,
needed for PA Semi Electra.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
16 years agolibata: pata_platform: make probe and remove functions device type neutral
Anton Vorontsov [Wed, 9 Jan 2008 19:10:22 +0000 (22:10 +0300)] 
libata: pata_platform: make probe and remove functions device type neutral

Split pata_platform_{probe,remove} into two pieces:
1. pata_platform_{probe,remove} -- platform_device-dependant bits;
2. __ptata_platform_{probe,remove} -- device type neutral bits.

This is done to not duplicate code for the OF-platform driver.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
16 years agoMerge branch 'virtex-for-2.6.25' of git://git.secretlab.ca/git/linux-2.6-virtex into...
Josh Boyer [Fri, 11 Jan 2008 13:02:57 +0000 (07:02 -0600)] 
Merge branch 'virtex-for-2.6.25' of git://git.secretlab.ca/git/linux-2.6-virtex into for-2.6.25

16 years ago[POWERPC] Xilinx uartlite: Section type fixups
Stephen Neuendorffer [Tue, 8 Jan 2008 19:35:09 +0000 (06:35 +1100)] 
[POWERPC] Xilinx uartlite: Section type fixups

All the __devexit functions are now appropriately tagged.  This fixes
some ppc link warnings.

Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
Acked-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years ago[POWERPC] Xilinx: updated device tree compatibility to match uboot bsp generator.
Stephen Neuendorffer [Tue, 8 Jan 2008 19:35:08 +0000 (06:35 +1100)] 
[POWERPC] Xilinx: updated device tree compatibility to match uboot bsp generator.

Missed this one in the boot loader before.

Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years ago[POWERPC] Xilinx: Update booting-without-of.
Stephen Neuendorffer [Tue, 8 Jan 2008 19:35:07 +0000 (06:35 +1100)] 
[POWERPC] Xilinx: Update booting-without-of.

This now better describes what the UBoot device tree generator
actually does.  In particular:

1) Nodes have a label derived from the device name, and a node name
derived from a generic version of the device type, e.g. 'ethernet',
'serial', etc.

2) Usage of compound nodes (representing more than one device in the
same IP) which actually works.  This requires having a valid
compatible node, and all the other things that a bus normally has.
I've chosen 'xlnx,compound' as the bus name to describe these compound
nodes.

In addition, I've clarified some of the language relating to how mhs
nodes should be represent in the device tree.

Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years ago[POWERPC] Xilinx: Add correct compatible list for device tree bus bindings.
Stephen Neuendorffer [Tue, 8 Jan 2008 19:35:06 +0000 (06:35 +1100)] 
[POWERPC] Xilinx: Add correct compatible list for device tree bus bindings.

Includes both flavors of plb, opb, dcr, and a pseudo 'compound' bus
for representing compound peripherals containing more than one logical
device.

Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years ago[POWERPC] Xilinx: update compatible list for interrupt controller
Stephen Neuendorffer [Tue, 8 Jan 2008 19:35:04 +0000 (06:35 +1100)] 
[POWERPC] Xilinx: update compatible list for interrupt controller

These values now match what is generated by the uboot BSP generator.

Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years ago[POWERPC] 4xx: PCIe: Increase max busses per port to 64
Stefan Roese [Mon, 31 Dec 2007 05:41:15 +0000 (16:41 +1100)] 
[POWERPC] 4xx: PCIe: Increase max busses per port to 64

Because of how big mapping the config space is (1M per bus), we limit how
many busses we support for now. In the long run, we could replace that
with something akin to kmap_atomic instead.

This patch changes the limit from currently 16 to 64.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add 405GPr and 405EP support in boot wrapper
Matthias Fuchs [Thu, 6 Dec 2007 22:23:05 +0000 (09:23 +1100)] 
[POWERPC] 4xx: Add 405GPr and 405EP support in boot wrapper

This patch adds support for 405GPr processors with optional
new mode strapping. ibm405gp_fixup_clocks() can now be used
for 405GP and 405GPr CPUs.

This is in preparation of porting the cpci405 platform support
from arch/ppc to arch/powerpc.

This patch also adds ibm405ep_fixup_clocks() to support
405EP CPUs from the boot wrapper.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: enable built-in networking for Sequoia defconfig
Hollis Blanchard [Fri, 4 Jan 2008 23:26:54 +0000 (10:26 +1100)] 
[POWERPC] 4xx: enable built-in networking for Sequoia defconfig

Enable EMAC driver for Sequoia (and while we're in there, disable
Macintosh drivers for Sequoia and Bamboo).

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add EMAC support to Kilauea defconfig
Stefan Roese [Fri, 4 Jan 2008 14:00:43 +0000 (01:00 +1100)] 
[POWERPC] 4xx: Add EMAC support to Kilauea defconfig

Somehow the EMAC support was dropped (or never really added) to the
Kilauea defconfig file. This patch finally adds EMAC support.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] pasemi: Use machine_*_initcall() hooks in platform code
Grant Likely [Wed, 2 Jan 2008 19:32:28 +0000 (12:32 -0700)] 
[POWERPC] pasemi: Use machine_*_initcall() hooks in platform code

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Olof Johansson <olof@lixom.net>
16 years ago[POWERPC] pasemi: Fix NMI handling check
Olof Johansson [Wed, 2 Jan 2008 18:35:50 +0000 (12:35 -0600)] 
[POWERPC] pasemi: Fix NMI handling check

The logic that checks to see if a machine check is caused by an NMI will
always match when NMI hasn't been initialized, since the mpic routine
will return NO_IRQ (and that's what the nmi_virq value is as well).

Signed-off-by: Olof Johansson <olof@lixom.net>
16 years ago[POWERPC] 4xx: typo in calling machine_device_initcall() for Sequoia board
Grant Likely [Wed, 2 Jan 2008 17:23:56 +0000 (04:23 +1100)] 
[POWERPC] 4xx: typo in calling machine_device_initcall() for Sequoia board

Fix an obvious typo.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years agoMerge branch 'for-2.6.25' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/pasemi
Paul Mackerras [Mon, 31 Dec 2007 02:54:13 +0000 (13:54 +1100)] 
Merge branch 'for-2.6.25' of git://git./linux/kernel/git/olof/pasemi

16 years agoRevert "[POWERPC] Disable PCI IO/Mem on a device when resources can't be allocated"
Paul Mackerras [Sun, 30 Dec 2007 23:04:15 +0000 (10:04 +1100)] 
Revert "[POWERPC] Disable PCI IO/Mem on a device when resources can't be allocated"

This reverts commit 553aa7659bc0e188348f64e978343ed984eb6e56 at Ben H's
request, because it confused IORESOURCE_* flags with command register
bits.

Requested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Enable CONFIG_PCI_MSI and CONFIG_MD in pasemi_defconfig
Olof Johansson [Fri, 28 Dec 2007 16:41:28 +0000 (10:41 -0600)] 
[POWERPC] Enable CONFIG_PCI_MSI and CONFIG_MD in pasemi_defconfig

Enable MSI now that we have an implementation, and enable CONFIG_MD and
the raid options by default as well.

Signed-off-by: Olof Johansson <olof@lixom.net>
16 years ago[POWERPC] pasemi: Distribute interrupts evenly across cpus
Olof Johansson [Fri, 28 Dec 2007 04:16:29 +0000 (22:16 -0600)] 
[POWERPC] pasemi: Distribute interrupts evenly across cpus

By default the OpenPIC on PWRficient will bias to one core (since that
will improve changes of the other core being able to stay idle/powered
down). However, this conflicts with most irq load balancing schemes,
since setting an interrupt to be delivered to either core doesn't really
result in the load being shared. It also doesn't work well with the
soft irq disable feature of PPC, since EE will stay on until the first
interrupt is taken while soft disabled.

Set the gconf0 config bit that enables even distribution of interrupts
among the two cores.

Signed-off-by: Olof Johansson <olof@lixom.net>
16 years ago[POWERPC] pasemi: Implement NMI support
Olof Johansson [Thu, 20 Dec 2007 19:11:18 +0000 (13:11 -0600)] 
[POWERPC] pasemi: Implement NMI support

Some PWRficient-based boards have a NMI button that's wired up to a GPIO
as interrupt source. By configuring the openpic accordingly, these get
delivered as a machine check with high priority, instead of as an external
interrupt.

The device tree contains a property "nmi-source" in the openpic node
for these systems, and it's the (hwirq) source for the input.

Also, for these interrupts, the IACK is read from another register than
the regular (MCACK instead), but they are EOI'd as usual. So implement
said function for the mpic driver.

Finally, move a couple of external function defines to include/ instead
of local under sysdev. Being able to mask/unmask and eoi directly saves
us from setting up a dummy irq handler that will never be called.

Signed-off-by: Olof Johansson <olof@lixom.net>
16 years ago[POWERPC] 4xx: Update defconfigs
Josh Boyer [Tue, 25 Dec 2007 01:46:29 +0000 (19:46 -0600)] 
[POWERPC] 4xx: Update defconfigs

Update the 4xx board defconfigs

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Minor coding style cleanups for 4xx bootwrapper
Josh Boyer [Tue, 25 Dec 2007 01:46:06 +0000 (19:46 -0600)] 
[POWERPC] 4xx: Minor coding style cleanups for 4xx bootwrapper

Remove some unneeded braces and make a busy loop more obvious.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Use machine_device_initcall for bus probe
Josh Boyer [Mon, 24 Dec 2007 16:42:02 +0000 (10:42 -0600)] 
[POWERPC] 4xx: Use machine_device_initcall for bus probe

Some machine_xx_initcall macros were recently added that check for the machine
type before calling the function.  This converts the 4xx platforms to use those
for bus probing.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] Remove unneeded variable declarations from mpc837x_mds
Josh Boyer [Mon, 24 Dec 2007 15:01:11 +0000 (09:01 -0600)] 
[POWERPC] Remove unneeded variable declarations from mpc837x_mds

Remove the declarations for isa_io_base and isa_mem_base as they are declared
in pci-common.c now.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] Conditionally compile e200 and e500 platforms in cputable
Josh Boyer [Mon, 24 Dec 2007 14:44:47 +0000 (08:44 -0600)] 
[POWERPC] Conditionally compile e200 and e500 platforms in cputable

The e200 and e500 platforms are separated in various parts of the kernel with
ifdefs, most notably reg_booke.h and traps.c.  The new machine_check rework
requires them to be similarly separated in cputable.c to avoid compile errors.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Mark of_bus structures as __initdata
Josh Boyer [Mon, 24 Dec 2007 14:40:31 +0000 (08:40 -0600)] 
[POWERPC] 4xx: Mark of_bus structures as __initdata

Mark the of_device_id structures used to probe the various busses on 4xx
as __initdata.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Update Kilauea, Rainier, and Walnut defconfigs
Josh Boyer [Thu, 20 Dec 2007 15:00:17 +0000 (09:00 -0600)] 
[POWERPC] 4xx: Update Kilauea, Rainier, and Walnut defconfigs

Enable PCI support for these eval boards among other things.  Also selects
PCI for Rainier in the Kconfig file.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Makalu defconfig
Stefan Roese [Fri, 21 Dec 2007 07:11:01 +0000 (18:11 +1100)] 
[POWERPC] 4xx: Makalu defconfig

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Makalu dts
Stefan Roese [Fri, 21 Dec 2007 07:10:51 +0000 (18:10 +1100)] 
[POWERPC] 4xx: Makalu dts

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add AMCC Makalu board support to platforms/40x
Stefan Roese [Fri, 21 Dec 2007 07:10:36 +0000 (18:10 +1100)] 
[POWERPC] 4xx: Add AMCC Makalu board support to platforms/40x

This patch adds basic support for the AMCC Makalu board to arch/powerpc.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Change Kilauea PCIe bus ranges in dts file
Stefan Roese [Sat, 15 Dec 2007 08:10:56 +0000 (19:10 +1100)] 
[POWERPC] 4xx: Change Kilauea PCIe bus ranges in dts file

Currently we have some limitations in the 4xx PCIe driver and can't
support all possible PCIe busses. But the current limits in the
dts file are quite low (only 16 busses per RC). This patch increases
the number to 64 per RC.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add aliases node to 4xx dts files
Stefan Roese [Sat, 15 Dec 2007 07:55:16 +0000 (18:55 +1100)] 
[POWERPC] 4xx: Add aliases node to 4xx dts files

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add PCI entry to 440GRx Rainier DTS.
Valentine Barshak [Fri, 21 Dec 2007 17:22:39 +0000 (04:22 +1100)] 
[POWERPC] 4xx: Add PCI entry to 440GRx Rainier DTS.

This adds PCI entry to PowerPC 440GRx Rainier DTS.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: update 440EP(x)/440GR(x) identical PVR issue workaround
Valentine Barshak [Fri, 21 Dec 2007 16:24:02 +0000 (03:24 +1100)] 
[POWERPC] 4xx: update 440EP(x)/440GR(x) identical PVR issue workaround

Renaming the CPU nodes with generic names put the CPU model in
the "model" property and thus broke the PowerPC 440EP(x)/440GR(x)
identical PVR workaround. The updates it to use the new model property
for CPU identification.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Rename CPU nodes to avoid dtc incompatibility
Josh Boyer [Thu, 6 Dec 2007 19:20:05 +0000 (13:20 -0600)] 
[POWERPC] 4xx: Rename CPU nodes to avoid dtc incompatibility

Recent DTC versions disallow certain special characters in full paths without
being quoted with {}.  That however breaks compatibility with older DTC
versions.  Work around this by renaming the CPU nodes for the 4xx files to a
generic node name, and specify the processor type in the model property of the
CPU node.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Set ibpre for 405EX in 4xx PCIe driver
Stefan Roese [Fri, 7 Dec 2007 09:34:34 +0000 (20:34 +1100)] 
[POWERPC] 4xx: Set ibpre for 405EX in 4xx PCIe driver

This patch sets the ibpre flag (Inbound Presence) for the 405EX
in the 4xx PCIe driver.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add Kilauea PCIe support to dts and Kconfig
Stefan Roese [Fri, 7 Dec 2007 09:34:26 +0000 (20:34 +1100)] 
[POWERPC] 4xx: Add Kilauea PCIe support to dts and Kconfig

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Change Kilauea dts to support new EMAC device tree properties
Stefan Roese [Sat, 1 Dec 2007 10:25:00 +0000 (21:25 +1100)] 
[POWERPC] 4xx: Change Kilauea dts to support new EMAC device tree properties

The recent changes from Benjamin Herrenschmidt to the ibm_newemac now
make it possible to support other 4xx variants by just defining the
correct properties in the device tree. In this case of the 405EX we
need to define "has-mdio" in the RGMII node and "has-inverted-stacr-oc"
and "has-new-stacr-staopc" in the EMAC node same as on the 440EPx.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add 405EX CPU type needed for EMAC support on Kilauea
Stefan Roese [Sat, 1 Dec 2007 10:19:55 +0000 (21:19 +1100)] 
[POWERPC] 4xx: Add 405EX CPU type needed for EMAC support on Kilauea

For EMAC support, 405EX needs to be defined to enable the corresponding
EMAC features (IBM_NEW_EMAC_EMAC4, etc.).

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Fix TLB 0 problem with CONFIG_SERIAL_TEXT_DEBUG
Stefan Roese [Tue, 20 Nov 2007 10:19:16 +0000 (21:19 +1100)] 
[POWERPC] 4xx: Fix TLB 0 problem with CONFIG_SERIAL_TEXT_DEBUG

Right now TLB entry 0 ist used as UART0 mapping for the early debug
output (via CONFIG_SERIAL_TEXT_DEBUG). This causes problems when many
TLB's get used upon Linux bootup (e.g. while PCIe scanning behind
bridges and/or switches on 440SPe platforms). This will overwrite the
TLB 0 entry and further debug output's may crash/hang the system.

This patch moves the early debug UART0 TLB entry from 0 to 62 as done
in arch/powerpc. This way it is in the "pinned" area and will not get
overwritten. Also the arch/ppc/mm/44x_mmu.c code is now synced with the
newer code from arch/powerpc.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: libfdt and pci fixes for Rainier
Josh Boyer [Thu, 20 Dec 2007 14:55:34 +0000 (08:55 -0600)] 
[POWERPC] 4xx: libfdt and pci fixes for Rainier

Update the Rainier wrapper for the libfdt merge and add the pci flags to the
platform file.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Include missing header
Josh Boyer [Fri, 14 Dec 2007 12:36:35 +0000 (06:36 -0600)] 
[POWERPC] 4xx: Include missing header

A small error caused a header file to be removed making sequoia support no
longer compile.  Fix it.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 44x: Sequoia and Rainier updates for 2.6.25
Valentine Barshak [Thu, 6 Dec 2007 16:21:12 +0000 (19:21 +0300)] 
[POWERPC] 44x: Sequoia and Rainier updates for 2.6.25

PowerPC 440Epx/GRx Sequoia/Rainier updates for 2.6.25

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Fix 440grx setup function to call 440A fixup
Josh Boyer [Tue, 4 Dec 2007 19:02:18 +0000 (13:02 -0600)] 
[POWERPC] 4xx: Fix 440grx setup function to call 440A fixup

The mechanism to do the setup for 440A cores changed recently.  This fixes
the 440grx setup function to call __fixup_440A_mcheck.

Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add PCI entry to 440EPx Sequoia DTS.
Valentine Barshak [Fri, 21 Dec 2007 16:26:01 +0000 (03:26 +1100)] 
[POWERPC] 4xx: Add PCI entry to 440EPx Sequoia DTS.

This adds PCI entry to PowerPC 440EPx Sequoia DTS.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Correct 440GRx machine_check callback
Valentine Barshak [Fri, 21 Dec 2007 16:22:23 +0000 (03:22 +1100)] 
[POWERPC] 4xx: Correct 440GRx machine_check callback

Correct the PowerPC 440GRx machine check callback.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: rework UIC cascade irq handling
Valentine Barshak [Thu, 6 Dec 2007 13:48:26 +0000 (00:48 +1100)] 
[POWERPC] 4xx: rework UIC cascade irq handling

This is a UIC cascade handler rework to use set_irq_chained_handler() for
cascade, just like othe ppc platforms do. With current implementation we have
additional redirection for irq handler and we call generic_handle_irq twice
(once for the primary uic and the other time for handling cascade interrupt).
This causes Ingo's realtime support patch to stop working on 4xx.

Not sure of any other possible problems though, but with
set_irq_chained_handler() we can abolish "struct irqaction cascade" from the
chip descriptor and call generic_handle_irq() once, directly for cascade irq.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: make UIC use generic level irq handler
Valentine Barshak [Wed, 14 Nov 2007 14:00:52 +0000 (01:00 +1100)] 
[POWERPC] 4xx: make UIC use generic level irq handler

This patch makes PowerPC 4xx UIC use generic level irq handler instead
of a custom handle_uic_irq() function. We ack only edge irqs in mask_ack
callback, since acking a level irq on UIC has no effect if the interrupt
is still asserted by the device, even if the interrupt is already masked.
So, to really de-assert the interrupt we need to de-assert the external
source first *and* ack it on UIC then. The handle_level_irq() function
masks and ack's the interrupt with mask_ack callback prior to calling
the actual ISR and unmasks it at the end. So, to use it with UIC interrupts
we need to ack level irqs in the unmask callback instead, after the ISR
has de-asserted the external interrupt source. Even if we ack the interrupt
that we didn't handle (unmask/ack it at the end of the handler, while
next irq is already pending) it will not de-assert the irq, untill we
de-assert its exteral source.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: 440GRx Rainier default config
Valentine Barshak [Tue, 30 Oct 2007 17:00:49 +0000 (04:00 +1100)] 
[POWERPC] 4xx: 440GRx Rainier default config

PowerPC 440GRx Rainier default config.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: 440GRx Rainier board support.
Valentine Barshak [Tue, 30 Oct 2007 16:57:39 +0000 (03:57 +1100)] 
[POWERPC] 4xx: 440GRx Rainier board support.

PowerPC 440GRx Rainier board support.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: 440GRx Rainier DTS.
Valentine Barshak [Tue, 30 Oct 2007 16:56:50 +0000 (03:56 +1100)] 
[POWERPC] 4xx: 440GRx Rainier DTS.

PowerPC 440GRx Rainier DTS.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: 440GRx Rainier bootwrapper.
Valentine Barshak [Tue, 30 Oct 2007 16:56:06 +0000 (03:56 +1100)] 
[POWERPC] 4xx: 440GRx Rainier bootwrapper.

Bootwrapper code for PowerPC 440GRx Rainier board.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: 440EPx Sequoia USB OHCI DTS entry
Valentine Barshak [Mon, 8 Oct 2007 14:26:58 +0000 (00:26 +1000)] 
[POWERPC] 4xx: 440EPx Sequoia USB OHCI DTS entry

Add the 440EPx Sequoia USB OHCI device tree entry.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add 440SPe revA runtime detection to PCIe
Stefan Roese [Fri, 21 Dec 2007 04:39:38 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Add 440SPe revA runtime detection to PCIe

This patch adds runtime detection of the 440SPe revision A chips. These
chips are equipped with a slighly different PCIe core and need special/
different initialization. The compatible node is changed to
"plb-pciex-440spe" ("A" and "B" dropped). This is needed for boards that
can be equipped with both PPC revisions like the AMCC Yucca.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] pci32: 4xx embedded platforms want to reassign all PCI resources
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:37 +0000 (15:39 +1100)] 
[POWERPC] pci32: 4xx embedded platforms want to reassign all PCI resources

This makes 4xx embedded platforms re-assign all PCI resources as we
pretty much never care about what the various firmwares have done on
these, it's generally not compatible with the way the kernel will map
the bridges.

We still need to also enable bus renumbering on some of them, but I
will do that from a separate patch after I've fixed 4xx PCIe to handle
all bus numbers.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: PCI-E Link setup improvements
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:36 +0000 (15:39 +1100)] 
[POWERPC] 4xx: PCI-E Link setup improvements

This improves the way the 4xx PCI-E code handles checking for a link
and adds explicit testing of CRS result codes on config space accesses.

This should make it more reliable.

Also, bridges with no link are now still created, though config space
accesses beyond the root complex are filtered. This is one step toward
eventually supporting hotplug.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: remove bogus "ranges" property in Bamboo EBC node
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:35 +0000 (15:39 +1100)] 
[POWERPC] 4xx: remove bogus "ranges" property in Bamboo EBC node

This removes a bogus empty "ranges" property in the EBC device node
of the Bamboo board device-tree.

The "ranges" property should be created by the wrapper code when it is
implemented.  Until then, remove the empty property since it incorrectly
implies that there is a 1:1 address mapping between the EBC and the OPB.

This also fixes a warning from newer DTCs.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Base support for 440SPe "Katmai" eval board
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:34 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Base support for 440SPe "Katmai" eval board

This adds base support for the Katmai board, including PCI-X and
PCI-Express (but no RTC, nvram, etc... yet).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Rework clock probing in boot wrapper
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:33 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Rework clock probing in boot wrapper

This reworks the boot wrapper library function that probes
the chip clocks. Better separate the base function that is
used on 440GX,SPe,EP,... from the uart fixups as those need
different device-tree path on different processors.

Also, rework the function itself based on the arch/ppc code
from Eugene Surovegin which I find more readable, and which
handles one more bypass case. Also handle the subtle difference
between 440EP/EPx and 440SPe/GX, on the former, PerClk is derived
from the PLB clock while on the later, it's derived from the OPB.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add CPR0 accessors to boot wrapper
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:32 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Add CPR0 accessors to boot wrapper

This adds macros to the boot wrapper to access the CPR
registers from the boot wrappers.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add mfspr/mtspr inline macros to 4xx bootwrapper
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:32 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Add mfspr/mtspr inline macros to 4xx bootwrapper

The 4xx bootwrapper occasionally needs to access SPR registers,
this adds mfspr/mtspr wrappers to it.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Adds decoding of 440SPE memory size to boot wrapper library
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:31 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Adds decoding of 440SPE memory size to boot wrapper library

This adds a function to the bootwrapper 4xx library to decode memory
size on 440SPE processors.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Wire up 440EP USB controller support to Bamboo board
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:30 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Wire up 440EP USB controller support to Bamboo board

This adds the definition of the on-chip OHCI controller to the
Bamboo board's device-tree. This is enough to get it probed and
working, though a separate patch fixing a bug in the OHCI driver
is needed to make it reliable.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Wire up PCI on Bamboo board
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:29 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Wire up PCI on Bamboo board

This adds the device-tree bits & call to ppc4xx_pci_find_bridges()
to make PCI work on the Bamboo board

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Base support for 440GX Taishan eval board
Hugh Blemings [Fri, 21 Dec 2007 04:39:28 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Base support for 440GX Taishan eval board

This patch adds base support for the AMCC Taishan 440GX evaluation
board.

Signed-off-by: Hugh Blemings <hugh@blemings.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add PCI to Walnut platform
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:28 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Add PCI to Walnut platform

This wires up the 4xx PCI support & device-tree bits for the
405GP based Walnut platform.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: EP405 boards support for arch/powerpc
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:26 +0000 (15:39 +1100)] 
[POWERPC] 4xx: EP405 boards support for arch/powerpc

Brings EP405 support to arch/powerpc. The IRQ routing for the CPLD
comes from a device-tree property, PCI is working to the point where
I can see the video card, USB device, and south bridge.

This should work with both EP405 and EP405PC.

I've not totally figured out how IRQs are wired on this hardware
though, thus at this stage, expect only USB interrupts working,
pretty much the same as what arch/ppc did.

Also, the flash, nvram, rtc and temp control still have to be wired.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
16 years ago[POWERPC] 4xx: Add early udbg support for 40x processors
Benjamin Herrenschmidt [Fri, 21 Dec 2007 04:39:26 +0000 (15:39 +1100)] 
[POWERPC] 4xx: Add early udbg support for 40x processors

This adds some basic real mode based early udbg support for 40x
in order to debug things more easily

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>