forked from luck/tmp_suning_uos_patched
49ea7fc094
PXA95x isn't widely used. And it adds the effort on supporting multiple platform. So remove it. The assumption is that nobody will miss this support. If you are reading this text because you actually require pxa95x support on a new kernel, we can work out a way to revert this patch or add support to the mmp platform. Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
81 lines
1.9 KiB
C
81 lines
1.9 KiB
C
#include <linux/clkdev.h>
|
|
#include <linux/syscore_ops.h>
|
|
|
|
struct clkops {
|
|
void (*enable)(struct clk *);
|
|
void (*disable)(struct clk *);
|
|
unsigned long (*getrate)(struct clk *);
|
|
int (*setrate)(struct clk *, unsigned long);
|
|
};
|
|
|
|
struct clk {
|
|
const struct clkops *ops;
|
|
unsigned long rate;
|
|
unsigned int cken;
|
|
unsigned int delay;
|
|
unsigned int enabled;
|
|
};
|
|
|
|
void clk_dummy_enable(struct clk *);
|
|
void clk_dummy_disable(struct clk *);
|
|
|
|
extern const struct clkops clk_dummy_ops;
|
|
extern struct clk clk_dummy;
|
|
|
|
#define INIT_CLKREG(_clk,_devname,_conname) \
|
|
{ \
|
|
.clk = _clk, \
|
|
.dev_id = _devname, \
|
|
.con_id = _conname, \
|
|
}
|
|
|
|
#define DEFINE_CK(_name, _cken, _ops) \
|
|
struct clk clk_##_name = { \
|
|
.ops = _ops, \
|
|
.cken = CKEN_##_cken, \
|
|
}
|
|
|
|
#define DEFINE_CLK(_name, _ops, _rate, _delay) \
|
|
struct clk clk_##_name = { \
|
|
.ops = _ops, \
|
|
.rate = _rate, \
|
|
.delay = _delay, \
|
|
}
|
|
|
|
#define DEFINE_PXA2_CKEN(_name, _cken, _rate, _delay) \
|
|
struct clk clk_##_name = { \
|
|
.ops = &clk_pxa2xx_cken_ops, \
|
|
.rate = _rate, \
|
|
.cken = CKEN_##_cken, \
|
|
.delay = _delay, \
|
|
}
|
|
|
|
extern const struct clkops clk_pxa2xx_cken_ops;
|
|
|
|
void clk_pxa2xx_cken_enable(struct clk *clk);
|
|
void clk_pxa2xx_cken_disable(struct clk *clk);
|
|
|
|
extern struct syscore_ops pxa2xx_clock_syscore_ops;
|
|
|
|
#if defined(CONFIG_PXA3xx)
|
|
#define DEFINE_PXA3_CKEN(_name, _cken, _rate, _delay) \
|
|
struct clk clk_##_name = { \
|
|
.ops = &clk_pxa3xx_cken_ops, \
|
|
.rate = _rate, \
|
|
.cken = CKEN_##_cken, \
|
|
.delay = _delay, \
|
|
}
|
|
|
|
extern const struct clkops clk_pxa3xx_cken_ops;
|
|
extern const struct clkops clk_pxa3xx_hsio_ops;
|
|
extern const struct clkops clk_pxa3xx_ac97_ops;
|
|
extern const struct clkops clk_pxa3xx_pout_ops;
|
|
extern const struct clkops clk_pxa3xx_smemc_ops;
|
|
|
|
extern void clk_pxa3xx_cken_enable(struct clk *);
|
|
extern void clk_pxa3xx_cken_disable(struct clk *);
|
|
|
|
extern struct syscore_ops pxa3xx_clock_syscore_ops;
|
|
|
|
#endif
|