mirror of
https://github.com/gryf/wmtemp.git
synced 2025-12-17 19:40:27 +01:00
72 lines
1.8 KiB
C
72 lines
1.8 KiB
C
/* 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)
|