[S390] eliminate ipl_device from lowcore
authorMartin Schwidefsky <schwidefsky@de.ibm.com>
Thu, 26 Mar 2009 14:24:43 +0000 (15:24 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Thu, 26 Mar 2009 14:24:27 +0000 (15:24 +0100)
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/lowcore.h
arch/s390/kernel/head31.S
arch/s390/kernel/head64.S
arch/s390/kernel/setup.c
arch/s390/kernel/smp.c

index ad543c11826d7285be1cccb414609bec1a0582e8..5b18035c1dc70079256a6e5fb4d647034e8e836f 100644 (file)
@@ -80,7 +80,6 @@
 #define __LC_USER_ASCE                 0xC50
 #define __LC_PANIC_STACK                0xC54
 #define __LC_CPUID                      0xC60
-#define __LC_IPLDEV                     0xC7C
 #define __LC_CURRENT                   0xC90
 #define __LC_INT_CLOCK                 0xC98
 #else /* __s390x__ */
 #define __LC_USER_ASCE                 0xD60
 #define __LC_PANIC_STACK                0xD68
 #define __LC_CPUID                     0xD80
-#define __LC_IPLDEV                     0xDB8
 #define __LC_CURRENT                   0xDD8
 #define __LC_INT_CLOCK                 0xDE8
 #define __LC_VDSO_PER_CPU              0xE38
@@ -273,8 +271,7 @@ struct _lowcore
        /* entry.S sensitive area start */
        cpuid_t      cpu_id;                   /* 0xc60 */
        __u32        cpu_nr;                   /* 0xc68 */
-       __u32        ipl_device;               /* 0xc6c */
-       __u8         pad_0xc70[0xc80-0xc70];   /* 0xc70 */
+       __u8         pad_0xc6c[0xc80-0xc6c];   /* 0xc6c */
        /* entry.S sensitive area end */
 
         /* SMP info area: defined by DJB */
@@ -368,8 +365,7 @@ struct _lowcore
        /* entry.S sensitive area start */
        cpuid_t      cpu_id;                   /* 0xd80 */
        __u32        cpu_nr;                   /* 0xd88 */
-       __u32        ipl_device;               /* 0xd8c */
-       __u8         pad_0xd90[0xdc0-0xd90];   /* 0xd90 */
+       __u8         pad_0xd8c[0xdc0-0xd8c];   /* 0xd8c */
        /* entry.S sensitive area end */
 
         /* SMP info area: defined by DJB */
index db476d114caabd5c79b016110f503d507de2f312..2ced846065b7a61e340fc88d9b390a4416ead542 100644 (file)
@@ -20,7 +20,6 @@ startup_continue:
        lctl    %c0,%c15,.Lctl-.LPG1(%r13) # load control registers
        l       %r12,.Lparmaddr-.LPG1(%r13) # pointer to parameter area
                                        # move IPL device to lowcore
-       mvc     __LC_IPLDEV(4),IPL_DEVICE-PARMAREA(%r12)
 #
 # Setup stack
 #
index f9f70aa15244152423cd3ff0182224e6158197ab..65667b2e65cee6fdd3ed71f104ee326d4ec13d86 100644 (file)
@@ -86,7 +86,6 @@ startup_continue:
        lctlg   %c0,%c15,.Lctl-.LPG1(%r13)      # load control registers
        lg      %r12,.Lparmaddr-.LPG1(%r13)     # pointer to parameter area
                                        # move IPL device to lowcore
-       mvc     __LC_IPLDEV(4),IPL_DEVICE+4-PARMAREA(%r12)
        lghi    %r0,__LC_PASTE
        stg     %r0,__LC_VDSO_PER_CPU
 #
index 9c8853f21bb20cdf26edc4aa33bdfda97fcd5169..91551ef1d67e87e9569a8bf74c3f4f717cda011a 100644 (file)
@@ -419,7 +419,6 @@ setup_lowcore(void)
                PSW_ADDR_AMODE | (unsigned long) mcck_int_handler;
        lc->io_new_psw.mask = psw_kernel_bits;
        lc->io_new_psw.addr = PSW_ADDR_AMODE | (unsigned long) io_int_handler;
-       lc->ipl_device = S390_lowcore.ipl_device;
        lc->clock_comparator = -1ULL;
        lc->kernel_stack = ((unsigned long) &init_thread_union) + THREAD_SIZE;
        lc->async_stack = (unsigned long)
index b167f74d94cd9a8fa65b83f63e837301bce3be82..775885772ff19c888e57174db1a7653b0c9d3775 100644 (file)
@@ -566,7 +566,6 @@ int __cpuinit __cpu_up(unsigned int cpu)
        cpu_lowcore->current_task = (unsigned long) idle;
        cpu_lowcore->cpu_nr = cpu;
        cpu_lowcore->kernel_asce = S390_lowcore.kernel_asce;
-       cpu_lowcore->ipl_device = S390_lowcore.ipl_device;
        eieio();
 
        while (signal_processor(cpu, sigp_restart) == sigp_busy)