aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ds1wm.h
diff options
context:
space:
mode:
authorPhilipp Zabel <philipp.zabel@gmail.com>2008-02-07 00:13:22 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-07 08:42:06 -0800
commit4aa323bd839604dd83aec56ed3a88df352c3339d (patch)
treef9c349b851ddd473837382e87d3f10f22cda4a06 /include/linux/ds1wm.h
parentgfs2: make gfs2_glock.gl_owner_pid be a struct pid * (diff)
downloadlinux-dev-4aa323bd839604dd83aec56ed3a88df352c3339d.tar.xz
linux-dev-4aa323bd839604dd83aec56ed3a88df352c3339d.zip
DS1WM: decouple host IRQ and INTR active state settings
The DS1WM driver incorrectly infers the IAS bit (1-wire interrupt active high) from IRQ settings. There are devices that have IAS=0 but still need the IRQ to trigger on a rising edge. With this patch, machines with DS1WM that need IAS=1 have to set .active_high=1 in the ds1wm_platform_data. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Acked-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Acked-by: Matt Reimer <mreimer@vpop.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/ds1wm.h')
-rw-r--r--include/linux/ds1wm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/ds1wm.h b/include/linux/ds1wm.h
index 31f6e3c427fb..d3c65e48a2e7 100644
--- a/include/linux/ds1wm.h
+++ b/include/linux/ds1wm.h
@@ -6,6 +6,7 @@ struct ds1wm_platform_data {
* e.g. on h5xxx and h2200 this is 2
* (registers aligned to 4-byte boundaries),
* while on hx4700 this is 1 */
+ int active_high;
void (*enable)(struct platform_device *pdev);
void (*disable)(struct platform_device *pdev);
};