# SPDX-License-Identifier: GPL-2.0-only

# Generic ITE romstage driver - Just enough UART initialisation code for
# romstage.
config SUPERIO_ITE_COMMON_PRE_RAM
	bool

config SUPERIO_ITE_COMMON_GPIO_PRE_RAM
	bool
	help
	  Enable generic pre-ram driver for configuring ITE SIO GPIOs.
	  It applies only to ITE SIOs not ITE ECs using LDN 7 (typically)
	  to configure GPIO Simple I/O mode.

if SUPERIO_ITE_COMMON_GPIO_PRE_RAM

config SUPERIO_ITE_COMMON_NUM_GPIO_SETS
	int
	help
	  The maximum number of GPIO sets supported by ITE SIO chip.
	  Each SIO chip must set this config option to a proper values
	  if it intends to enable SUPERIO_ITE_COMMON_GPIO_PRE_RAM.

config SUPERIO_ITE_COMMON_GPIO_LED_FREQ_5BIT
	bool
	default n
	help
	  Selected ITE SIOs control the GPIO LED frequency using 5 bits
	  instead of two. The LED register layout is also different for
	  these chips. Select this if the SIO GP LED Frequency control
	  field has 5 bits and support duty cycle as well.

endif

# Generic ITE environment controller driver
config SUPERIO_ITE_ENV_CTRL
	bool

if SUPERIO_ITE_ENV_CTRL

config SUPERIO_ITE_ENV_CTRL_FAN16_CONFIG
	bool
	help
	  Enable extended, 16-bit wide tacho counters.

config SUPERIO_ITE_ENV_CTRL_8BIT_PWM
	bool
	help
	  PWM duty cycles are set in 8-bit registers (instead of 7 bit).

config SUPERIO_ITE_ENV_CTRL_PWM_FREQ2
	bool
	help
	  The second FAN controller has a separate frequency setting.

config SUPERIO_ITE_ENV_CTRL_NO_ONOFF
	bool
	help
	  FAN controller always works in SmartGuardian mode.

config SUPERIO_ITE_ENV_CTRL_5FANS
	bool
	help
	  ITE FAN controller has 5 independent outputs.

config SUPERIO_ITE_ENV_CTRL_7BIT_SLOPE_REG
	bool
	help
	  Slope PWM registers have no separate BIT6 and are set directly by
	  7-bit values instead.

config SUPERIO_ITE_ENV_CTRL_EXT_ANY_TMPIN
	bool
	help
	  Temperature can be read to any TMPIN from an external sensor via SST/PECI
	  (instead of TMPIN3 only).

config SUPERIO_ITE_ENV_CTRL_NO_FULLSPEED_SETTING
	bool
	help
	  Fan controller does not support running at full speed when limit
	  temperature is reached.

config SUPERIO_ITE_ENV_CTRL_FAN_VECTOR
	bool
	help
	  Special fan control that will assist the smart control

config SUPERIO_ITE_ENV_CTRL_FAN_VECTOR_RANGED
	bool
	depends on SUPERIO_ITE_ENV_CTRL_FAN_VECTOR
	help
	  Range and negative slope support

endif