# SPDX-License-Identifier: GPL-2.0-only
#
# Ethernet Power Sourcing Equipment drivers
#

menuconfig PSE_CONTROLLER
	bool "Ethernet Power Sourcing Equipment Support"
	help
	  Generic Power Sourcing Equipment Controller support.

	  If unsure, say no.

if PSE_CONTROLLER

config PSE_REGULATOR
	tristate "Regulator based PSE controller"
	depends on REGULATOR || COMPILE_TEST
	help
	  This module provides support for simple regulator based Ethernet Power
	  Sourcing Equipment without automatic classification support. For
	  example for basic implementation of PoDL (802.3bu) specification.

config PSE_PD692X0
	tristate "PD692X0 PSE controller"
	depends on I2C
	select FW_UPLOAD
	help
	  This module provides support for PD692x0 regulator based Ethernet
	  Power Sourcing Equipment.

	  To compile this driver as a module, choose M here: the
	  module will be called pd692x0.

config PSE_TPS23881
	tristate "TPS23881 PSE controller"
	depends on I2C
	help
	  This module provides support for TPS23881 regulator based Ethernet
	  Power Sourcing Equipment.

	  To compile this driver as a module, choose M here: the
	  module will be called tps23881.
endif
