• Heiko Carstens's avatar
    s390/sclp: make early sclp code readable · d5ab7a34
    Heiko Carstens authored
    This patch
    
     - unifies the old sclp early code and the sclp early printk code, so
       they can use common functions
    
     - makes sure all sclp early functions and variables have the same
       "sclp_early" prefix
    
     - converts the sclp early printk code into readable code by using
       existing data structures instead of hard coded magic arrays
    
     - splits the early sclp code into two files: sclp_early.c and
       sclp_early_core.c. The core file contains everything that is
       required by the kernel decompressor and may not call functions not
       contained within the core file. Otherwise the result would be a
       link error.
    
     - changes interrupt handling to be completely synchronous. The old
       early sclp code had a small window which allowed to receive several
       interrupts instead of exactly the single expected interrupt. This
       did hide a subtle potential bug, which is fixed with this large
       rework.
    
     - contains a couple of small cleanups.
    Reviewed-by: default avatarPeter Oberparleiter <oberpar@linux.vnet.ibm.com>
    Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    d5ab7a34
sclp_early_core.c 5.72 KB