aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/samsung/clk.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/clk/samsung/clk.h')
-rw-r--r--drivers/clk/samsung/clk.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/drivers/clk/samsung/clk.h b/drivers/clk/samsung/clk.h
index aa872d2c5105..da3bdebabf1e 100644
--- a/drivers/clk/samsung/clk.h
+++ b/drivers/clk/samsung/clk.h
@@ -261,7 +261,7 @@ struct samsung_gate_clock {
261#define GATE_DA(_id, dname, cname, pname, o, b, f, gf, a) \ 261#define GATE_DA(_id, dname, cname, pname, o, b, f, gf, a) \
262 __GATE(_id, dname, cname, pname, o, b, f, gf, a) 262 __GATE(_id, dname, cname, pname, o, b, f, gf, a)
263 263
264#define PNAME(x) static const char *x[] __initdata 264#define PNAME(x) static const char * const x[] __initconst
265 265
266/** 266/**
267 * struct samsung_clk_reg_dump: register dump of clock controller registers. 267 * struct samsung_clk_reg_dump: register dump of clock controller registers.
@@ -330,28 +330,28 @@ struct samsung_clock_reg_cache {
330 330
331struct samsung_cmu_info { 331struct samsung_cmu_info {
332 /* list of pll clocks and respective count */ 332 /* list of pll clocks and respective count */
333 struct samsung_pll_clock *pll_clks; 333 const struct samsung_pll_clock *pll_clks;
334 unsigned int nr_pll_clks; 334 unsigned int nr_pll_clks;
335 /* list of mux clocks and respective count */ 335 /* list of mux clocks and respective count */
336 struct samsung_mux_clock *mux_clks; 336 const struct samsung_mux_clock *mux_clks;
337 unsigned int nr_mux_clks; 337 unsigned int nr_mux_clks;
338 /* list of div clocks and respective count */ 338 /* list of div clocks and respective count */
339 struct samsung_div_clock *div_clks; 339 const struct samsung_div_clock *div_clks;
340 unsigned int nr_div_clks; 340 unsigned int nr_div_clks;
341 /* list of gate clocks and respective count */ 341 /* list of gate clocks and respective count */
342 struct samsung_gate_clock *gate_clks; 342 const struct samsung_gate_clock *gate_clks;
343 unsigned int nr_gate_clks; 343 unsigned int nr_gate_clks;
344 /* list of fixed clocks and respective count */ 344 /* list of fixed clocks and respective count */
345 struct samsung_fixed_rate_clock *fixed_clks; 345 const struct samsung_fixed_rate_clock *fixed_clks;
346 unsigned int nr_fixed_clks; 346 unsigned int nr_fixed_clks;
347 /* list of fixed factor clocks and respective count */ 347 /* list of fixed factor clocks and respective count */
348 struct samsung_fixed_factor_clock *fixed_factor_clks; 348 const struct samsung_fixed_factor_clock *fixed_factor_clks;
349 unsigned int nr_fixed_factor_clks; 349 unsigned int nr_fixed_factor_clks;
350 /* total number of clocks with IDs assigned*/ 350 /* total number of clocks with IDs assigned*/
351 unsigned int nr_clk_ids; 351 unsigned int nr_clk_ids;
352 352
353 /* list and number of clocks registers */ 353 /* list and number of clocks registers */
354 unsigned long *clk_regs; 354 const unsigned long *clk_regs;
355 unsigned int nr_clk_regs; 355 unsigned int nr_clk_regs;
356}; 356};
357 357
@@ -395,10 +395,14 @@ extern void __init samsung_clk_register_pll(struct samsung_clk_provider *ctx,
395 395
396extern struct samsung_clk_provider __init *samsung_cmu_register_one( 396extern struct samsung_clk_provider __init *samsung_cmu_register_one(
397 struct device_node *, 397 struct device_node *,
398 struct samsung_cmu_info *); 398 const struct samsung_cmu_info *);
399 399
400extern unsigned long _get_rate(const char *clk_name); 400extern unsigned long _get_rate(const char *clk_name);
401 401
402extern void samsung_clk_sleep_init(void __iomem *reg_base,
403 const unsigned long *rdump,
404 unsigned long nr_rdump);
405
402extern void samsung_clk_save(void __iomem *base, 406extern void samsung_clk_save(void __iomem *base,
403 struct samsung_clk_reg_dump *rd, 407 struct samsung_clk_reg_dump *rd,
404 unsigned int num_regs); 408 unsigned int num_regs);