]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - include/asm-arm/hardware/icst307.h
Linux-2.6.12-rc2
[mirror_ubuntu-artful-kernel.git] / include / asm-arm / hardware / icst307.h
1 /*
2 * linux/include/asm-arm/hardware/icst307.h
3 *
4 * Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * Support functions for calculating clocks/divisors for the ICS307
11 * clock generators. See http://www.icst.com/ for more information
12 * on these devices.
13 *
14 * This file is similar to the icst525.h file
15 */
16 #ifndef ASMARM_HARDWARE_ICST307_H
17 #define ASMARM_HARDWARE_ICST307_H
18
19 struct icst307_params {
20 unsigned long ref;
21 unsigned long vco_max; /* inclusive */
22 unsigned short vd_min; /* inclusive */
23 unsigned short vd_max; /* inclusive */
24 unsigned char rd_min; /* inclusive */
25 unsigned char rd_max; /* inclusive */
26 };
27
28 struct icst307_vco {
29 unsigned short v;
30 unsigned char r;
31 unsigned char s;
32 };
33
34 unsigned long icst307_khz(const struct icst307_params *p, struct icst307_vco vco);
35 struct icst307_vco icst307_khz_to_vco(const struct icst307_params *p, unsigned long freq);
36 struct icst307_vco icst307_ps_to_vco(const struct icst307_params *p, unsigned long period);
37
38 #endif