diff options
author | 2016-04-23 09:40:28 +0000 | |
---|---|---|
committer | 2016-04-23 09:40:28 +0000 | |
commit | 51cf21f2e07bba27fbddf27513612915b4d18b9c (patch) | |
tree | 0f8a4e109f7eacd67a9c8173f531f678b11d2488 /sys/dev/i2c | |
parent | remove errant Pp; (diff) | |
download | wireguard-openbsd-51cf21f2e07bba27fbddf27513612915b4d18b9c.tar.xz wireguard-openbsd-51cf21f2e07bba27fbddf27513612915b4d18b9c.zip |
Print a meaningful interrupt string for i2c devices.
Diffstat (limited to 'sys/dev/i2c')
-rw-r--r-- | sys/dev/i2c/i2cvar.h | 5 | ||||
-rw-r--r-- | sys/dev/i2c/ihidev.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/sys/dev/i2c/i2cvar.h b/sys/dev/i2c/i2cvar.h index 7f63349db12..bf9d06647ba 100644 --- a/sys/dev/i2c/i2cvar.h +++ b/sys/dev/i2c/i2cvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: i2cvar.h,v 1.15 2016/04/10 16:43:17 kettenis Exp $ */ +/* $OpenBSD: i2cvar.h,v 1.16 2016/04/23 09:40:28 kettenis Exp $ */ /* $NetBSD: i2cvar.h,v 1.1 2003/09/30 00:35:31 thorpej Exp $ */ /* @@ -93,6 +93,7 @@ typedef struct i2c_controller { void *(*ic_intr_establish)(void *, void *, int, int (*)(void *), void *, const char *); + const char *(*ic_intr_string)(void *, void *); } *i2c_tag_t; /* Used to attach the i2c framework to the controller. */ @@ -158,6 +159,8 @@ int iic_smbus_receive_byte(i2c_tag_t, i2c_addr_t, uint8_t *, int); #define iic_intr_establish(ic, ih, level, func, arg, name) \ (*(ic)->ic_intr_establish)((ic)->ic_cookie, (ih), (level), \ (func), (arg), (name)) +#define iic_intr_string(ic, ih) \ + (*(ic)->ic_intr_string)((ic)->ic_cookie, (ih)) void iic_ignore_addr(u_int8_t addr); diff --git a/sys/dev/i2c/ihidev.c b/sys/dev/i2c/ihidev.c index 57724b4003d..a416e34abec 100644 --- a/sys/dev/i2c/ihidev.c +++ b/sys/dev/i2c/ihidev.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ihidev.c,v 1.11 2016/04/10 16:43:17 kettenis Exp $ */ +/* $OpenBSD: ihidev.c,v 1.12 2016/04/23 09:40:28 kettenis Exp $ */ /* * HID-over-i2c driver * @@ -108,9 +108,8 @@ ihidev_attach(struct device *parent, struct device *self, void *aux) sc->sc_addr = ia->ia_addr; sc->sc_hid_desc_addr = ia->ia_size; - /* XXX print proper interrupt string */ if (ia->ia_intr) - printf(": interrupt"); + printf(" %s", iic_intr_string(sc->sc_tag, ia->ia_intr)); if (ihidev_hid_command(sc, I2C_HID_CMD_DESCR, NULL) || ihidev_hid_desc_parse(sc)) { |