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

Commit 92430b6f authored by Juerg Haefliger's avatar Juerg Haefliger Committed by Mark M. Hoffman
Browse files

hwmon: (dme1737) probe all addresses



This patch adds a module load parameter to enable probing of
non-standard LPC addresses 0x162e and 0x164e when scanning for supported
ISA chips.

Signed-Off-By: Juerg Haefliger <juergh at gmail.com>
Acked-by: default avatarJean Delvare <khali@linux-fr.org>
Signed-off-by: default avatarMark M. Hoffman <mhoffman@lightlink.com>
parent 9b257714
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -22,6 +22,10 @@ Module Parameters
			and PWM output control functions. Using this parameter
			shouldn't be required since the BIOS usually takes care
			of this.
* probe_all_addr: bool	Include non-standard LPC addresses 0x162e and 0x164e
			when probing for ISA devices. This is required for the
			following boards:
			- VIA EPIA SN18000

Note that there is no need to use this parameter if the driver loads without
complaining. The driver will say so if it is necessary.
+9 −1
Original line number Diff line number Diff line
@@ -48,6 +48,11 @@ static unsigned short force_id;
module_param(force_id, ushort, 0);
MODULE_PARM_DESC(force_id, "Override the detected device ID");

static int probe_all_addr;
module_param(probe_all_addr, bool, 0);
MODULE_PARM_DESC(probe_all_addr, "Include probing of non-standard LPC "
		 "addresses");

/* Addresses to scan */
static const unsigned short normal_i2c[] = {0x2c, 0x2d, 0x2e, I2C_CLIENT_END};

@@ -2430,7 +2435,10 @@ static int __init dme1737_init(void)
	}

	if (dme1737_isa_detect(0x2e, &addr) &&
	    dme1737_isa_detect(0x4e, &addr)) {
	    dme1737_isa_detect(0x4e, &addr) &&
	    (!probe_all_addr ||
	     (dme1737_isa_detect(0x162e, &addr) &&
	      dme1737_isa_detect(0x164e, &addr)))) {
		/* Return 0 if we didn't find an ISA device */
		return 0;
	}