summaryrefslogtreecommitdiffstats
path: root/drivers/s390/char
diff options
context:
space:
mode:
authorSebastian Ott <sebott@linux.ibm.com>2019-02-12 12:37:50 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2019-04-29 10:47:01 +0200
commit0a9fddfaa8ea0f66564329ce89390c8dd38b2df0 (patch)
tree736ac8c669d5c5163b9001df3eacdc180a15addb /drivers/s390/char
parentc840927cf5f24d080236775e4c3a934e778069f5 (diff)
downloadlinux-0a9fddfaa8ea0f66564329ce89390c8dd38b2df0.tar.gz
linux-0a9fddfaa8ea0f66564329ce89390c8dd38b2df0.tar.bz2
linux-0a9fddfaa8ea0f66564329ce89390c8dd38b2df0.zip
s390/sclp: detect DIRQ facility
Detect the adapter CPU directed interruption facility. Signed-off-by: Sebastian Ott <sebott@linux.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/char')
-rw-r--r--drivers/s390/char/sclp.h2
-rw-r--r--drivers/s390/char/sclp_early.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/char/sclp.h b/drivers/s390/char/sclp.h
index 287382dc21c5..043f32ba3749 100644
--- a/drivers/s390/char/sclp.h
+++ b/drivers/s390/char/sclp.h
@@ -197,7 +197,7 @@ struct read_info_sccb {
u32 hmfai; /* 124-127 */
u8 _pad_128[134 - 128]; /* 128-133 */
u8 byte_134; /* 134 */
- u8 _pad_135; /* 135 */
+ u8 cpudirq; /* 135 */
u16 cbl; /* 136-137 */
u8 _pad_138[4096 - 138]; /* 138-4095 */
} __packed __aligned(PAGE_SIZE);
diff --git a/drivers/s390/char/sclp_early.c b/drivers/s390/char/sclp_early.c
index dae9de3d7c96..fdad2a980129 100644
--- a/drivers/s390/char/sclp_early.c
+++ b/drivers/s390/char/sclp_early.c
@@ -95,6 +95,7 @@ static void __init sclp_early_facilities_detect(struct read_info_sccb *sccb)
sclp.mtid_prev = (sccb->fac42 & 0x80) ? (sccb->fac66 & 31) : 0;
sclp.hmfai = sccb->hmfai;
+ sclp.has_dirq = !!(sccb->cpudirq & 0x80);
}
/*