Fixed Fan mode for MBP2018

This commit is contained in:
Wojciech Lazarski
2018-08-10 16:51:09 +02:00
parent e35ada4887
commit ebe1cb6db6

View File

@ -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;
} }