Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec693fe5 authored by Jean Delvare's avatar Jean Delvare Committed by Jean Delvare
Browse files

hwmon: (abituguru) Depend on DMI



The abituguru drivers are only built on X86, where DMI support is now
enabled by default. So let these drivers depend on DMI, for the
following gains:
* Robustness and safety. Detection of these devices is weak and uses
  non-standard methods, it should really be limited to Abit boards
  unless the user explicitly asks otherwise.
* Code simplicity. The code is easier to read without ifdefs.
* Better build testing coverage. Now there's only one way to build the
  drivers, so no risk of build failure on exotic systems.

Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
Acked-by: default avatarGuenter Roeck <guenter.roeck@ericsson.com>
Acked-by: default avatarAlistair John Strachan <alistair@devzero.co.uk>
Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
parent 5b0380c9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ comment "Native drivers"

config SENSORS_ABITUGURU
	tristate "Abit uGuru (rev 1 & 2)"
	depends on X86 && EXPERIMENTAL
	depends on X86 && DMI && EXPERIMENTAL
	help
	  If you say yes here you get support for the sensor part of the first
	  and second revision of the Abit uGuru chip. The voltage and frequency
@@ -56,7 +56,7 @@ config SENSORS_ABITUGURU

config SENSORS_ABITUGURU3
	tristate "Abit uGuru (rev 3)"
	depends on X86 && EXPERIMENTAL
	depends on X86 && DMI && EXPERIMENTAL
	help
	  If you say yes here you get support for the sensor part of the
	  third revision of the Abit uGuru chip. Only reading the sensors
+0 −3
Original line number Diff line number Diff line
@@ -1448,15 +1448,12 @@ static int __init abituguru_init(void)
{
	int address, err;
	struct resource res = { .flags = IORESOURCE_IO };

#ifdef CONFIG_DMI
	const char *board_vendor = dmi_get_system_info(DMI_BOARD_VENDOR);

	/* safety check, refuse to load on non Abit motherboards */
	if (!force && (!board_vendor ||
			strcmp(board_vendor, "http://www.abit.com.tw/")))
		return -ENODEV;
#endif

	address = abituguru_detect();
	if (address < 0)
+0 −13
Original line number Diff line number Diff line
@@ -1119,8 +1119,6 @@ static struct platform_driver abituguru3_driver = {
	.resume = abituguru3_resume
};

#ifdef CONFIG_DMI

static int __init abituguru3_dmi_detect(void)
{
	const char *board_vendor, *board_name;
@@ -1159,15 +1157,6 @@ static int __init abituguru3_dmi_detect(void)
	return 1;
}

#else /* !CONFIG_DMI */

static inline int abituguru3_dmi_detect(void)
{
	return 1;
}

#endif /* CONFIG_DMI */

/* FIXME: Manual detection should die eventually; we need to collect stable
 *        DMI model names first before we can rely entirely on CONFIG_DMI.
 */
@@ -1216,10 +1205,8 @@ static int __init abituguru3_init(void)
		if (err)
			return err;

#ifdef CONFIG_DMI
		pr_warn("this motherboard was not detected using DMI. "
			"Please send the output of \"dmidecode\" to the abituguru3 maintainer (see MAINTAINERS)\n");
#endif
	}

	err = platform_driver_register(&abituguru3_driver);