# Copyright (c) 2023 Grinn
# SPDX -License-Identifier: Apache-2.0

config REGULATOR_MAX20335
	bool "MAX20335 PMIC regulator driver"
	default y
	depends on DT_HAS_MAXIM_MAX20335_REGULATOR_ENABLED
	select I2C
	select MFD
	help
	  Enable the Maxim MAX20335 PMIC regulator driver

if REGULATOR_MAX20335

config REGULATOR_MAXIM_MAX20335_COMMON_INIT_PRIORITY
	int "MAX20335 regulator driver init priority (common part)"
	default 86
	help
	  Init priority for the Maxim MAX20335 regulator driver
	  (common part). It must be greater than I2C and MFD init priority.

config REGULATOR_MAXIM_MAX20335_INIT_PRIORITY
	int "MAX20335 regulator driver init priority"
	default 87
	help
	  Init priority for the Maxim MAX20335 regulator driver. It must be
	  greater than REGULATOR_MAXIM_MAX20335_COMMON_INIT_PRIORITY

endif
