18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * drivers/media/video/tvp514x.h 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2008 Texas Instruments Inc 68c2ecf20Sopenharmony_ci * Author: Vaibhav Hiremath <hvaibhav@ti.com> 78c2ecf20Sopenharmony_ci * 88c2ecf20Sopenharmony_ci * Contributors: 98c2ecf20Sopenharmony_ci * Sivaraj R <sivaraj@ti.com> 108c2ecf20Sopenharmony_ci * Brijesh R Jadav <brijesh.j@ti.com> 118c2ecf20Sopenharmony_ci * Hardik Shah <hardik.shah@ti.com> 128c2ecf20Sopenharmony_ci * Manjunath Hadli <mrh@ti.com> 138c2ecf20Sopenharmony_ci * Karicheri Muralidharan <m-karicheri2@ti.com> 148c2ecf20Sopenharmony_ci */ 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci#ifndef _TVP514X_H 178c2ecf20Sopenharmony_ci#define _TVP514X_H 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci/* 208c2ecf20Sopenharmony_ci * Other macros 218c2ecf20Sopenharmony_ci */ 228c2ecf20Sopenharmony_ci#define TVP514X_MODULE_NAME "tvp514x" 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci#define TVP514X_XCLK_BT656 (27000000) 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci/* Number of pixels and number of lines per frame for different standards */ 278c2ecf20Sopenharmony_ci#define NTSC_NUM_ACTIVE_PIXELS (720) 288c2ecf20Sopenharmony_ci#define NTSC_NUM_ACTIVE_LINES (480) 298c2ecf20Sopenharmony_ci#define PAL_NUM_ACTIVE_PIXELS (720) 308c2ecf20Sopenharmony_ci#define PAL_NUM_ACTIVE_LINES (576) 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci/** 338c2ecf20Sopenharmony_ci * enum tvp514x_input - enum for different decoder input pin 348c2ecf20Sopenharmony_ci * configuration. 358c2ecf20Sopenharmony_ci */ 368c2ecf20Sopenharmony_cienum tvp514x_input { 378c2ecf20Sopenharmony_ci /* 388c2ecf20Sopenharmony_ci * CVBS input selection 398c2ecf20Sopenharmony_ci */ 408c2ecf20Sopenharmony_ci INPUT_CVBS_VI1A = 0x0, 418c2ecf20Sopenharmony_ci INPUT_CVBS_VI1B, 428c2ecf20Sopenharmony_ci INPUT_CVBS_VI1C, 438c2ecf20Sopenharmony_ci INPUT_CVBS_VI2A = 0x04, 448c2ecf20Sopenharmony_ci INPUT_CVBS_VI2B, 458c2ecf20Sopenharmony_ci INPUT_CVBS_VI2C, 468c2ecf20Sopenharmony_ci INPUT_CVBS_VI3A = 0x08, 478c2ecf20Sopenharmony_ci INPUT_CVBS_VI3B, 488c2ecf20Sopenharmony_ci INPUT_CVBS_VI3C, 498c2ecf20Sopenharmony_ci INPUT_CVBS_VI4A = 0x0C, 508c2ecf20Sopenharmony_ci /* 518c2ecf20Sopenharmony_ci * S-Video input selection 528c2ecf20Sopenharmony_ci */ 538c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2A_VI1A = 0x44, 548c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2B_VI1B, 558c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2C_VI1C, 568c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2A_VI3A = 0x54, 578c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2B_VI3B, 588c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI2C_VI3C, 598c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI1A = 0x4C, 608c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI1B, 618c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI1C, 628c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI3A = 0x5C, 638c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI3B, 648c2ecf20Sopenharmony_ci INPUT_SVIDEO_VI4A_VI3C, 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci /* Need to add entries for 678c2ecf20Sopenharmony_ci * RGB, YPbPr and SCART. 688c2ecf20Sopenharmony_ci */ 698c2ecf20Sopenharmony_ci INPUT_INVALID 708c2ecf20Sopenharmony_ci}; 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ci/** 738c2ecf20Sopenharmony_ci * enum tvp514x_output - enum for output format 748c2ecf20Sopenharmony_ci * supported. 758c2ecf20Sopenharmony_ci * 768c2ecf20Sopenharmony_ci */ 778c2ecf20Sopenharmony_cienum tvp514x_output { 788c2ecf20Sopenharmony_ci OUTPUT_10BIT_422_EMBEDDED_SYNC = 0, 798c2ecf20Sopenharmony_ci OUTPUT_20BIT_422_SEPERATE_SYNC, 808c2ecf20Sopenharmony_ci OUTPUT_10BIT_422_SEPERATE_SYNC = 3, 818c2ecf20Sopenharmony_ci OUTPUT_INVALID 828c2ecf20Sopenharmony_ci}; 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci/** 858c2ecf20Sopenharmony_ci * struct tvp514x_platform_data - Platform data values and access functions. 868c2ecf20Sopenharmony_ci * @clk_polarity: Clock polarity of the current interface. 878c2ecf20Sopenharmony_ci * @hs_polarity: HSYNC Polarity configuration for current interface. 888c2ecf20Sopenharmony_ci * @vs_polarity: VSYNC Polarity configuration for current interface. 898c2ecf20Sopenharmony_ci */ 908c2ecf20Sopenharmony_cistruct tvp514x_platform_data { 918c2ecf20Sopenharmony_ci /* Interface control params */ 928c2ecf20Sopenharmony_ci bool clk_polarity; 938c2ecf20Sopenharmony_ci bool hs_polarity; 948c2ecf20Sopenharmony_ci bool vs_polarity; 958c2ecf20Sopenharmony_ci}; 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci 988c2ecf20Sopenharmony_ci#endif /* ifndef _TVP514X_H */ 99