Home
last modified time | relevance | path

Searched refs:buffers (Results 1 – 25 of 361) sorted by relevance

12345678910>>...15

/linux/lib/xz/
H A Dxz_dec_test.c51 static struct xz_buf buffers = { variable
74 buffers.in_pos = 0; in xz_dec_test_open()
75 buffers.in_size = 0; in xz_dec_test_open()
76 buffers.out_pos = 0; in xz_dec_test_open()
119 while ((remaining > 0 || buffers.out_pos == buffers.out_size) in xz_dec_test_write()
121 if (buffers.in_pos == buffers.in_size) { in xz_dec_test_write()
122 buffers.in_pos = 0; in xz_dec_test_write()
123 buffers.in_size = min(remaining, sizeof(buffer_in)); in xz_dec_test_write()
124 if (copy_from_user(buffer_in, buf, buffers.in_size)) in xz_dec_test_write()
127 buf += buffers.in_size; in xz_dec_test_write()
[all …]
/linux/Documentation/userspace-api/media/v4l/
H A Dmmap.rst18 Streaming is an I/O method where only pointers to buffers are exchanged
20 mapping is primarily intended to map buffers in device memory into the
24 drivers support streaming as well, allocating buffers in DMA-able main
27 A driver can support many sets of buffers. Each set is identified by a
32 To allocate device buffers applications call the
34 of buffers and buffer type, for example ``V4L2_BUF_TYPE_VIDEO_CAPTURE``.
35 This ioctl can also be used to change the number of buffers or to free
36 the allocated memory, provided none of the buffers are still mapped.
38 Before applications can access the buffers they must map them into their
40 location of the buffers in device memory can be determined with the
[all …]
H A Dcapture.c.rst52 struct buffer *buffers;
92 if (-1 == read(fd, buffers[0].start, buffers[0].length)) {
107 process_image(buffers[0].start, buffers[0].length);
133 process_image(buffers[buf.index].start, buf.bytesused);
161 if (buf.m.userptr == (unsigned long)buffers[i].start
162 && buf.length == buffers[i].length)
269 buf.m.userptr = (unsigned long)buffers[i].start;
270 buf.length = buffers[i].length;
288 free(buffers[0].start);
293 if (-1 == munmap(buffers[i].start, buffers[i].length))
[all …]
H A Duserp.rst26 No buffers (planes) are allocated beforehand, consequently they are not
27 indexed and cannot be queried like mapped buffers with the
51 :ref:`VIDIOC_QBUF <VIDIOC_QBUF>` ioctl. Although buffers are commonly
60 Filled or displayed buffers are dequeued with the
66 Applications must take care not to free buffers without dequeuing.
67 Firstly, the buffers remain locked for longer, wasting physical memory.
73 buffers, to start capturing and enter the read loop. Here the
76 and enqueue buffers, when enough buffers are stacked up output is
78 buffers it must wait until an empty buffer can be dequeued and reused.
80 more buffers can be dequeued. By default :ref:`VIDIOC_DQBUF
[all …]
H A Ddmabuf.rst10 The DMABUF framework provides a generic method for sharing buffers
19 exporting V4L2 buffers as DMABUF file descriptors.
25 importing DMA buffers through DMABUF file descriptors is supported is
29 This I/O method is dedicated to sharing DMA buffers between different
32 application. Next, these buffers are exported to the application as file
63 buffers, every plane can be associated with a different DMABUF
64 descriptor. Although buffers are commonly cycled, applications can pass
121 Captured or displayed buffers are dequeued with the
129 buffers, to start capturing and enter the read loop. Here the
132 and enqueue buffers, when enough buffers are stacked up output is
[all …]
H A Dvidioc-create-bufs.rst13 VIDIOC_CREATE_BUFS - Create buffers for Memory Mapped or User Pointer or DMA Buffer I/O
34 This ioctl is used to create buffers for :ref:`memory mapped <mmap>`
38 over buffers is required. This ioctl can be called multiple times to
39 create buffers of different sizes.
41 To allocate the device buffers applications must initialize the relevant
43 ``count`` field must be set to the number of requested buffers, the
47 The ``format`` field specifies the image format that the buffers must be
54 sizes (for multi-planar formats) will be used for the allocated buffers.
58 The buffers created by this ioctl will have as minimum size the size
68 will attempt to allocate up to the requested number of buffers and store
[all …]
H A Dvidioc-reqbufs.rst36 Memory mapped buffers are located in device memory and must be allocated
38 space. User buffers are allocated by applications themselves, and this
40 to setup some internal structures. Similarly, DMABUF buffers are
45 To allocate device buffers applications initialize all fields of the
48 the desired number of buffers, ``memory`` must be set to the requested
51 allocate the requested number of buffers and it stores the actual number
54 number is also possible when the driver requires more buffers to
56 buffers, one displayed and one filled by the application.
62 buffers. Note that if any buffers are still mapped or exported via DMABUF,
66 If ``V4L2_BUF_CAP_SUPPORTS_ORPHANED_BUFS`` is set, then these buffers are
[all …]
H A Dvidioc-streamon.rst43 Capture hardware is disabled and no input buffers are filled (if there
44 are any empty buffers in the incoming queue) until ``VIDIOC_STREAMON``
51 If ``VIDIOC_STREAMON`` fails then any already queued buffers will remain
55 in progress, unlocks any user pointer buffers locked in physical memory,
56 and it removes all buffers from the incoming and outgoing queues. That
63 If buffers have been queued with :ref:`VIDIOC_QBUF` and
65 ``VIDIOC_STREAMON``, then those queued buffers will also be removed from
77 but ``VIDIOC_STREAMOFF`` will return queued buffers to their starting
95 The buffer ``type`` is not supported, or no buffers have been
H A Dv4l2grab.c.rst68 struct buffer *buffers;
97 buffers = calloc(req.count, sizeof(*buffers));
107 buffers[n_buffers].length = buf.length;
108 buffers[n_buffers].start = v4l2_mmap(NULL, buf.length,
112 if (MAP_FAILED == buffers[n_buffers].start) {
157 fwrite(buffers[buf.index].start, buf.bytesused, 1, fout);
166 v4l2_munmap(buffers[i].start, buffers[i].length);
H A Ddev-encoder.rst158 desired size of ``CAPTURE`` buffers; the encoder may adjust it to
170 adjusted size of ``CAPTURE`` buffers.
308 coded video. It does *not* set the rate at which buffers arrive on the
366 buffers to be aligned to 1920x1088 for codecs with 16x16 macroblock
376 7. Allocate buffers for both ``OUTPUT`` and ``CAPTURE`` via
382 requested number of buffers to allocate; greater than zero.
394 actual number of buffers allocated.
398 The actual number of allocated buffers may differ from the ``count``
404 To allocate more than the minimum number of OUTPUT buffers (for pipeline
406 control to get the minimum number of buffers required, and pass the
[all …]
H A Ddev-stateless-decoder.rst101 destination buffers parsed/decoded from the bytestream.
168 to obtain up-to-date information about the buffers size and layout.
170 6. Allocate source (bytestream) buffers via :c:func:`VIDIOC_REQBUFS` on
176 requested number of buffers to allocate; greater than zero.
187 actual number of buffers allocated.
190 minimum of required number of ``OUTPUT`` buffers for the given format and
192 to get the actual number of buffers allocated.
194 7. Allocate destination (raw format) buffers via :c:func:`VIDIOC_REQBUFS` on the
200 requested number of buffers to allocate; greater than zero. The client
201 is responsible for deducing the minimum number of buffers required
[all …]
/linux/drivers/media/platform/qcom/iris/
H A Diris_buffer.c296 struct iris_buffers *buffers = &inst->buffers[buffer_type]; in iris_fill_internal_buf_info() local
298 buffers->size = inst->core->iris_platform_data->get_vpu_buffer_size(inst, buffer_type); in iris_fill_internal_buf_info()
299 buffers->min_count = iris_vpu_buf_count(inst, buffer_type); in iris_fill_internal_buf_info()
338 struct iris_buffers *buffers = &inst->buffers[buffer_type]; in iris_create_internal_buffer() local
342 if (!buffers->size) in iris_create_internal_buffer()
352 buffer->buffer_size = buffers->size; in iris_create_internal_buffer()
362 list_add_tail(&buffer->list, &buffers->list); in iris_create_internal_buffer()
371 struct iris_buffers *buffers; in iris_create_internal_buffers() local
394 buffers = &inst->buffers[internal_buf_type[i]]; in iris_create_internal_buffers()
395 for (j = 0; j < buffers->min_count; j++) { in iris_create_internal_buffers()
[all …]
/linux/drivers/iio/buffer/
H A Dindustrialio-hw-consumer.c23 struct list_head buffers; member
58 list_for_each_entry(buf, &hwc->buffers, head) { in iio_hw_consumer_get_buffer()
72 list_add_tail(&buf->head, &hwc->buffers); in iio_hw_consumer_get_buffer()
94 INIT_LIST_HEAD(&hwc->buffers); in iio_hw_consumer_alloc()
116 list_for_each_entry(buf, &hwc->buffers, head) in iio_hw_consumer_alloc()
134 list_for_each_entry_safe(buf, n, &hwc->buffers, head) in iio_hw_consumer_free()
183 list_for_each_entry(buf, &hwc->buffers, head) { in iio_hw_consumer_enable()
192 list_for_each_entry_continue_reverse(buf, &hwc->buffers, head) in iio_hw_consumer_enable()
206 list_for_each_entry(buf, &hwc->buffers, head) in iio_hw_consumer_disable()
/linux/Documentation/userspace-api/media/dvb/
H A Ddmx-reqbufs.rst38 Memory mapped buffers are located in device memory and must be allocated
40 space. User buffers are allocated by applications themselves, and this
42 to setup some internal structures. Similarly, DMABUF buffers are
47 To allocate device buffers applications initialize all fields of the
49 to the desired number of buffers, and ``size`` to the size of each
53 attempt to allocate the requested number of buffers and it stores the actual
55 number is also possible when the driver requires more buffers to
63 buffers, however this cannot succeed when any buffers are still mapped.
64 A ``count`` value of zero frees all buffers, after aborting or finishing
/linux/drivers/staging/media/starfive/camss/
H A Dstf-capture.c79 struct stf_v_buf *output = &cap->buffers; in stf_init_addrs()
113 struct stf_v_buf *output = &cap->buffers; in stf_cap_s_cfg()
138 struct stf_v_buf *output = &cap->buffers; in stf_cap_s_cleanup()
244 cap->buffers.state = STF_OUTPUT_OFF; in stf_capture_init()
245 cap->buffers.buf[0] = NULL; in stf_capture_init()
246 cap->buffers.buf[1] = NULL; in stf_capture_init()
247 cap->buffers.active_buf = 0; in stf_capture_init()
248 atomic_set(&cap->buffers.frame_skip, 4); in stf_capture_init()
249 INIT_LIST_HEAD(&cap->buffers.pending_bufs); in stf_capture_init()
250 INIT_LIST_HEAD(&cap->buffers.ready_bufs); in stf_capture_init()
[all …]
/linux/drivers/media/pci/ivtv/
H A Divtv-queue.c35 q->buffers = 0; in ivtv_queue_init()
53 q->buffers++; in ivtv_enqueue()
68 q->buffers--; in ivtv_dequeue()
82 from->buffers--; in ivtv_queue_move_buf()
88 to->buffers++; in ivtv_queue_move_buf()
143 steal->buffers--; in ivtv_queue_move()
147 from->buffers++; in ivtv_queue_move()
184 int SGsize = sizeof(struct ivtv_sg_host_element) * s->buffers; in ivtv_stream_alloc()
187 if (s->buffers == 0) in ivtv_stream_alloc()
192 s->name, s->buffers, s->buf_size, s->buffers * s->buf_size / 1024); in ivtv_stream_alloc()
[all …]
/linux/drivers/gpu/drm/imagination/
H A Dpvr_fw_trace.c96 for (u32 thread_nr = 0; thread_nr < ARRAY_SIZE(fw_trace->buffers); thread_nr++) { in tracebuf_ctrl_init()
99 struct pvr_fw_trace_buffer *trace_buffer = &fw_trace->buffers[thread_nr]; in tracebuf_ctrl_init()
115 for (u32 thread_nr = 0; thread_nr < ARRAY_SIZE(fw_trace->buffers); thread_nr++) { in pvr_fw_trace_init()
116 struct pvr_fw_trace_buffer *trace_buffer = &fw_trace->buffers[thread_nr]; in pvr_fw_trace_init()
155 ARRAY_SIZE(fw_trace->buffers)); in pvr_fw_trace_init()
157 for (u32 thread_nr = 0; thread_nr < ARRAY_SIZE(fw_trace->buffers); thread_nr++) { in pvr_fw_trace_init()
160 struct pvr_fw_trace_buffer *trace_buffer = &fw_trace->buffers[thread_nr]; in pvr_fw_trace_init()
168 for (u32 thread_nr = 0; thread_nr < ARRAY_SIZE(fw_trace->buffers); thread_nr++) { in pvr_fw_trace_init()
169 struct pvr_fw_trace_buffer *trace_buffer = &fw_trace->buffers[thread_nr]; in pvr_fw_trace_init()
182 for (u32 thread_nr = 0; thread_nr < ARRAY_SIZE(fw_trace->buffers); thread_nr++) { in pvr_fw_trace_fini()
[all …]
/linux/drivers/scsi/isci/
H A Dunsolicited_frame_control.c110 uf = &uf_control->buffers.array[i]; in sci_unsolicited_frame_control_construct()
136 *frame_header = &uf_control->buffers.array[frame_index].header->data; in sci_unsolicited_frame_control_get_header()
149 *frame_buffer = uf_control->buffers.array[frame_index].buffer; in sci_unsolicited_frame_control_get_buffer()
184 uf_control->buffers.array[frame_index].state = UNSOLICITED_FRAME_RELEASED; in sci_unsolicited_frame_control_release_frame()
198 while (uf_control->buffers.array[frame_get].state == UNSOLICITED_FRAME_RELEASED) { in sci_unsolicited_frame_control_release_frame()
199 uf_control->buffers.array[frame_get].state = UNSOLICITED_FRAME_EMPTY; in sci_unsolicited_frame_control_release_frame()
/linux/Documentation/admin-guide/media/
H A Dcafe_ccic.rst37 buffers until the time comes to transfer data. If this option is set,
38 then worst-case-sized buffers will be allocated at module load time.
42 - dma_buf_size: The size of DMA buffers to allocate. Note that this
43 option is only consulted for load-time allocation; when buffers are
48 buffers. Normally, the driver tries to use three buffers; on faster
51 - min_buffers: The minimum number of streaming I/O buffers that the driver
56 - max_buffers: The maximum number of streaming I/O buffers; default is
/linux/drivers/android/tests/
H A Dbinder_alloc_kunit.c166 struct binder_buffer *buffers[], in binder_alloc_test_alloc_buf() argument
173 buffers[i] = binder_alloc_new_buf(alloc, sizes[i], 0, 0, 0); in binder_alloc_test_alloc_buf()
174 if (IS_ERR(buffers[i]) || in binder_alloc_test_alloc_buf()
175 !check_buffer_pages_allocated(test, alloc, buffers[i], sizes[i])) in binder_alloc_test_alloc_buf()
184 struct binder_buffer *buffers[], in binder_alloc_test_free_buf() argument
191 binder_alloc_free_buf(alloc, buffers[seq[i]]); in binder_alloc_test_free_buf()
235 struct binder_buffer *buffers[BUFFER_NUM]; in binder_alloc_test_alloc_free() local
239 failures = binder_alloc_test_alloc_buf(test, alloc, buffers, in binder_alloc_test_alloc_free()
247 failures = binder_alloc_test_free_buf(test, alloc, buffers, in binder_alloc_test_alloc_free()
256 failures = binder_alloc_test_alloc_buf(test, alloc, buffers, in binder_alloc_test_alloc_free()
[all …]
/linux/drivers/gpu/drm/i915/gem/selftests/
H A Di915_gem_client_blt.c104 struct blit_buffer buffers[3]; member
265 for (i = 0; i < ARRAY_SIZE(t->buffers); i++) in tiled_blits_destroy_buffers()
266 i915_vma_put(t->buffers[i].vma); in tiled_blits_destroy_buffers()
318 for (i = 0; i < ARRAY_SIZE(t->buffers); i++) { in tiled_blits_create_buffers()
327 t->buffers[i].vma = vma; in tiled_blits_create_buffers()
328 t->buffers[i].tiling = in tiled_blits_create_buffers()
613 for (i = 0; i < ARRAY_SIZE(t->buffers); i++) { in tiled_blits_prepare()
618 &t->buffers[i], t->hole + offset, in tiled_blits_prepare()
621 err = verify_buffer(t, &t->buffers[i], prng); in tiled_blits_prepare()
640 &t->buffers[1], t->hole + offset / 2, in tiled_blits_bounce()
[all …]
/linux/kernel/trace/
H A Dring_buffer.c64 int buffers[]; member
582 struct ring_buffer_per_cpu **buffers; member
736 struct ring_buffer_per_cpu *cpu_buffer = buffer->buffers[smp_processor_id()]; in ring_buffer_event_time_stamp()
777 read = local_read(&buffer->buffers[cpu]->pages_read); in ring_buffer_nr_dirty_pages()
778 lost = local_read(&buffer->buffers[cpu]->pages_lost); in ring_buffer_nr_dirty_pages()
779 cnt = local_read(&buffer->buffers[cpu]->pages_touched); in ring_buffer_nr_dirty_pages()
797 struct ring_buffer_per_cpu *cpu_buffer = buffer->buffers[cpu]; in full_hit()
871 if (WARN_ON_ONCE(!buffer->buffers)) in ring_buffer_wake_waiters()
876 cpu_buffer = buffer->buffers[cpu]; in ring_buffer_wake_waiters()
896 cpu_buffer = buffer->buffers[cpu]; in rb_watermark_hit()
[all …]
/linux/lib/reed_solomon/
H A Ddecode_rs.c32 uint16_t *lambda = rsc->buffers + RS_DECODE_LAMBDA * (nroots + 1);
33 uint16_t *syn = rsc->buffers + RS_DECODE_SYN * (nroots + 1);
34 uint16_t *b = rsc->buffers + RS_DECODE_B * (nroots + 1);
35 uint16_t *t = rsc->buffers + RS_DECODE_T * (nroots + 1);
36 uint16_t *omega = rsc->buffers + RS_DECODE_OMEGA * (nroots + 1);
37 uint16_t *root = rsc->buffers + RS_DECODE_ROOT * (nroots + 1);
38 uint16_t *reg = rsc->buffers + RS_DECODE_REG * (nroots + 1);
39 uint16_t *loc = rsc->buffers + RS_DECODE_LOC * (nroots + 1);
/linux/Documentation/userspace-api/media/mediactl/
H A Drequest-api.rst21 on the media pipeline, reconfigure it for the next frame, queue the buffers to
28 specific buffers. This allows user-space to schedule several tasks ("requests")
59 instead of being immediately applied, and buffers queued to a request do not
65 Once the configuration and buffers of the request are specified, it can be
72 output buffers, not for capture buffers. Attempting to add a capture buffer
77 buffers are processed. Media controller drivers do a best effort implementation
82 It is not allowed to mix queuing requests with directly queuing buffers:
99 once all its associated buffers are available for dequeuing and all the
102 dequeue its buffers: buffers that are available halfway through a request can
135 to queue many such buffers in advance. It can also take advantage of requests'
[all …]
/linux/drivers/media/usb/pvrusb2/
H A Dpvrusb2-io.c49 struct pvr2_buffer **buffers; member
305 memcpy(nb, sp->buffers, in pvr2_stream_buffer_count()
307 kfree(sp->buffers); in pvr2_stream_buffer_count()
309 sp->buffers = nb; in pvr2_stream_buffer_count()
321 sp->buffers[sp->buffer_total_count] = bp; in pvr2_stream_buffer_count()
328 bp = sp->buffers[sp->buffer_total_count - 1]; in pvr2_stream_buffer_count()
330 sp->buffers[sp->buffer_total_count - 1] = NULL; in pvr2_stream_buffer_count()
338 nb = kmemdup_array(sp->buffers, scnt, sizeof(*nb), in pvr2_stream_buffer_count()
342 kfree(sp->buffers); in pvr2_stream_buffer_count()
343 sp->buffers = nb; in pvr2_stream_buffer_count()
[all …]

12345678910>>...15