1 /* SPDX-License-Identifier: GPL-2.0-only */ << 2 /* 1 /* 3 * drivers/media/video/tvp514x.h 2 * drivers/media/video/tvp514x.h 4 * 3 * 5 * Copyright (C) 2008 Texas Instruments Inc 4 * Copyright (C) 2008 Texas Instruments Inc 6 * Author: Vaibhav Hiremath <hvaibhav@ti.com> 5 * Author: Vaibhav Hiremath <hvaibhav@ti.com> 7 * 6 * 8 * Contributors: 7 * Contributors: 9 * Sivaraj R <sivaraj@ti.com> 8 * Sivaraj R <sivaraj@ti.com> 10 * Brijesh R Jadav <brijesh.j@ti.com> 9 * Brijesh R Jadav <brijesh.j@ti.com> 11 * Hardik Shah <hardik.shah@ti.com> 10 * Hardik Shah <hardik.shah@ti.com> 12 * Manjunath Hadli <mrh@ti.com> 11 * Manjunath Hadli <mrh@ti.com> 13 * Karicheri Muralidharan <m-karicheri2@ti 12 * Karicheri Muralidharan <m-karicheri2@ti.com> >> 13 * >> 14 * This package is free software; you can redistribute it and/or modify >> 15 * it under the terms of the GNU General Public License version 2 as >> 16 * published by the Free Software Foundation. >> 17 * >> 18 * This program is distributed in the hope that it will be useful, >> 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of >> 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> 21 * GNU General Public License for more details. >> 22 * 14 */ 23 */ 15 24 16 #ifndef _TVP514X_H 25 #ifndef _TVP514X_H 17 #define _TVP514X_H 26 #define _TVP514X_H 18 27 19 /* 28 /* 20 * Other macros 29 * Other macros 21 */ 30 */ 22 #define TVP514X_MODULE_NAME "tvp51 31 #define TVP514X_MODULE_NAME "tvp514x" 23 32 24 #define TVP514X_XCLK_BT656 (27000 33 #define TVP514X_XCLK_BT656 (27000000) 25 34 26 /* Number of pixels and number of lines per fr 35 /* Number of pixels and number of lines per frame for different standards */ 27 #define NTSC_NUM_ACTIVE_PIXELS (720) 36 #define NTSC_NUM_ACTIVE_PIXELS (720) 28 #define NTSC_NUM_ACTIVE_LINES (480) 37 #define NTSC_NUM_ACTIVE_LINES (480) 29 #define PAL_NUM_ACTIVE_PIXELS (720) 38 #define PAL_NUM_ACTIVE_PIXELS (720) 30 #define PAL_NUM_ACTIVE_LINES (576) 39 #define PAL_NUM_ACTIVE_LINES (576) 31 40 32 /* enum for different decoder input pin config !! 41 /** >> 42 * enum tvp514x_input - enum for different decoder input pin >> 43 * configuration. >> 44 */ 33 enum tvp514x_input { 45 enum tvp514x_input { 34 /* 46 /* 35 * CVBS input selection 47 * CVBS input selection 36 */ 48 */ 37 INPUT_CVBS_VI1A = 0x0, 49 INPUT_CVBS_VI1A = 0x0, 38 INPUT_CVBS_VI1B, 50 INPUT_CVBS_VI1B, 39 INPUT_CVBS_VI1C, 51 INPUT_CVBS_VI1C, 40 INPUT_CVBS_VI2A = 0x04, 52 INPUT_CVBS_VI2A = 0x04, 41 INPUT_CVBS_VI2B, 53 INPUT_CVBS_VI2B, 42 INPUT_CVBS_VI2C, 54 INPUT_CVBS_VI2C, 43 INPUT_CVBS_VI3A = 0x08, 55 INPUT_CVBS_VI3A = 0x08, 44 INPUT_CVBS_VI3B, 56 INPUT_CVBS_VI3B, 45 INPUT_CVBS_VI3C, 57 INPUT_CVBS_VI3C, 46 INPUT_CVBS_VI4A = 0x0C, 58 INPUT_CVBS_VI4A = 0x0C, 47 /* 59 /* 48 * S-Video input selection 60 * S-Video input selection 49 */ 61 */ 50 INPUT_SVIDEO_VI2A_VI1A = 0x44, 62 INPUT_SVIDEO_VI2A_VI1A = 0x44, 51 INPUT_SVIDEO_VI2B_VI1B, 63 INPUT_SVIDEO_VI2B_VI1B, 52 INPUT_SVIDEO_VI2C_VI1C, 64 INPUT_SVIDEO_VI2C_VI1C, 53 INPUT_SVIDEO_VI2A_VI3A = 0x54, 65 INPUT_SVIDEO_VI2A_VI3A = 0x54, 54 INPUT_SVIDEO_VI2B_VI3B, 66 INPUT_SVIDEO_VI2B_VI3B, 55 INPUT_SVIDEO_VI2C_VI3C, 67 INPUT_SVIDEO_VI2C_VI3C, 56 INPUT_SVIDEO_VI4A_VI1A = 0x4C, 68 INPUT_SVIDEO_VI4A_VI1A = 0x4C, 57 INPUT_SVIDEO_VI4A_VI1B, 69 INPUT_SVIDEO_VI4A_VI1B, 58 INPUT_SVIDEO_VI4A_VI1C, 70 INPUT_SVIDEO_VI4A_VI1C, 59 INPUT_SVIDEO_VI4A_VI3A = 0x5C, 71 INPUT_SVIDEO_VI4A_VI3A = 0x5C, 60 INPUT_SVIDEO_VI4A_VI3B, 72 INPUT_SVIDEO_VI4A_VI3B, 61 INPUT_SVIDEO_VI4A_VI3C, 73 INPUT_SVIDEO_VI4A_VI3C, 62 74 63 /* Need to add entries for 75 /* Need to add entries for 64 * RGB, YPbPr and SCART. 76 * RGB, YPbPr and SCART. 65 */ 77 */ 66 INPUT_INVALID 78 INPUT_INVALID 67 }; 79 }; 68 80 69 /* enum for output format supported. */ !! 81 /** >> 82 * enum tvp514x_output - enum for output format >> 83 * supported. >> 84 * >> 85 */ 70 enum tvp514x_output { 86 enum tvp514x_output { 71 OUTPUT_10BIT_422_EMBEDDED_SYNC = 0, 87 OUTPUT_10BIT_422_EMBEDDED_SYNC = 0, 72 OUTPUT_20BIT_422_SEPERATE_SYNC, 88 OUTPUT_20BIT_422_SEPERATE_SYNC, 73 OUTPUT_10BIT_422_SEPERATE_SYNC = 3, 89 OUTPUT_10BIT_422_SEPERATE_SYNC = 3, 74 OUTPUT_INVALID 90 OUTPUT_INVALID 75 }; 91 }; 76 92 77 /** 93 /** 78 * struct tvp514x_platform_data - Platform dat 94 * struct tvp514x_platform_data - Platform data values and access functions. 79 * @clk_polarity: Clock polarity of the curren 95 * @clk_polarity: Clock polarity of the current interface. 80 * @hs_polarity: HSYNC Polarity configuration 96 * @hs_polarity: HSYNC Polarity configuration for current interface. 81 * @vs_polarity: VSYNC Polarity configuration 97 * @vs_polarity: VSYNC Polarity configuration for current interface. 82 */ 98 */ 83 struct tvp514x_platform_data { 99 struct tvp514x_platform_data { 84 /* Interface control params */ 100 /* Interface control params */ 85 bool clk_polarity; 101 bool clk_polarity; 86 bool hs_polarity; 102 bool hs_polarity; 87 bool vs_polarity; 103 bool vs_polarity; 88 }; 104 }; 89 105 90 106 91 #endif /* ifndef _TVP 107 #endif /* ifndef _TVP514X_H */ 92 108
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.