/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Driver for the Conexant CX25821 PCIe bridge * * Copyright (C) 2009 Conexant Systems Inc. * Authors <shu.lin@conexant.com>, <hiep.huynh@conexant.com> * Based on Steven Toth <stoth@linuxtv.org> cx23885 driver
*/
/* * Maximum capture-only channels. This can go away once video/audio output * is fully supported in this driver.
*/ #define MAX_VID_CAP_CHANNEL_NUM 10
#define VID_CHANNEL_NUM 8
struct cx25821_fmt {
u32 fourcc; /* v4l2 format id */ int depth; int flags;
u32 cxformat;
};
/* buffer for one video frame */ struct cx25821_buffer { /* common v4l buffer stuff -- must be first */ struct vb2_v4l2_buffer vb; struct list_head queue;
struct cx25821_video_out_data { struct cx25821_channel *chan; int _line_size; int _prog_cnt; int _pixel_format; int _is_first_frame; int _is_running; int _file_status; int _lines_count; int _frame_count; unsignedint _risc_size;
/* Analog video */ unsignedint input;
v4l2_std_id tvnorm; unsignedshort _max_num_decoders;
/* Analog Audio Upstream */ int _audio_is_running; int _audiopixel_format; int _is_first_audio_frame; int _audiofile_status; int _audio_lines_count; int _audioframe_count; int _audio_upstream_channel; int _last_index_irq; /* The last interrupt index processed. */
#define SRAM_CH00 0 /* Video A */ #define SRAM_CH01 1 /* Video B */ #define SRAM_CH02 2 /* Video C */ #define SRAM_CH03 3 /* Video D */ #define SRAM_CH04 4 /* Video E */ #define SRAM_CH05 5 /* Video F */ #define SRAM_CH06 6 /* Video G */ #define SRAM_CH07 7 /* Video H */
#define SRAM_CH08 8 /* Audio A */ #define SRAM_CH09 9 /* Video Upstream I */ #define SRAM_CH10 10 /* Video Upstream J */ #define SRAM_CH11 11 /* Audio Upstream AUD_CHANNEL_B */
externint cx25821_i2c_register(struct cx25821_i2c *bus); externint cx25821_i2c_read(struct cx25821_i2c *bus, u16 reg_addr, int *value); externint cx25821_i2c_write(struct cx25821_i2c *bus, u16 reg_addr, int value); externint cx25821_i2c_unregister(struct cx25821_i2c *bus); externvoid cx25821_gpio_init(struct cx25821_dev *dev); externvoid cx25821_set_gpiopin_direction(struct cx25821_dev *dev, int pin_number, int pin_logic_value);
externint medusa_video_init(struct cx25821_dev *dev); externint medusa_set_videostandard(struct cx25821_dev *dev); externvoid medusa_set_resolution(struct cx25821_dev *dev, int width, int decoder_select); externint medusa_set_brightness(struct cx25821_dev *dev, int brightness, int decoder); externint medusa_set_contrast(struct cx25821_dev *dev, int contrast, int decoder); externint medusa_set_hue(struct cx25821_dev *dev, int hue, int decoder); externint medusa_set_saturation(struct cx25821_dev *dev, int saturation, int decoder);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.