linux/include/media/i2c/tvp514x.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * drivers/media/video/tvp514x.h
   4 *
   5 * Copyright (C) 2008 Texas Instruments Inc
   6 * Author: Vaibhav Hiremath <hvaibhav@ti.com>
   7 *
   8 * Contributors:
   9 *     Sivaraj R <sivaraj@ti.com>
  10 *     Brijesh R Jadav <brijesh.j@ti.com>
  11 *     Hardik Shah <hardik.shah@ti.com>
  12 *     Manjunath Hadli <mrh@ti.com>
  13 *     Karicheri Muralidharan <m-karicheri2@ti.com>
  14 */
  15
  16#ifndef _TVP514X_H
  17#define _TVP514X_H
  18
  19/*
  20 * Other macros
  21 */
  22#define TVP514X_MODULE_NAME             "tvp514x"
  23
  24#define TVP514X_XCLK_BT656              (27000000)
  25
  26/* Number of pixels and number of lines per frame for different standards */
  27#define NTSC_NUM_ACTIVE_PIXELS          (720)
  28#define NTSC_NUM_ACTIVE_LINES           (480)
  29#define PAL_NUM_ACTIVE_PIXELS           (720)
  30#define PAL_NUM_ACTIVE_LINES            (576)
  31
  32/**
  33 * enum tvp514x_input - enum for different decoder input pin
  34 *              configuration.
  35 */
  36enum tvp514x_input {
  37        /*
  38         * CVBS input selection
  39         */
  40        INPUT_CVBS_VI1A = 0x0,
  41        INPUT_CVBS_VI1B,
  42        INPUT_CVBS_VI1C,
  43        INPUT_CVBS_VI2A = 0x04,
  44        INPUT_CVBS_VI2B,
  45        INPUT_CVBS_VI2C,
  46        INPUT_CVBS_VI3A = 0x08,
  47        INPUT_CVBS_VI3B,
  48        INPUT_CVBS_VI3C,
  49        INPUT_CVBS_VI4A = 0x0C,
  50        /*
  51         * S-Video input selection
  52         */
  53        INPUT_SVIDEO_VI2A_VI1A = 0x44,
  54        INPUT_SVIDEO_VI2B_VI1B,
  55        INPUT_SVIDEO_VI2C_VI1C,
  56        INPUT_SVIDEO_VI2A_VI3A = 0x54,
  57        INPUT_SVIDEO_VI2B_VI3B,
  58        INPUT_SVIDEO_VI2C_VI3C,
  59        INPUT_SVIDEO_VI4A_VI1A = 0x4C,
  60        INPUT_SVIDEO_VI4A_VI1B,
  61        INPUT_SVIDEO_VI4A_VI1C,
  62        INPUT_SVIDEO_VI4A_VI3A = 0x5C,
  63        INPUT_SVIDEO_VI4A_VI3B,
  64        INPUT_SVIDEO_VI4A_VI3C,
  65
  66        /* Need to add entries for
  67         * RGB, YPbPr and SCART.
  68         */
  69        INPUT_INVALID
  70};
  71
  72/**
  73 * enum tvp514x_output - enum for output format
  74 *                      supported.
  75 *
  76 */
  77enum tvp514x_output {
  78        OUTPUT_10BIT_422_EMBEDDED_SYNC = 0,
  79        OUTPUT_20BIT_422_SEPERATE_SYNC,
  80        OUTPUT_10BIT_422_SEPERATE_SYNC = 3,
  81        OUTPUT_INVALID
  82};
  83
  84/**
  85 * struct tvp514x_platform_data - Platform data values and access functions.
  86 * @clk_polarity: Clock polarity of the current interface.
  87 * @hs_polarity: HSYNC Polarity configuration for current interface.
  88 * @vs_polarity: VSYNC Polarity configuration for current interface.
  89 */
  90struct tvp514x_platform_data {
  91        /* Interface control params */
  92        bool clk_polarity;
  93        bool hs_polarity;
  94        bool vs_polarity;
  95};
  96
  97
  98#endif                          /* ifndef _TVP514X_H */
  99