| /* |
| * drivers/media/video/tvp514x.h |
| * |
| * Copyright (C) 2008 Texas Instruments Inc |
| * Author: Vaibhav Hiremath <hvaibhav@ti.com> |
| * |
| * Contributors: |
| * Sivaraj R <sivaraj@ti.com> |
| * Brijesh R Jadav <brijesh.j@ti.com> |
| * Hardik Shah <hardik.shah@ti.com> |
| * Manjunath Hadli <mrh@ti.com> |
| * Karicheri Muralidharan <m-karicheri2@ti.com> |
| * |
| * This package is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 as |
| * published by the Free Software Foundation. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| * |
| * You should have received a copy of the GNU General Public License |
| * along with this program; if not, write to the Free Software |
| * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
| * |
| */ |
| |
| #ifndef _TVP514X_H |
| #define _TVP514X_H |
| |
| /* |
| * Other macros |
| */ |
| #define TVP514X_MODULE_NAME "tvp514x" |
| |
| #define TVP514X_XCLK_BT656 (27000000) |
| |
| /* Number of pixels and number of lines per frame for different standards */ |
| #define NTSC_NUM_ACTIVE_PIXELS (720) |
| #define NTSC_NUM_ACTIVE_LINES (480) |
| #define PAL_NUM_ACTIVE_PIXELS (720) |
| #define PAL_NUM_ACTIVE_LINES (576) |
| |
| /** |
| * enum tvp514x_input - enum for different decoder input pin |
| * configuration. |
| */ |
| enum tvp514x_input { |
| /* |
| * CVBS input selection |
| */ |
| INPUT_CVBS_VI1A = 0x0, |
| INPUT_CVBS_VI1B, |
| INPUT_CVBS_VI1C, |
| INPUT_CVBS_VI2A = 0x04, |
| INPUT_CVBS_VI2B, |
| INPUT_CVBS_VI2C, |
| INPUT_CVBS_VI3A = 0x08, |
| INPUT_CVBS_VI3B, |
| INPUT_CVBS_VI3C, |
| INPUT_CVBS_VI4A = 0x0C, |
| /* |
| * S-Video input selection |
| */ |
| INPUT_SVIDEO_VI2A_VI1A = 0x44, |
| INPUT_SVIDEO_VI2B_VI1B, |
| INPUT_SVIDEO_VI2C_VI1C, |
| INPUT_SVIDEO_VI2A_VI3A = 0x54, |
| INPUT_SVIDEO_VI2B_VI3B, |
| INPUT_SVIDEO_VI2C_VI3C, |
| INPUT_SVIDEO_VI4A_VI1A = 0x4C, |
| INPUT_SVIDEO_VI4A_VI1B, |
| INPUT_SVIDEO_VI4A_VI1C, |
| INPUT_SVIDEO_VI4A_VI3A = 0x5C, |
| INPUT_SVIDEO_VI4A_VI3B, |
| INPUT_SVIDEO_VI4A_VI3C, |
| |
| /* Need to add entries for |
| * RGB, YPbPr and SCART. |
| */ |
| INPUT_INVALID |
| }; |
| |
| /** |
| * enum tvp514x_output - enum for output format |
| * supported. |
| * |
| */ |
| enum tvp514x_output { |
| OUTPUT_10BIT_422_EMBEDDED_SYNC = 0, |
| OUTPUT_20BIT_422_SEPERATE_SYNC, |
| OUTPUT_10BIT_422_SEPERATE_SYNC = 3, |
| OUTPUT_INVALID |
| }; |
| |
| /** |
| * struct tvp514x_platform_data - Platform data values and access functions. |
| * @power_set: Power state access function, zero is off, non-zero is on. |
| * @ifparm: Interface parameters access function. |
| * @priv_data_set: Device private data (pointer) access function. |
| * @clk_polarity: Clock polarity of the current interface. |
| * @ hs_polarity: HSYNC Polarity configuration for current interface. |
| * @ vs_polarity: VSYNC Polarity configuration for current interface. |
| */ |
| struct tvp514x_platform_data { |
| int (*s_power) (struct v4l2_subdev *subdev, u32 on); |
| /* Interface control params */ |
| bool clk_polarity; |
| bool hs_polarity; |
| bool vs_polarity; |
| }; |
| |
| |
| #endif /* ifndef _TVP514X_H */ |