aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/sparc64/kernel (follow)
AgeCommit message (Collapse)AuthorFilesLines
2008-09-11sparc64: Fix sparse warnings in prom.cDavid S. Miller1-30/+55
1) Testing null with '0' 2) returning void-valued expression Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-11sparc64: Fix sparse warnings in visemul.cDavid S. Miller2-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>
2008-09-11sparc64: Fix sparse warnings in kernel/time.cDavid S. Miller1-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>
2008-09-11sysctl: Use header file for sysctl knob declarations on sparc.David S. Miller1-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>
2008-09-11sparc64: Fix sparse warnings in global reg snapshotting.David S. Miller1-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>
2008-09-10sparc64: Kill hand-crafted I/O accessors in PCI controller drivers.David S. Miller4-256/+177
Use existing upa_{read,write}q() interfaces instead. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-10sparc64: Commonize large portions of PSYCHO error handling.David S. Miller4-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>
2008-09-10sparc64: Create and use psycho_pbm_init_common().David S. Miller4-46/+31
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-10sparc64: Start commonizing code common between SABRE and PSYCHO.David S. Miller5-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>
2008-09-10sparc64: Record OF device instead of device node pointer in pci_pbm_info.David S. Miller9-29/+30
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-10sparc64: Get rid of pci_controller_info.David S. Miller7-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>
2008-09-10sparc64: Fix interrupt register calculations on Psycho and Sabre.David S. Miller1-98/+6
Use the IMAP offset calculation for OBIO devices as documented in the programmer's manual. Which is "0x10000 + ((ino & 0x1f) << 3)" Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-10sparc64: Fix return value in update_persistent_clock().David S. Miller1-2/+2
Noticed by Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-08sparc64: Add missing rtc_close() in update_persistent_clock()David S. Miller1-2/+5
Noticed by David Brownell. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-08sparc64: Disable timer interrupts in fixup_irqs().David S. Miller1-0/+2
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 master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6David S. Miller2-14/+20
Conflicts: arch/sparc/kernel/of_device.c
2008-09-07sparc64: fix wrong m48t59 RTC yearKrzysztof Helt1-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>
2008-09-03sparc64: Prevent sparc64 from invoking irq handlers on offline CPUsPaul E. McKenney1-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>
2008-09-03sparc64: Fix IPI call locking.David S. Miller1-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>
2008-09-03sparc: Fix handling of LANCE and ESP parent nodes in of_device.cDavid S. Miller1-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>
2008-09-02pci_sun4v: Use of_get_property().David S. Miller1-14/+7
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02pci_schizo: Use of_get_property() and delete spurious local vars.David S. Miller1-17/+8
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02pci_psycho: Use of_getintprop_default().David S. Miller1-14/+3
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-02sparc64: Implement SSTATE purely using notifiers and initcalls.David S. Miller3-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>
2008-09-02sparc64: Move reboot handling into seperate file and kill power reg programming.David S. Miller4-71/+57
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. Miller6-39/+45
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. Miller1-2/+2
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Use ENTRY/ENDPROC in PCI SUN4V asm.David S. Miller1-49/+50
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Use ENTRY/ENDPROC in hypervisor asm.David S. Miller2-236/+119
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-09-01sparc64: Apply const or __initdata to vio_device_id[]David S. Miller1-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>
2008-08-31sparc64: Clean up CPU chip type probing code.David S. Miller2-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>
2008-08-31sparc64: Rewrite central driver.David S. Miller2-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>
2008-08-31sparc64: Delete starfire_cpu_setup().David S. Miller2-9/+1
It does nothing. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-31sparc64: Simplify error handling in PCI controller probing.David S. Miller5-62/+68
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. Miller9-11/+11
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. Miller2-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>
2008-08-30sparc64: Convert SABRE PCI controller driver into a real driver.David S. Miller2-45/+85
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert PSYCHO PCI controller driver into a real driver.David S. Miller2-28/+70
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert SUN4V PCI controller driver into a real driver.David S. Miller2-42/+83
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc64: Convert SCHIZO PCI controller driver into a real driver.David S. Miller2-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>
2008-08-30sparc64: Don't invoke power_init() from pcibios_init().David S. Miller2-15/+5
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. Miller1-10/+0
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-30sparc: Kill EBUS driver layer.David S. Miller4-302/+5
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. Miller1-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>
2008-08-29sparc64: Propagate PCI device archdata into OF device tree for EBUS.David S. Miller1-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>
2008-08-29sparc64: Use generic starfire RTC driver.David S. Miller1-285/+8
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. Miller1-75/+8
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Use generic BQ4802 RTC driver.David S. Miller1-190/+11
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-29sparc64: Use generic CMOS driver.David S. Miller1-252/+120
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. Miller2-317/+102
Based largely upon a patch by Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: David S. Miller <davem@davemloft.net>