]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/s390/cio/cio.c
[S390] Cleanup struct _lowcore usage and defines.
[karo-tx-linux.git] / drivers / s390 / cio / cio.c
index f9d8c7936a0945ddae29ee42b42b375b9210d758..f736cdcf08ad79ee5522b5143888933292c63ef7 100644 (file)
@@ -625,8 +625,8 @@ void __irq_entry do_IRQ(struct pt_regs *regs)
        /*
         * Get interrupt information from lowcore
         */
-       tpi_info = (struct tpi_info *) __LC_SUBCHANNEL_ID;
-       irb = (struct irb *) __LC_IRB;
+       tpi_info = (struct tpi_info *)&S390_lowcore.subchannel_id;
+       irb = (struct irb *)&S390_lowcore.irb;
        do {
                kstat_cpu(smp_processor_id()).irqs[IO_INTERRUPT]++;
                /*
@@ -682,10 +682,10 @@ static int cio_tpi(void)
        struct irb *irb;
        int irq_context;
 
-       tpi_info = (struct tpi_info *) __LC_SUBCHANNEL_ID;
+       tpi_info = (struct tpi_info *)&S390_lowcore.subchannel_id;
        if (tpi(NULL) != 1)
                return 0;
-       irb = (struct irb *) __LC_IRB;
+       irb = (struct irb *)&S390_lowcore.irb;
        /* Store interrupt response block to lowcore. */
        if (tsch(tpi_info->schid, irb) != 0)
                /* Not status pending or not operational. */
@@ -885,7 +885,7 @@ __clear_io_subchannel_easy(struct subchannel_id schid)
                struct tpi_info ti;
 
                if (tpi(&ti)) {
-                       tsch(ti.schid, (struct irb *)__LC_IRB);
+                       tsch(ti.schid, (struct irb *)&S390_lowcore.irb);
                        if (schid_equal(&ti.schid, &schid))
                                return 0;
                }
@@ -1083,7 +1083,7 @@ int __init cio_get_iplinfo(struct cio_iplinfo *iplinfo)
        struct subchannel_id schid;
        struct schib schib;
 
-       schid = *(struct subchannel_id *)__LC_SUBCHANNEL_ID;
+       schid = *(struct subchannel_id *)&S390_lowcore.subchannel_id;
        if (!schid.one)
                return -ENODEV;
        if (stsch(schid, &schib))