These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / media / pci / cobalt / m00514_syncgen_flow_evcnt_memmap_package.h
1 /*
2  *  Copyright 2014-2015 Cisco Systems, Inc. and/or its affiliates.
3  *  All rights reserved.
4  *
5  *  This program is free software; you may redistribute it and/or modify
6  *  it under the terms of the GNU General Public License as published by
7  *  the Free Software Foundation; version 2 of the License.
8  *
9  *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
10  *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11  *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
12  *  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
13  *  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
14  *  ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
15  *  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16  *  SOFTWARE.
17  */
18
19 #ifndef M00514_SYNCGEN_FLOW_EVCNT_MEMMAP_PACKAGE_H
20 #define M00514_SYNCGEN_FLOW_EVCNT_MEMMAP_PACKAGE_H
21
22 /*******************************************************************
23  * Register Block
24  * M00514_SYNCGEN_FLOW_EVCNT_MEMMAP_PACKAGE_VHD_REGMAP
25  *******************************************************************/
26 struct m00514_syncgen_flow_evcnt_regmap {
27         uint32_t control;                            /* Reg 0x0000, Default=0x0 */
28         uint32_t sync_generator_h_sync_length;       /* Reg 0x0004, Default=0x0 */
29         uint32_t sync_generator_h_backporch_length;  /* Reg 0x0008, Default=0x0 */
30         uint32_t sync_generator_h_active_length;     /* Reg 0x000c, Default=0x0 */
31         uint32_t sync_generator_h_frontporch_length; /* Reg 0x0010, Default=0x0 */
32         uint32_t sync_generator_v_sync_length;       /* Reg 0x0014, Default=0x0 */
33         uint32_t sync_generator_v_backporch_length;  /* Reg 0x0018, Default=0x0 */
34         uint32_t sync_generator_v_active_length;     /* Reg 0x001c, Default=0x0 */
35         uint32_t sync_generator_v_frontporch_length; /* Reg 0x0020, Default=0x0 */
36         uint32_t error_color;                        /* Reg 0x0024, Default=0x0 */
37         uint32_t rd_status;                          /* Reg 0x0028 */
38         uint32_t rd_evcnt_count;                     /* Reg 0x002c */
39 };
40
41 #define M00514_SYNCGEN_FLOW_EVCNT_REG_CONTROL_OFST 0
42 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_H_SYNC_LENGTH_OFST 4
43 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_H_BACKPORCH_LENGTH_OFST 8
44 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_H_ACTIVE_LENGTH_OFST 12
45 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_H_FRONTPORCH_LENGTH_OFST 16
46 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_V_SYNC_LENGTH_OFST 20
47 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_V_BACKPORCH_LENGTH_OFST 24
48 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_V_ACTIVE_LENGTH_OFST 28
49 #define M00514_SYNCGEN_FLOW_EVCNT_REG_SYNC_GENERATOR_V_FRONTPORCH_LENGTH_OFST 32
50 #define M00514_SYNCGEN_FLOW_EVCNT_REG_ERROR_COLOR_OFST 36
51 #define M00514_SYNCGEN_FLOW_EVCNT_REG_RD_STATUS_OFST 40
52 #define M00514_SYNCGEN_FLOW_EVCNT_REG_RD_EVCNT_COUNT_OFST 44
53
54 /*******************************************************************
55  * Bit Mask for register
56  * M00514_SYNCGEN_FLOW_EVCNT_MEMMAP_PACKAGE_VHD_BITMAP
57  *******************************************************************/
58 /* control [7:0] */
59 #define M00514_CONTROL_BITMAP_SYNC_GENERATOR_LOAD_PARAM_OFST (0)
60 #define M00514_CONTROL_BITMAP_SYNC_GENERATOR_LOAD_PARAM_MSK  (0x1 << M00514_CONTROL_BITMAP_SYNC_GENERATOR_LOAD_PARAM_OFST)
61 #define M00514_CONTROL_BITMAP_SYNC_GENERATOR_ENABLE_OFST     (1)
62 #define M00514_CONTROL_BITMAP_SYNC_GENERATOR_ENABLE_MSK      (0x1 << M00514_CONTROL_BITMAP_SYNC_GENERATOR_ENABLE_OFST)
63 #define M00514_CONTROL_BITMAP_FLOW_CTRL_OUTPUT_ENABLE_OFST   (2)
64 #define M00514_CONTROL_BITMAP_FLOW_CTRL_OUTPUT_ENABLE_MSK    (0x1 << M00514_CONTROL_BITMAP_FLOW_CTRL_OUTPUT_ENABLE_OFST)
65 #define M00514_CONTROL_BITMAP_HSYNC_POLARITY_LOW_OFST        (3)
66 #define M00514_CONTROL_BITMAP_HSYNC_POLARITY_LOW_MSK         (0x1 << M00514_CONTROL_BITMAP_HSYNC_POLARITY_LOW_OFST)
67 #define M00514_CONTROL_BITMAP_VSYNC_POLARITY_LOW_OFST        (4)
68 #define M00514_CONTROL_BITMAP_VSYNC_POLARITY_LOW_MSK         (0x1 << M00514_CONTROL_BITMAP_VSYNC_POLARITY_LOW_OFST)
69 #define M00514_CONTROL_BITMAP_EVCNT_ENABLE_OFST              (5)
70 #define M00514_CONTROL_BITMAP_EVCNT_ENABLE_MSK               (0x1 << M00514_CONTROL_BITMAP_EVCNT_ENABLE_OFST)
71 #define M00514_CONTROL_BITMAP_EVCNT_CLEAR_OFST               (6)
72 #define M00514_CONTROL_BITMAP_EVCNT_CLEAR_MSK                (0x1 << M00514_CONTROL_BITMAP_EVCNT_CLEAR_OFST)
73 #define M00514_CONTROL_BITMAP_FORMAT_16_BPP_OFST             (7)
74 #define M00514_CONTROL_BITMAP_FORMAT_16_BPP_MSK              (0x1 << M00514_CONTROL_BITMAP_FORMAT_16_BPP_OFST)
75 /* error_color [23:0] */
76 #define M00514_ERROR_COLOR_BITMAP_BLUE_OFST                  (0)
77 #define M00514_ERROR_COLOR_BITMAP_BLUE_MSK                   (0xff << M00514_ERROR_COLOR_BITMAP_BLUE_OFST)
78 #define M00514_ERROR_COLOR_BITMAP_GREEN_OFST                 (8)
79 #define M00514_ERROR_COLOR_BITMAP_GREEN_MSK                  (0xff << M00514_ERROR_COLOR_BITMAP_GREEN_OFST)
80 #define M00514_ERROR_COLOR_BITMAP_RED_OFST                   (16)
81 #define M00514_ERROR_COLOR_BITMAP_RED_MSK                    (0xff << M00514_ERROR_COLOR_BITMAP_RED_OFST)
82 /* rd_status [1:0] */
83 #define M00514_RD_STATUS_BITMAP_FLOW_CTRL_NO_DATA_ERROR_OFST (0)
84 #define M00514_RD_STATUS_BITMAP_FLOW_CTRL_NO_DATA_ERROR_MSK  (0x1 << M00514_RD_STATUS_BITMAP_FLOW_CTRL_NO_DATA_ERROR_OFST)
85 #define M00514_RD_STATUS_BITMAP_READY_BUFFER_FULL_OFST       (1)
86 #define M00514_RD_STATUS_BITMAP_READY_BUFFER_FULL_MSK        (0x1 << M00514_RD_STATUS_BITMAP_READY_BUFFER_FULL_OFST)
87
88 #endif /*M00514_SYNCGEN_FLOW_EVCNT_MEMMAP_PACKAGE_H*/