forked from Minki/linux
s390/zcrypt: Add ZAPQ inline function.
Added new inline function ap_pqap_zapq() which is a C inline function wrapper for the AP PQAP(ZAPQ) instruction. Signed-off-by: Harald Freudenberger <freude@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
7daf201d7f
commit
ea3c4185ef
@ -69,6 +69,25 @@ static inline struct ap_queue_status ap_rapq(ap_qid_t qid)
|
||||
return reg1;
|
||||
}
|
||||
|
||||
/**
|
||||
* ap_pqap_zapq(): Reset and zeroize adjunct processor queue.
|
||||
* @qid: The AP queue number
|
||||
*
|
||||
* Returns AP queue status structure.
|
||||
*/
|
||||
static inline struct ap_queue_status ap_zapq(ap_qid_t qid)
|
||||
{
|
||||
register unsigned long reg0 asm ("0") = qid | (2UL << 24);
|
||||
register struct ap_queue_status reg1 asm ("1");
|
||||
|
||||
asm volatile(
|
||||
".long 0xb2af0000" /* PQAP(ZAPQ) */
|
||||
: "=d" (reg1)
|
||||
: "d" (reg0)
|
||||
: "cc");
|
||||
return reg1;
|
||||
}
|
||||
|
||||
/**
|
||||
* ap_aqic(): Control interruption for a specific AP.
|
||||
* @qid: The AP queue number
|
||||
|
Loading…
Reference in New Issue
Block a user