Skip to contentSkip to conversation

watchdog: Add hardware dependency to BCM7038 driver

PATCH Superseded Jean Delvare 3 participants 8 messages Feb 22, 2016 – Feb 24, 2016 Watchdog device drivers

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 watchdog: Add hardware dependency to BCM7038 driver

The BCM7038 is a MIPS chip so do not present its driver on other architectures, unless build-testing.

Cc Justin Chen <[email protected]>
Cc Guenter Roeck <[email protected]>
Cc Wim Van Sebroeck <[email protected]>
---
 drivers/watchdog/Kconfig |    1 +
 1 file changed, 1 insertion(+)
drivers/watchdog/Kconfig +1 -0
@@ -1377,6 +1377,7 @@ config BCM7038_WDT
 	tristate "BCM7038 Watchdog"
 	select WATCHDOG_CORE
 	depends on HAS_IOMEM
+	depends on MIPS || COMPILE_TEST
 	help
 	 Watchdog driver for the built-in hardware in Broadcom 7038 SoCs.
 
Signature · 2 lines
Jean Delvare
SUSE L3 Support
#2 lore raw

Hello Jean,

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

Thanks,
Justin

Quoted 13 lines · Guenter Roeck
Quoted 8 lines · Jean Delvare

The BCM7038 is a MIPS chip so do not present its driver on other architectures, unless build-testing.

Cc Justin Chen <[email protected]>
Cc Guenter Roeck <[email protected]>
Cc Wim Van Sebroeck <[email protected]>
#3 lore raw

Hello Justin,

Quoted 5 lines · Justin Chen

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

The Kconfig help text doesn't say this at all. With the current wording there is no reason why anyone would enable this option if not building a kernel for the Broadcom BCM7038.

Which other systems reuse this watchdog block exactly? In the kernel tree I can't see anyone instantiating this device.

Signature · 2 lines
Jean Delvare
SUSE L3 Support
#4 lore raw
Quoted 9 lines · Jean Delvare

Hello Justin,

Quoted 5 lines · Justin Chen

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

Quoted 3 lines

The Kconfig help text doesn't say this at all. With the current wording there is no reason why anyone would enable this option if not building a kernel for the Broadcom BCM7038.

Sorry about that! I can submit a patch to fix this.

Quoted 3 lines

Which other systems reuse this watchdog block exactly? In the kernel tree I can't see anyone instantiating this device.

BRCMSTB chips use this block as well as other BCM chips.

"This driver is for a watchdog block contained in all Broadcom Set-top Box chips since BCM7038. BCM7038 was made public during the 2004 CES, and since then, many chips use this watchdog block including some cable modem chips."

Quoted 5 lines

--
Jean Delvare
SUSE L3 Support

maintainer
#5 lore raw
Quoted 15 lines · Justin Chen
Quoted 9 lines · Jean Delvare

Hello Justin,

Quoted 5 lines · Justin Chen

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

Quoted 3 lines

The Kconfig help text doesn't say this at all. With the current wording there is no reason why anyone would enable this option if not building a kernel for the Broadcom BCM7038.

Sorry about that! I can submit a patch to fix this.

Quoted 1 line
Quoted 8 lines
Quoted 2 lines

Which other systems reuse this watchdog block exactly? In the kernel tree I can't see anyone instantiating this device.

BRCMSTB chips use this block as well as other BCM chips.

"This driver is for a watchdog block contained in all Broadcom Set-top Box chips since BCM7038. BCM7038 was made public during the 2004 CES, and since then, many chips use this watchdog block including some cable modem chips."

That is a bit vague. Can you be more specific ?

Also, while the driver may not be limited to MIPS, I am relatively sure that it has some architecture limits. MIPS, ARM, and ARM64, maybe ?

Thanks,
Guenter

#6 lore raw
Quoted 16 lines · Guenter Roeck
Quoted 15 lines · Justin Chen
Quoted 9 lines · Jean Delvare

Hello Justin,

Quoted 5 lines · Justin Chen

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

Quoted 3 lines

The Kconfig help text doesn't say this at all. With the current wording there is no reason why anyone would enable this option if not building a kernel for the Broadcom BCM7038.

Sorry about that! I can submit a patch to fix this.

Quoted 1 line
Quoted 9 lines
Quoted 8 lines
Quoted 2 lines

Which other systems reuse this watchdog block exactly? In the kernel tree I can't see anyone instantiating this device.

BRCMSTB chips use this block as well as other BCM chips.

"This driver is for a watchdog block contained in all Broadcom Set-top Box chips since BCM7038. BCM7038 was made public during the 2004 CES, and since then, many chips use this watchdog block including some cable modem chips."

Hello Guenter,

Quoted 4 lines

That is a bit vague. Can you be more specific ?

Also, while the driver may not be limited to MIPS, I am relatively sure that it has some architecture limits. MIPS, ARM, and ARM64, maybe ?

Yes you are correct, this driver would be limited to Broadcom chips. I would suggest "depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST"

Quoted 3 lines

Thanks,
Guenter

Thanks,
Justin

#7 lore raw
Quoted 19 lines · Justin Chen
Quoted 18 lines · Guenter Roeck
Quoted 17 lines · Justin Chen
Quoted 9 lines · Jean Delvare

Hello Justin,

Quoted 5 lines · Justin Chen

This driver is based off of a Broadcom watchdog block, it is not tied to the MIPS core.
The watchdog driver is named BCM7038 because that was the first chip that featured this watchdog block. Their are other chips that use this driver that are not MIPS based.

Quoted 3 lines

The Kconfig help text doesn't say this at all. With the current wording there is no reason why anyone would enable this option if not building a kernel for the Broadcom BCM7038.

Sorry about that! I can submit a patch to fix this.

Quoted 3 lines

Which other systems reuse this watchdog block exactly? In the kernel tree I can't see anyone instantiating this device.

Quoted 8 lines
Quoted 8 lines
Quoted 6 lines

BRCMSTB chips use this block as well as other BCM chips.

"This driver is for a watchdog block contained in all Broadcom Set-top Box chips since BCM7038. BCM7038 was made public during the 2004 CES, and since then, many chips use this watchdog block including some cable modem chips."

That is a bit vague. Can you be more specific ?

Still a lot better than what the Kconfig has at the moment.

Quoted 5 lines
Quoted 2 lines

Also, while the driver may not be limited to MIPS, I am relatively sure that it has some architecture limits. MIPS, ARM, and ARM64, maybe ?

Yes you are correct, this driver would be limited to Broadcom chips. I would suggest "depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST"

Thanks, I like it. I'll submit a v2 of the patch with this change and a better description of the option.

Signature · 2 lines
Jean Delvare
SUSE L3 Support