Message ID | 20230226053953.4681-6-rdunlap@infradead.org (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | drivers: select REGMAP instead of depending on it | expand |
> -----Original Message----- > From: Randy Dunlap <rdunlap@infradead.org> > Sent: Sunday, 26 February 2023 7:40 > To: linux-kernel@vger.kernel.org > Cc: Randy Dunlap <rdunlap@infradead.org>; Darren Hart > <dvhart@infradead.org>; Hans de Goede <hdegoede@redhat.com>; Michael > Shych <michaelsh@nvidia.com>; Mark Gross <markgross@kernel.org>; > Vadim Pasternak <vadimp@nvidia.com>; platform-driver- > x86@vger.kernel.org > 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 <rdunlap@infradead.org> Acked-by: Vadim Pasternak <vadimp@nvidia.com> > Cc: Darren Hart <dvhart@infradead.org> > Cc: Hans de Goede <hdegoede@redhat.com> > Cc: Michael Shych <michaelsh@nvidia.com> > Cc: Mark Gross <markgross@kernel.org> > Cc: Vadim Pasternak <vadimp@nvidia.com> > Cc: platform-driver-x86@vger.kernel.org > --- > 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
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
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 <rdunlap@infradead.org> Cc: Darren Hart <dvhart@infradead.org> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Michael Shych <michaelsh@nvidia.com> Cc: Mark Gross <markgross@kernel.org> Cc: Vadim Pasternak <vadimp@nvidia.com> Cc: platform-driver-x86@vger.kernel.org --- drivers/platform/mellanox/Kconfig | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)