Lines Matching refs:sch
69 static IOInstEnding vfio_ccw_handle_request(SubchDev *sch) in vfio_ccw_handle_request() argument
71 VFIOCCWDevice *vcdev = VFIO_CCW(sch->driver_data); in vfio_ccw_handle_request()
75 if (!(sch->orb.ctrl0 & ORB_CTRL0_MASK_PFCH) && vcdev->force_orb_pfch) { in vfio_ccw_handle_request()
76 sch->orb.ctrl0 |= ORB_CTRL0_MASK_PFCH; in vfio_ccw_handle_request()
78 sch->cssid, sch->ssid, sch->devno); in vfio_ccw_handle_request()
87 memcpy(region->orb_area, &sch->orb, sizeof(ORB)); in vfio_ccw_handle_request()
88 memcpy(region->scsw_area, &sch->curr_status.scsw, sizeof(SCSW)); in vfio_ccw_handle_request()
112 sch_gen_unit_exception(sch); in vfio_ccw_handle_request()
113 css_inject_io_interrupt(sch); in vfio_ccw_handle_request()
118 static IOInstEnding vfio_ccw_handle_store(SubchDev *sch) in vfio_ccw_handle_store() argument
120 VFIOCCWDevice *vcdev = VFIO_CCW(sch->driver_data); in vfio_ccw_handle_store()
121 SCHIB *schib = &sch->curr_status; in vfio_ccw_handle_store()
162 static int vfio_ccw_handle_clear(SubchDev *sch) in vfio_ccw_handle_clear() argument
164 VFIOCCWDevice *vcdev = VFIO_CCW(sch->driver_data); in vfio_ccw_handle_clear()
195 sch_gen_unit_exception(sch); in vfio_ccw_handle_clear()
196 css_inject_io_interrupt(sch); in vfio_ccw_handle_clear()
201 static int vfio_ccw_handle_halt(SubchDev *sch) in vfio_ccw_handle_halt() argument
203 VFIOCCWDevice *vcdev = VFIO_CCW(sch->driver_data); in vfio_ccw_handle_halt()
235 sch_gen_unit_exception(sch); in vfio_ccw_handle_halt()
236 css_inject_io_interrupt(sch); in vfio_ccw_handle_halt()
306 SubchDev *sch = ccw_dev->sch; in vfio_ccw_io_notifier_handler() local
307 SCHIB *schib = &sch->curr_status; in vfio_ccw_io_notifier_handler()
362 sch->esw = esw; in vfio_ccw_io_notifier_handler()
367 memcpy(sch->sense_data, irb.ecw, sizeof(irb.ecw)); in vfio_ccw_io_notifier_handler()
371 css_inject_io_interrupt(sch); in vfio_ccw_io_notifier_handler()