Lines Matching refs:sch

39 	struct subchannel *sch;  in ccw_timeout_log()  local
44 sch = to_subchannel(cdev->dev.parent); in ccw_timeout_log()
45 private = to_io_private(sch); in ccw_timeout_log()
47 cc = stsch_err(sch->schid, &schib); in ccw_timeout_log()
57 dev_name(&sch->dev)); in ccw_timeout_log()
59 "vpm: %02x\n", sch->lpm, sch->opm, sch->vpm); in ccw_timeout_log()
138 struct subchannel *sch; in ccw_device_cancel_halt_clear() local
141 sch = to_subchannel(cdev->dev.parent); in ccw_device_cancel_halt_clear()
142 if (cio_update_schib(sch)) in ccw_device_cancel_halt_clear()
144 if (!sch->schib.pmcw.ena) in ccw_device_cancel_halt_clear()
148 if (!(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_HALT_PEND) && in ccw_device_cancel_halt_clear()
149 !(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_CLEAR_PEND)) { in ccw_device_cancel_halt_clear()
150 if (!scsw_is_tm(&sch->schib.scsw)) { in ccw_device_cancel_halt_clear()
151 ret = cio_cancel(sch); in ccw_device_cancel_halt_clear()
159 if (!(scsw_actl(&sch->schib.scsw) & SCSW_ACTL_CLEAR_PEND)) { in ccw_device_cancel_halt_clear()
163 ret = cio_halt(sch); in ccw_device_cancel_halt_clear()
173 ret = cio_clear (sch); in ccw_device_cancel_halt_clear()
205 __recover_lost_chpids(struct subchannel *sch, int old_lpm) in __recover_lost_chpids() argument
213 if (!(sch->lpm & mask)) in __recover_lost_chpids()
217 chpid.id = sch->schib.pmcw.chpid[i]; in __recover_lost_chpids()
229 struct subchannel *sch; in ccw_device_recog_done() local
232 sch = to_subchannel(cdev->dev.parent); in ccw_device_recog_done()
234 if (cio_disable_subchannel(sch)) in ccw_device_recog_done()
240 old_lpm = sch->lpm; in ccw_device_recog_done()
243 if (cio_update_schib(sch)) in ccw_device_recog_done()
246 sch->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_recog_done()
251 if (sch->lpm != old_lpm) in ccw_device_recog_done()
252 __recover_lost_chpids(sch, old_lpm); in ccw_device_recog_done()
354 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_oper_notify() local
360 cdev->private->path_new_mask = sch->vpm; in ccw_device_oper_notify()
374 struct subchannel *sch; in ccw_device_done() local
376 sch = to_subchannel(cdev->dev.parent); in ccw_device_done()
381 cio_disable_subchannel(sch); in ccw_device_done()
391 cdev->private->dev_id.devno, sch->schid.sch_no); in ccw_device_done()
399 cdev->private->dev_id.devno, sch->schid.sch_no); in ccw_device_done()
409 sch->schid.sch_no); in ccw_device_done()
433 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_recognition() local
445 if (cio_enable_subchannel(sch, (u32) (addr_t) sch)) { in ccw_device_recognition()
474 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_report_path_events() local
480 if (mask & cdev->private->path_gone_mask & ~(sch->vpm)) in ccw_device_report_path_events()
482 if (mask & cdev->private->path_new_mask & sch->vpm) in ccw_device_report_path_events()
484 if (mask & cdev->private->pgid_reset_mask & sch->vpm) in ccw_device_report_path_events()
519 struct subchannel *sch; in ccw_device_verify_done() local
521 sch = to_subchannel(cdev->dev.parent); in ccw_device_verify_done()
523 if (cio_update_schib(sch)) { in ccw_device_verify_done()
528 sch->lpm = sch->vpm; in ccw_device_verify_done()
576 struct subchannel *sch; in ccw_device_online() local
582 sch = to_subchannel(cdev->dev.parent); in ccw_device_online()
583 ret = cio_enable_subchannel(sch, (u32)(addr_t)sch); in ccw_device_online()
619 struct subchannel *sch; in ccw_device_offline() local
636 sch = to_subchannel(cdev->dev.parent); in ccw_device_offline()
637 if (cio_update_schib(sch)) in ccw_device_offline()
639 if (scsw_actl(&sch->schib.scsw) != 0) in ccw_device_offline()
673 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_offline_verify() local
675 css_schedule_eval(sch->schid); in ccw_device_offline_verify()
684 struct subchannel *sch; in ccw_device_online_verify() local
690 sch = to_subchannel(cdev->dev.parent); in ccw_device_online_verify()
695 if (cio_update_schib(sch)) { in ccw_device_online_verify()
700 if (scsw_actl(&sch->schib.scsw) != 0 || in ccw_device_online_verify()
701 (scsw_stctl(&sch->schib.scsw) & SCSW_STCTL_STATUS_PEND) || in ccw_device_online_verify()
722 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_boxed_verify() local
725 if (cio_enable_subchannel(sch, (u32) (addr_t) sch)) in ccw_device_boxed_verify()
730 css_schedule_eval(sch->schid); in ccw_device_boxed_verify()
949 struct subchannel *sch; in ccw_device_start_id() local
951 sch = to_subchannel(cdev->dev.parent); in ccw_device_start_id()
952 if (cio_enable_subchannel(sch, (u32)(addr_t)sch) != 0) in ccw_device_start_id()
961 struct subchannel *sch; in ccw_device_trigger_reprobe() local
966 sch = to_subchannel(cdev->dev.parent); in ccw_device_trigger_reprobe()
968 if (cio_update_schib(sch)) in ccw_device_trigger_reprobe()
974 sch->lpm = sch->schib.pmcw.pam & sch->opm; in ccw_device_trigger_reprobe()
979 io_subchannel_init_config(sch); in ccw_device_trigger_reprobe()
980 if (cio_commit_config(sch)) in ccw_device_trigger_reprobe()
985 if (sch->schib.pmcw.dev != cdev->private->dev_id.devno) in ccw_device_trigger_reprobe()
986 css_schedule_eval(sch->schid); in ccw_device_trigger_reprobe()
994 struct subchannel *sch; in ccw_device_disabled_irq() local
996 sch = to_subchannel(cdev->dev.parent); in ccw_device_disabled_irq()
1001 cio_disable_subchannel(sch); in ccw_device_disabled_irq()