1*1a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 2b285192aSMauro Carvalho Chehab /* 3b285192aSMauro Carvalho Chehab Vertical Blank Interval support functions 4b285192aSMauro Carvalho Chehab Copyright (C) 2004-2007 Hans Verkuil <hverkuil@xs4all.nl> 5b285192aSMauro Carvalho Chehab 6b285192aSMauro Carvalho Chehab */ 7b285192aSMauro Carvalho Chehab 8b285192aSMauro Carvalho Chehab #ifndef IVTV_VBI_H 9b285192aSMauro Carvalho Chehab #define IVTV_VBI_H 10b285192aSMauro Carvalho Chehab 11b285192aSMauro Carvalho Chehab ssize_t 12b285192aSMauro Carvalho Chehab ivtv_write_vbi_from_user(struct ivtv *itv, 13b285192aSMauro Carvalho Chehab const struct v4l2_sliced_vbi_data __user *sliced, 14b285192aSMauro Carvalho Chehab size_t count); 15b285192aSMauro Carvalho Chehab void ivtv_process_vbi_data(struct ivtv *itv, struct ivtv_buffer *buf, 16b285192aSMauro Carvalho Chehab u64 pts_stamp, int streamtype); 17b285192aSMauro Carvalho Chehab int ivtv_used_line(struct ivtv *itv, int line, int field); 18b285192aSMauro Carvalho Chehab void ivtv_disable_cc(struct ivtv *itv); 19b285192aSMauro Carvalho Chehab void ivtv_set_vbi(unsigned long arg); 20b285192aSMauro Carvalho Chehab void ivtv_vbi_work_handler(struct ivtv *itv); 21b285192aSMauro Carvalho Chehab 22b285192aSMauro Carvalho Chehab #endif 23