/usr/src/linux-headers-5.15.0-190/include/media
NameSizeModeActions
davinci/-0755rm
drv-intf/-0755rm
i2c/-0755rm
tpg/-0755rm
cec-notifier.h51460644editdlrm
cec-pin.h28530644editdlrm
cec.h162300644editdlrm
demux.h232370644editdlrm
dmxdev.h60340644editdlrm
dvb-usb-ids.h186140644editdlrm
dvbdev.h148590644editdlrm
dvb_ca_en50221.h44550644editdlrm
dvb_demux.h110330644editdlrm
dvb_frontend.h307510644editdlrm
dvb_math.h18110644editdlrm
dvb_net.h25830644editdlrm
dvb_ringbuffer.h85240644editdlrm
dvb_vb2.h79120644editdlrm
frame_vector.h14470644editdlrm
hevc-ctrls.h90980644editdlrm
imx.h1900644editdlrm
ipu-isys.h8840644editdlrm
media-dev-allocator.h22610644editdlrm
media-device.h174010644editdlrm
media-devnode.h54150644editdlrm
media-entity.h363060644editdlrm
media-request.h122450644editdlrm
rc-core.h126100644editdlrm
rc-map.h147040644editdlrm
rcar-fcp.h11270644editdlrm
tuner-types.h77230644editdlrm
tuner.h86030644editdlrm
tveeprom.h33700644editdlrm
v4l2-async.h114480644editdlrm
v4l2-common.h191230644editdlrm
v4l2-ctrls.h508540644editdlrm
v4l2-dev.h169210644editdlrm
v4l2-device.h189640644editdlrm
v4l2-dv-timings.h95430644editdlrm
v4l2-event.h61300644editdlrm
v4l2-fh.h43170644editdlrm
v4l2-flash-led-class.h58880644editdlrm
v4l2-fwnode.h202790644editdlrm
v4l2-h264.h29210644editdlrm
v4l2-image-sizes.h8270644editdlrm
v4l2-ioctl.h341120644editdlrm
v4l2-jpeg.h52070644editdlrm
v4l2-mc.h76690644editdlrm
v4l2-mediabus.h76860644editdlrm
v4l2-mem2mem.h294410644editdlrm
v4l2-rect.h58520644editdlrm
v4l2-subdev.h460040644editdlrm
videobuf-core.h69740644editdlrm
videobuf-dma-contig.h9090644editdlrm
videobuf-dma-sg.h28560644editdlrm
videobuf-vmalloc.h11660644editdlrm
videobuf2-core.h494070644editdlrm
videobuf2-dma-contig.h8830644editdlrm
videobuf2-dma-sg.h6980644editdlrm
videobuf2-dvb.h18630644editdlrm
videobuf2-memops.h11010644editdlrm
videobuf2-v4l2.h143470644editdlrm
videobuf2-vmalloc.h5090644editdlrm
vsp1.h36520644editdlrm
Edit: /usr/src/linux-headers-5.15.0-190/include/media/frame_vector.h (1447B)
// SPDX-License-Identifier: GPL-2.0 #ifndef _MEDIA_FRAME_VECTOR_H #define _MEDIA_FRAME_VECTOR_H /* Container for pinned pfns / pages in frame_vector.c */ struct frame_vector { unsigned int nr_allocated; /* Number of frames we have space for */ unsigned int nr_frames; /* Number of frames stored in ptrs array */ bool got_ref; /* Did we pin pages by getting page ref? */ bool is_pfns; /* Does array contain pages or pfns? */ void *ptrs[]; /* Array of pinned pfns / pages. Use * pfns_vector_pages() or pfns_vector_pfns() * for access */ }; struct frame_vector *frame_vector_create(unsigned int nr_frames); void frame_vector_destroy(struct frame_vector *vec); int get_vaddr_frames(unsigned long start, unsigned int nr_pfns, struct frame_vector *vec); void put_vaddr_frames(struct frame_vector *vec); int frame_vector_to_pages(struct frame_vector *vec); void frame_vector_to_pfns(struct frame_vector *vec); static inline unsigned int frame_vector_count(struct frame_vector *vec) { return vec->nr_frames; } static inline struct page **frame_vector_pages(struct frame_vector *vec) { if (vec->is_pfns) { int err = frame_vector_to_pages(vec); if (err) return ERR_PTR(err); } return (struct page **)(vec->ptrs); } static inline unsigned long *frame_vector_pfns(struct frame_vector *vec) { if (!vec->is_pfns) frame_vector_to_pfns(vec); return (unsigned long *)(vec->ptrs); } #endif /* _MEDIA_FRAME_VECTOR_H */