1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /*
- * arch/arm/mach-pnx4008/clock.h
- *
- * Clock control driver for PNX4008 - internal header file
- *
- * Author: Vitaly Wool <source@mvista.com>
- *
- * 2006 (c) MontaVista Software, Inc. This file is licensed under
- * the terms of the GNU General Public License version 2. This program
- * is licensed "as is" without any warranty of any kind, whether express
- * or implied.
- */
- #ifndef __ARCH_ARM_PNX4008_CLOCK_H__
- #define __ARCH_ARM_PNX4008_CLOCK_H__
- struct clk {
- const char *name;
- struct clk *parent;
- struct clk *propagate_next;
- u32 rate;
- u32 user_rate;
- s8 usecount;
- u32 flags;
- u32 scale_reg;
- u8 enable_shift;
- u32 enable_reg;
- u8 enable_shift1;
- u32 enable_reg1;
- u32 parent_switch_reg;
- u32(*round_rate) (struct clk *, u32);
- int (*set_rate) (struct clk *, u32);
- int (*set_parent) (struct clk * clk, struct clk * parent);
- int (*enable)(struct clk *);
- void (*disable)(struct clk *);
- };
- /* Flags */
- #define RATE_PROPAGATES (1<<0)
- #define NEEDS_INITIALIZATION (1<<1)
- #define PARENT_SET_RATE (1<<2)
- #define FIXED_RATE (1<<3)
- #endif
|