6f6682809b
This provides an implementation of the <linux/clk.h> interface for arch/powerpc using a set of function pointers in clk_functions. Platforms that want to support this interface should fill clk_functions and select CONFIG_PPC_CLOCK in Kconfig. Signed-off-by: Domen Puncer <domen.puncer@telargo.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
20 lines
683 B
C
20 lines
683 B
C
#ifndef __ASM_POWERPC_CLK_INTERFACE_H
|
|
#define __ASM_POWERPC_CLK_INTERFACE_H
|
|
|
|
#include <linux/clk.h>
|
|
|
|
struct clk_interface {
|
|
struct clk* (*clk_get) (struct device *dev, const char *id);
|
|
int (*clk_enable) (struct clk *clk);
|
|
void (*clk_disable) (struct clk *clk);
|
|
unsigned long (*clk_get_rate) (struct clk *clk);
|
|
void (*clk_put) (struct clk *clk);
|
|
long (*clk_round_rate) (struct clk *clk, unsigned long rate);
|
|
int (*clk_set_rate) (struct clk *clk, unsigned long rate);
|
|
int (*clk_set_parent) (struct clk *clk, struct clk *parent);
|
|
struct clk* (*clk_get_parent) (struct clk *clk);
|
|
};
|
|
|
|
extern struct clk_interface clk_functions;
|
|
|
|
#endif /* __ASM_POWERPC_CLK_INTERFACE_H */
|