staticint fsp3y_read_byte_data(struct i2c_client *client, int page, int reg)
{ conststruct pmbus_driver_info *info = pmbus_get_driver_info(client); struct fsp3y_data *data = to_fsp3y_data(info); int rv;
/* *Injectanexponentfornon-compliantYH5151-E.
*/ if (data->vout_linear_11 && reg == PMBUS_VOUT_MODE) return0x1A;
rv = set_page(client, page); if (rv < 0) return rv;
return i2c_smbus_read_byte_data(client, reg);
}
staticint fsp3y_read_word_data(struct i2c_client *client, int page, int phase, int reg)
{ conststruct pmbus_driver_info *info = pmbus_get_driver_info(client); struct fsp3y_data *data = to_fsp3y_data(info); int rv;
/* *Thismaskscommandswhichweren'ttestedtoworkcorrectly.Someof *themaskedcommandsreturn0xFFFF.Thesewouldprobablygettaggedas *invalidbypmbus_core.Otheronesdoreturnvalueswhichmightbe *useful(thatis,theyarenot0xFFFF),buttheirencodingisunknown, *andsotheyareunsupported.
*/ switch (reg) { case PMBUS_READ_FAN_SPEED_1: case PMBUS_READ_IIN: case PMBUS_READ_IOUT: case PMBUS_READ_PIN: case PMBUS_READ_POUT: case PMBUS_READ_TEMPERATURE_1: case PMBUS_READ_TEMPERATURE_2: case PMBUS_READ_TEMPERATURE_3: case PMBUS_READ_VIN: case PMBUS_READ_VOUT: case PMBUS_STATUS_WORD: break; default: return -ENXIO;
}
rv = set_page(client, page); if (rv < 0) return rv;
rv = i2c_smbus_read_word_data(client, reg); if (rv < 0) return rv;
MODULE_AUTHOR("Václav Kubernát");
MODULE_DESCRIPTION("PMBus driver for FSP/3Y-Power power supplies");
MODULE_LICENSE("GPL");
MODULE_IMPORT_NS("PMBUS");
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-09-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.