Home
last modified time | relevance | path

Searched refs:sch (Results 1 – 19 of 19) sorted by relevance

/qemu/hw/s390x/
H A Ds390-ccw.c23 IOInstEnding s390_ccw_cmd_request(SubchDev *sch) in s390_ccw_cmd_request() argument
25 S390CCWDeviceClass *cdc = S390_CCW_DEVICE_GET_CLASS(sch->driver_data); in s390_ccw_cmd_request()
30 return cdc->handle_request(sch); in s390_ccw_cmd_request()
33 int s390_ccw_halt(SubchDev *sch) in s390_ccw_halt() argument
35 S390CCWDeviceClass *cdc = S390_CCW_DEVICE_GET_CLASS(sch->driver_data); in s390_ccw_halt()
40 return cdc->handle_halt(sch); in s390_ccw_halt()
43 int s390_ccw_clear(SubchDev *sch) in s390_ccw_clear() argument
45 S390CCWDeviceClass *cdc = S390_CCW_DEVICE_GET_CLASS(sch->driver_data); in s390_ccw_clear()
50 return cdc->handle_clear(sch); in s390_ccw_clear()
53 IOInstEnding s390_ccw_store(SubchDev *sch) in s390_ccw_store() argument
[all …]
H A D3270-ccw.c36 ccw_dev->sch->curr_status.scsw.count = ccw->count - len; in handle_payload_3270_read()
58 ccw_dev->sch->curr_status.scsw.count = ccw->count - len; in handle_payload_3270_write()
62 static int emulated_ccw_3270_cb(SubchDev *sch, CCW1 ccw) in emulated_ccw_3270_cb() argument
65 EmulatedCcw3270Device *dev = sch->driver_data; in emulated_ccw_3270_cb()
85 SCHIB *schib = &sch->curr_status; in emulated_ccw_3270_cb()
87 sch->curr_status.scsw.dstat = SCSW_DSTAT_UNIT_CHECK; in emulated_ccw_3270_cb()
88 sch->sense_data[0] = 0x40; /* intervention-req */ in emulated_ccw_3270_cb()
105 SubchDev *sch; in emulated_ccw_3270_realize() local
108 sch = css_create_sch(cdev->devno, errp); in emulated_ccw_3270_realize()
109 if (!sch) { in emulated_ccw_3270_realize()
[all …]
H A Dcss.c71 SubchDev *sch[MAX_SCHID + 1]; member
574 uint16_t css_build_subchannel_id(SubchDev *sch) in css_build_subchannel_id() argument
576 return css_do_build_subchannel_id(sch->cssid, sch->ssid); in css_build_subchannel_id()
579 void css_inject_io_interrupt(SubchDev *sch) in css_inject_io_interrupt() argument
581 uint8_t isc = (sch->curr_status.pmcw.flags & PMCW_FLAGS_MASK_ISC) >> 11; in css_inject_io_interrupt()
583 trace_css_io_interrupt(sch->cssid, sch->ssid, sch->schid, in css_inject_io_interrupt()
584 sch->curr_status.pmcw.intparm, isc, ""); in css_inject_io_interrupt()
585 s390_io_interrupt(css_build_subchannel_id(sch), in css_inject_io_interrupt()
586 sch->schid, in css_inject_io_interrupt()
587 sch->curr_status.pmcw.intparm, in css_inject_io_interrupt()
[all …]
H A Dvirtio-ccw.c47 ccw_dev->sch->driver_data = dev; in virtio_ccw_dev_post_load()
48 if (ccw_dev->sch->thinint_active) { in virtio_ccw_dev_post_load()
123 VirtIODevice *virtio_ccw_get_vdev(SubchDev *sch) in virtio_ccw_get_vdev() argument
126 VirtioCcwDevice *dev = sch->driver_data; in virtio_ccw_get_vdev()
156 SubchDev *sch = ccw_dev->sch; in virtio_ccw_ioeventfd_assign() local
157 uint32_t sch_id = (css_build_subchannel_id(sch) << 16) | sch->schid; in virtio_ccw_ioeventfd_assign()
203 static int virtio_ccw_set_vqs(SubchDev *sch, VqInfoBlock *info, in virtio_ccw_set_vqs() argument
206 VirtIODevice *vdev = virtio_ccw_get_vdev(sch); in virtio_ccw_set_vqs()
269 ccw_dev->sch->thinint_active = false; in virtio_ccw_reset_virtio()
272 static int virtio_ccw_handle_set_vq(SubchDev *sch, CCW1 ccw, bool check_len, in virtio_ccw_handle_set_vq() argument
[all …]
H A Dcss-bridge.c34 SubchDev *sch = ccw_dev->sch; in ccw_device_unplug() local
49 assert(sch != NULL); in ccw_device_unplug()
51 sch->curr_status.pmcw.flags &= ~(PMCW_FLAGS_MASK_ENA | in ccw_device_unplug()
54 css_generate_sch_crws(sch->cssid, sch->ssid, sch->schid, 1, 0); in ccw_device_unplug()
68 SubchDev *sch = ccw_dev->sch; in virtual_css_bus_get_dev_path() local
70 return g_strdup_printf("/%02x.%1x.%04x", sch->cssid, sch->ssid, sch->devno); in virtual_css_bus_get_dev_path()
H A Dccw-device.c23 SubchDev *sch = dev->sch; in ccw_device_refill_ids() local
25 assert(sch); in ccw_device_refill_ids()
27 dev->dev_id.cssid = sch->cssid; in ccw_device_refill_ids()
28 dev->dev_id.ssid = sch->ssid; in ccw_device_refill_ids()
29 dev->dev_id.devid = sch->devno; in ccw_device_refill_ids()
32 dev->subch_id.cssid = sch->cssid; in ccw_device_refill_ids()
33 dev->subch_id.ssid = sch->ssid; in ccw_device_refill_ids()
34 dev->subch_id.devid = sch->schid; in ccw_device_refill_ids()
94 css_reset_sch(ccw_dev->sch); in ccw_device_reset_hold()
115 VMSTATE_STRUCT_POINTER(sch, CcwDevice, vmstate_subch_dev, SubchDev),
H A Ds390-hypercall.c33 SubchDev *sch; in handle_virtio_ccw_notify() local
41 sch = css_find_subch(m, cssid, ssid, schid); in handle_virtio_ccw_notify()
42 if (!sch || !css_subch_visible(sch)) { in handle_virtio_ccw_notify()
46 vdev = virtio_ccw_get_vdev(sch); in handle_virtio_ccw_notify()
H A Dipl.c454 iplb->scsi.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_build_iplb()
455 iplb->scsi.ssid = ccw_dev->sch->ssid & 3; in s390_build_iplb()
460 iplb->ccw.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_build_iplb()
461 iplb->ccw.ssid = ccw_dev->sch->ssid & 3; in s390_build_iplb()
469 iplb->ccw.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_build_iplb()
470 iplb->ccw.ssid = ccw_dev->sch->ssid & 3; in s390_build_iplb()
H A Dccw-device.h21 SubchDev *sch; member
H A Dvirtio-ccw.h91 VirtIODevice *virtio_ccw_get_vdev(SubchDev *sch);
H A Dtrace-events9 …32_t intparm, uint8_t isc, const char *conditional) "CSS: I/O interrupt on sch %x.%x.%04x (intparm…
/qemu/include/hw/s390x/
H A Dcss.h147 static inline void sch_gen_unit_exception(SubchDev *sch) in sch_gen_unit_exception() argument
149 sch->curr_status.scsw.ctrl &= ~(SCSW_ACTL_DEVICE_ACTIVE | in sch_gen_unit_exception()
151 sch->curr_status.scsw.ctrl |= SCSW_STCTL_PRIMARY | in sch_gen_unit_exception()
155 sch->curr_status.scsw.cpa = sch->channel_prog + 8; in sch_gen_unit_exception()
156 sch->curr_status.scsw.dstat = SCSW_DSTAT_UNIT_EXCEP; in sch_gen_unit_exception()
201 uint16_t devno, SubchDev *sch);
202 void css_sch_build_virtual_schib(SubchDev *sch, uint8_t chpid, uint8_t type);
203 int css_sch_build_schib(SubchDev *sch, CssDevId *dev_id);
205 uint16_t css_build_subchannel_id(SubchDev *sch);
208 void css_inject_io_interrupt(SubchDev *sch);
[all …]
H A Ds390-ccw.h36 IOInstEnding (*handle_request) (SubchDev *sch);
37 int (*handle_halt) (SubchDev *sch);
38 int (*handle_clear) (SubchDev *sch);
39 IOInstEnding (*handle_store) (SubchDev *sch);
/qemu/target/s390x/
H A Dioinst.c64 SubchDev *sch; in ioinst_handle_xsch() local
71 sch = css_find_subch(m, cssid, ssid, schid); in ioinst_handle_xsch()
72 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_xsch()
76 setcc(cpu, css_do_xsch(sch)); in ioinst_handle_xsch()
82 SubchDev *sch; in ioinst_handle_csch() local
89 sch = css_find_subch(m, cssid, ssid, schid); in ioinst_handle_csch()
90 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_csch()
94 setcc(cpu, css_do_csch(sch)); in ioinst_handle_csch()
100 SubchDev *sch; in ioinst_handle_hsch() local
107 sch = css_find_subch(m, cssid, ssid, schid); in ioinst_handle_hsch()
[all …]
/qemu/hw/vfio/
H A Dccw.c69 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
[all …]
/qemu/hw/char/
H A Dterminal3270.c68 SubchDev *sch = ccw_dev->sch; in TN3270_handshake_done() local
71 sch->curr_status.scsw.dstat = SCSW_DSTAT_DEVICE_END; in TN3270_handshake_done()
72 css_conditional_io_interrupt(sch); in TN3270_handshake_done()
101 SubchDev *sch = ccw_dev->sch; in terminal_read() local
137 sch->curr_status.scsw.dstat = SCSW_DSTAT_ATTENTION; in terminal_read()
138 css_conditional_io_interrupt(sch); in terminal_read()
152 SubchDev *sch = ccw_dev->sch; in chr_event() local
169 sch->curr_status.scsw.dstat = SCSW_DSTAT_DEVICE_END; in chr_event()
170 css_conditional_io_interrupt(sch); in chr_event()
196 return &(CCW_DEVICE(&t->cdev)->sch->cds); in get_cds()
/qemu/target/s390x/kvm/
H A Dtrace-events7 kvm_assign_subch_ioeventfd(int fd, uint32_t addr, bool assign, int datamatch) "fd: %d sch: @0x%x as…
H A Dkvm_s390x.h37 int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
H A Dkvm.c1967 int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch, in kvm_s390_assign_subch_ioeventfd() argument
1975 .addr = sch, in kvm_s390_assign_subch_ioeventfd()