Home
last modified time | relevance | path

Searched refs:irb (Results 1 – 53 of 53) sorted by relevance

/linux-4.4.14/drivers/s390/cio/
Ddevice_status.c27 ccw_device_msg_control_check(struct ccw_device *cdev, struct irb *irb) in ccw_device_msg_control_check() argument
31 if (!scsw_is_valid_cstat(&irb->scsw) || in ccw_device_msg_control_check()
32 !(scsw_cstat(&irb->scsw) & (SCHN_STAT_CHN_DATA_CHK | in ccw_device_msg_control_check()
41 scsw_dstat(&irb->scsw), scsw_cstat(&irb->scsw)); in ccw_device_msg_control_check()
44 CIO_HEX_EVENT(0, irb, sizeof(struct irb)); in ccw_device_msg_control_check()
73 ccw_device_accumulate_ecw(struct ccw_device *cdev, struct irb *irb) in ccw_device_accumulate_ecw() argument
80 cdev->private->irb.scsw.cmd.ectl = 0; in ccw_device_accumulate_ecw()
81 if ((irb->scsw.cmd.stctl & SCSW_STCTL_ALERT_STATUS) && in ccw_device_accumulate_ecw()
82 !(irb->scsw.cmd.stctl & SCSW_STCTL_INTER_STATUS)) in ccw_device_accumulate_ecw()
83 cdev->private->irb.scsw.cmd.ectl = irb->scsw.cmd.ectl; in ccw_device_accumulate_ecw()
[all …]
Dccwreq.c65 memset(&cdev->private->irb, 0, sizeof(struct irb)); in ccwreq_stop()
88 memset(&cdev->private->irb, 0, sizeof(struct irb)); in ccwreq_do()
169 static enum io_status ccwreq_status(struct ccw_device *cdev, struct irb *lcirb) in ccwreq_status()
171 struct irb *irb = &cdev->private->irb; in ccwreq_status() local
172 struct cmd_scsw *scsw = &irb->scsw.cmd; in ccwreq_status()
185 if (irb->esw.esw0.erw.cons) { in ccwreq_status()
189 CIO_HEX_EVENT(2, &cdev->private->irb.ecw, SENSE_MAX_COUNT); in ccwreq_status()
191 if (irb->ecw[0] & SNS0_CMD_REJECT) in ccwreq_status()
255 struct irb *irb = this_cpu_ptr(&cio_irb); in ccw_request_handler() local
261 status = ccwreq_status(cdev, irb); in ccw_request_handler()
[all …]
Ddevice_fsm.c384 memset(&cdev->private->irb, 0, sizeof(struct irb)); in ccw_device_done()
498 static void create_fake_irb(struct irb *irb, int type) in create_fake_irb() argument
500 memset(irb, 0, sizeof(*irb)); in create_fake_irb()
502 struct cmd_scsw *scsw = &irb->scsw.cmd; in create_fake_irb()
508 struct tm_scsw *scsw = &irb->scsw.tm; in create_fake_irb()
540 create_fake_irb(&cdev->private->irb, in ccw_device_verify_done()
545 &cdev->private->irb); in ccw_device_verify_done()
546 memset(&cdev->private->irb, 0, sizeof(struct irb)); in ccw_device_verify_done()
702 (scsw_stctl(&cdev->private->irb.scsw) & SCSW_STCTL_STATUS_PEND)) { in ccw_device_online_verify()
749 stctl = scsw_stctl(&cdev->private->irb.scsw); in ccw_device_call_handler()
[all …]
Dcio.c49 DEFINE_PER_CPU_ALIGNED(struct irb, cio_irb);
349 struct irb irb; in cio_commit_config() local
374 if (tsch(sch->schid, &irb)) in cio_commit_config()
541 struct irb *irb; in do_cio_interrupt() local
545 irb = this_cpu_ptr(&cio_irb); in do_cio_interrupt()
550 tsch(tpi_info->schid, irb); in do_cio_interrupt()
555 if (tsch(tpi_info->schid, irb) == 0) { in do_cio_interrupt()
557 memcpy (&sch->schib.scsw, &irb->scsw, sizeof (irb->scsw)); in do_cio_interrupt()
592 struct irb *irb; in cio_tsch() local
595 irb = this_cpu_ptr(&cio_irb); in cio_tsch()
[all …]
Ddevice.h104 void ccw_device_accumulate_irb(struct ccw_device *, struct irb *);
105 void ccw_device_accumulate_basic_sense(struct ccw_device *, struct irb *);
106 int ccw_device_accumulate_and_sense(struct ccw_device *, struct irb *);
107 int ccw_device_do_sense(struct ccw_device *, struct irb *);
Dchsc_sch.h6 struct irb irb; member
Deadm_sch.c137 struct irb *irb = this_cpu_ptr(&cio_irb); in eadm_subchannel_irq() local
141 EADM_LOG_HEX(6, irb, sizeof(*irb)); in eadm_subchannel_irq()
146 && scsw->eswf == 1 && irb->esw.eadm.erw.r) in eadm_subchannel_irq()
156 EADM_LOG_HEX(1, irb, sizeof(*irb)); in eadm_subchannel_irq()
Dchsc_sch.c61 struct irb *irb = this_cpu_ptr(&cio_irb); in chsc_subchannel_irq() local
64 CHSC_LOG_HEX(4, irb, sizeof(*irb)); in chsc_subchannel_irq()
74 memcpy(&request->irb, irb, sizeof(*irb)); in chsc_subchannel_irq()
306 if (!(scsw_stctl(&request->irb.scsw) & SCSW_STCTL_STATUS_PEND)) in chsc_examine_irb()
308 backed_up = scsw_cstat(&request->irb.scsw) & SCHN_STAT_CHAIN_CHECK; in chsc_examine_irb()
309 request->irb.scsw.cmd.cstat &= ~SCHN_STAT_CHAIN_CHECK; in chsc_examine_irb()
310 if (scsw_cstat(&request->irb.scsw) == 0) in chsc_examine_irb()
314 if (scsw_cstat(&request->irb.scsw) & SCHN_STAT_PROG_CHECK) in chsc_examine_irb()
316 if (scsw_cstat(&request->irb.scsw) & SCHN_STAT_PROT_CHECK) in chsc_examine_irb()
318 if (scsw_cstat(&request->irb.scsw) & SCHN_STAT_CHN_DATA_CHK) in chsc_examine_irb()
[all …]
Dio_sch.h77 enum io_status (*filter)(struct ccw_device *, void *, struct irb *,
157 struct irb irb; /* device status */ member
Dqdio.h298 void (*orig_handler) (struct ccw_device *, unsigned long, struct irb *);
397 struct irb *irb);
Dqdio_main.c965 static void qdio_irq_check_sense(struct qdio_irq *irq_ptr, struct irb *irb) in qdio_irq_check_sense() argument
967 if (irb->esw.esw0.erw.cons) { in qdio_irq_check_sense()
969 DBF_ERROR_HEX(irb, 64); in qdio_irq_check_sense()
970 DBF_ERROR_HEX(irb->ecw, 64); in qdio_irq_check_sense()
1066 struct irb *irb) in qdio_int_handler() argument
1079 if (IS_ERR(irb)) { in qdio_int_handler()
1085 qdio_irq_check_sense(irq_ptr, irb); in qdio_int_handler()
1086 cstat = irb->scsw.cmd.cstat; in qdio_int_handler()
1087 dstat = irb->scsw.cmd.dstat; in qdio_int_handler()
Dioasm.h77 static inline int tsch(struct subchannel_id schid, struct irb *addr) in tsch()
Dcio.h105 DECLARE_PER_CPU(struct irb, cio_irb);
Ddevice_pgid.c92 struct irb *irb, enum io_status status) in nop_filter() argument
95 if (status == IO_STATUS_ERROR && irb->scsw.cmd.cstat == 0) in nop_filter()
Ddevice_id.c145 struct cmd_scsw *scsw = &cdev->private->irb.scsw.cmd; in snsid_check()
/linux-4.4.14/drivers/s390/char/
Dtape_3590.c780 struct irb *irb, int rc) in tape_3590_erp_failed() argument
784 tape_dump_sense_dbf(device, request, irb); in tape_3590_erp_failed()
793 struct irb *irb) in tape_3590_erp_retry() argument
796 tape_dump_sense_dbf(device, request, irb); in tape_3590_erp_retry()
804 tape_3590_unsolicited_irq(struct tape_device *device, struct irb *irb) in tape_3590_unsolicited_irq() argument
806 if (irb->scsw.cmd.dstat == DEV_STAT_CHN_END) in tape_3590_unsolicited_irq()
809 else if (irb->scsw.cmd.dstat == 0x85) in tape_3590_unsolicited_irq()
812 else if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) { in tape_3590_unsolicited_irq()
816 tape_dump_sense_dbf(device, NULL, irb); in tape_3590_unsolicited_irq()
828 struct irb *irb, int rc) in tape_3590_erp_basic() argument
[all …]
Dtape_34xx.c221 tape_34xx_unsolicited_irq(struct tape_device *device, struct irb *irb) in tape_34xx_unsolicited_irq() argument
223 if (irb->scsw.cmd.dstat == 0x85) { /* READY */ in tape_34xx_unsolicited_irq()
230 tape_dump_sense_dbf(device, NULL, irb); in tape_34xx_unsolicited_irq()
262 struct irb *irb, int no) in tape_34xx_erp_bug() argument
267 tape_dump_sense_dbf(device, request, irb); in tape_34xx_erp_bug()
278 struct irb *irb) in tape_34xx_erp_overrun() argument
280 if (irb->ecw[3] == 0x40) { in tape_34xx_erp_overrun()
285 return tape_34xx_erp_bug(device, request, irb, -1); in tape_34xx_erp_overrun()
293 struct tape_request *request, struct irb *irb) in tape_34xx_erp_sequence() argument
295 if (irb->ecw[3] == 0x41) { in tape_34xx_erp_sequence()
[all …]
Dtape_core.c33 static void __tape_do_irq (struct ccw_device *, unsigned long, struct irb *);
915 struct irb *irb) in tape_dump_sense_dbf() argument
925 irb->scsw.cmd.dstat, irb->scsw.cmd.cstat); in tape_dump_sense_dbf()
927 sptr = (unsigned int *) irb->ecw; in tape_dump_sense_dbf()
1100 __tape_do_irq (struct ccw_device *cdev, unsigned long intparm, struct irb *irb) in __tape_do_irq() argument
1115 if (IS_ERR(irb)) { in __tape_do_irq()
1117 switch (PTR_ERR(irb)) { in __tape_do_irq()
1126 device->cdev_id, PTR_ERR(irb)); in __tape_do_irq()
1138 if (irb->scsw.cmd.cc != 0 && in __tape_do_irq()
1139 (irb->scsw.cmd.fctl & SCSW_FCTL_START_FUNC) && in __tape_do_irq()
[all …]
Draw3270.c340 raw3270_irq (struct ccw_device *cdev, unsigned long intparm, struct irb *irb) in raw3270_irq() argument
353 if (IS_ERR(irb)) in raw3270_irq()
355 else if (irb->scsw.cmd.fctl & SCSW_FCTL_HALT_FUNC) { in raw3270_irq()
358 } else if (irb->scsw.cmd.dstat == (DEV_STAT_CHN_END | DEV_STAT_DEV_END | in raw3270_irq()
365 if (irb->scsw.cmd.dstat & DEV_STAT_DEV_END) { in raw3270_irq()
372 rc = view->fn->intv(view, rq, irb); in raw3270_irq()
690 struct irb *irb) in raw3270_init_irq() argument
698 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) { in raw3270_init_irq()
700 if (irb->ecw[0] & SNS0_INTERVENTION_REQ) { in raw3270_init_irq()
706 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) { in raw3270_init_irq()
[all …]
Dvmur.c305 struct irb *irb) in ur_int_handler() argument
310 intparm, irb->scsw.cmd.cstat, irb->scsw.cmd.dstat, in ur_int_handler()
311 irb->scsw.cmd.count); in ur_int_handler()
320 if (IS_ERR(irb)) in ur_int_handler()
321 urd->io_request_rc = PTR_ERR(irb); in ur_int_handler()
322 else if (irb->scsw.cmd.dstat == (DEV_STAT_CHN_END | DEV_STAT_DEV_END)) in ur_int_handler()
Dcon3270.c404 con3270_irq(struct con3270 *cp, struct raw3270_request *rq, struct irb *irb) in con3270_irq() argument
407 if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) in con3270_irq()
411 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) in con3270_irq()
415 rq->rescnt = irb->scsw.cmd.count; in con3270_irq()
416 } else if (irb->scsw.cmd.dstat & DEV_STAT_DEV_END) { in con3270_irq()
Dfs3270.c221 fs3270_irq(struct fs3270 *fp, struct raw3270_request *rq, struct irb *irb) in fs3270_irq() argument
224 if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) { in fs3270_irq()
230 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) in fs3270_irq()
234 rq->rescnt = irb->scsw.cmd.count; in fs3270_irq()
Dtape.h151 int (*irq)(struct tape_device *, struct tape_request *, struct irb *);
295 struct irb *);
Dcon3215.c365 struct irb *irb) in raw3215_irq() argument
376 cstat = irb->scsw.cmd.cstat; in raw3215_irq()
377 dstat = irb->scsw.cmd.dstat; in raw3215_irq()
398 req->residual = irb->scsw.cmd.count; in raw3215_irq()
Draw3270.h141 struct raw3270_request *, struct irb *);
Dtty3270.c646 tty3270_irq(struct tty3270 *tp, struct raw3270_request *rq, struct irb *irb) in tty3270_irq() argument
649 if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) { in tty3270_irq()
657 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) in tty3270_irq()
661 rq->rescnt = irb->scsw.cmd.count; in tty3270_irq()
662 } else if (irb->scsw.cmd.dstat & DEV_STAT_DEV_END) { in tty3270_irq()
/linux-4.4.14/drivers/s390/block/
Ddasd_fba.c243 struct irb *irb) in dasd_fba_check_for_device_change() argument
249 if ((irb->scsw.cmd.dstat & mask) == mask) in dasd_fba_check_for_device_change()
451 dasd_fba_dump_sense_dbf(struct dasd_device *device, struct irb *irb, in dasd_fba_dump_sense_dbf() argument
456 sense = (u64 *) dasd_get_sense(irb); in dasd_fba_dump_sense_dbf()
461 scsw_is_tm(&irb->scsw) ? "t" : "c", in dasd_fba_dump_sense_dbf()
462 scsw_cc(&irb->scsw), scsw_cstat(&irb->scsw), in dasd_fba_dump_sense_dbf()
463 scsw_dstat(&irb->scsw), sense[0], sense[1], in dasd_fba_dump_sense_dbf()
474 struct irb *irb) in dasd_fba_dump_sense() argument
491 irb->scsw.cmd.cstat, irb->scsw.cmd.dstat); in dasd_fba_dump_sense()
495 (void *) (addr_t) irb->scsw.cmd.cpa); in dasd_fba_dump_sense()
[all …]
Ddasd_erp.c165 dasd_log_sense(struct dasd_ccw_req *cqr, struct irb *irb) in dasd_log_sense() argument
182 device->discipline->dump_sense(device, cqr, irb); in dasd_log_sense()
186 dasd_log_sense_dbf(struct dasd_ccw_req *cqr, struct irb *irb) in dasd_log_sense_dbf() argument
193 device->discipline->dump_sense_dbf(device, irb, "log"); in dasd_log_sense_dbf()
Ddasd_int.h193 struct irb irb; /* device status in case of an error */ member
340 struct irb *);
341 void (*dump_sense_dbf) (struct dasd_device *, struct irb *, char *);
344 struct irb *);
717 enum uc_todo dasd_generic_uc_handler(struct ccw_device *, struct irb *);
722 char *dasd_get_sense(struct irb *);
784 void dasd_log_sense(struct dasd_ccw_req *, struct irb *);
785 void dasd_log_sense_dbf(struct dasd_ccw_req *cqr, struct irb *irb);
Ddasd_3990_erp.c156 ~(erp->irb.esw.esw0.sublog.lpum); in dasd_3990_erp_alternate_path()
158 erp->lpm &= ~(erp->irb.esw.esw0.sublog.lpum); in dasd_3990_erp_alternate_path()
164 erp->lpm, erp->irb.esw.esw0.sublog.lpum, opm); in dasd_3990_erp_alternate_path()
172 "/opm=%x)\n", erp->irb.esw.esw0.sublog.lpum, opm); in dasd_3990_erp_alternate_path()
1427 sense = dasd_get_sense(&erp->refers->irb); in dasd_3990_erp_inspect_alias()
1613 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_erp_action_1B_32()
1630 cpa = default_erp->refers->irb.scsw.cmd.cpa; in dasd_3990_erp_action_1B_32()
1769 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_update_1B()
1788 cpa = previous_erp->irb.scsw.cmd.cpa; in dasd_3990_update_1B()
2224 if (scsw_cstat(&erp->refers->irb.scsw) & (SCHN_STAT_INTF_CTRL_CHK in dasd_3990_erp_control_check()
[all …]
Ddasd_eckd.c1930 sense = dasd_get_sense(&init_cqr->irb); in dasd_eckd_analysis_evaluation()
2542 struct irb *irb) in dasd_eckd_check_for_device_change() argument
2551 if ((scsw_dstat(&irb->scsw) & mask) == mask) { in dasd_eckd_check_for_device_change()
2575 sense = dasd_get_sense(irb); in dasd_eckd_check_for_device_change()
2581 (scsw_dstat(&irb->scsw) & DEV_STAT_UNIT_CHECK)) { in dasd_eckd_check_for_device_change()
2582 dasd_alias_handle_summary_unit_check(device, irb); in dasd_eckd_check_for_device_change()
2598 (scsw_dstat(&irb->scsw) & DEV_STAT_UNIT_CHECK) && in dasd_eckd_check_for_device_change()
4153 dasd_eckd_dump_sense_dbf(struct dasd_device *device, struct irb *irb, in dasd_eckd_dump_sense_dbf() argument
4159 sense = (u64 *) dasd_get_sense(irb); in dasd_eckd_dump_sense_dbf()
4160 stat = (u64 *) &irb->scsw; in dasd_eckd_dump_sense_dbf()
[all …]
Ddasd.c51 void dasd_int_handler(struct ccw_device *, unsigned long, struct irb *);
1580 struct irb *irb) in dasd_int_handler() argument
1587 if (IS_ERR(irb)) { in dasd_int_handler()
1588 switch (PTR_ERR(irb)) { in dasd_int_handler()
1598 PTR_ERR(irb)); in dasd_int_handler()
1608 !(scsw_dstat(&irb->scsw) == (DEV_STAT_CHN_END | DEV_STAT_DEV_END) && in dasd_int_handler()
1609 scsw_cstat(&irb->scsw) == 0)) { in dasd_int_handler()
1611 memcpy(&cqr->irb, irb, sizeof(*irb)); in dasd_int_handler()
1620 device->discipline->dump_sense_dbf(device, irb, "int"); in dasd_int_handler()
1622 device->discipline->dump_sense(device, cqr, irb); in dasd_int_handler()
[all …]
Ddasd_alias.c399 sense = dasd_get_sense(&cqr->irb); in suborder_not_supported()
949 struct irb *irb) in dasd_alias_handle_summary_unit_check() argument
958 sense = dasd_get_sense(irb); in dasd_alias_handle_summary_unit_check()
Ddasd_eer.c307 if (dasd_get_sense(&temp_cqr->irb)) in dasd_eer_write_standard_trigger()
323 sense = dasd_get_sense(&temp_cqr->irb); in dasd_eer_write_standard_trigger()
Ddasd_eckd.h537 void dasd_alias_handle_summary_unit_check(struct dasd_device *, struct irb *);
Ddasd_diag.c620 struct irb *stat) in dasd_diag_dump_sense()
/linux-4.4.14/drivers/s390/net/
Dctcm_main.c230 kfree(ch->irb); in channel_remove()
276 static long ctcm_check_irb_error(struct ccw_device *cdev, struct irb *irb) in ctcm_check_irb_error() argument
278 if (!IS_ERR(irb)) in ctcm_check_irb_error()
283 PTR_ERR(irb), dev_name(&cdev->dev)); in ctcm_check_irb_error()
285 switch (PTR_ERR(irb)) { in ctcm_check_irb_error()
298 return PTR_ERR(irb); in ctcm_check_irb_error()
1199 unsigned long intparm, struct irb *irb) in ctcm_irq_handler() argument
1211 if (ctcm_check_irb_error(cdev, irb)) in ctcm_irq_handler()
1216 cstat = irb->scsw.cmd.cstat; in ctcm_irq_handler()
1217 dstat = irb->scsw.cmd.dstat; in ctcm_irq_handler()
[all …]
Dlcs.c1308 lcs_check_irb_error(struct ccw_device *cdev, struct irb *irb) in lcs_check_irb_error() argument
1310 if (!IS_ERR(irb)) in lcs_check_irb_error()
1313 switch (PTR_ERR(irb)) { in lcs_check_irb_error()
1329 PTR_ERR(irb)); in lcs_check_irb_error()
1333 return PTR_ERR(irb); in lcs_check_irb_error()
1337 lcs_get_problem(struct ccw_device *cdev, struct irb *irb) in lcs_get_problem() argument
1342 sense = (char *) irb->ecw; in lcs_get_problem()
1343 cstat = irb->scsw.cmd.cstat; in lcs_get_problem()
1344 dstat = irb->scsw.cmd.dstat; in lcs_get_problem()
1388 lcs_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb) in lcs_irq() argument
[all …]
Dctcm_main.h148 struct irb *irb; member
Dqeth_core_main.c996 static int qeth_get_problem(struct ccw_device *cdev, struct irb *irb) in qeth_get_problem() argument
1002 sense = (char *) irb->ecw; in qeth_get_problem()
1003 cstat = irb->scsw.cmd.cstat; in qeth_get_problem()
1004 dstat = irb->scsw.cmd.dstat; in qeth_get_problem()
1016 16, 1, irb, 64, 1); in qeth_get_problem()
1046 unsigned long intparm, struct irb *irb) in __qeth_check_irb_error() argument
1052 if (!card || !IS_ERR(irb)) in __qeth_check_irb_error()
1055 switch (PTR_ERR(irb)) { in __qeth_check_irb_error()
1076 dev_name(&cdev->dev), PTR_ERR(irb)); in __qeth_check_irb_error()
1080 return PTR_ERR(irb); in __qeth_check_irb_error()
[all …]
Dctcm_fsms.c262 if (ch->irb->scsw.cmd.count != 0) in chx_txdone()
265 CTCM_FUNTAIL, dev->name, ch->irb->scsw.cmd.count); in chx_txdone()
360 int len = ch->max_bufsize - ch->irb->scsw.cmd.count; in chx_rx()
1239 if (ch->irb->scsw.cmd.count != 0) in ctcmpc_chx_txdone()
1242 CTCM_FUNTAIL, dev->name, ch->irb->scsw.cmd.count); in ctcmpc_chx_txdone()
1394 int len = ch->max_bufsize - ch->irb->scsw.cmd.count; in ctcmpc_chx_rx()
/linux-4.4.14/arch/s390/include/asm/
Dccwdev.h18 struct irb;
93 void (*handler) (struct ccw_device *, unsigned long, struct irb *);
148 enum uc_todo (*uc_handler) (struct ccw_device *, struct irb *);
Dcio.h215 struct irb { struct
/linux-4.4.14/Documentation/devicetree/bindings/media/
Dst-rc.txt4 - compatible: Should contain "st,comms-irb".
25 compatible = "st,comms-irb";
/linux-4.4.14/drivers/s390/virtio/
Dvirtio_ccw.c957 static int irb_is_error(struct irb *irb) in irb_is_error() argument
959 if (scsw_cstat(&irb->scsw) != 0) in irb_is_error()
961 if (scsw_dstat(&irb->scsw) & ~(DEV_STAT_CHN_END | DEV_STAT_DEV_END)) in irb_is_error()
963 if (scsw_cc(&irb->scsw) != 0) in irb_is_error()
1019 struct irb *irb) in virtio_ccw_int_handler() argument
1028 if (IS_ERR(irb)) { in virtio_ccw_int_handler()
1029 vcdev->err = PTR_ERR(irb); in virtio_ccw_int_handler()
1036 (scsw_stctl(&irb->scsw) == in virtio_ccw_int_handler()
1040 if (irb_is_error(irb)) { in virtio_ccw_int_handler()
1042 if ((scsw_dstat(&irb->scsw) & DEV_STAT_UNIT_CHECK) && in virtio_ccw_int_handler()
[all …]
/linux-4.4.14/Documentation/s390/
Ddriver-model.txt89 struct irb *irb);
192 void (*handler) (struct ccw_device *dev, unsigned long intparm, struct irb *irb);
198 irb - interruption response block which contains the accumulated
202 information about the interrupt from the irb parameter.
Dcds.txt52 Moreover, they don't return a devstat, but an irb.
227 with ERR_PTR(-ETIMEDOUT) as irb.
273 accumulate the status in a struct irb and then call the device interrupt handler.
282 The irb may contain an error value, and the device driver should check for this
289 If the concurrent sense flag in the extended status word (esw) in the irb is
291 sense bytes available in the extended control word irb->scsw.ecw[]. No device
308 The irb->scsw.cstat field provides the (accumulated) subchannel status :
319 The irb->scsw.dstat field provides the (accumulated) device status :
DCommonIO120 structures (like irb in an error case).
/linux-4.4.14/drivers/platform/x86/
Dfujitsu-laptop.c937 unsigned int irb = 1; in acpi_fujitsu_hotkey_notify() local
949 while ((irb = in acpi_fujitsu_hotkey_notify()
952 switch (irb & 0x4ff) { in acpi_fujitsu_hotkey_notify()
970 "Unknown GIRB result [%x]\n", irb); in acpi_fujitsu_hotkey_notify()
/linux-4.4.14/Documentation/DocBook/
Ds390-drivers.xml.db10 API-struct-irb
/linux-4.4.14/arch/arm/boot/dts/
Dstih415.dtsi200 compatible = "st,comms-irb";
Dstih416.dtsi229 compatible = "st,comms-irb";
/linux-4.4.14/arch/s390/kernel/
Dhead.S84 la %r5,.Lirb # r4 = address of irb