Home
last modified time | relevance | path

Searched refs:subchannel (Results 1 – 25 of 39) sorted by relevance

12

/linux/drivers/s390/cio/
H A Dcss.h80 struct subchannel;
97 void (*irq)(struct subchannel *);
98 int (*chp_event)(struct subchannel *, struct chp_link *, int);
99 int (*sch_event)(struct subchannel *, int);
100 int (*probe)(struct subchannel *);
101 void (*remove)(struct subchannel *);
102 void (*shutdown)(struct subchannel *);
111 extern void css_sch_device_unregister(struct subchannel *);
112 extern int css_register_subchannel(struct subchannel *);
113 extern struct subchannel *css_alloc_subchannel(struct subchannel_id,
[all …]
H A Deadm_sch.c60 static int eadm_subchannel_start(struct subchannel *sch, struct aob *aob) in eadm_subchannel_start()
87 static int eadm_subchannel_clear(struct subchannel *sch) in eadm_subchannel_clear()
102 struct subchannel *sch = private->sch; in eadm_subchannel_timeout()
112 static void eadm_subchannel_set_timeout(struct subchannel *sch, int expires) in eadm_subchannel_set_timeout()
122 static void eadm_subchannel_irq(struct subchannel *sch) in eadm_subchannel_irq()
157 static struct subchannel *eadm_get_idle_sch(void) in eadm_get_idle_sch()
160 struct subchannel *sch; in eadm_get_idle_sch()
185 struct subchannel *sch; in eadm_start_aob()
212 static int eadm_subchannel_probe(struct subchannel *sch) in eadm_subchannel_probe()
245 static void eadm_quiesce(struct subchannel *sch) in eadm_quiesce()
[all …]
H A Dcss.c65 int (*fn_known_sch)(struct subchannel *, void *);
71 struct subchannel *sch = to_subchannel(dev); in call_fn_known_sch()
95 struct subchannel *sch; in call_fn_all_sch()
111 int for_each_subchannel_staged(int (*fn_known)(struct subchannel *, void *), in for_each_subchannel_staged() argument
151 static void css_sch_create_locks(struct subchannel *sch) in css_sch_create_locks()
159 struct subchannel *sch = to_subchannel(dev); in css_subchannel_release()
197 struct subchannel *css_alloc_subchannel(struct subchannel_id schid, in css_alloc_subchannel()
200 struct subchannel *sch; in css_alloc_subchannel()
243 static int css_sch_device_register(struct subchannel *sch) in css_sch_device_register()
259 void css_sch_device_unregister(struct subchannel *sch) in css_sch_device_unregister()
[all …]
H A Ddevice_pgid.c36 struct subchannel *sch = to_subchannel(cdev->dev.parent); in verify_done()
75 struct subchannel *sch = to_subchannel(cdev->dev.parent); in nop_do()
107 struct subchannel *sch = to_subchannel(cdev->dev.parent); in nop_callback()
170 struct subchannel *sch = to_subchannel(cdev->dev.parent); in pgid_wipeout_start()
197 struct subchannel *sch = to_subchannel(cdev->dev.parent); in spid_do()
230 struct subchannel *sch = to_subchannel(cdev->dev.parent); in spid_callback()
335 struct subchannel *sch = to_subchannel(cdev->dev.parent); in pgid_to_donepm()
382 struct subchannel *sch = to_subchannel(cdev->dev.parent); in snid_done()
456 struct subchannel *sch = to_subchannel(cdev->dev.parent); in snid_do()
513 struct subchannel *sch = to_subchannel(cdev->dev.parent); in verify_start()
[all …]
H A Dvfio_ccw_fsm.c21 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_io_helper()
81 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_do_halt()
120 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_do_clear()
157 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_notoper()
225 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_disabled_irq()
235 struct subchannel *sch = to_subchannel(p->vdev.dev->parent); in get_schid()
359 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_irq()
376 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_open()
397 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in fsm_close()
H A Ddevice_fsm.c41 struct subchannel *sch; in ccw_timeout_log()
126 struct subchannel *sch; in ccw_device_cancel_halt_clear()
167 __recover_lost_chpids(struct subchannel *sch, int old_lpm) in __recover_lost_chpids()
191 struct subchannel *sch; in ccw_device_recog_done()
310 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_oper_notify()
330 struct subchannel *sch; in ccw_device_done()
389 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_recognition()
430 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_report_path_events()
475 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_handle_broken_paths()
486 struct subchannel *sch; in ccw_device_verify_done()
[all …]
H A Dvfio_ccw_drv.c37 int vfio_ccw_sch_quiesce(struct subchannel *sch) in vfio_ccw_sch_quiesce()
131 static void vfio_ccw_sch_irq(struct subchannel *sch) in vfio_ccw_sch_irq()
162 static int vfio_ccw_sch_probe(struct subchannel *sch) in vfio_ccw_sch_probe()
209 static void vfio_ccw_sch_remove(struct subchannel *sch) in vfio_ccw_sch_remove()
223 static void vfio_ccw_sch_shutdown(struct subchannel *sch) in vfio_ccw_sch_shutdown()
245 static int vfio_ccw_sch_event(struct subchannel *sch, int process) in vfio_ccw_sch_event()
299 static int vfio_ccw_chp_event(struct subchannel *sch, in vfio_ccw_chp_event()
H A Dio_sch.h32 static inline struct ccw_device *sch_get_cdev(struct subchannel *sch) in sch_get_cdev()
38 static inline void sch_set_cdev(struct subchannel *sch, in sch_set_cdev()
132 struct subchannel *sch;
H A Dchsc_sch.c54 static void chsc_subchannel_irq(struct subchannel *sch) in chsc_subchannel_irq()
77 static int chsc_subchannel_probe(struct subchannel *sch) in chsc_subchannel_probe()
99 static void chsc_subchannel_remove(struct subchannel *sch) in chsc_subchannel_remove()
113 static void chsc_subchannel_shutdown(struct subchannel *sch) in chsc_subchannel_shutdown()
174 struct subchannel *sch = to_subchannel(dev); in chsc_subchannel_match_next_free()
179 static struct subchannel *chsc_get_next_subchannel(struct subchannel *sch) in chsc_get_next_subchannel()
208 struct subchannel *sch = NULL; in chsc_async()
H A Dvfio_ccw_private.h130 int vfio_ccw_sch_quiesce(struct subchannel *sch);
172 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in vfio_ccw_fsm_event()
H A Dccwreq.c78 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccwreq_do()
153 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_request_cancel()
329 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_request_timeout()
H A Deadm_sch.h15 struct subchannel *sch;
H A Dvfio_ccw_cp.h46 union orb *cp_get_orb(struct channel_program *cp, struct subchannel *sch);
H A Ddevice_status.c31 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_msg_control_check()
56 struct subchannel *sch; in ccw_device_path_notoper()
314 struct subchannel *sch; in ccw_device_do_sense()
H A Ddevice.h88 void io_subchannel_init_config(struct subchannel *sch);
H A Dvfio_ccw_chp.c19 struct subchannel *sch = to_subchannel(private->vdev.dev->parent); in vfio_ccw_schib_region_read()
H A Ddevice_id.c203 struct subchannel *sch = to_subchannel(cdev->dev.parent); in ccw_device_sense_id_start()
/linux/Documentation/ABI/testing/
H A Dsysfs-bus-css4 Description: Contains the subchannel type, as reported by the hardware.
5 This attribute is present for all subchannel types.
12 subchannel types.
18 subchannel, as reported by the channel subsystem
19 during subchannel recognition.
21 Note: This is an I/O-subchannel specific attribute.
32 Note: This is an I/O-subchannel specific attribute.
56 the driver must still match the subchannel type of the device.
/linux/Documentation/arch/s390/
H A Ddriver-model.rst11 All ccw devices are accessed via a subchannel, this is reflected in the
24 In this example, device 0815 is accessed via subchannel 0 in subchannel set 0,
25 device 4711 via subchannel 1 in subchannel set 0, and subchannel 2 is a non-I/O
26 subchannel. Device 1234 is accessed via subchannel 0 in subchannel set 1.
28 The subchannel named 'defunct' does not represent any real subchannel on the
29 system; it is a pseudo subchannel where disconnected ccw devices are moved to
31 former subchannel. The ccw devices will be moved again to a proper subchannel
32 if they become operational again on that subchannel.
57 There is also some data exported on a per-subchannel basis (see under
221 distinct handlers (e.g. multi subchannel devices), this is a member of ccw_device
H A Dvfio-ccw.rst8 Here we describe the vfio support for I/O subchannel devices for
25 (the real I/O subchannel device) to do further address translation and
60 devices via the vfio mediated device framework and the subchannel device
115 - The vfio_ccw driver for the physical subchannel device.
116 This is an I/O subchannel driver for the real subchannel device. It
161 | | device | | | vfio_ccw.ko |<-> subchannel
168 1. vfio_ccw.ko drives the physical I/O subchannel, and registers the
170 When vfio_ccw probing the subchannel device, it registers device
172 under the device node in sysfs would be created for the subchannel
230 The subchannel was status pending or busy, or a request is already active.
[all …]
H A Dcds.rst48 * The functions use a ccw_device instead of an irq (subchannel).
121 single device is uniquely identified to the system by a so called subchannel,
135 Up to kernel 2.4, Linux/390 used to provide interfaces via the IRQ (subchannel).
140 of those devices is uniquely defined by a so called subchannel by the ESA/390
141 channel subsystem. While the subchannel numbers are system generated, each
142 subchannel also takes a user defined attribute, the so called device number.
143 Both subchannel number and device number cannot exceed 65535. During sysfs
339 The irb->scsw.cstat field provides the (accumulated) subchannel status :
438 -ENODEV cdev invalid or not-operational subchannel
452 a halt subchannel (HSCH) I/O command. For those purposes the ccw_device_halt()
[all …]
H A Dcommon_io.rst20 and device sensing will be done on any of those devices. The subchannel to
134 which subchannel they were called for, as well as dumps of some data
/linux/arch/s390/boot/
H A Dhead.S43 lgh %r1,__LC_SUBCHANNEL_ID # test if subchannel number
45 llgf %r1,__LC_SUBCHANNEL_ID # load ipl subchannel number
114 c %r1,__LC_SUBCHANNEL_ID # compare subchannel number
157 c %r1,__LC_SUBCHANNEL_ID # compare subchannel number
/linux/Documentation/driver-api/
H A Ds390-drivers.rst43 * CHSC subchannels (at most one). The chsc subchannel driver can be used
56 subchannel directly, but only via the I/O device on the ccw bus, the ccw
/linux/drivers/media/dvb-frontends/
H A Dmb86a20s.c39 u32 subchannel; member
1774 if (state->subchannel) { in mb86a20s_initfe()
1775 rc = mb86a20s_writereg(state, 0x44, state->subchannel); in mb86a20s_initfe()
1880 state->subchannel = 0; in mb86a20s_set_frontend()
1885 state->subchannel = mb86a20s_subchannel[c->isdbt_sb_subchannel]; in mb86a20s_set_frontend()

12