| /linux/drivers/s390/cio/ |
| H A D | device_fsm.c | 341 memset(&cdev->private->dma_area->irb, 0, sizeof(struct irb)); in ccw_device_done() 455 static void create_fake_irb(struct irb *irb, int type) in create_fake_irb() argument 457 memset(irb, 0, sizeof(*irb)); in create_fake_irb() 459 struct cmd_scsw *scsw = &irb->scsw.cmd; in create_fake_irb() 465 struct tm_scsw *scsw = &irb->scsw.tm; in create_fake_irb() 513 create_fake_irb(&cdev->private->dma_area->irb, in ccw_device_verify_done() 518 &cdev->private->dma_area->irb); in ccw_device_verify_done() 519 memset(&cdev->private->dma_area->irb, 0, in ccw_device_verify_done() 520 sizeof(struct irb)); in ccw_device_verify_done() 677 (scsw_stctl(&cdev->private->dma_area->irb.scsw) & in ccw_device_online_verify() [all …]
|
| H A D | trace.h | 107 TP_PROTO(struct subchannel_id schid, struct irb *irb, int cc), 108 TP_ARGS(schid, irb, cc), 113 __field_struct(struct irb, irb) 127 __entry->irb = *irb; 128 __entry->scsw_dcc = scsw_cc(&irb->scsw); 129 __entry->scsw_pno = scsw_pno(&irb->scsw); 130 __entry->scsw_fctl = scsw_fctl(&irb->scsw); 131 __entry->scsw_actl = scsw_actl(&irb->scsw); 132 __entry->scsw_stctl = scsw_stctl(&irb->scsw); 133 __entry->scsw_dstat = scsw_dstat(&irb->scsw); [all …]
|
| H A D | device.h | 104 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 *);
|
| H A D | eadm_sch.c | 127 struct irb *irb = this_cpu_ptr(&cio_irb); in eadm_subchannel_irq() local 131 EADM_LOG_HEX(6, irb, sizeof(*irb)); in eadm_subchannel_irq() 136 && scsw->eswf == 1 && irb->esw.eadm.erw.r) in eadm_subchannel_irq() 146 EADM_LOG_HEX(1, irb, sizeof(*irb)); in eadm_subchannel_irq()
|
| H A D | chsc_sch.h | 7 struct irb irb; member
|
| H A D | io_sch.h | 83 enum io_status (*filter)(struct ccw_device *, void *, struct irb *, 126 struct irb irb; /* device status */ member
|
| H A D | qdio_main.c | 682 static void qdio_irq_check_sense(struct qdio_irq *irq_ptr, struct irb *irb) in qdio_irq_check_sense() argument 684 if (irb->esw.esw0.erw.cons) { in qdio_irq_check_sense() 686 DBF_ERROR_HEX(irb, 64); in qdio_irq_check_sense() 687 DBF_ERROR_HEX(irb->ecw, 64); in qdio_irq_check_sense() 750 struct irb *irb) in qdio_int_handler() argument 765 if (IS_ERR(irb)) { in qdio_int_handler() 771 qdio_irq_check_sense(irq_ptr, irb); in qdio_int_handler() 772 cstat = irb->scsw.cmd.cstat; in qdio_int_handler() 773 dstat = irb->scsw.cmd.dstat; in qdio_int_handler() 774 dcc = scsw_cmd_is_valid_cc(&irb->scsw) ? irb->scsw.cmd.cc : 0; in qdio_int_handler()
|
| H A D | vfio_ccw_fsm.c | 360 struct irb *irb = this_cpu_ptr(&cio_irb); in fsm_irq() local 365 memcpy(&private->irb, irb, sizeof(*irb)); in fsm_irq()
|
| H A D | ioasm.c | 78 static inline int __tsch(struct subchannel_id schid, struct irb *addr) in __tsch() 93 int tsch(struct subchannel_id schid, struct irb *addr) in tsch()
|
| H A D | ioasm.h | 18 int tsch(struct subchannel_id schid, struct irb *addr);
|
| H A D | device_pgid.c | 94 struct irb *irb, enum io_status status) in nop_filter() argument 97 if (status == IO_STATUS_ERROR && irb->scsw.cmd.cstat == 0) in nop_filter()
|
| /linux/drivers/s390/block/ |
| H A D | dasd_erp.c | 162 dasd_log_sense(struct dasd_ccw_req *cqr, struct irb *irb) in dasd_log_sense() argument 179 device->discipline->dump_sense(device, cqr, irb); in dasd_log_sense() 183 dasd_log_sense_dbf(struct dasd_ccw_req *cqr, struct irb *irb) in dasd_log_sense_dbf() argument 190 device->discipline->dump_sense_dbf(device, irb, "log"); in dasd_log_sense_dbf()
|
| H A D | dasd_3990_erp.c | 153 ~(erp->irb.esw.esw0.sublog.lpum); in dasd_3990_erp_alternate_path() 155 erp->lpm &= ~(erp->irb.esw.esw0.sublog.lpum); in dasd_3990_erp_alternate_path() 161 erp->lpm, erp->irb.esw.esw0.sublog.lpum, opm); in dasd_3990_erp_alternate_path() 169 "/opm=%x)\n", erp->irb.esw.esw0.sublog.lpum, opm); in dasd_3990_erp_alternate_path() 1420 sense = dasd_get_sense(&erp->refers->irb); in dasd_3990_erp_inspect_alias() 1606 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_erp_action_1B_32() 1623 cpa = default_erp->refers->irb.scsw.cmd.cpa; in dasd_3990_erp_action_1B_32() 1761 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_update_1B() 1780 cpa = previous_erp->irb.scsw.cmd.cpa; in dasd_3990_update_1B() 2212 __u8 lpum = erp->refers->irb.esw.esw1.lpum; in dasd_3990_erp_account_error() [all …]
|
| H A D | dasd_int.h | 148 struct irb irb; /* device status in case of an error */ member 369 struct irb *); 370 void (*dump_sense_dbf) (struct dasd_device *, struct irb *, char *); 373 struct irb *); 388 void (*handle_hpf_error)(struct dasd_device *, struct irb *); 410 struct dasd_ccw_req *, struct irb *); 411 int (*ese_read)(struct dasd_ccw_req *, struct irb *); 880 enum uc_todo dasd_generic_uc_handler(struct ccw_device *, struct irb *); 889 char *dasd_get_sense(struct irb *); 955 void dasd_log_sense(struct dasd_ccw_req *, struct irb *); [all …]
|
| /linux/drivers/s390/char/ |
| H A D | vmur.c | 301 struct irb *irb) in ur_int_handler() argument 305 if (!IS_ERR(irb)) { in ur_int_handler() 307 intparm, irb->scsw.cmd.cstat, irb->scsw.cmd.dstat, in ur_int_handler() 308 irb->scsw.cmd.count); in ur_int_handler() 314 if (scsw_dstat(&irb->scsw) & DEV_STAT_DEV_END) { in ur_int_handler() 326 if (IS_ERR(irb)) in ur_int_handler() 327 urd->io_request_rc = PTR_ERR(irb); in ur_int_handler() 328 else if (irb->scsw.cmd.dstat == (DEV_STAT_CHN_END | DEV_STAT_DEV_END)) in ur_int_handler()
|
| H A D | raw3270.c | 342 static void raw3270_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb) in raw3270_irq() argument 354 if (!IS_ERR(irb)) { in raw3270_irq() 356 if (irb->scsw.cmd.dstat & DEV_STAT_DEV_END) in raw3270_irq() 358 if (irb->scsw.cmd.dstat == (DEV_STAT_CHN_END | in raw3270_irq() 363 if ((irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) && in raw3270_irq() 364 (irb->ecw[0] & SNS0_INTERVENTION_REQ)) { in raw3270_irq() 371 view->fn->intv(view, rq, irb); in raw3270_irq() 701 struct irb *irb) in raw3270_init_irq() argument 706 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) { in raw3270_init_irq() 707 if (irb->ecw[0] & SNS0_CMD_REJECT) in raw3270_init_irq() [all …]
|
| H A D | con3215.c | 347 struct irb *irb) in raw3215_irq() argument 358 cstat = irb->scsw.cmd.cstat; in raw3215_irq() 359 dstat = irb->scsw.cmd.dstat; in raw3215_irq() 380 req->residual = irb->scsw.cmd.count; in raw3215_irq()
|
| H A D | raw3270.h | 57 struct raw3270_request *rq, struct irb *ib);
|
| /linux/arch/s390/include/asm/ |
| H A D | ccwdev.h | 21 struct irb; 97 void (*handler) (struct ccw_device *, unsigned long, struct irb *); 144 enum uc_todo (*uc_handler) (struct ccw_device *, struct irb *);
|
| /linux/Documentation/devicetree/bindings/media/ |
| H A D | st-rc.txt | 4 - compatible: Should contain "st,comms-irb". 25 compatible = "st,comms-irb";
|
| /linux/drivers/s390/virtio/ |
| H A D | virtio_ccw.c | 1112 static int irb_is_error(struct irb *irb) in irb_is_error() argument 1114 if (scsw_cstat(&irb->scsw) != 0) in irb_is_error() 1116 if (scsw_dstat(&irb->scsw) & ~(DEV_STAT_CHN_END | DEV_STAT_DEV_END)) in irb_is_error() 1118 if (scsw_cc(&irb->scsw) != 0) in irb_is_error() 1175 struct irb *irb) in virtio_ccw_int_handler() argument 1184 if (IS_ERR(irb)) { in virtio_ccw_int_handler() 1185 vcdev->err = PTR_ERR(irb); in virtio_ccw_int_handler() 1192 (scsw_stctl(&irb->scsw) == in virtio_ccw_int_handler() 1196 if (irb_is_error(irb)) { in virtio_ccw_int_handler() 1198 if ((scsw_dstat(&irb->scsw) & DEV_STAT_UNIT_CHECK) && in virtio_ccw_int_handler() [all …]
|
| /linux/Documentation/arch/s390/ |
| H A D | driver-model.rst | 96 struct irb *irb); 230 void (*handler) (struct ccw_device *dev, unsigned long intparm, struct irb *irb); 236 irb - interruption response block which contains the accumulated 240 information about the interrupt from the irb parameter.
|
| H A D | cds.rst | 58 Moreover, they don't return a devstat, but an irb. 245 with ERR_PTR(-ETIMEDOUT) as irb. 300 accumulate the status in a struct irb and then call the device interrupt handler. 309 The irb may contain an error value, and the device driver should check for this 318 If the concurrent sense flag in the extended status word (esw) in the irb is 320 sense bytes available in the extended control word irb->scsw.ecw[]. No device 339 The irb->scsw.cstat field provides the (accumulated) subchannel status : 352 The irb->scsw.dstat field provides the (accumulated) device status :
|
| /linux/drivers/s390/net/ |
| H A D | ctcm_main.h | 150 struct irb *irb; member
|
| /linux/drivers/platform/x86/ |
| H A D | fujitsu-laptop.c | 1042 unsigned int irb; in acpi_fujitsu_laptop_notify() local 1055 while ((irb = call_fext_func(device, in acpi_fujitsu_laptop_notify() 1058 scancode = irb & 0x4ff; in acpi_fujitsu_laptop_notify() 1065 "Unknown GIRB result [%x]\n", irb); in acpi_fujitsu_laptop_notify()
|