summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorNuno Sá <nuno.sa@analog.com>2025-07-01 15:32:02 +0100
committerLee Jones <lee@kernel.org>2025-07-01 21:50:51 +0100
commit0190a72f28ee0995c546fd4fcf80ed25a0fc4b28 (patch)
tree99c7d34f81830ef6c8939acb504e4fb7d3a3f8a7 /include/linux
parent1a4eabf662543c62ae1e71a26d1c8e6643c66388 (diff)
mfd: adp5585: Add support for adp5589
The ADP5589 is a 19 I/O port expander with built-in keypad matrix decoder, programmable logic, reset generator, and PWM generator. Signed-off-by: Nuno Sá <nuno.sa@analog.com> Link: https://lore.kernel.org/r/20250701-dev-adp5589-fw-v7-7-b1fcfe9e9826@analog.com Signed-off-by: Lee Jones <lee@kernel.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mfd/adp5585.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/mfd/adp5585.h b/include/linux/mfd/adp5585.h
index c56af8d8d76c..70e58122a36a 100644
--- a/include/linux/mfd/adp5585.h
+++ b/include/linux/mfd/adp5585.h
@@ -117,6 +117,12 @@
#define ADP5585_BANK(n) ((n) >= 6 ? 1 : 0)
#define ADP5585_BIT(n) ((n) >= 6 ? BIT((n) - 6) : BIT(n))
+/* ADP5589 */
+#define ADP5589_MAN_ID_VALUE 0x10
+#define ADP5589_GPI_STATUS_C 0x18
+#define ADP5589_INT_EN 0x4e
+#define ADP5589_MAX_REG ADP5589_INT_EN
+
struct regmap;
enum adp5585_variant {
@@ -125,6 +131,9 @@ enum adp5585_variant {
ADP5585_02,
ADP5585_03,
ADP5585_04,
+ ADP5589_00,
+ ADP5589_01,
+ ADP5589_02,
ADP5585_MAX
};
@@ -132,6 +141,7 @@ struct adp5585_dev {
struct device *dev;
struct regmap *regmap;
enum adp5585_variant variant;
+ unsigned int id;
};
#endif