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

Commit 2dbbdb35 authored by Juerg Haefliger's avatar Juerg Haefliger Committed by Mark M. Hoffman
Browse files

hwmon: add SCH5317 to smsc47b397 driver



This patch adds the SMSC SCH5317 chip (device ID 0x85) as a supported
device to the smsc47b397 driver.

Signed-off-by: Juerg Haefliger <juergh at gmail.com>
Signed-off-by: default avatarMark M. Hoffman <mhoffman@lightlink.com>
parent b74f3fdd
Loading
Loading
Loading
Loading
+4 −3
Original line number Original line Diff line number Diff line
@@ -4,6 +4,7 @@ Kernel driver smsc47b397
Supported chips:
Supported chips:
  * SMSC LPC47B397-NC
  * SMSC LPC47B397-NC
  * SMSC SCH5307-NS
  * SMSC SCH5307-NS
  * SMSC SCH5317
    Prefix: 'smsc47b397'
    Prefix: 'smsc47b397'
    Addresses scanned: none, address read from Super I/O config space
    Addresses scanned: none, address read from Super I/O config space
    Datasheet: In this file
    Datasheet: In this file
@@ -18,8 +19,8 @@ The following specification describes the SMSC LPC47B397-NC[1] sensor chip
provided by Craig Kelly (In-Store Broadcast Network) and edited/corrected
provided by Craig Kelly (In-Store Broadcast Network) and edited/corrected
by Mark M. Hoffman <mhoffman@lightlink.com>.
by Mark M. Hoffman <mhoffman@lightlink.com>.


[1] And SMSC SCH5307-NS, which has a different device ID but is otherwise
[1] And SMSC SCH5307-NS and SCH5317, which have different device IDs but are
compatible.
otherwise compatible.


* * * * *
* * * * *


@@ -131,7 +132,7 @@ OUT DX,AL
The registers of interest for identifying the SIO on the dc7100 are Device ID
The registers of interest for identifying the SIO on the dc7100 are Device ID
(0x20) and Device Rev  (0x21).
(0x20) and Device Rev  (0x21).


The Device ID will read 0x6F (for SCH5307-NS, 0x81)
The Device ID will read 0x6F (0x81 for SCH5307-NS, and 0x85 for SCH5317)
The Device Rev currently reads 0x01
The Device Rev currently reads 0x01


Obtaining the HWM Base Address.
Obtaining the HWM Base Address.
+3 −2
Original line number Original line Diff line number Diff line
@@ -333,7 +333,7 @@ static int __init smsc47b397_find(unsigned short *addr)
	superio_enter();
	superio_enter();
	id = superio_inb(SUPERIO_REG_DEVID);
	id = superio_inb(SUPERIO_REG_DEVID);


	if ((id != 0x6f) && (id != 0x81)) {
	if ((id != 0x6f) && (id != 0x81) && (id != 0x85)) {
		superio_exit();
		superio_exit();
		return -ENODEV;
		return -ENODEV;
	}
	}
@@ -346,7 +346,8 @@ static int __init smsc47b397_find(unsigned short *addr)


	printk(KERN_INFO DRVNAME ": found SMSC %s "
	printk(KERN_INFO DRVNAME ": found SMSC %s "
		"(base address 0x%04x, revision %u)\n",
		"(base address 0x%04x, revision %u)\n",
		id == 0x81 ? "SCH5307-NS" : "LPC47B397-NC", *addr, rev);
		id == 0x81 ? "SCH5307-NS" : id == 0x85 ? "SCH5317" :
	       "LPC47B397-NC", *addr, rev);


	superio_exit();
	superio_exit();
	return 0;
	return 0;