aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc64
AgeCommit message (Collapse)Author
2008-09-08sparc64: Disable timer interrupts in fixup_irqs().David S. Miller
When a CPU is offlined, we leave the timer interrupts disabled because fixup_irqs() does not explicitly take care of that case. Fix this by invoking tick_ops->disable_irq(). Based upon analysis done by Paul E. McKenney. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-08Merge branch 'master' of ↵David S. Miller
master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 Conflicts: arch/sparc/kernel/of_device.c
2008-09-07sparc64: fix wrong m48t59 RTC yearKrzysztof Helt
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>
2008-09-03sparc64: Prevent sparc64 from invoking irq handlers on offline CPUsPaul E. McKenney
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>
2008-09-03sparc64: Fix IPI call locking.David S. Miller
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>
2008-09-03sparc: Fix handling of LANCE and ESP parent nodes in of_device.cDavid S. Miller
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>
2008-09-02pci_sun4v: Use of_get_property().David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02pci_schizo: Use of_get_property() and delete spurious local vars.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02pci_psycho: Use of_getintprop_default().David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02sparc64: Implement SSTATE purely using notifiers and initcalls.David S. Miller
Don't clutter up the tree with sstate_blah() scattered all over the place. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02sparc64: Move reboot handling into seperate file and kill power reg programming.David S. Miller
We should always use prom_power_off(). Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Pass proper parent device down into root pci_create_bus() call.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Kill the scan_bus function pointer in struct pci_pbm_info.David S. Miller
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Use ENTRY/ENDPROC in PCI SUN4V asm.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Use ENTRY/ENDPROC in hypervisor asm.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Apply const or __initdata to vio_device_id[]David S. Miller
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>
2008-08-31sparc64: Clean up CPU chip type probing code.David S. Miller
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>
2008-08-31sparc64: Rewrite central driver.David S. Miller
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>
2008-08-31sparc64: Delete starfire_cpu_setup().David S. Miller
It does nothing. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-31sparc64: Simplify error handling in PCI controller probing.David S. Miller
Based upon suggestions from Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-31sparc: Annotate of_device_id arrays with const or __initdata.David S. Miller
As suggested by Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert FIRE PCI controller driver into a real driver.David S. Miller
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>
2008-08-30sparc64: Convert SABRE PCI controller driver into a real driver.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert PSYCHO PCI controller driver into a real driver.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert SUN4V PCI controller driver into a real driver.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert SCHIZO PCI controller driver into a real driver.David S. Miller
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>
2008-08-30sparc64: setup_valid_addr_bitmap_from_pavail() should be __initDavid S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Don't invoke power_init() from pcibios_init().David S. Miller
That's just silly, use device_initcall() instead. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc: Kill ebus_bus_type.David S. Miller
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc: Kill EBUS driver layer.David S. Miller
All that remains is the EBUS DMA programming library for sparc64. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Move EBUS DMA interfaces into seperate header file.David S. Miller
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>
2008-08-29sparc64: Propagate PCI device archdata into OF device tree for EBUS.David S. Miller
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>
2008-08-29sparc64: Use generic starfire RTC driver.David S. Miller
Also, delete the mini RTC driver, no longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Use generic sun4v RTC driver.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Use generic BQ4802 RTC driver.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Use generic CMOS driver.David S. Miller
Based largely upon a patch by Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Convert Mostek rtc to use generic RTC layer driver.David S. Miller
Based largely upon a patch by Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Check for RTC class device in update_persistent_clock().David S. Miller
As we convert the various by-hand sparc64 RTC drivers to use the generic RTC framework and drivers, we need to keep the NTP set_rtc_mmss() support via update_persistent_clock() working. In the end, after all the RTC device cases are converted, this local set_rtc_mmss() function will be deleted. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Select RTC_CLASSDavid S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Kill now spurious includes of sbus.hDavid S. Miller
In order to make this week I also had to add an include of linux/dma-mapping.h to asm/pci_32.h because drivers/pci/pci.c really depends upon getting this header somehow. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Kill sbus_bus_type.David S. Miller
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Remove generic SBUS probing layer.David S. Miller
The individual SBUS IOMMU arch code now sets the IOMMU information directly into the OF device objects. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Add OF archdata propagation helper.David S. Miller
Add a helper function that, given a bus of_device node, propagates all iommu, stc, and host_controller values down to the child nodes. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Kill sbus_arch_preinit().David S. Miller
32-bit sparc just needed it to register the ioport procfs bits, do this via an arch_initcall() instead. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Remove dinky old-style SBUS probing facilities.David S. Miller
No drivers or code uses this stuff any more, every driver has been converted over to OF device probing. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Remove SBUS layer resource and irq handling.David S. Miller
All the drivers use OF device objects now for this information. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Kill SBUS layer IRQ hooks.David S. Miller
IRQs are obtained by drivers from the of_device struct. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Move SBUS DMA attribute interfaces out of asm/sbus.hDavid S. Miller
This is in preparation for the subsequent asm/sbus.h removal. Also, make these routines take a "struct device" or no arguments, as appropriate. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Convert all SBUS drivers to dma_*() interfaces.David S. Miller
And all the SBUS dma interfaces are deleted. A private implementation remains inside of the 32-bit sparc port which exists only for the sake of the implementation of dma_*(). Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc: Make SBUS DMA interfaces take struct device.David S. Miller
This is the first step in converting all the SBUS drivers over to generic dma_*(). Signed-off-by: David S. Miller <davem@davemloft.net>