vserver 1.9.3
[linux-2.6.git] / arch / sparc64 / kernel / power.c
index 006a562..52f14e3 100644 (file)
@@ -27,7 +27,7 @@
 int scons_pwroff = 1; 
 
 #ifdef CONFIG_PCI
-static unsigned long power_reg = 0UL;
+static void __iomem *power_reg;
 
 static DECLARE_WAIT_QUEUE_HEAD(powerd_wait);
 static int button_pressed;
@@ -52,7 +52,7 @@ void machine_power_off(void)
 {
        if (!serial_console || scons_pwroff) {
 #ifdef CONFIG_PCI
-               if (power_reg != 0UL) {
+               if (power_reg) {
                        /* Both register bits seem to have the
                         * same effect, so until I figure out
                         * what the difference is...
@@ -130,8 +130,8 @@ void __init power_init(void)
        return;
 
 found:
-       power_reg = (unsigned long)ioremap(edev->resource[0].start, 0x4);
-       printk("power: Control reg at %016lx ... ", power_reg);
+       power_reg = ioremap(edev->resource[0].start, 0x4);
+       printk("power: Control reg at %p ... ", power_reg);
        poweroff_method = machine_halt;  /* able to use the standard halt */
        if (has_button_interrupt(edev)) {
                if (kernel_thread(powerd, NULL, CLONE_FS) < 0) {
@@ -141,8 +141,7 @@ found:
                printk("powerd running.\n");
 
                if (request_irq(edev->irqs[0],
-                               power_handler, SA_SHIRQ, "power",
-                               (void *) power_reg) < 0)
+                               power_handler, SA_SHIRQ, "power", NULL) < 0)
                        printk("power: Error, cannot register IRQ handler.\n");
        } else {
                printk("not using powerd.\n");