2 * Clock control driver for Freescale STMP37XX/STMP378X - internal header file
4 * Author: Vitaly Wool <vital@embeddedalley.com>
6 * Copyright 2008 Freescale Semiconductor, Inc. All Rights Reserved.
7 * Copyright 2008 Embedded Alley Solutions, Inc All Rights Reserved.
11 * The code contained herein is licensed under the GNU General Public
12 * License. You may obtain a copy of the GNU General Public License
13 * Version 2 or later at the following locations:
15 * http://www.opensource.org/licenses/gpl-license.html
16 * http://www.gnu.org/copyleft/gpl.html
18 #ifndef __ARCH_ARM_STMX3XXX_CLOCK_H__
19 #define __ARCH_ARM_STMX3XXX_CLOCK_H__
24 int (*enable
) (struct clk
*);
25 int (*disable
) (struct clk
*);
26 long (*get_rate
) (struct clk
*);
27 long (*round_rate
) (struct clk
*, u32
);
28 int (*set_rate
) (struct clk
*, u32
);
29 int (*set_parent
) (struct clk
*, struct clk
*);
44 void __iomem
*enable_reg
;
45 void __iomem
*scale_reg
;
46 void __iomem
*bypass_reg
;
47 void __iomem
*busy_reg
;
51 #endif /* __ASSEMBLER__ */
54 #define RATE_PROPAGATES (1<<0)
55 #define NEEDS_INITIALIZATION (1<<1)
56 #define PARENT_SET_RATE (1<<2)
57 #define FIXED_RATE (1<<3)
58 #define ENABLED (1<<4)
59 #define NEEDS_SET_PARENT (1<<5)