summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/clk/clk_domain.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/clk/clk_domain.h')
-rw-r--r--drivers/gpu/nvgpu/clk/clk_domain.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/clk/clk_domain.h b/drivers/gpu/nvgpu/clk/clk_domain.h
index d0170339..a8ae0d48 100644
--- a/drivers/gpu/nvgpu/clk/clk_domain.h
+++ b/drivers/gpu/nvgpu/clk/clk_domain.h
@@ -112,17 +112,42 @@ struct clk_domain_3x_prog {
112 u8 noise_aware_ordering_index; 112 u8 noise_aware_ordering_index;
113}; 113};
114 114
115struct clk_domain_35_prog {
116 struct clk_domain_3x_prog super;
117 u8 pre_volt_ordering_index;
118 u8 post_volt_ordering_index;
119 u8 clk_pos;
120 u8 clk_vf_curve_count;
121};
122
115struct clk_domain_3x_master { 123struct clk_domain_3x_master {
116 struct clk_domain_3x_prog super; 124 struct clk_domain_3x_prog super;
117 u32 slave_idxs_mask; 125 u32 slave_idxs_mask;
118}; 126};
119 127
128struct clk_domain_35_master {
129 struct clk_domain_35_prog super;
130 struct clk_domain_3x_master master;
131 struct boardobjgrpmask_e32 master_slave_domains_grp_mask;
132};
133
120struct clk_domain_3x_slave { 134struct clk_domain_3x_slave {
121 struct clk_domain_3x_prog super; 135 struct clk_domain_3x_prog super;
122 u8 master_idx; 136 u8 master_idx;
123 clkgetslaveclk *clkdomainclkgetslaveclk; 137 clkgetslaveclk *clkdomainclkgetslaveclk;
124}; 138};
125 139
140struct clk_domain_30_slave {
141 u8 rsvd;
142 u8 master_idx;
143 clkgetslaveclk *clkdomainclkgetslaveclk;
144};
145
146struct clk_domain_35_slave {
147 struct clk_domain_35_prog super;
148 struct clk_domain_30_slave slave;
149};
150
126int clk_domain_clk_prog_link(struct gk20a *g, struct clk_pmupstate *pclk); 151int clk_domain_clk_prog_link(struct gk20a *g, struct clk_pmupstate *pclk);
127 152
128#define CLK_CLK_DOMAIN_GET(pclk, idx) \ 153#define CLK_CLK_DOMAIN_GET(pclk, idx) \