2023-02-26 05:40:15

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH 5/8] platform: mellanox: select REGMAP instead of depending on it

REGMAP is a hidden (not user visible) symbol. Users cannot set it
directly thru "make *config", so drivers should select it instead of
depending on it if they need it.

Consistently using "select" or "depends on" can also help reduce
Kconfig circular dependency issues.

Therefore, change the use of "depends on REGMAP" to "select REGMAP".

For NVSW_SN2201, select REGMAP_I2C instead of depending on it.

Fixes: c6acad68eb2d ("platform/mellanox: mlxreg-hotplug: Modify to use a regmap interface")
Fixes: 5ec4a8ace06c ("platform/mellanox: Introduce support for Mellanox register access driver")
Fixes: 62f9529b8d5c ("platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices")
Fixes: 662f24826f95 ("platform/mellanox: Add support for new SN2201 system")
Signed-off-by: Randy Dunlap <[email protected]>
Cc: Darren Hart <[email protected]>
Cc: Hans de Goede <[email protected]>
Cc: Michael Shych <[email protected]>
Cc: Mark Gross <[email protected]>
Cc: Vadim Pasternak <[email protected]>
Cc: [email protected]
---
drivers/platform/mellanox/Kconfig | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff -- a/drivers/platform/mellanox/Kconfig b/drivers/platform/mellanox/Kconfig
--- a/drivers/platform/mellanox/Kconfig
+++ b/drivers/platform/mellanox/Kconfig
@@ -16,17 +16,17 @@ if MELLANOX_PLATFORM

config MLXREG_HOTPLUG
tristate "Mellanox platform hotplug driver support"
- depends on REGMAP
depends on HWMON
depends on I2C
+ select REGMAP
help
This driver handles hot-plug events for the power suppliers, power
cables and fans on the wide range Mellanox IB and Ethernet systems.

config MLXREG_IO
tristate "Mellanox platform register access driver support"
- depends on REGMAP
depends on HWMON
+ select REGMAP
help
This driver allows access to Mellanox programmable device register
space through sysfs interface. The sets of registers for sysfs access
@@ -36,9 +36,9 @@ config MLXREG_IO

config MLXREG_LC
tristate "Mellanox line card platform driver support"
- depends on REGMAP
depends on HWMON
depends on I2C
+ select REGMAP
help
This driver provides support for the Mellanox MSN4800-XX line cards,
which are the part of MSN4800 Ethernet modular switch systems
@@ -80,10 +80,9 @@ config MLXBF_PMC

config NVSW_SN2201
tristate "Nvidia SN2201 platform driver support"
- depends on REGMAP
depends on HWMON
depends on I2C
- depends on REGMAP_I2C
+ select REGMAP_I2C
help
This driver provides support for the Nvidia SN2201 platform.
The SN2201 is a highly integrated for one rack unit system with


2023-02-26 06:37:28

by Vadim Pasternak

[permalink] [raw]
Subject: RE: [PATCH 5/8] platform: mellanox: select REGMAP instead of depending on it



> -----Original Message-----
> From: Randy Dunlap <[email protected]>
> Sent: Sunday, 26 February 2023 7:40
> To: [email protected]
> Cc: Randy Dunlap <[email protected]>; Darren Hart
> <[email protected]>; Hans de Goede <[email protected]>; Michael
> Shych <[email protected]>; Mark Gross <[email protected]>;
> Vadim Pasternak <[email protected]>; platform-driver-
> [email protected]
> Subject: [PATCH 5/8] platform: mellanox: select REGMAP instead of
> depending on it
>
> REGMAP is a hidden (not user visible) symbol. Users cannot set it directly thru
> "make *config", so drivers should select it instead of depending on it if they
> need it.
>
> Consistently using "select" or "depends on" can also help reduce Kconfig
> circular dependency issues.
>
> Therefore, change the use of "depends on REGMAP" to "select REGMAP".
>
> For NVSW_SN2201, select REGMAP_I2C instead of depending on it.
>
> Fixes: c6acad68eb2d ("platform/mellanox: mlxreg-hotplug: Modify to use a
> regmap interface")
> Fixes: 5ec4a8ace06c ("platform/mellanox: Introduce support for Mellanox
> register access driver")
> Fixes: 62f9529b8d5c ("platform/mellanox: mlxreg-lc: Add initial support for
> Nvidia line card devices")
> Fixes: 662f24826f95 ("platform/mellanox: Add support for new SN2201
> system")
> Signed-off-by: Randy Dunlap <[email protected]>

Acked-by: Vadim Pasternak <[email protected]>

> Cc: Darren Hart <[email protected]>
> Cc: Hans de Goede <[email protected]>
> Cc: Michael Shych <[email protected]>
> Cc: Mark Gross <[email protected]>
> Cc: Vadim Pasternak <[email protected]>
> Cc: [email protected]
> ---
> drivers/platform/mellanox/Kconfig | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff -- a/drivers/platform/mellanox/Kconfig
> b/drivers/platform/mellanox/Kconfig
> --- a/drivers/platform/mellanox/Kconfig
> +++ b/drivers/platform/mellanox/Kconfig
> @@ -16,17 +16,17 @@ if MELLANOX_PLATFORM
>
> config MLXREG_HOTPLUG
> tristate "Mellanox platform hotplug driver support"
> - depends on REGMAP
> depends on HWMON
> depends on I2C
> + select REGMAP
> help
> This driver handles hot-plug events for the power suppliers, power
> cables and fans on the wide range Mellanox IB and Ethernet
> systems.
>
> config MLXREG_IO
> tristate "Mellanox platform register access driver support"
> - depends on REGMAP
> depends on HWMON
> + select REGMAP
> help
> This driver allows access to Mellanox programmable device register
> space through sysfs interface. The sets of registers for sysfs access
> @@ -36,9 +36,9 @@ config MLXREG_IO
>
> config MLXREG_LC
> tristate "Mellanox line card platform driver support"
> - depends on REGMAP
> depends on HWMON
> depends on I2C
> + select REGMAP
> help
> This driver provides support for the Mellanox MSN4800-XX line
> cards,
> which are the part of MSN4800 Ethernet modular switch systems
> @@ -80,10 +80,9 @@ config MLXBF_PMC
>
> config NVSW_SN2201
> tristate "Nvidia SN2201 platform driver support"
> - depends on REGMAP
> depends on HWMON
> depends on I2C
> - depends on REGMAP_I2C
> + select REGMAP_I2C
> help
> This driver provides support for the Nvidia SN2201 platform.
> The SN2201 is a highly integrated for one rack unit system with