Home | History | Annotate | Download | only in i2c
History log of /src/sys/dev/i2c/w83795g.c
RevisionDateAuthorComments
 1.6  11-Feb-2024  andvar s/Nuvaton/Nuvoton/ in log message.
 1.5  07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.4  24-Apr-2021  thorpej branches: 1.4.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.3  16-Jun-2018  thorpej branches: 1.3.18;
More cleanup to i2c autoconfiguration:

- Get all of the drivers onto the new match quality constants.
- Introduce a new helper function, iic_use_direct_match(), that has
all of the logic for direct-config matching. If it returns true,
the driver returns the match result (which may be 0). If it returns
false, the driver does indirect-config matching.
- iic_compat_match() now returns a weighted match quality; matches to
lower-indexed "compatible" device property are more-specific matches,
and return a better match quality accordingly.
 1.2  13-Apr-2014  christos branches: 1.2.2; 1.2.6; 1.2.30;
fix statement with no effect (Dave Tyson)
 1.1  06-Aug-2013  soren branches: 1.1.2; 1.1.4; 1.1.6;
Add driver for Nuvoton W83795G voltage/temp/fan/gpio monitoring device.

As used in the HP Microserver N36L/N40L/N54L:

w83795g* at iic? addr 0x2f
gpio* at gpiobus?

Note that the gpio and watchdog functionality appears to be useless on
the Microserver, as the gpio pins don't affect the LED's and a watchdog
trigger does not cause a reset. Perhaps the reset pin just isn't wired.

There are quite flexible fan control options as well as just monitoring,
but it is not clear to me how best to export that function to userspace.
 1.1.6.1  10-Aug-2014  tls Rebase.
 1.1.4.3  18-May-2014  rmind sync with head
 1.1.4.2  28-Aug-2013  rmind sync with head
 1.1.4.1  06-Aug-2013  rmind file w83795g.c was added on branch rmind-smpnet on 2013-08-28 23:59:25 +0000
 1.1.2.3  20-Oct-2013  bouyer apply patch, requested by simonb in ticket #970:
sys/dev/i2c/w83795g.c patch

Make this driver compile on the netbsd-6 branch (fix ticket #929).
 1.1.2.2  10-Aug-2013  riz Pull up following revision(s) (requested by matt in ticket #929):
sys/dev/i2c/w83795g.c: revision 1.1
sys/dev/i2c/w83795greg.h: revision 1.1
sys/dev/i2c/files.i2c: revision 1.50
Add driver for Nuvoton W83795G voltage/temp/fan/gpio monitoring device.
As used in the HP Microserver N36L/N40L/N54L:
w83795g* at iic? addr 0x2f
gpio* at gpiobus?
Note that the gpio and watchdog functionality appears to be useless on
the Microserver, as the gpio pins don't affect the LED's and a watchdog
trigger does not cause a reset. Perhaps the reset pin just isn't wired.
There are quite flexible fan control options as well as just monitoring,
but it is not clear to me how best to export that function to userspace.
 1.1.2.1  06-Aug-2013  riz file w83795g.c was added on branch netbsd-6 on 2013-08-10 22:50:56 +0000
 1.2.30.1  25-Jun-2018  pgoyette Sync with HEAD
 1.2.6.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.6.1  13-Apr-2014  tls file w83795g.c was added on branch tls-maxphys on 2014-08-20 00:03:37 +0000
 1.2.2.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.2.1  13-Apr-2014  yamt file w83795g.c was added on branch yamt-pagecache on 2014-05-22 11:40:21 +0000
 1.3.18.1  21-Mar-2021  thorpej Give config_found() the same variadic arguments treatment as
config_search(). This commit only adds the CFARG_EOL sentinel
to the existing config_found() calls. Conversion of config_found_sm_loc()
and config_found_ia() call sites will be in subsequent commits.
 1.4.8.1  04-Aug-2021  thorpej Adapt to CFARGS().

RSS XML Feed