aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/mtk_timer.c
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2014-11-17 13:52:20 -0500
committerMarcel Holtmann <marcel@holtmann.org>2014-11-17 19:53:15 -0500
commit38da1703060a520e69b00405f9bdf765d1396cd0 (patch)
tree40ecf418532711b858635ae05431ba7819d97195 /drivers/clocksource/mtk_timer.c
parentc19a495c8bccc15acd299f26d72b5d51eb3acb1d (diff)
Bluetooth: Use shorter "rand" name for "randomizer"
The common short form of "randomizer" is "rand" in many places (including the Bluetooth specification). The shorter version also makes for easier to read code with less forced line breaks. This patch renames all occurences of "randomizer" to "rand" in the Bluetooth subsystem code. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'drivers/clocksource/mtk_timer.c')
0 files changed, 0 insertions, 0 deletions
24:25 -0400 gpu: nvgpu: Remove uses of platform->can_elpg' href='/cgit/cgit.cgi/nvgpu.git/commit/drivers/gpu/nvgpu/gk20a/platform_gk20a.h?h=gpu-paging&id=2c822a63885ec79ac2d860e13438c6154e23e5d0'>2c822a63
ed32288e

a9785995

246dcb82
d29afd2c
246dcb82
7f79d647


ce6b4bac


95a3eb45


a9785995

daaa9f03
a9785995

704f2933
ed0737ab

704f2933
ed0737ab
a9785995
7acc993c
a9785995
6f492c38














75d7d682


71fbfdb2


ff417a72


b3a85df5





0e89e423





5711e2b1




a9785995










e8bac374
a9785995



e8bac374
60493012


e8bac374
a9785995
d0ce4807
e8bac374
d0ce4807

e8bac374
d0ce4807
725b56f7

a9785995



e8bac374
a9785995

e8bac374
8ee3aa4b
a9785995
2ad53bb4
e8bac374
2ad53bb4
acde16dd
e8bac374
acde16dd


e8bac374
acde16dd
acde16dd
01e61860

acde16dd
a9785995
e8bac374
a9785995


e8bac374
a9785995




61d4e276




a9785995





e8bac374
1fd722f5
c3661ade
e8bac374

c3661ade
16aaae64
c3661ade
1fd722f5
2870a4bc
e1438818
1fd722f5
19b3bd28

8c5b3935

e8bac374


26b0037d
80197d2c



26b0037d
174e6ad1

55dba9f1


9132bb52




0f2eb543
c1f549e5
0f2eb543

c1f549e5
a9785995


e8bac374
a9785995
e8bac374
a9785995

a9785995
f66cb909
76b78b6f
1fd722f5


a9785995

e8bac374


aec94d80
b7fca01b



b7fca01b























a9785995
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
  

                                 
                                                                     













                                                                            
                         
                          
 

                       

                  

                                 




                           
                           
                                                                     

                    

  
                       



                                                                        
                               
 
                                           
                           

                                           

                            
                                                                        
                                                    
 


                                                     


                                                                              


                                                                           

                                                                            
                                        

                     
                              

                                            
      
 
                                     
                                
 














                                                                      


                                                        


                                                                      


                                                      





                                           





                                                                              




                                                                       










                                                                        
                                         



                                                                         
                                              


                                                             
                                          
 
                                           
                                        

                                             
                                         
 

                                                



                                             
                                            

                                          
                                              
                                         
 
                                             
                                                 
 
                                          
                                                 


                                                                       
                                                  
                                                    
 

                                                                 
 
                                                                 
                                             


                                                            
                                             




                                                                   




                                                                            





                                                                              
                                                               
 
                                                    

                                                  
                              
                                   
 
                         
                                     
                        
      

                                               

                     


                                                 
 



                                                                
 

                                             


                                                          




                                                      
 
                                                            

                                
                             


                                                        
                                   
 
                                                             

 
                         
                                                  
                                                  


                                                 

      


                                                 
 



                                                         























                                                                  
      
/*
 * GK20A Platform (SoC) Interface
 *
 * Copyright (c) 2014-2017, NVIDIA CORPORATION.  All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 */

#ifndef _GK20A_PLATFORM_H_
#define _GK20A_PLATFORM_H_

#include <linux/device.h>
#include <linux/version.h>

#include <nvgpu/lock.h>

#include "gk20a.h"

#define GK20A_CLKS_MAX		4

struct gk20a;
struct channel_gk20a;
struct gr_ctx_buffer_desc;
struct gk20a_scale_profile;

struct secure_page_buffer {
	void (*destroy)(struct gk20a *, struct secure_page_buffer *);
	size_t size;
	u64 iova;
};

struct gk20a_platform {
	/* Populated by the gk20a driver before probing the platform. */
	struct gk20a *g;

	/* Should be populated at probe. */
	bool can_railgate_init;

	/* Should be populated at probe. */
	bool can_elpg_init;

	/* Should be populated at probe. */
	bool has_syncpoints;

	/* channel limit after which to start aggressive sync destroy */
	unsigned int aggressive_sync_destroy_thresh;

	/* flag to set sync destroy aggressiveness */
	bool aggressive_sync_destroy;

	/* set if ASPM should be disabled on boot; only makes sense for PCI */
	bool disable_aspm;

	/* Set if the platform can unify the small/large address spaces. */
	bool unify_address_spaces;

	/* Clock configuration is stored here. Platform probe is responsible
	 * for filling this data. */
	struct clk *clk[GK20A_CLKS_MAX];
	int num_clks;

#ifdef CONFIG_RESET_CONTROLLER
	/* Reset control for device */
	struct reset_control *reset_control;
#endif

	/* Delay before rail gated */
	int railgate_delay_init;

	/* Second Level Clock Gating: true = enable false = disable */
	bool enable_slcg;

	/* Block Level Clock Gating: true = enable flase = disable */
	bool enable_blcg;

	/* Engine Level Clock Gating: true = enable flase = disable */
	bool enable_elcg;

	/* Engine Level Power Gating: true = enable flase = disable */
	bool enable_elpg;

	/* Adaptative ELPG: true = enable flase = disable */
	bool enable_aelpg;

	/* PMU Perfmon: true = enable false = disable */
	bool enable_perfmon;

	/* Memory System Clock Gating: true = enable flase = disable*/
	bool enable_mscg;

	/* Timeout for per-channel watchdog (in mS) */
	u32 ch_wdt_timeout_ms;

	/* Enable SMMU bypass by default */
	bool bypass_smmu;

	/* Disable big page support */
	bool disable_bigpage;

	/*
	 * gk20a_do_idle() API can take GPU either into rail gate or CAR reset
	 * This flag can be used to force CAR reset case instead of rail gate
	 */
	bool force_reset_in_do_idle;

	/* default pri timeout, on PCIe it should be lower than timeout
	 * detection
	 */
	u32 default_pri_timeout;

	/* Initialize the platform interface of the gk20a driver.
	 *
	 * The platform implementation of this function must
	 *   - set the power and clocks of the gk20a device to a known
	 *     state, and
	 *   - populate the gk20a_platform structure (a pointer to the
	 *     structure can be obtained by calling gk20a_get_platform).
	 *
	 * After this function is finished, the driver will initialise
	 * pm runtime and genpd based on the platform configuration.
	 */
	int (*probe)(struct device *dev);

	/* Second stage initialisation - called once all power management
	 * initialisations are done.
	 */
	int (*late_probe)(struct device *dev);

	/* Remove device after power management has been done
	 */
	int (*remove)(struct device *dev);

	/* Poweron platform dependencies */
	int (*busy)(struct device *dev);

	/* Powerdown platform dependencies */
	void (*idle)(struct device *dev);

	struct secure_page_buffer secure_buffer;

	/* Device is going to be suspended */
	int (*suspend)(struct device *);

	/* Called to turn off the device */
	int (*railgate)(struct device *dev);

	/* Called to turn on the device */
	int (*unrailgate)(struct device *dev);
	struct nvgpu_mutex railgate_lock;

	/* Called to check state of device */
	bool (*is_railgated)(struct device *dev);

	/* get supported frequency list */
	int (*get_clk_freqs)(struct device *pdev,
				unsigned long **freqs, int *num_freqs);

	/* clk related supported functions */
	long (*clk_round_rate)(struct device *dev,
				unsigned long rate);

	/* Called to register GPCPLL with common clk framework */
	int (*clk_register)(struct gk20a *g);

	/* Postscale callback is called after frequency change */
	void (*postscale)(struct device *dev,
			  unsigned long freq);

	/* Pre callback is called before frequency change */
	void (*prescale)(struct device *dev);

	/* Devfreq governor name. If scaling is enabled, we request
	 * this governor to be used in scaling */
	const char *devfreq_governor;

	/* Quality of service notifier callback. If this is set, the scaling
	 * routines will register a callback to Qos. Each time we receive
	 * a new value, this callback gets called.  */
	int (*qos_notify)(struct notifier_block *nb,
			  unsigned long n, void *p);