coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
f71808a_hwm.c File Reference
#include <console/console.h>
#include <device/device.h>
#include <device/pnp.h>
#include "fintek_internal.h"
#include "chip.h"
Include dependency graph for f71808a_hwm.c:

Go to the source code of this file.

Macros

#define HWM_PECI_TSI_CTRL_REG   0x0a
 
#define HWM_DOMAIN1_EN   0x0b
 
#define HWM_TCC_TEMPERATURE_REG   0x0c
 
#define HWM_FAN1_SEG1_SPEED_REG   0xaa
 
#define HWM_FAN1_SEG2_SPEED_REG   0xab
 
#define HWM_FAN1_SEG3_SPEED_REG   0xac
 
#define HWM_FAN1_SEG4_SPEED_REG   0xad
 
#define HWM_FAN1_SEG5_SPEED_REG   0xae
 
#define HWM_FAN1_TEMP_SRC_REG   0xaf
 
#define HWM_FAN1_BOUNDARY_HYSTERESIS   0x98
 
#define HWM_VT1_BOUNDARY_1_TEMPERATURE   0xa6
 
#define HWM_VT1_BOUNDARY_2_TEMPERATURE   0xa7
 
#define HWM_VT1_BOUNDARY_3_TEMPERATURE   0xa8
 
#define HWM_VT1_BOUNDARY_4_TEMPERATURE   0xa9
 
#define HWM_FAN2_SEG1_SPEED_REG   0xba
 
#define HWM_FAN2_SEG2_SPEED_REG   0xbb
 
#define HWM_FAN2_SEG3_SPEED_REG   0xbc
 
#define HWM_FAN2_SEG4_SPEED_REG   0xbd
 
#define HWM_FAN2_SEG5_SPEED_REG   0xbe
 
#define HWM_FAN2_TEMP_SRC_REG   0xbf
 

Functions

void f71808a_hwm_init (struct device *dev)
 

Macro Definition Documentation

◆ HWM_DOMAIN1_EN

#define HWM_DOMAIN1_EN   0x0b

Definition at line 11 of file f71808a_hwm.c.

◆ HWM_FAN1_BOUNDARY_HYSTERESIS

#define HWM_FAN1_BOUNDARY_HYSTERESIS   0x98

Definition at line 22 of file f71808a_hwm.c.

◆ HWM_FAN1_SEG1_SPEED_REG

#define HWM_FAN1_SEG1_SPEED_REG   0xaa

Definition at line 15 of file f71808a_hwm.c.

◆ HWM_FAN1_SEG2_SPEED_REG

#define HWM_FAN1_SEG2_SPEED_REG   0xab

Definition at line 16 of file f71808a_hwm.c.

◆ HWM_FAN1_SEG3_SPEED_REG

#define HWM_FAN1_SEG3_SPEED_REG   0xac

Definition at line 17 of file f71808a_hwm.c.

◆ HWM_FAN1_SEG4_SPEED_REG

#define HWM_FAN1_SEG4_SPEED_REG   0xad

Definition at line 18 of file f71808a_hwm.c.

◆ HWM_FAN1_SEG5_SPEED_REG

#define HWM_FAN1_SEG5_SPEED_REG   0xae

Definition at line 19 of file f71808a_hwm.c.

◆ HWM_FAN1_TEMP_SRC_REG

#define HWM_FAN1_TEMP_SRC_REG   0xaf

Definition at line 20 of file f71808a_hwm.c.

◆ HWM_FAN2_SEG1_SPEED_REG

#define HWM_FAN2_SEG1_SPEED_REG   0xba

Definition at line 29 of file f71808a_hwm.c.

◆ HWM_FAN2_SEG2_SPEED_REG

#define HWM_FAN2_SEG2_SPEED_REG   0xbb

Definition at line 30 of file f71808a_hwm.c.

◆ HWM_FAN2_SEG3_SPEED_REG

#define HWM_FAN2_SEG3_SPEED_REG   0xbc

Definition at line 31 of file f71808a_hwm.c.

◆ HWM_FAN2_SEG4_SPEED_REG

#define HWM_FAN2_SEG4_SPEED_REG   0xbd

Definition at line 32 of file f71808a_hwm.c.

◆ HWM_FAN2_SEG5_SPEED_REG

#define HWM_FAN2_SEG5_SPEED_REG   0xbe

Definition at line 33 of file f71808a_hwm.c.

◆ HWM_FAN2_TEMP_SRC_REG

#define HWM_FAN2_TEMP_SRC_REG   0xbf

Definition at line 34 of file f71808a_hwm.c.

◆ HWM_PECI_TSI_CTRL_REG

#define HWM_PECI_TSI_CTRL_REG   0x0a

Definition at line 10 of file f71808a_hwm.c.

◆ HWM_TCC_TEMPERATURE_REG

#define HWM_TCC_TEMPERATURE_REG   0x0c

Definition at line 12 of file f71808a_hwm.c.

◆ HWM_VT1_BOUNDARY_1_TEMPERATURE

#define HWM_VT1_BOUNDARY_1_TEMPERATURE   0xa6

Definition at line 23 of file f71808a_hwm.c.

◆ HWM_VT1_BOUNDARY_2_TEMPERATURE

#define HWM_VT1_BOUNDARY_2_TEMPERATURE   0xa7

Definition at line 24 of file f71808a_hwm.c.

◆ HWM_VT1_BOUNDARY_3_TEMPERATURE

#define HWM_VT1_BOUNDARY_3_TEMPERATURE   0xa8

Definition at line 25 of file f71808a_hwm.c.

◆ HWM_VT1_BOUNDARY_4_TEMPERATURE

#define HWM_VT1_BOUNDARY_4_TEMPERATURE   0xa9

Definition at line 26 of file f71808a_hwm.c.

Function Documentation

◆ f71808a_hwm_init()

void f71808a_hwm_init ( struct device dev)

Definition at line 36 of file f71808a_hwm.c.

References resource::base, BIOS_WARNING, device::chip_info, superio_fintek_f71808a_config::hwm_domain1_en, HWM_DOMAIN1_EN, superio_fintek_f71808a_config::hwm_fan1_boundary_hysteresis, HWM_FAN1_BOUNDARY_HYSTERESIS, superio_fintek_f71808a_config::hwm_fan1_seg1_speed, HWM_FAN1_SEG1_SPEED_REG, superio_fintek_f71808a_config::hwm_fan1_seg2_speed, HWM_FAN1_SEG2_SPEED_REG, superio_fintek_f71808a_config::hwm_fan1_seg3_speed, HWM_FAN1_SEG3_SPEED_REG, superio_fintek_f71808a_config::hwm_fan1_seg4_speed, HWM_FAN1_SEG4_SPEED_REG, superio_fintek_f71808a_config::hwm_fan1_seg5_speed, HWM_FAN1_SEG5_SPEED_REG, superio_fintek_f71808a_config::hwm_fan1_temp_src, HWM_FAN1_TEMP_SRC_REG, superio_fintek_f71808a_config::hwm_fan2_seg1_speed, HWM_FAN2_SEG1_SPEED_REG, superio_fintek_f71808a_config::hwm_fan2_seg2_speed, HWM_FAN2_SEG2_SPEED_REG, superio_fintek_f71808a_config::hwm_fan2_seg3_speed, HWM_FAN2_SEG3_SPEED_REG, superio_fintek_f71808a_config::hwm_fan2_seg4_speed, HWM_FAN2_SEG4_SPEED_REG, superio_fintek_f71808a_config::hwm_fan2_seg5_speed, HWM_FAN2_SEG5_SPEED_REG, superio_fintek_f71808a_config::hwm_fan2_temp_src, HWM_FAN2_TEMP_SRC_REG, superio_fintek_f71808a_config::hwm_peci_tsi_ctrl, HWM_PECI_TSI_CTRL_REG, superio_fintek_f71808a_config::hwm_tcc_temp, HWM_TCC_TEMPERATURE_REG, superio_fintek_f71808a_config::hwm_vt1_boundary_1_temperature, HWM_VT1_BOUNDARY_1_TEMPERATURE, superio_fintek_f71808a_config::hwm_vt1_boundary_2_temperature, HWM_VT1_BOUNDARY_2_TEMPERATURE, superio_fintek_f71808a_config::hwm_vt1_boundary_3_temperature, HWM_VT1_BOUNDARY_3_TEMPERATURE, superio_fintek_f71808a_config::hwm_vt1_boundary_4_temperature, HWM_VT1_BOUNDARY_4_TEMPERATURE, pnp_enter_conf_mode(), pnp_exit_conf_mode(), PNP_IDX_IO0, pnp_write_index(), printk, and probe_resource().

Referenced by f71808a_init().

Here is the call graph for this function:
Here is the caller graph for this function: