summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/sparc64/dev/ofwi2c.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/sys/arch/sparc64/dev/ofwi2c.c b/sys/arch/sparc64/dev/ofwi2c.c
index 7fa2ef6fbc2..4bffc20c3f8 100644
--- a/sys/arch/sparc64/dev/ofwi2c.c
+++ b/sys/arch/sparc64/dev/ofwi2c.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofwi2c.c,v 1.7 2007/10/15 18:43:28 kettenis Exp $ */
+/* $OpenBSD: ofwi2c.c,v 1.8 2007/10/22 23:55:58 deraadt Exp $ */
/*
* Copyright (c) 2006 Theo de Raadt
@@ -95,6 +95,20 @@ ofwiic_scan(struct device *self, struct i2cbus_attach_args *iba, void *aux)
continue;
}
+ /*
+ * XXX alipm crashes on some machines for an unknown, skip
+ * reason when doing the periodic i2c accesses things like
+ * sensors need. However, devices accessed only at boot
+ * are fine.
+ */
+ if (strcmp(self->dv_parent->dv_xname, "alipm0") == 0 &&
+ (ia.ia_addr < 0x50 || ia.ia_addr > 0x57)) {
+ iic_print(&ia, self->dv_parent->dv_xname);
+ printf(" skipped due to %s bugs\n",
+ self->dv_parent->dv_xname);
+ continue;
+ }
+
config_found(self, &ia, iic_print);
}
}