diff options
author | CHLin <CHLIN56@nuvoton.com> | 2019-08-05 16:23:26 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-08-21 04:58:23 +0000 |
commit | ac780ae08f9cc880b8606937e03e4d8193e1022a (patch) | |
tree | c14d70ba0fabb070f8dd50f1496d6a308d770fcc /include | |
parent | 2fb1836646a1f4edcea1f22408535872b833d14e (diff) | |
download | chrome-ec-ac780ae08f9cc880b8606937e03e4d8193e1022a.tar.gz |
driver: IO expander: nct38xx: add the interrupt support
The IO pins of Nuvoton TCPC NCT38XX chips have the ability to support
the interrupt function. This commit adds the driver to support it.
However, please note that if the system needs to use an IO on NCT38XX
to support the interrupt, the following two consideration should be
taken into account.
1. Interrupt latency:
Because it requires to access the registers of NCT38XX via I2C
transaction to know the interrupt event, there is some added latency
for the interrupt handling. If the interrupt requires short latency,
we do not recommend to connect such a signal to the NCT38XX.
2. Shared ALERT pin:
Because the ALERT pin is shared also with the TCPC ALERT, we do not
recommend to connect any signal that may generate a high rate of
interrupts so it will not interfere with the normal work of the
TCPC.
BRANCH=none
BUG=none
TEST=No error for "make buildall"
TEST=Apply this and related CLs, manually test each IO pins; make sure
each pin's interrupt handler is correctly executed.
Change-Id: I72d835557913d87097b2e0d82165e40fe132ca77
Signed-off-by: CHLin <CHLIN56@nuvoton.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1734948
Reviewed-by: Edward Hill <ecgh@chromium.org>
Commit-Queue: CH Lin <chlin56@nuvoton.com>
Tested-by: CH Lin <chlin56@nuvoton.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/ioexpander.h | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/include/ioexpander.h b/include/ioexpander.h index e8f76d9fbc..150db65750 100644 --- a/include/ioexpander.h +++ b/include/ioexpander.h @@ -51,11 +51,6 @@ struct ioexpander_config_t { /* I2C slave address */ int i2c_slave_addr; /* - * The extra variable used to store information which may be required - * by the IO expander chip. - */ - int chip_info; - /* * Pointer to the specific IO expander chip's ops defined in * the struct ioexpander_drv. */ |