/**
  * ap_pqap_rapq(): Reset adjunct processor queue.
  * @qid: The AP queue number
+ * @fbit: if != 0 set F bit
  *
  * Returns AP queue status structure.
  */
-static inline struct ap_queue_status ap_rapq(ap_qid_t qid)
+static inline struct ap_queue_status ap_rapq(ap_qid_t qid, int fbit)
 {
        unsigned long reg0 = qid | (1UL << 24);  /* fc 1UL is RAPQ */
        union ap_queue_status_reg reg1;
 
+       if (fbit)
+               reg0 |= 1UL << 22;
+
        asm volatile(
                "       lgr     0,%[reg0]\n"            /* qid arg into gr0 */
                "       .insn   rre,0xb2af0000,0,0\n"   /* PQAP(RAPQ) */
 /**
  * ap_pqap_zapq(): Reset and zeroize adjunct processor queue.
  * @qid: The AP queue number
+ * @fbit: if != 0 set F bit
  *
  * Returns AP queue status structure.
  */
-static inline struct ap_queue_status ap_zapq(ap_qid_t qid)
+static inline struct ap_queue_status ap_zapq(ap_qid_t qid, int fbit)
 {
        unsigned long reg0 = qid | (2UL << 24);  /* fc 2UL is ZAPQ */
        union ap_queue_status_reg reg1;
 
+       if (fbit)
+               reg0 |= 1UL << 22;
+
        asm volatile(
                "       lgr     0,%[reg0]\n"            /* qid arg into gr0 */
                "       .insn   rre,0xb2af0000,0,0\n"   /* PQAP(ZAPQ) */
 
 {
        struct ap_queue_status status;
 
-       status = ap_rapq(aq->qid);
+       status = ap_rapq(aq->qid, 0);
        switch (status.response_code) {
        case AP_RESPONSE_NORMAL:
        case AP_RESPONSE_RESET_IN_PROGRESS:
         * to the initial value AP_DEV_STATE_UNINITIATED.
         */
        spin_lock_bh(&aq->lock);
-       ap_zapq(aq->qid);
+       ap_zapq(aq->qid, 0);
        aq->dev_state = AP_DEV_STATE_UNINITIATED;
        spin_unlock_bh(&aq->lock);
 }