/qemu/hw/s390x/ |
H A D | s390-ccw.c | 115 SubchDev *sch; in s390_ccw_realize() local 125 if (!sch) { in s390_ccw_realize() 132 ccw_dev->sch = sch; in s390_ccw_realize() 145 css_generate_sch_crws(sch->cssid, sch->ssid, sch->schid, in s390_ccw_realize() 150 css_subch_assign(sch->cssid, sch->ssid, sch->schid, sch->devno, NULL); in s390_ccw_realize() 151 ccw_dev->sch = NULL; in s390_ccw_realize() 152 g_free(sch); in s390_ccw_realize() 162 SubchDev *sch = ccw_dev->sch; in s390_ccw_unrealize() local 164 if (sch) { in s390_ccw_unrealize() 165 css_subch_assign(sch->cssid, sch->ssid, sch->schid, sch->devno, NULL); in s390_ccw_unrealize() [all …]
|
H A D | 3270-ccw.c | 85 SCHIB *schib = &sch->curr_status; in emulated_ccw_3270_cb() 105 SubchDev *sch; in emulated_ccw_3270_realize() local 109 if (!sch) { in emulated_ccw_3270_realize() 117 sch->driver_data = dev; in emulated_ccw_3270_realize() 118 cdev->sch = sch; in emulated_ccw_3270_realize() 126 sch->id.reserved = 0xff; in emulated_ccw_3270_realize() 131 sch->ccw_cb = emulated_ccw_3270_cb; in emulated_ccw_3270_realize() 132 sch->irb_cb = build_irb_virtual; in emulated_ccw_3270_realize() 148 css_subch_assign(sch->cssid, sch->ssid, sch->schid, sch->devno, NULL); in emulated_ccw_3270_realize() 149 cdev->sch = NULL; in emulated_ccw_3270_realize() [all …]
|
H A D | virtio-ccw.c | 156 SubchDev *sch = ccw_dev->sch; in virtio_ccw_ioeventfd_assign() local 335 trace_virtio_ccw_interpret_ccw(sch->cssid, sch->ssid, sch->schid, in virtio_ccw_cb() 759 ccw_dev->sch = sch; in virtio_ccw_device_realize() 768 sch->cssid, sch->ssid, sch->schid, sch->devno, in virtio_ccw_device_realize() 792 css_subch_assign(sch->cssid, sch->ssid, sch->schid, sch->devno, NULL); in virtio_ccw_device_realize() 801 SubchDev *sch = ccw_dev->sch; in virtio_ccw_device_unrealize() local 808 css_subch_assign(sch->cssid, sch->ssid, sch->schid, sch->devno, NULL); in virtio_ccw_device_unrealize() 839 __func__, sch->cssid, sch->ssid, sch->schid); in virtio_set_ind_atomic() 857 SubchDev *sch = ccw_dev->sch; in virtio_ccw_notify() local 1157 SubchDev *sch = ccw_dev->sch; in virtio_ccw_device_plugged() local [all …]
|
H A D | css.c | 605 return css_do_build_subchannel_id(sch->cssid, sch->ssid); in css_build_subchannel_id() 612 trace_css_io_interrupt(sch->cssid, sch->ssid, sch->schid, in css_inject_io_interrupt() 637 trace_css_io_interrupt(sch->cssid, sch->ssid, sch->schid, in css_conditional_io_interrupt() 1048 ccw_dstream_init(&sch->cds, &ccw, &(sch->orb)); in css_interpret_ccw() 1113 ret = sch->ccw_cb(sch, ccw); in css_interpret_ccw() 1318 return sch->do_subchannel_work(sch); in do_subchannel_work() 1490 sch->disable_cb(sch); in css_do_msch() 1792 sch->irb_cb(sch, &irb); in css_do_tsch_get_irb() 2282 s_set->sch[schid] = sch; in css_subch_assign() 2414 sch->disable_cb(sch); in css_reset_sch() [all …]
|
H A D | ccw-device.c | 19 SubchDev *sch = dev->sch; in ccw_device_refill_ids() local 21 assert(sch); in ccw_device_refill_ids() 23 dev->dev_id.cssid = sch->cssid; in ccw_device_refill_ids() 24 dev->dev_id.ssid = sch->ssid; in ccw_device_refill_ids() 25 dev->dev_id.devid = sch->devno; in ccw_device_refill_ids() 28 dev->subch_id.cssid = sch->cssid; in ccw_device_refill_ids() 29 dev->subch_id.ssid = sch->ssid; in ccw_device_refill_ids() 30 dev->subch_id.devid = sch->schid; in ccw_device_refill_ids() 50 css_reset_sch(ccw_dev->sch); in ccw_device_reset() 70 VMSTATE_STRUCT_POINTER(sch, CcwDevice, vmstate_subch_dev, SubchDev),
|
H A D | css-bridge.c | 34 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 77 g_strdup_printf("/%02x.%1x.%04x", sch->cssid, sch->ssid, sch->devno) : in virtual_css_bus_get_dev_path()
|
H A D | ipl.c | 419 ipl->iplb.scsi.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_gen_initial_iplb() 420 ipl->iplb.scsi.ssid = ccw_dev->sch->ssid & 3; in s390_gen_initial_iplb() 425 ipl->iplb.ccw.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_gen_initial_iplb() 426 ipl->iplb.ccw.ssid = ccw_dev->sch->ssid & 3; in s390_gen_initial_iplb() 436 ipl->iplb.ccw.devno = cpu_to_be16(ccw_dev->sch->devno); in s390_gen_initial_iplb() 437 ipl->iplb.ccw.ssid = ccw_dev->sch->ssid & 3; in s390_gen_initial_iplb() 532 SubchDev *sch = NULL; in is_virtio_ccw_device_of_type() local 543 sch = css_find_subch(1, cssid, ssid, schid); in is_virtio_ccw_device_of_type() 545 if (sch && sch->devno == devno) { in is_virtio_ccw_device_of_type() 546 return sch->id.cu_model == virtio_id; in is_virtio_ccw_device_of_type() [all …]
|
H A D | ccw-device.h | 21 SubchDev *sch; member
|
H A D | virtio-ccw.h | 91 VirtIODevice *virtio_ccw_get_vdev(SubchDev *sch);
|
H A D | s390-virtio-ccw.c | 129 SubchDev *sch; in virtio_ccw_hcall_notify() local 135 sch = css_find_subch(m, cssid, ssid, schid); in virtio_ccw_hcall_notify() 136 if (!sch || !css_subch_visible(sch)) { in virtio_ccw_hcall_notify() 142 virtio_queue_notify(virtio_ccw_get_vdev(sch), queue); in virtio_ccw_hcall_notify()
|
H A D | trace-events | 9 …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 D | css.h | 155 sch->curr_status.scsw.cpa = sch->channel_prog + 8; in sch_gen_unit_exception() 208 void css_inject_io_interrupt(SubchDev *sch); 210 void css_reset_sch(SubchDev *sch); 225 int s390_ccw_halt(SubchDev *sch); 226 int s390_ccw_clear(SubchDev *sch); 227 IOInstEnding s390_ccw_store(SubchDev *sch); 244 bool css_subch_visible(SubchDev *sch); 249 IOInstEnding css_do_xsch(SubchDev *sch); 250 IOInstEnding css_do_csch(SubchDev *sch); 251 IOInstEnding css_do_hsch(SubchDev *sch); [all …]
|
H A D | s390-ccw.h | 36 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 D | ioinst.c | 63 SubchDev *sch; in ioinst_handle_xsch() local 71 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_xsch() 81 SubchDev *sch; in ioinst_handle_csch() local 89 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_csch() 99 SubchDev *sch; in ioinst_handle_hsch() local 107 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_hsch() 160 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_msch() 220 if (!sch || !css_subch_visible(sch)) { in ioinst_handle_ssch() 299 if (sch) { in ioinst_handle_stsch() 356 if (sch && css_subch_visible(sch)) { in ioinst_handle_tsch() [all …]
|
/qemu/hw/vfio/ |
H A D | ccw.c | 62 sch->cssid, sch->ssid, sch->devno, msg); in warn_once_pfch() 120 sch_gen_unit_exception(sch); in vfio_ccw_handle_request() 121 css_inject_io_interrupt(sch); in vfio_ccw_handle_request() 129 SCHIB *schib = &sch->curr_status; in vfio_ccw_handle_store() 203 sch_gen_unit_exception(sch); in vfio_ccw_handle_clear() 204 css_inject_io_interrupt(sch); in vfio_ccw_handle_clear() 243 sch_gen_unit_exception(sch); in vfio_ccw_handle_halt() 244 css_inject_io_interrupt(sch); in vfio_ccw_handle_halt() 314 SubchDev *sch = ccw_dev->sch; in vfio_ccw_io_notifier_handler() local 370 sch->esw = esw; in vfio_ccw_io_notifier_handler() [all …]
|
/qemu/hw/char/ |
H A D | terminal3270.c | 68 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 D | trace-events | 7 kvm_assign_subch_ioeventfd(int fd, uint32_t addr, bool assign, int datamatch) "fd: %d sch: @0x%x as…
|
H A D | kvm_s390x.h | 37 int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
|
H A D | kvm.c | 1983 int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch, in kvm_s390_assign_subch_ioeventfd() argument 1991 .addr = sch, in kvm_s390_assign_subch_ioeventfd()
|