forked from mirror/smcFanControl
Fixed Fan mode for MBP2018
This commit is contained in:
@ -529,6 +529,9 @@ float getFloatFromVal(SMCVal_t val)
|
|||||||
else if (strcmp(val.dataType, DATATYPE_UINT16) == 0 && val.dataSize == 2) {
|
else if (strcmp(val.dataType, DATATYPE_UINT16) == 0 && val.dataSize == 2) {
|
||||||
fval = (float)_strtoul((char *)val.bytes, val.dataSize, 10);
|
fval = (float)_strtoul((char *)val.bytes, val.dataSize, 10);
|
||||||
}
|
}
|
||||||
|
else if (strcmp(val.dataType, DATATYPE_UINT8) == 0 && val.dataSize == 1) {
|
||||||
|
fval = (float)_strtoul((char *)val.bytes, val.dataSize, 10);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return fval;
|
return fval;
|
||||||
@ -572,11 +575,21 @@ kern_return_t SMCPrintFans(void)
|
|||||||
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);
|
||||||
|
if(val.dataSize > 0) {
|
||||||
if ((_strtoul((char *)val.bytes, 2, 16) & (1 << i)) == 0)
|
if ((_strtoul((char *)val.bytes, 2, 16) & (1 << i)) == 0)
|
||||||
printf(" Mode : auto\n");
|
printf(" Mode : auto\n");
|
||||||
else
|
else
|
||||||
printf(" Mode : forced\n");
|
printf(" Mode : forced\n");
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
sprintf(key, "F%dMd", i);
|
||||||
|
SMCReadKey(key, &val);
|
||||||
|
if (getFloatFromVal(val))
|
||||||
|
printf(" Mode : forced\n");
|
||||||
|
else
|
||||||
|
printf(" Mode : auto\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return kIOReturnSuccess;
|
return kIOReturnSuccess;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user