mirror of
https://github.com/gryf/wmtemp.git
synced 2025-12-18 12:00:26 +01:00
Attempt to use nvclock code for reading GPU temperature, since running
nvidia-settings couple of times for a second is highly inefficient.
This commit is contained in:
71
nvclock/f75375.h
Normal file
71
nvclock/f75375.h
Normal file
@@ -0,0 +1,71 @@
|
||||
/* Fintek F75375 sensor module
|
||||
/ Copyright(C) 2005, Matt Wright
|
||||
*/
|
||||
#include "nvclock.h"
|
||||
#include "i2c.h"
|
||||
|
||||
int debug;
|
||||
typedef struct _fan_vtemp
|
||||
{
|
||||
int temp[4];
|
||||
int speed[5];
|
||||
} fan_vtemp;
|
||||
|
||||
|
||||
#define dbg_printf(x) if (debug==1) printf(x)
|
||||
|
||||
#define MODE_SPEED 0x00
|
||||
#define MODE_TEMP 0x10
|
||||
#define MODE_PWM 0x20
|
||||
|
||||
int f75375_get_gpu_fanmode(I2CDevPtr dev);
|
||||
int f75375_set_gpu_fanmode(I2CDevPtr dev, I2CByte mode);
|
||||
int f75375_set_gpu_tempctl(I2CDevPtr dev, fan_vtemp speeds);
|
||||
int f75375_get_gpu_tempctl(I2CDevPtr dev, fan_vtemp *speeds);
|
||||
|
||||
#define FINTEK_VENDOR1 0x5d
|
||||
#define FINTEK_VENDOR2 0x5e
|
||||
|
||||
#define ASUS_NV40_CHIPID_H 0x5a
|
||||
#define ASUS_NV40_CHIPID_L 0x5b
|
||||
|
||||
#define F75375S_VRAM_VCC 0x10
|
||||
#define F75375S_VRAM_V1 0x11
|
||||
#define F75375S_VRAM_V2 0x12
|
||||
#define F75375S_VRAM_V3 0x13
|
||||
#define F75375S_VRAM_TEMP1 0x14
|
||||
#define F75375S_VRAM_TEMP2 0x15
|
||||
#define F75375S_VRAM_FAN1_MSB 0x16
|
||||
#define F75375S_VRAM_FAN1_LSB 0x17
|
||||
#define F75375S_VRAM_FAN2_MSB 0x18
|
||||
#define F75375S_VRAM_FAN2_LSB 0x19
|
||||
|
||||
#define F75375S_FAN1_PWM 0x76
|
||||
#define F75375S_FAN1_COUNT_H 0x16
|
||||
#define F75375S_FAN1_COUNT_L 0x17
|
||||
#define F75375S_FAN1_MODE 0x60
|
||||
#define F75375S_FAN1_EXPECT_H 0x74
|
||||
#define F75375S_FAN1_EXPECT_L 0x75
|
||||
|
||||
#define F75375S_TEMP_GPU 0x14
|
||||
#define F75375S_TEMP_RAM 0x15
|
||||
|
||||
#define F75375S_VT1_B1 0xa0
|
||||
#define F75375S_VT1_B2 0xa1
|
||||
#define F75375S_VT1_B3 0xa2
|
||||
#define F75375S_VT1_B4 0xa3
|
||||
|
||||
#define F75375S_VT1_S1_H 0xa4
|
||||
#define F75375S_VT1_S1_L 0xa5
|
||||
#define F75375S_VT1_S2_H 0xa6
|
||||
#define F75375S_VT1_S2_L 0xa7
|
||||
#define F75375S_VT1_S3_H 0xa8
|
||||
#define F75375S_VT1_S3_L 0xa9
|
||||
#define F75375S_VT1_S4_H 0xaa
|
||||
#define F75375S_VT1_S4_L 0xab
|
||||
#define F75375S_VT1_S5_H 0xac
|
||||
#define F75375S_VT1_S5_L 0xad
|
||||
|
||||
#define FAN_TO_RPM(msb, lsb) (1500000/((msb<<8)+lsb))
|
||||
#define RPM_TO_FAN(x) (1500000/x)
|
||||
#define MERGE_BYTE(msb, lsb) ((msb<<8)+lsb)
|
||||
Reference in New Issue
Block a user