drivers/i2c/nct7802y: Move the sensor initialization procedure
The current location for the sensor initialization procedure was chosen by mistake. Move this into a separate function in nct7802y.c . Change-Id: I093ae75db5f0051bff65375b0720c86642b9148a Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47861 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
parent
d17ce41e29
commit
b7eca6f123
|
@ -2,10 +2,24 @@
|
||||||
|
|
||||||
#include <console/console.h>
|
#include <console/console.h>
|
||||||
#include <device/device.h>
|
#include <device/device.h>
|
||||||
|
#include <types.h>
|
||||||
|
|
||||||
#include "nct7802y.h"
|
#include "nct7802y.h"
|
||||||
#include "chip.h"
|
#include "chip.h"
|
||||||
|
|
||||||
|
static void nct7802y_init_sensors(struct device *const dev)
|
||||||
|
{
|
||||||
|
const struct drivers_i2c_nct7802y_config *const config = dev->chip_info;
|
||||||
|
unsigned int i;
|
||||||
|
u8 value = 0;
|
||||||
|
|
||||||
|
for (i = 0; i < NCT7802Y_RTD_CNT; ++i)
|
||||||
|
value |= MODE_SELECTION_RTDx(i, config->sensors.rtd[i]);
|
||||||
|
if (config->sensors.local_enable)
|
||||||
|
value |= MODE_SELECTION_LTD_EN;
|
||||||
|
nct7802y_write(dev, MODE_SELECTION, value);
|
||||||
|
}
|
||||||
|
|
||||||
static void nct7802y_init(struct device *const dev)
|
static void nct7802y_init(struct device *const dev)
|
||||||
{
|
{
|
||||||
if (!dev->chip_info) {
|
if (!dev->chip_info) {
|
||||||
|
@ -15,6 +29,7 @@ static void nct7802y_init(struct device *const dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
nct7802y_init_peci(dev);
|
nct7802y_init_peci(dev);
|
||||||
|
nct7802y_init_sensors(dev);
|
||||||
nct7802y_init_fan(dev);
|
nct7802y_init_fan(dev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -78,13 +78,6 @@ void nct7802y_init_fan(struct device *const dev)
|
||||||
init_fan(dev, &config->fan[i], i);
|
init_fan(dev, &config->fan[i], i);
|
||||||
}
|
}
|
||||||
|
|
||||||
value = 0;
|
|
||||||
for (i = 0; i < NCT7802Y_RTD_CNT; ++i)
|
|
||||||
value |= MODE_SELECTION_RTDx(i, config->sensors.rtd[i]);
|
|
||||||
if (config->sensors.local_enable)
|
|
||||||
value |= MODE_SELECTION_LTD_EN;
|
|
||||||
nct7802y_write(dev, MODE_SELECTION, value);
|
|
||||||
|
|
||||||
switch (config->on_pecierror) {
|
switch (config->on_pecierror) {
|
||||||
case PECI_ERROR_KEEP:
|
case PECI_ERROR_KEEP:
|
||||||
value = CLOSE_LOOP_FAN_PECI_ERR_CURR;
|
value = CLOSE_LOOP_FAN_PECI_ERR_CURR;
|
||||||
|
|
Loading…
Reference in New Issue