Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
include
linux
hwmon-vid.h
Go to the documentation of this file.
1
/*
2
hwmon-vid.h - VID/VRM/VRD voltage conversions
3
4
Originally part of lm_sensors
5
Copyright (c) 2002 Mark D. Studebaker <
[email protected]
>
6
With assistance from Trent Piepho <
[email protected]
>
7
8
This program is free software; you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation; either version 2 of the License, or
11
(at your option) any later version.
12
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU General Public License for more details.
17
18
You should have received a copy of the GNU General Public License
19
along with this program; if not, write to the Free Software
20
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
*/
22
23
#ifndef _LINUX_HWMON_VID_H
24
#define _LINUX_HWMON_VID_H
25
26
int
vid_from_reg
(
int
val
,
u8
vrm);
27
u8
vid_which_vrm
(
void
);
28
29
/* vrm is the VRM/VRD document version multiplied by 10.
30
val is in mV to avoid floating point in the kernel.
31
Returned value is the 4-, 5- or 6-bit VID code.
32
Note that only VRM 9.x is supported for now. */
33
static
inline
int
vid_to_reg(
int
val
,
u8
vrm)
34
{
35
switch
(vrm) {
36
case
91:
/* VRM 9.1 */
37
case
90:
/* VRM 9.0 */
38
return
((val >= 1100) && (val <= 1850) ?
39
((18499 - val * 10) / 25 + 5) / 10 : -1);
40
default
:
41
return
-1;
42
}
43
}
44
45
#endif
/* _LINUX_HWMON_VID_H */
Generated on Thu Jan 10 2013 14:51:31 for Linux Kernel by
1.8.2