summaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel
Commit message (Collapse)AuthorAgeFilesLines
...
* | sparc64: Fix sparse warnings in pci.cDavid S. Miller2008-09-113-12/+11
| | | | | | | | | | | | | | | | | | | | 1) Declare pci_poke_* in pci_impl.h 2) of_create_pci_dev() should be static 3) ->setup_msi_irq() wants an unsigned int pointer not a plain int one 4) void value expression return in arch_teardown_msi_irq() Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix sparse warnings in of_device.cDavid S. Miller2008-09-111-2/+1
| | | | | | | | | | | | | | Passing unsigned int pointer where plain int pointer is expected. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix sparse warnings in prom.cDavid S. Miller2008-09-111-30/+55
| | | | | | | | | | | | | | 1) Testing null with '0' 2) returning void-valued expression Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix sparse warnings in visemul.cDavid S. Miller2008-09-112-7/+6
| | | | | | | | | | | | | | 1) edge8 tables should be static 2) add vis_emul() extern decl. to asm/visasm.h Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix sparse warnings in kernel/time.cDavid S. Miller2008-09-111-11/+11
| | | | | | | | | | | | | | | | | | 1) Using "clock" as a local variable shadows a global variable of the same name declared in linux/clocksource.h 2) rtc_cmos_resource should be static Signed-off-by: David S. Miller <davem@davemloft.net>
* | sysctl: Use header file for sysctl knob declarations on sparc.David S. Miller2008-09-111-0/+1
| | | | | | | | | | | | | | This also takes care of a sparse warning as scons_pwroff's definition point. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix sparse warnings in global reg snapshotting.David S. Miller2008-09-111-2/+0
| | | | | | | | | | | | | | Lots of shadowed local variables and global_reg_snapshot[] needs an extern declaration in asm/ptrace_64.h. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Kill hand-crafted I/O accessors in PCI controller drivers.David S. Miller2008-09-104-256/+177
| | | | | | | | | | | | Use existing upa_{read,write}q() interfaces instead. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Commonize large portions of PSYCHO error handling.David S. Miller2008-09-104-579/+369
| | | | | | | | | | | | | | The IOMMU and streaming cache error interrogation is moved here as well as the PCI error interrupt handler. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Create and use psycho_pbm_init_common().David S. Miller2008-09-104-46/+31
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Start commonizing code common between SABRE and PSYCHO.David S. Miller2008-09-105-120/+111
| | | | | | | | | | | | | | | | | | | | These are very similar chips, in fact they are identical in some macro blocks. So start commonizing code which they can share. We begin with the IOMMU initialization sequence. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Record OF device instead of device node pointer in pci_pbm_info.David S. Miller2008-09-109-29/+30
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Get rid of pci_controller_info.David S. Miller2008-09-107-241/+178
| | | | | | | | | | | | | | | | | | | | It is just used as a parent to encapsulate two PBM objects. But that layout is only really relevant and necessary for psycho PCI controllers, which unlike all the others share a single IOMMU instance between sibling PCI busses. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Fix return value in update_persistent_clock().David S. Miller2008-09-101-2/+2
| | | | | | | | | | | | Noticed by Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Add missing rtc_close() in update_persistent_clock()David S. Miller2008-09-081-2/+5
| | | | | | | | | | | | Noticed by David Brownell. Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2008-09-082-14/+20
|\| | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 Conflicts: arch/sparc/kernel/of_device.c
| * sparc64: Prevent sparc64 from invoking irq handlers on offline CPUsPaul E. McKenney2008-09-031-4/+4
| | | | | | | | | | | | | | | | | | | | Make sparc64 refrain from clearing a given to-be-offlined CPU's bit in the cpu_online_mask until it has processed pending irqs. This change prevents other CPUs from being blindsided by an apparently offline CPU nevertheless changing globally visible state. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * sparc64: Fix IPI call locking.David S. Miller2008-09-031-6/+4
| | | | | | | | | | | | | | | | | | | | When I switched sparc64 over to the generic helpers for smp_call_function(), I didn't convert the dinky call_lock we had. Use ipi_call_lock() and ipi_call_unlock(). Signed-off-by: David S. Miller <davem@davemloft.net>
| * sparc: Fix resource flags for PCI children in OF device tree.David S. Miller2008-08-281-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | When a device is under an EBUS or ISA bus, the resource flags don't get set properly. Fix this by re-evaluating the resource flags at each level of bus as we apply ranges on the way to the root. And let PCI override any existing flags setting, but don't let the default flags calculator make such overrides. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: fix wrong m48t59 RTC yearKrzysztof Helt2008-09-071-2/+4
| | | | | | | | | | | | | | | | Correctly calculate offset to the year register for Mostek RTC. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc: Fix handling of LANCE and ESP parent nodes in of_device.cDavid S. Miller2008-09-031-1/+10
| | | | | | | | | | | | | | | | | | | | The device nodes that sit above 'esp' and 'le' on SBUS lack a 'ranges' property, but we should pass the translation up to the parent node so that the SBUS level ranges get applied. Based upon a bug report from Robert Reif. Signed-off-by: David S. Miller <davem@davemloft.net>
* | pci_sun4v: Use of_get_property().David S. Miller2008-09-021-14/+7
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | pci_schizo: Use of_get_property() and delete spurious local vars.David S. Miller2008-09-021-17/+8
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | pci_psycho: Use of_getintprop_default().David S. Miller2008-09-021-14/+3
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Implement SSTATE purely using notifiers and initcalls.David S. Miller2008-09-023-29/+45
| | | | | | | | | | | | | | Don't clutter up the tree with sstate_blah() scattered all over the place. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Move reboot handling into seperate file and kill power reg programming.David S. Miller2008-09-024-71/+57
| | | | | | | | | | | | We should always use prom_power_off(). Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Pass proper parent device down into root pci_create_bus() call.David S. Miller2008-09-016-39/+45
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Kill the scan_bus function pointer in struct pci_pbm_info.David S. Miller2008-09-011-2/+2
| | | | | | | | | | | | No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use ENTRY/ENDPROC in PCI SUN4V asm.David S. Miller2008-09-011-49/+50
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use ENTRY/ENDPROC in hypervisor asm.David S. Miller2008-09-012-236/+119
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Apply const or __initdata to vio_device_id[]David S. Miller2008-09-011-2/+2
| | | | | | | | | | | | | | | | This mirrors the of_device_id[] changes done in fd098316ef533e8441576f020ead4beab93154ce ("sparc: Annotate of_device_id arrays with const or __initdata.") Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Clean up CPU chip type probing code.David S. Miller2008-08-312-101/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | Three main things: 1) Make prober an arch initcall instead of using hard-coded invocation from paging_init() 2) Shrink table size, the fpu ident stuff was never used. 3) Use named struct initialized in table. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Rewrite central driver.David S. Miller2008-08-312-406/+213
| | | | | | | | | | | | | | | | | | | | | | This driver is now limited to just doing the basic clock board and FHC chip initialization and registering the platform devices for the per-board LEDs, which are driven by the new LEDS_STARFIRE driver. The IRQ register handling is already confined purely to the device tree code. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Delete starfire_cpu_setup().David S. Miller2008-08-312-9/+1
| | | | | | | | | | | | It does nothing. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Simplify error handling in PCI controller probing.David S. Miller2008-08-315-62/+68
| | | | | | | | | | | | Based upon suggestions from Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc: Annotate of_device_id arrays with const or __initdata.David S. Miller2008-08-319-11/+11
| | | | | | | | | | | | As suggested by Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Convert FIRE PCI controller driver into a real driver.David S. Miller2008-08-302-118/+58
| | | | | | | | | | | | And now all the by-hand PCI controller probing junk in pci.c can die too. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Convert SABRE PCI controller driver into a real driver.David S. Miller2008-08-302-45/+85
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Convert PSYCHO PCI controller driver into a real driver.David S. Miller2008-08-302-28/+70
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Convert SUN4V PCI controller driver into a real driver.David S. Miller2008-08-302-42/+83
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Convert SCHIZO PCI controller driver into a real driver.David S. Miller2008-08-302-48/+84
| | | | | | | | | | | | | | | | The idea is to convert all of the PCI controller drivers into genuine OF drivers, then we can get rid of this terrible probing table and infrastructure in arch/sparc64/kernel/pci.c Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Don't invoke power_init() from pcibios_init().David S. Miller2008-08-302-15/+5
| | | | | | | | | | | | That's just silly, use device_initcall() instead. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc: Kill ebus_bus_type.David S. Miller2008-08-301-10/+0
| | | | | | | | | | | | No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc: Kill EBUS driver layer.David S. Miller2008-08-304-302/+5
| | | | | | | | | | | | | | All that remains is the EBUS DMA programming library for sparc64. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc: Move EBUS DMA interfaces into seperate header file.David S. Miller2008-08-291-0/+1
| | | | | | | | | | | | | | | | These have no dependencies on the EBUS probing layer, the clients setup the registers and all of those details. The EBUS DMA layer just programs and manages the DMA controller found in EBUS. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Propagate PCI device archdata into OF device tree for EBUS.David S. Miller2008-08-291-2/+6
| | | | | | | | | | | | | | | | | | | | In order to convert EBUS drivers doing DMA into pure OF drivers, we need the of_device->dev.archdata setup properly. EBUS instances that can provide DMA for device nodes sit on PCI, so detect and propagate the information there. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use generic starfire RTC driver.David S. Miller2008-08-291-285/+8
| | | | | | | | | | | | Also, delete the mini RTC driver, no longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use generic sun4v RTC driver.David S. Miller2008-08-291-75/+8
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use generic BQ4802 RTC driver.David S. Miller2008-08-291-190/+11
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | sparc64: Use generic CMOS driver.David S. Miller2008-08-291-252/+120
| | | | | | | | | | | | Based largely upon a patch by Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: David S. Miller <davem@davemloft.net>