linux/arch/arm/mach-w90x900/clock.h
<<
>>
Prefs
   1/*
   2 * linux/arch/arm/mach-w90x900/clock.h
   3 *
   4 * Copyright (c) 2008 Nuvoton technology corporation
   5 *
   6 * Wan ZongShun <mcuos.com@gmail.com>
   7 *
   8 * This program is free software; you can redistribute it and/or modify
   9 * it under the terms of the GNU General Public License as published by
  10 * the Free Software Foundation; either version 2 of the License.
  11 */
  12
  13#include <linux/clkdev.h>
  14
  15void nuc900_clk_enable(struct clk *clk, int enable);
  16void nuc900_subclk_enable(struct clk *clk, int enable);
  17
  18struct clk {
  19        unsigned long           cken;
  20        unsigned int            enabled;
  21        void                    (*enable)(struct clk *, int enable);
  22};
  23
  24#define DEFINE_CLK(_name, _ctrlbit)                     \
  25struct clk clk_##_name = {                              \
  26                .enable = nuc900_clk_enable,            \
  27                .cken   = (1 << _ctrlbit),              \
  28        }
  29
  30#define DEFINE_SUBCLK(_name, _ctrlbit)                  \
  31struct clk clk_##_name = {                              \
  32                .enable = nuc900_subclk_enable, \
  33                .cken   = (1 << _ctrlbit),              \
  34        }
  35
  36
  37#define DEF_CLKLOOK(_clk, _devname, _conname)           \
  38        {                                               \
  39                .clk            = _clk,                 \
  40                .dev_id         = _devname,             \
  41                .con_id         = _conname,             \
  42        }
  43
  44