2017-03-06 21:24:50

by Florian Fainelli

[permalink] [raw]
Subject: [PATCH net-next] tg3: Add the ability to conditionally build w/ HWMON

Introduce a Kconfig option: CONFIG_TIGON3_HWMON which allows to build
in/out support for thermal sensors reported by Tigon3 NICs.

Signed-off-by: Florian Fainelli <[email protected]>
---
drivers/net/ethernet/broadcom/Kconfig | 8 +++++++-
drivers/net/ethernet/broadcom/tg3.c | 7 +++++++
2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig
index 940fb24bba21..96413808c726 100644
--- a/drivers/net/ethernet/broadcom/Kconfig
+++ b/drivers/net/ethernet/broadcom/Kconfig
@@ -109,7 +109,6 @@ config TIGON3
tristate "Broadcom Tigon3 support"
depends on PCI
select PHYLIB
- select HWMON
imply PTP_1588_CLOCK
---help---
This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
@@ -117,6 +116,13 @@ config TIGON3
To compile this driver as a module, choose M here: the module
will be called tg3. This is recommended.

+config TIGON3_HWMON
+ bool "Broadcom Tigon3 HWMON support"
+ default y
+ depends on TIGON3 && HWMON && !(TIGON3=y && HWMON=m)
+ ---help---
+ Say Y if you want to expose the thermal sensor on Tigon3 devices.
+
config BNX2X
tristate "Broadcom NetXtremeII 10Gb support"
depends on PCI
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index 30d1eb9ebec9..f395b951f5e7 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -825,6 +825,7 @@ static int tg3_ape_event_lock(struct tg3 *tp, u32 timeout_us)
return timeout_us ? 0 : -EBUSY;
}

+#ifdef CONFIG_TIGON3_HWMON
static int tg3_ape_wait_for_event(struct tg3 *tp, u32 timeout_us)
{
u32 i, apedata;
@@ -904,6 +905,7 @@ static int tg3_ape_scratchpad_read(struct tg3 *tp, u32 *data, u32 base_off,

return 0;
}
+#endif

static int tg3_ape_send_event(struct tg3 *tp, u32 event)
{
@@ -10744,6 +10746,7 @@ static int tg3_init_hw(struct tg3 *tp, bool reset_phy)
return tg3_reset_hw(tp, reset_phy);
}

+#ifdef CONFIG_TIGON3_HWMON
static void tg3_sd_scan_scratchpad(struct tg3 *tp, struct tg3_ocir *ocir)
{
int i;
@@ -10826,6 +10829,10 @@ static void tg3_hwmon_open(struct tg3 *tp)
dev_err(&pdev->dev, "Cannot register hwmon device, aborting\n");
}
}
+#else
+static inline void tg3_hwmon_close(struct tg3 *tp) { }
+static inline void tg3_hwmon_open(struct tg3 *tp) { }
+#endif /* CONFIG_TIGON3_HWMON */


#define TG3_STAT_ADD32(PSTAT, REG) \
--
2.9.3


2017-03-07 16:03:15

by Siva Reddy Kallam

[permalink] [raw]
Subject: Re: [PATCH net-next] tg3: Add the ability to conditionally build w/ HWMON

On Tue, Mar 7, 2017 at 2:26 AM, Florian Fainelli <[email protected]> wrote:
> Introduce a Kconfig option: CONFIG_TIGON3_HWMON which allows to build
> in/out support for thermal sensors reported by Tigon3 NICs.
>
> Signed-off-by: Florian Fainelli <[email protected]>
Acked-by: Siva Reddy Kallam <[email protected]>
> ---
> drivers/net/ethernet/broadcom/Kconfig | 8 +++++++-
> drivers/net/ethernet/broadcom/tg3.c | 7 +++++++
> 2 files changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig
> index 940fb24bba21..96413808c726 100644
> --- a/drivers/net/ethernet/broadcom/Kconfig
> +++ b/drivers/net/ethernet/broadcom/Kconfig
> @@ -109,7 +109,6 @@ config TIGON3
> tristate "Broadcom Tigon3 support"
> depends on PCI
> select PHYLIB
> - select HWMON
> imply PTP_1588_CLOCK
> ---help---
> This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
> @@ -117,6 +116,13 @@ config TIGON3
> To compile this driver as a module, choose M here: the module
> will be called tg3. This is recommended.
>
> +config TIGON3_HWMON
> + bool "Broadcom Tigon3 HWMON support"
> + default y
> + depends on TIGON3 && HWMON && !(TIGON3=y && HWMON=m)
> + ---help---
> + Say Y if you want to expose the thermal sensor on Tigon3 devices.
> +
> config BNX2X
> tristate "Broadcom NetXtremeII 10Gb support"
> depends on PCI
> diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
> index 30d1eb9ebec9..f395b951f5e7 100644
> --- a/drivers/net/ethernet/broadcom/tg3.c
> +++ b/drivers/net/ethernet/broadcom/tg3.c
> @@ -825,6 +825,7 @@ static int tg3_ape_event_lock(struct tg3 *tp, u32 timeout_us)
> return timeout_us ? 0 : -EBUSY;
> }
>
> +#ifdef CONFIG_TIGON3_HWMON
> static int tg3_ape_wait_for_event(struct tg3 *tp, u32 timeout_us)
> {
> u32 i, apedata;
> @@ -904,6 +905,7 @@ static int tg3_ape_scratchpad_read(struct tg3 *tp, u32 *data, u32 base_off,
>
> return 0;
> }
> +#endif
>
> static int tg3_ape_send_event(struct tg3 *tp, u32 event)
> {
> @@ -10744,6 +10746,7 @@ static int tg3_init_hw(struct tg3 *tp, bool reset_phy)
> return tg3_reset_hw(tp, reset_phy);
> }
>
> +#ifdef CONFIG_TIGON3_HWMON
> static void tg3_sd_scan_scratchpad(struct tg3 *tp, struct tg3_ocir *ocir)
> {
> int i;
> @@ -10826,6 +10829,10 @@ static void tg3_hwmon_open(struct tg3 *tp)
> dev_err(&pdev->dev, "Cannot register hwmon device, aborting\n");
> }
> }
> +#else
> +static inline void tg3_hwmon_close(struct tg3 *tp) { }
> +static inline void tg3_hwmon_open(struct tg3 *tp) { }
> +#endif /* CONFIG_TIGON3_HWMON */
>
>
> #define TG3_STAT_ADD32(PSTAT, REG) \
> --
> 2.9.3
>

2017-03-09 21:14:38

by David Miller

[permalink] [raw]
Subject: Re: [PATCH net-next] tg3: Add the ability to conditionally build w/ HWMON

From: Florian Fainelli <[email protected]>
Date: Mon, 6 Mar 2017 12:56:02 -0800

> Introduce a Kconfig option: CONFIG_TIGON3_HWMON which allows to build
> in/out support for thermal sensors reported by Tigon3 NICs.
>
> Signed-off-by: Florian Fainelli <[email protected]>

Applied, thanks Florian.