forked from mirror/smcFanControl
fixed Fan Key if there are more than 10 like in an XServe
This commit is contained in:
@ -131,7 +131,7 @@ NSArray *allSensors;
|
|||||||
UInt32Char_t key;
|
UInt32Char_t key;
|
||||||
SMCVal_t val;
|
SMCVal_t val;
|
||||||
//kern_return_t result;
|
//kern_return_t result;
|
||||||
sprintf(key, "F%dAc", fan_number);
|
sprintf(key, "F%cAc", fannum[fan_number]);
|
||||||
SMCReadKey2(key, &val,conn);
|
SMCReadKey2(key, &val,conn);
|
||||||
int running= [self convertToNumber:val];
|
int running= [self convertToNumber:val];
|
||||||
return running;
|
return running;
|
||||||
@ -153,7 +153,7 @@ NSArray *allSensors;
|
|||||||
//kern_return_t result;
|
//kern_return_t result;
|
||||||
NSMutableString *desc;
|
NSMutableString *desc;
|
||||||
|
|
||||||
sprintf(key, "F%dID", fan_number);
|
sprintf(key, "F%cID", fannum[fan_number]);
|
||||||
SMCReadKey2(key, &val,conn);
|
SMCReadKey2(key, &val,conn);
|
||||||
|
|
||||||
if(val.dataSize>0){
|
if(val.dataSize>0){
|
||||||
@ -178,7 +178,7 @@ NSArray *allSensors;
|
|||||||
UInt32Char_t key;
|
UInt32Char_t key;
|
||||||
SMCVal_t val;
|
SMCVal_t val;
|
||||||
//kern_return_t result;
|
//kern_return_t result;
|
||||||
sprintf(key, "F%dMn", fan_number);
|
sprintf(key, "F%cMn", fannum[fan_number]);
|
||||||
SMCReadKey2(key, &val,conn);
|
SMCReadKey2(key, &val,conn);
|
||||||
int min= [self convertToNumber:val];
|
int min= [self convertToNumber:val];
|
||||||
return min;
|
return min;
|
||||||
@ -188,7 +188,7 @@ NSArray *allSensors;
|
|||||||
UInt32Char_t key;
|
UInt32Char_t key;
|
||||||
SMCVal_t val;
|
SMCVal_t val;
|
||||||
//kern_return_t result;
|
//kern_return_t result;
|
||||||
sprintf(key, "F%dMx", fan_number);
|
sprintf(key, "F%cMx", fannum[fan_number]);
|
||||||
SMCReadKey2(key, &val,conn);
|
SMCReadKey2(key, &val,conn);
|
||||||
int max= [self convertToNumber:val];
|
int max= [self convertToNumber:val];
|
||||||
return max;
|
return max;
|
||||||
|
|||||||
@ -557,24 +557,24 @@ kern_return_t SMCPrintFans(void)
|
|||||||
for (i = 0; i < totalFans; i++)
|
for (i = 0; i < totalFans; i++)
|
||||||
{
|
{
|
||||||
printf("\nFan #%d:\n", i);
|
printf("\nFan #%d:\n", i);
|
||||||
sprintf(key, "F%dID", i);
|
sprintf(key, "F%cID", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
if(val.dataSize > 0) {
|
if(val.dataSize > 0) {
|
||||||
printf(" Fan ID : %s\n", val.bytes+4);
|
printf(" Fan ID : %s\n", val.bytes+4);
|
||||||
}
|
}
|
||||||
sprintf(key, "F%dAc", i);
|
sprintf(key, "F%cAc", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
printf(" Actual speed : %.0f\n", getFloatFromVal(val));
|
printf(" Actual speed : %.0f\n", getFloatFromVal(val));
|
||||||
sprintf(key, "F%dMn", i);
|
sprintf(key, "F%cMn", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
printf(" Minimum speed: %.0f\n", getFloatFromVal(val));
|
printf(" Minimum speed: %.0f\n", getFloatFromVal(val));
|
||||||
sprintf(key, "F%dMx", i);
|
sprintf(key, "F%cMx", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
printf(" Maximum speed: %.0f\n", getFloatFromVal(val));
|
printf(" Maximum speed: %.0f\n", getFloatFromVal(val));
|
||||||
sprintf(key, "F%dSf", i);
|
sprintf(key, "F%cSf", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
printf(" Safe speed : %.0f\n", getFloatFromVal(val));
|
printf(" Safe speed : %.0f\n", getFloatFromVal(val));
|
||||||
sprintf(key, "F%dTg", i);
|
sprintf(key, "F%cTg", fannum[i]);
|
||||||
SMCReadKey(key, &val);
|
SMCReadKey(key, &val);
|
||||||
printf(" Target speed : %.0f\n", getFloatFromVal(val));
|
printf(" Target speed : %.0f\n", getFloatFromVal(val));
|
||||||
SMCReadKey("FS! ", &val);
|
SMCReadKey("FS! ", &val);
|
||||||
|
|||||||
@ -98,6 +98,8 @@ typedef struct {
|
|||||||
|
|
||||||
typedef unsigned char SMCBytes_t[32];
|
typedef unsigned char SMCBytes_t[32];
|
||||||
|
|
||||||
|
UInt8 fannum[] = "0123456789ABCDEFGHIJ";
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
UInt32 key;
|
UInt32 key;
|
||||||
SMCKeyData_vers_t vers;
|
SMCKeyData_vers_t vers;
|
||||||
|
|||||||
Reference in New Issue
Block a user