coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
chip.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef DRIVERS_I2C_NCT7802Y_CHIP_H
4 #define DRIVERS_I2C_NCT7802Y_CHIP_H
5 
6 #include <stdint.h>
7 
8 #define NCT7802Y_PECI_CNT 2
9 #define NCT7802Y_FAN_CNT 3
10 #define NCT7802Y_RTD_CNT 3
11 
12 /* Remote temperature diode sensors mode */
18 };
19 
25 };
26 
30 };
31 
36 };
37 
39  SMART_FAN_DUTY = 0, /* Target values given in duty cycle %. */
40  SMART_FAN_RPM, /* Target values given in RPM. */
41 };
42 
44  FAN_SPEED_NORMAL = 0, /* RPM values <= 12,750. */
45  FAN_SPPED_HIGHSPEED, /* RPM values <= 25,500. */
46 };
47 
49  PECI_ERROR_KEEP = 0, /* Keep current value. */
50  PECI_ERROR_VALUE, /* Use `pecierror_minduty`. */
51  PECI_ERROR_FULLSPEED, /* Run PWM at 100% duty cycle. */
52 };
53 
63 };
64 
68 };
69 
74  struct {
77  } table[4];
79 };
80 
83  union {
86  };
87 };
88 
89 /* Implements only those parts currently used by coreboot mainboards. */
96 };
97 
98 #endif /* DRIVERS_I2C_NCT7802Y_CHIP_H */
nct7802y_fan_mode
Definition: chip.h:32
@ FAN_IGNORE
Definition: chip.h:33
@ FAN_SMART
Definition: chip.h:35
@ FAN_MANUAL
Definition: chip.h:34
nct7802y_fan_smartmode
Definition: chip.h:38
@ SMART_FAN_DUTY
Definition: chip.h:39
@ SMART_FAN_RPM
Definition: chip.h:40
nct7802y_fan_speed
Definition: chip.h:43
@ FAN_SPPED_HIGHSPEED
Definition: chip.h:45
@ FAN_SPEED_NORMAL
Definition: chip.h:44
#define NCT7802Y_FAN_CNT
Definition: chip.h:9
nct7802y_peci_mode
Definition: chip.h:20
@ PECI_DOMAIN_1
Definition: chip.h:23
@ PECI_HIGHEST
Definition: chip.h:24
@ PECI_DISABLED
Definition: chip.h:21
@ PECI_DOMAIN_0
Definition: chip.h:22
nct7802y_temp_source
Definition: chip.h:54
@ TEMP_SOURCE_REMOTE_2
Definition: chip.h:56
@ TEMP_SOURCE_REMOTE_3
Definition: chip.h:57
@ TEMP_SOURCE_LOCAL
Definition: chip.h:58
@ TEMP_SOURCE_PROGRAMMABLE_1
Definition: chip.h:62
@ TEMP_SOURCE_REMOTE_1
Definition: chip.h:55
@ TEMP_SOURCE_PROGRAMMABLE_0
Definition: chip.h:61
@ TEMP_SOURCE_PECI_1
Definition: chip.h:60
@ TEMP_SOURCE_PECI_0
Definition: chip.h:59
nct7802y_fan_pecierror
Definition: chip.h:48
@ PECI_ERROR_FULLSPEED
Definition: chip.h:51
@ PECI_ERROR_KEEP
Definition: chip.h:49
@ PECI_ERROR_VALUE
Definition: chip.h:50
#define NCT7802Y_PECI_CNT
Definition: chip.h:8
#define NCT7802Y_RTD_CNT
Definition: chip.h:10
nct7802y_rtd_mode
Definition: chip.h:13
@ RTD_CLOSED
Definition: chip.h:14
@ RTD_THERMISTOR_MODE
Definition: chip.h:16
@ RTD_VOLTAGE_MODE
Definition: chip.h:17
@ RTD_CURRENT_MODE
Definition: chip.h:15
uint16_t u16
Definition: stdint.h:48
uint8_t u8
Definition: stdint.h:45
struct nct7802y_fan_config fan[NCT7802Y_FAN_CNT]
Definition: chip.h:92
struct nct7802y_sensors_config sensors
Definition: chip.h:93
struct nct7802y_peci_config peci[NCT7802Y_PECI_CNT]
Definition: chip.h:91
enum nct7802y_fan_pecierror on_pecierror
Definition: chip.h:94
struct nct7802y_fan_smartconfig smart
Definition: chip.h:85
enum nct7802y_fan_mode mode
Definition: chip.h:82
struct nct7802y_fan_smartconfig::@56 table[4]
enum nct7802y_fan_smartmode mode
Definition: chip.h:71
enum nct7802y_temp_source tempsrc
Definition: chip.h:73
enum nct7802y_fan_speed speed
Definition: chip.h:72
enum nct7802y_peci_mode mode
Definition: chip.h:28
enum nct7802y_rtd_mode rtd[NCT7802Y_RTD_CNT]
Definition: chip.h:67