Lines Matching refs:irb
230 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()
1197 unsigned long intparm, struct irb *irb) in ctcm_irq_handler() argument
1209 if (ctcm_check_irb_error(cdev, irb)) in ctcm_irq_handler()
1214 cstat = irb->scsw.cmd.cstat; in ctcm_irq_handler()
1215 dstat = irb->scsw.cmd.dstat; in ctcm_irq_handler()
1253 memcpy(ch->irb, irb, sizeof(struct irb)); in ctcm_irq_handler()
1256 if (irb->scsw.cmd.cstat) { in ctcm_irq_handler()
1267 if (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK) { in ctcm_irq_handler()
1268 if ((irb->ecw[0] & ch->sense_rc) == 0) in ctcm_irq_handler()
1272 CTCM_FUNTAIL, ch->id, irb->ecw[0], dstat); in ctcm_irq_handler()
1273 ccw_unit_check(ch, irb->ecw[0]); in ctcm_irq_handler()
1276 if (irb->scsw.cmd.dstat & DEV_STAT_BUSY) { in ctcm_irq_handler()
1277 if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) in ctcm_irq_handler()
1283 if (irb->scsw.cmd.dstat & DEV_STAT_ATTENTION) { in ctcm_irq_handler()
1287 if ((irb->scsw.cmd.stctl & SCSW_STCTL_SEC_STATUS) || in ctcm_irq_handler()
1288 (irb->scsw.cmd.stctl == SCSW_STCTL_STATUS_PEND) || in ctcm_irq_handler()
1289 (irb->scsw.cmd.stctl == in ctcm_irq_handler()
1461 ch->irb = kzalloc(sizeof(struct irb), GFP_KERNEL); in add_channel()
1462 if (ch->irb == NULL) in add_channel()
1497 kfree(ch->irb); in add_channel()