blob: 5de505e627beb0eeb7f74d529eadc3ad3cdb6af3 [file] [log] [blame]
Rob Clark0cf6c712013-06-24 17:12:04 -04001#ifndef MMSS_CC_XML
2#define MMSS_CC_XML
3
4/* Autogenerated file, DO NOT EDIT manually!
5
6This file was generated by the rules-ng-ng headergen tool in this git repository:
Rob Clark22ba8b62013-10-07 12:42:27 -04007http://github.com/freedreno/envytools/
8git clone https://github.com/freedreno/envytools.git
Rob Clark0cf6c712013-06-24 17:12:04 -04009
10The rules-ng-ng source files this header was generated from are:
Rob Clark2d3584e2015-07-27 19:37:12 -040011- /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14)
12- /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07)
13- /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14)
14- /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2576 bytes, from 2015-07-09 22:10:24)
15- /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 36021 bytes, from 2015-07-09 22:10:24)
16- /home/robclark/src/freedreno/envytools/rnndb/dsi/dsi.xml ( 26057 bytes, from 2015-08-14 21:47:57)
17- /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 344 bytes, from 2015-05-20 20:03:07)
18- /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14)
19- /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07)
20- /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43)
21- /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14)
Rob Clark0cf6c712013-06-24 17:12:04 -040022
Rob Clark2d3584e2015-07-27 19:37:12 -040023Copyright (C) 2013-2015 by the following authors:
Rob Clark0cf6c712013-06-24 17:12:04 -040024- Rob Clark <robdclark@gmail.com> (robclark)
25
26Permission is hereby granted, free of charge, to any person obtaining
27a copy of this software and associated documentation files (the
28"Software"), to deal in the Software without restriction, including
29without limitation the rights to use, copy, modify, merge, publish,
30distribute, sublicense, and/or sell copies of the Software, and to
31permit persons to whom the Software is furnished to do so, subject to
32the following conditions:
33
34The above copyright notice and this permission notice (including the
35next paragraph) shall be included in all copies or substantial
36portions of the Software.
37
38THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
39EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
40MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
41IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
42LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
43OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
44WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
45*/
46
47
48enum mmss_cc_clk {
49 CLK = 0,
50 PCLK = 1,
51};
52
53#define REG_MMSS_CC_AHB 0x00000008
54
55static inline uint32_t __offset_CLK(enum mmss_cc_clk idx)
56{
57 switch (idx) {
58 case CLK: return 0x0000004c;
59 case PCLK: return 0x00000130;
60 default: return INVALID_IDX(idx);
61 }
62}
63static inline uint32_t REG_MMSS_CC_CLK(enum mmss_cc_clk i0) { return 0x00000000 + __offset_CLK(i0); }
64
65static inline uint32_t REG_MMSS_CC_CLK_CC(enum mmss_cc_clk i0) { return 0x00000000 + __offset_CLK(i0); }
66#define MMSS_CC_CLK_CC_CLK_EN 0x00000001
67#define MMSS_CC_CLK_CC_ROOT_EN 0x00000004
68#define MMSS_CC_CLK_CC_MND_EN 0x00000020
69#define MMSS_CC_CLK_CC_MND_MODE__MASK 0x000000c0
70#define MMSS_CC_CLK_CC_MND_MODE__SHIFT 6
71static inline uint32_t MMSS_CC_CLK_CC_MND_MODE(uint32_t val)
72{
73 return ((val) << MMSS_CC_CLK_CC_MND_MODE__SHIFT) & MMSS_CC_CLK_CC_MND_MODE__MASK;
74}
75#define MMSS_CC_CLK_CC_PMXO_SEL__MASK 0x00000300
76#define MMSS_CC_CLK_CC_PMXO_SEL__SHIFT 8
77static inline uint32_t MMSS_CC_CLK_CC_PMXO_SEL(uint32_t val)
78{
79 return ((val) << MMSS_CC_CLK_CC_PMXO_SEL__SHIFT) & MMSS_CC_CLK_CC_PMXO_SEL__MASK;
80}
81
82static inline uint32_t REG_MMSS_CC_CLK_MD(enum mmss_cc_clk i0) { return 0x00000004 + __offset_CLK(i0); }
83#define MMSS_CC_CLK_MD_D__MASK 0x000000ff
84#define MMSS_CC_CLK_MD_D__SHIFT 0
85static inline uint32_t MMSS_CC_CLK_MD_D(uint32_t val)
86{
87 return ((val) << MMSS_CC_CLK_MD_D__SHIFT) & MMSS_CC_CLK_MD_D__MASK;
88}
89#define MMSS_CC_CLK_MD_M__MASK 0x0000ff00
90#define MMSS_CC_CLK_MD_M__SHIFT 8
91static inline uint32_t MMSS_CC_CLK_MD_M(uint32_t val)
92{
93 return ((val) << MMSS_CC_CLK_MD_M__SHIFT) & MMSS_CC_CLK_MD_M__MASK;
94}
95
96static inline uint32_t REG_MMSS_CC_CLK_NS(enum mmss_cc_clk i0) { return 0x00000008 + __offset_CLK(i0); }
97#define MMSS_CC_CLK_NS_SRC__MASK 0x0000000f
98#define MMSS_CC_CLK_NS_SRC__SHIFT 0
99static inline uint32_t MMSS_CC_CLK_NS_SRC(uint32_t val)
100{
101 return ((val) << MMSS_CC_CLK_NS_SRC__SHIFT) & MMSS_CC_CLK_NS_SRC__MASK;
102}
103#define MMSS_CC_CLK_NS_PRE_DIV_FUNC__MASK 0x00fff000
104#define MMSS_CC_CLK_NS_PRE_DIV_FUNC__SHIFT 12
105static inline uint32_t MMSS_CC_CLK_NS_PRE_DIV_FUNC(uint32_t val)
106{
107 return ((val) << MMSS_CC_CLK_NS_PRE_DIV_FUNC__SHIFT) & MMSS_CC_CLK_NS_PRE_DIV_FUNC__MASK;
108}
109#define MMSS_CC_CLK_NS_VAL__MASK 0xff000000
110#define MMSS_CC_CLK_NS_VAL__SHIFT 24
111static inline uint32_t MMSS_CC_CLK_NS_VAL(uint32_t val)
112{
113 return ((val) << MMSS_CC_CLK_NS_VAL__SHIFT) & MMSS_CC_CLK_NS_VAL__MASK;
114}
115
Rob Clarkf9a1ca52014-08-01 08:26:56 -0400116#define REG_MMSS_CC_DSI2_PIXEL_CC 0x00000094
117
118#define REG_MMSS_CC_DSI2_PIXEL_NS 0x000000e4
119
120#define REG_MMSS_CC_DSI2_PIXEL_CC2 0x00000264
121
Rob Clark0cf6c712013-06-24 17:12:04 -0400122
123#endif /* MMSS_CC_XML */