Home
last modified time | relevance | path

Searched full:vio (Results 1 – 25 of 231) sorted by relevance

12345678910

/linux/arch/sparc/kernel/
H A Dviohs.c16 #include <asm/vio.h>
18 int vio_ldc_send(struct vio_driver_state *vio, void *data, int len) in vio_ldc_send() argument
24 err = ldc_write(vio->lp, data, len); in vio_ldc_send()
34 static int send_ctrl(struct vio_driver_state *vio, in send_ctrl() argument
37 tag->sid = vio_send_sid(vio); in send_ctrl()
38 return vio_ldc_send(vio, tag, len); in send_ctrl()
48 static int send_version(struct vio_driver_state *vio, u16 major, u16 minor) in send_version() argument
52 vio->_local_sid = (u32) sched_clock(); in send_version()
58 pkt.dev_class = vio->dev_class; in send_version()
61 major, minor, vio->dev_class); in send_version()
[all …]
H A Dvio.c2 /* vio.c: Virtual I/O channel devices probing infrastructure.
20 #include <asm/vio.h>
53 add_uevent_var(env, "MODALIAS=vio:T%sS%s", vio_dev->type, vio_dev->compat); in vio_hotplug()
140 return sprintf(buf, "vio:T%sS%s\n", vdev->type, vdev->compat); in modalias_show()
153 .name = "vio",
309 printk(KERN_ERR "VIO: Type string [%s] is too long.\n", in vio_create_one()
322 printk(KERN_ERR "VIO: Compat len %d for [%s] is too long.\n", in vio_create_one()
329 printk(KERN_ERR "VIO: Could not allocate vio_dev\n"); in vio_create_one()
387 pr_err("VIO: Could not get MD node info %s, err=%d\n", in vio_create_one()
394 pr_info("VIO: Adding device %s (tx_ino = %llx, rx_ino = %llx)\n", in vio_create_one()
[all …]
/linux/drivers/md/dm-vdo/
H A Dvio.h25 /* The underlying vio */
26 struct vio vio; member
36 * as_vio() - Convert a generic vdo_completion to a vio.
39 * Return: The completion as a vio.
41 static inline struct vio *as_vio(struct vdo_completion *completion) in as_vio()
44 return container_of(completion, struct vio, completion); in as_vio()
48 * get_vio_bio_zone_thread_id() - Get the thread id of the bio zone in which a vio should submit
50 * @vio: The vio.
52 * Return: The id of the bio zone thread the vio should use.
54 static inline thread_id_t __must_check get_vio_bio_zone_thread_id(struct vio *vio) in get_vio_bio_zone_thread_id() argument
[all …]
H A Dvio.c6 #include "vio.h"
43 struct vio *vio = bio->bi_private; in pbn_from_vio_bio() local
44 struct vdo *vdo = vio->completion.vdo; in pbn_from_vio_bio()
80 unsigned int block_count, char *data, struct vio *vio) in allocate_vio_components() argument
100 initialize_vio(vio, bio, block_count, vio_type, priority, vdo); in allocate_vio_components()
101 vio->completion.parent = parent; in allocate_vio_components()
102 vio->data = data; in allocate_vio_components()
107 * create_multi_block_metadata_vio() - Create a vio.
108 * @vdo: The vdo on which the vio will operate.
109 * @vio_type: The type of vio to create.
[all …]
H A Ddata-vio.h26 #include "vio.h"
29 /* Codes for describing the last asynchronous operation performed on a vio. */
78 /* The queue of waiters for the page this vio is allocating or loading */
133 /* A vio which is blocked in the packer while holding a lock this vio needs. */
148 /* The block allocated to this vio */
163 /* Whether this vio should wait for a clean slab */
175 /* A vio for processing user data requests. */
189 /* The hash of this vio (if not zero) */
212 * Whether this vio has received an allocation. This field is examined from threads not in
217 /* The new partition address of this block after the vio write completes */
[all …]
H A Dio-submitter.h27 void __submit_metadata_vio(struct vio *vio, physical_block_number_t physical,
31 static inline void vdo_submit_metadata_vio(struct vio *vio, physical_block_number_t physical, in vdo_submit_metadata_vio() argument
35 __submit_metadata_vio(vio, physical, callback, error_handler, in vdo_submit_metadata_vio()
36 operation, vio->data); in vdo_submit_metadata_vio()
39 static inline void vdo_submit_flush_vio(struct vio *vio, bio_end_io_t callback, in vdo_submit_flush_vio() argument
43 __submit_metadata_vio(vio, 0, callback, error_handler, in vdo_submit_flush_vio()
H A Dblock-map.c20 #include "data-vio.h"
29 #include "vio.h"
94 struct pooled_vio *vio; member
194 get_page_buffer(info), &info->vio); in initialize_info()
199 info->vio->completion.callback_thread_id = cache->zone->thread_id; in initialize_info()
665 * @completion: The page read vio.
691 * @completion: The vio which has loaded the page. Its parent is the page_info.
755 struct vio *vio = bio->bi_private; in load_cache_page_endio() local
756 struct page_info *info = vio->completion.parent; in load_cache_page_endio()
758 continue_vio_after_io(vio, page_is_loaded, info->cache->zone->thread_id); in load_cache_page_endio()
[all …]
H A Drecovery-journal.h43 * has a vio which is used to commit that block to disk. The vio's data is the on-disk
52 * committed, the requesting VIO will be attached to the in-memory block to which the caller's
57 * to the block's vio which is then written, automatically waking all of the waiters when it
59 * the vio's data buffer.
70 * in-memory block map page is updated, it checks if the journal block for the VIO is earlier than
78 * If there is no in-memory space when a VIO attempts to add an entry, the VIO will be attached to
80 * no on-disk space when a VIO attempts to add an entry, the VIO will be attached to the
125 /* The vio for writing this block */
126 struct vio vio; member
176 /* The journal point of the vio most recently released from the journal */
[all …]
H A Dslab-depot.c25 #include "data-vio.h"
35 #include "vio.h"
276 * @completion: The write vio.
281 container_of(as_vio(completion), struct slab_summary_block, vio); in finish_update()
289 * @completion: The write VIO.
294 container_of(as_vio(completion), struct slab_summary_block, vio); in handle_write_error()
303 struct vio *vio = bio->bi_private; in write_slab_summary_endio() local
305 container_of(vio, struct slab_summary_block, vio); in write_slab_summary_endio()
307 continue_vio_after_io(vio, finish_update, block->allocator->thread_id); in write_slab_summary_endio()
346 vdo_submit_metadata_vio(&block->vio, pbn, write_slab_summary_endio, in launch_write()
[all …]
H A Ddump.c14 #include "data-vio.h"
162 vdo_log_info(" %s is locked. Waited on by: vio %px pbn %llu lbn %llu d-pbn %llu lastOp %s", in dump_vio_waiters()
168 vdo_log_info(" ... and : vio %px pbn %llu lbn %llu d-pbn %llu lastOp %s", in dump_vio_waiters()
179 * R => vio completion result not VDO_SUCCESS
180 * W => vio is on a waitq
181 * D => vio is a duplicate
182 * p => vio is a partial block operation
183 * z => vio is a zero block
184 * d => vio is a discard
193 if (data_vio->vio.completion.result != VDO_SUCCESS) in encode_vio_dump_flags()
[all …]
H A Dvdo.c48 #include "data-vio.h"
60 #include "vio.h"
274 struct vio *vio; in read_geometry_block() local
283 block, &vio); in read_geometry_block()
294 result = vio_reset_bio(vio, block, NULL, REQ_OP_READ, in read_geometry_block()
297 free_vio(vdo_forget(vio)); in read_geometry_block()
302 bio_set_dev(vio->bio, vdo_get_backing_device(vdo)); in read_geometry_block()
303 submit_bio_wait(vio->bio); in read_geometry_block()
304 result = blk_status_to_errno(vio->bio->bi_status); in read_geometry_block()
305 free_vio(vdo_forget(vio)); in read_geometry_block()
[all …]
H A Dtypes.h336 /* vio types for statistics and instrumentation. */
351 /* Priority levels for asynchronous I/O operations performed on a vio. */
363 struct vio { struct
364 /* The completion for this vio */
370 /* The queueing priority of the vio operation */ argument
373 /* The vio type is used for statistics and instrumentation. */
376 /* The size of this vio in blocks */
382 /* The VDO-owned bio to use for all IO for this vio */ argument
387 * the first-enqueued vio. The other vios are found via their bio entries in this list, and argument
H A Dslab-depot.h17 #include "data-vio.h"
24 #include "vio.h"
46 /* The number of vios in the vio pool is proportional to the throughput of the VDO. */
68 /* A waiter object for getting a VIO pool entry */
72 /* A waiter object for getting a vio with which to flush */
120 /* A list of the VIO pool entries for outstanding journal block writes */
294 /* The vio for loading slab journal blocks */
295 struct vio vio; member
355 /* The vio used to write this block */
356 struct vio vio; member
[all …]
/linux/drivers/block/
H A Dsunvdc.c21 #include <asm/vio.h>
57 struct vio_driver_state vio; member
95 static inline struct vdc_port *to_vdc_port(struct vio_driver_state *vio) in to_vdc_port() argument
97 return container_of(vio, struct vdc_port, vio); in to_vdc_port()
110 return port->vio.ver.major == major && port->vio.ver.minor >= minor; in vdc_version_supported()
181 struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING]; in vdc_blk_queue_start()
191 static void vdc_finish(struct vio_driver_state *vio, int err, int waiting_for) in vdc_finish() argument
193 if (vio->cmp && in vdc_finish()
195 vio->cmp->waiting_for == waiting_for)) { in vdc_finish()
196 vio->cmp->err = err; in vdc_finish()
[all …]
/linux/drivers/net/ethernet/sun/
H A Dsunvnet_common.c32 #include <asm/vio.h>
62 ldc_disconnect(port->vio.lp); in vnet_handle_unknown()
69 int sunvnet_send_attr_common(struct vio_driver_state *vio) in sunvnet_send_attr_common() argument
71 struct vnet_port *port = to_vnet_port(vio); in sunvnet_send_attr_common()
77 err = vnet_port_alloc_tx_ring(to_vnet_port(vio)); in sunvnet_send_attr_common()
85 pkt.tag.sid = vio_send_sid(vio); in sunvnet_send_attr_common()
86 if (vio_version_before(vio, 1, 2)) in sunvnet_send_attr_common()
94 if (vio_version_after(vio, 1, 3)) { in sunvnet_send_attr_common()
102 if (vio_version_after_eq(vio, 1, 6)) in sunvnet_send_attr_common()
104 } else if (vio_version_before(vio, 1, 3)) { in sunvnet_send_attr_common()
[all …]
H A Dsunvnet_common.h16 #define VNET_MINTSO 2048 /* VIO protocol's minimum TSO len */
17 #define VNET_MAXTSO 65535 /* VIO protocol's maximum TSO len */
59 struct vio_driver_state vio; member
93 static inline struct vnet_port *to_vnet_port(struct vio_driver_state *vio) in to_vnet_port() argument
95 return container_of(vio, struct vnet_port, vio); in to_vnet_port()
147 int sunvnet_send_attr_common(struct vio_driver_state *vio);
148 int sunvnet_handle_attr_common(struct vio_driver_state *vio, void *arg);
149 void sunvnet_handshake_complete_common(struct vio_driver_state *vio);
H A Dldmvsw.c30 #include <asm/vio.h>
130 struct vio_driver_state *vio = &port->vio; in ldmvsw_open() local
133 vio_link_state_change(vio, LDC_EVENT_RESET); in ldmvsw_open()
135 vio_port_up(vio); in ldmvsw_open()
347 err = vio_driver_init(&port->vio, vdev, VDEV_NETWORK, in vsw_port_probe()
353 err = vio_ldc_alloc(&port->vio, &vsw_ldc_cfg, port); in vsw_port_probe()
378 vio_port_up(&port->vio); in vsw_port_probe()
398 vio_ldc_free(&port->vio); in vsw_port_probe()
411 del_timer_sync(&port->vio.timer); in vsw_port_remove()
425 vio_ldc_free(&port->vio); in vsw_port_remove()
[all …]
/linux/arch/sparc/include/asm/
H A Dvio.h119 /* VIO disk specific structures and defines */
212 /* VIO net specific structures and defines */
379 int (*send_attr)(struct vio_driver_state *vio);
380 int (*handle_attr)(struct vio_driver_state *vio, void *pkt);
381 void (*handshake_complete)(struct vio_driver_state *vio);
391 /* Protects VIO handshake and, optionally, driver private state. */
444 static inline bool vio_version_before(struct vio_driver_state *vio, in vio_version_before() argument
447 u32 have = (u32)vio->ver.major << 16 | vio->ver.minor; in vio_version_before()
453 static inline bool vio_version_after(struct vio_driver_state *vio, in vio_version_after() argument
456 u32 have = (u32)vio->ver.major << 16 | vio->ver.minor; in vio_version_after()
[all …]
/linux/drivers/tty/
H A Dvcc.c15 #include <asm/vio.h>
23 struct vio_driver_state vio; member
256 struct vio_driver_state *vio = &port->vio; in vcc_kick_rx() local
261 disable_irq_nosync(vio->vdev->rx_irq); in vcc_kick_rx()
308 struct vio_driver_state *vio = &port->vio; in vcc_ldc_read() local
315 rv = ldc_rx_reset(vio->lp); in vcc_ldc_read()
327 vccdbgl(vio->lp); in vcc_ldc_read()
329 rv = ldc_read(vio->lp, &pkt, sizeof(pkt)); in vcc_ldc_read()
360 struct vio_driver_state *vio; in vcc_rx_timer() local
367 vio = &port->vio; in vcc_rx_timer()
[all …]
/linux/Documentation/devicetree/bindings/iio/adc/
H A Dadi,ad4000.yaml70 maximum: 102040816 # for VIO > 2.7 V, 81300813 for VIO > 1.7 V
79 pin is hard-wired to logic high (VIO). "low" indicates that it is
88 vio-supply:
90 A 1.8V to 5.5V supply for the digital inputs and outputs (VIO).
132 - vio-supply
150 maximum: 50000000 # for VIO > 2.7 V, 40000000 for VIO > 1.7 V
177 vio-supply = <&supply_1_8V>;
192 vio-supply = <&supply_1_8V>;
/linux/drivers/iio/light/
H A Dgp2ap002.c131 * @vio: regulator controlling VIO
144 struct regulator *vio; member
524 gp2ap002->vio = devm_regulator_get(dev, "vio"); in gp2ap002_probe()
525 if (IS_ERR(gp2ap002->vio)) in gp2ap002_probe()
526 return dev_err_probe(dev, PTR_ERR(gp2ap002->vio), in gp2ap002_probe()
527 "failed to get VIO regulator\n"); in gp2ap002_probe()
536 /* VIO should be between 1.65V and VDD */ in gp2ap002_probe()
542 ret = regulator_set_voltage(gp2ap002->vio, 1650000, ret); in gp2ap002_probe()
544 dev_err(dev, "failed to set VIO voltage\n"); in gp2ap002_probe()
553 ret = regulator_enable(gp2ap002->vio); in gp2ap002_probe()
[all …]
/linux/Documentation/devicetree/bindings/media/
H A Dsi4713.txt16 - vio-supply: phandle for Vio regulator
27 vio-supply = <&vio>;
/linux/drivers/net/wireless/ti/wl1251/
H A Dspi.c301 wl->vio = devm_regulator_get(&spi->dev, "vio"); in wl1251_spi_probe()
302 if (IS_ERR(wl->vio)) { in wl1251_spi_probe()
303 ret = PTR_ERR(wl->vio); in wl1251_spi_probe()
304 wl1251_error("vio regulator missing: %d", ret); in wl1251_spi_probe()
308 ret = regulator_enable(wl->vio); in wl1251_spi_probe()
319 regulator_disable(wl->vio); in wl1251_spi_probe()
331 regulator_disable(wl->vio); in wl1251_spi_remove()
/linux/Documentation/devicetree/bindings/net/wireless/
H A Dti,wl1251.txt11 - vio-supply : phandle to regulator providing VIO
35 vio-supply = <&vio>;
/linux/Documentation/devicetree/bindings/input/touchscreen/
H A Dti,tsc2005.yaml48 vio-supply:
86 vio-supply = <&vio>;
113 vio-supply = <&vio>;

12345678910