Home
last modified time | relevance | path

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

12

/linux/drivers/s390/cio/
H A Ddevice_fsm.c341 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 Dtrace.h107 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 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 *);
H A Deadm_sch.c127 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 Dchsc_sch.h7 struct irb irb; member
H A Dio_sch.h83 enum io_status (*filter)(struct ccw_device *, void *, struct irb *,
126 struct irb irb; /* device status */ member
H A Dqdio_main.c682 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 Dvfio_ccw_fsm.c360 struct irb *irb = this_cpu_ptr(&cio_irb); in fsm_irq() local
365 memcpy(&private->irb, irb, sizeof(*irb)); in fsm_irq()
H A Dioasm.c78 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 Dioasm.h18 int tsch(struct subchannel_id schid, struct irb *addr);
H A Ddevice_pgid.c94 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 Ddasd_erp.c162 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 Ddasd_3990_erp.c153 ~(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 Ddasd_int.h148 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 Dvmur.c301 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 Draw3270.c342 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 Dcon3215.c347 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 Draw3270.h57 struct raw3270_request *rq, struct irb *ib);
/linux/arch/s390/include/asm/
H A Dccwdev.h21 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 Dst-rc.txt4 - compatible: Should contain "st,comms-irb".
25 compatible = "st,comms-irb";
/linux/drivers/s390/virtio/
H A Dvirtio_ccw.c1112 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 Ddriver-model.rst96 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 Dcds.rst58 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 Dctcm_main.h150 struct irb *irb; member
/linux/drivers/platform/x86/
H A Dfujitsu-laptop.c1042 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()

12