Lines Matching +full:non +full:- +full:compliant
1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Hardware monitoring driver for FSP 3Y-Power PSUs
56 return -EINVAL; in page_log_to_page_real()
66 return -EINVAL; in page_log_to_page_real()
69 return -EINVAL; in page_log_to_page_real()
82 page_real = page_log_to_page_real(page_log, data->chip); in set_page()
86 if (data->page != page_real) { in set_page()
91 data->page = page_real; in set_page()
113 * Inject an exponent for non-compliant YH5151-E. in fsp3y_read_byte_data()
115 if (data->vout_linear_11 && reg == PMBUS_VOUT_MODE) in fsp3y_read_byte_data()
152 return -ENXIO; in fsp3y_read_word_data()
164 * Handle YH-5151E non-compliant linear11 vout voltage. in fsp3y_read_word_data()
166 if (data->vout_linear_11 && reg == PMBUS_READ_VOUT) in fsp3y_read_word_data()
215 if (!strcmp(buf, "YM-2151E")) in fsp3y_detect()
217 else if (!strcmp(buf, "YH-5151E")) in fsp3y_detect()
221 dev_err(&client->dev, "Unsupported model %.*s\n", rv, buf); in fsp3y_detect()
222 return -ENODEV; in fsp3y_detect()
237 data = devm_kzalloc(&client->dev, sizeof(struct fsp3y_data), GFP_KERNEL); in fsp3y_probe()
239 return -ENOMEM; in fsp3y_probe()
241 data->chip = fsp3y_detect(client); in fsp3y_probe()
242 if (data->chip < 0) in fsp3y_probe()
243 return data->chip; in fsp3y_probe()
246 if (data->chip != id->driver_data) in fsp3y_probe()
247 dev_warn(&client->dev, "Device mismatch: Configured %s (%d), detected %d\n", in fsp3y_probe()
248 id->name, (int)id->driver_data, data->chip); in fsp3y_probe()
253 data->page = rv; in fsp3y_probe()
255 data->info = fsp3y_info[data->chip]; in fsp3y_probe()
258 * YH-5151E sometimes reports vout in linear11 and sometimes in in fsp3y_probe()
260 * YH-5151E can use linear16 and another might use linear11 instead. in fsp3y_probe()
262 * The format can be recognized by reading VOUT_MODE - if it doesn't in fsp3y_probe()
264 * device is compliant and uses linear16. in fsp3y_probe()
266 data->vout_linear_11 = false; in fsp3y_probe()
267 if (data->chip == yh5151e) { in fsp3y_probe()
273 data->vout_linear_11 = true; in fsp3y_probe()
276 return pmbus_do_probe(client, &data->info); in fsp3y_probe()
292 MODULE_DESCRIPTION("PMBus driver for FSP/3Y-Power power supplies");