diff options
Diffstat (limited to 'drivers/watchdog')
-rw-r--r-- | drivers/watchdog/Kconfig | 6 | ||||
-rw-r--r-- | drivers/watchdog/Makefile | 2 | ||||
-rw-r--r-- | drivers/watchdog/cpwd.c | 11 | ||||
-rw-r--r-- | drivers/watchdog/gef_wdt.c | 9 | ||||
-rw-r--r-- | drivers/watchdog/hpwdt.c | 4 | ||||
-rw-r--r-- | drivers/watchdog/m54xx_wdt.c (renamed from drivers/watchdog/m548x_wdt.c) | 50 | ||||
-rw-r--r-- | drivers/watchdog/mpc8xxx_wdt.c | 15 | ||||
-rw-r--r-- | drivers/watchdog/riowd.c | 9 | ||||
-rw-r--r-- | drivers/watchdog/sbc_fitpc2_wdt.c | 7 | ||||
-rw-r--r-- | drivers/watchdog/sch311x_wdt.c | 2 | ||||
-rw-r--r-- | drivers/watchdog/w83697ug_wdt.c | 2 |
11 files changed, 60 insertions, 57 deletions
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index faa9127aecaa..908160e938dc 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig | |||
@@ -862,12 +862,12 @@ config SBC_EPX_C3_WATCHDOG | |||
862 | 862 | ||
863 | # M68K Architecture | 863 | # M68K Architecture |
864 | 864 | ||
865 | config M548x_WATCHDOG | 865 | config M54xx_WATCHDOG |
866 | tristate "MCF548x watchdog support" | 866 | tristate "MCF54xx watchdog support" |
867 | depends on M548x | 867 | depends on M548x |
868 | help | 868 | help |
869 | To compile this driver as a module, choose M here: the | 869 | To compile this driver as a module, choose M here: the |
870 | module will be called m548x_wdt. | 870 | module will be called m54xx_wdt. |
871 | 871 | ||
872 | # MIPS Architecture | 872 | # MIPS Architecture |
873 | 873 | ||
diff --git a/drivers/watchdog/Makefile b/drivers/watchdog/Makefile index dd776651917c..20e44c4782b3 100644 --- a/drivers/watchdog/Makefile +++ b/drivers/watchdog/Makefile | |||
@@ -106,7 +106,7 @@ obj-$(CONFIG_SBC_EPX_C3_WATCHDOG) += sbc_epx_c3.o | |||
106 | # M32R Architecture | 106 | # M32R Architecture |
107 | 107 | ||
108 | # M68K Architecture | 108 | # M68K Architecture |
109 | obj-$(CONFIG_M548x_WATCHDOG) += m548x_wdt.o | 109 | obj-$(CONFIG_M54xx_WATCHDOG) += m54xx_wdt.o |
110 | 110 | ||
111 | # MIPS Architecture | 111 | # MIPS Architecture |
112 | obj-$(CONFIG_ATH79_WDT) += ath79_wdt.o | 112 | obj-$(CONFIG_ATH79_WDT) += ath79_wdt.o |
diff --git a/drivers/watchdog/cpwd.c b/drivers/watchdog/cpwd.c index eca855a55c0d..65911678453d 100644 --- a/drivers/watchdog/cpwd.c +++ b/drivers/watchdog/cpwd.c | |||
@@ -528,8 +528,7 @@ static const struct file_operations cpwd_fops = { | |||
528 | .llseek = no_llseek, | 528 | .llseek = no_llseek, |
529 | }; | 529 | }; |
530 | 530 | ||
531 | static int __devinit cpwd_probe(struct platform_device *op, | 531 | static int __devinit cpwd_probe(struct platform_device *op) |
532 | const struct of_device_id *match) | ||
533 | { | 532 | { |
534 | struct device_node *options; | 533 | struct device_node *options; |
535 | const char *str_prop; | 534 | const char *str_prop; |
@@ -646,7 +645,7 @@ static int __devexit cpwd_remove(struct platform_device *op) | |||
646 | struct cpwd *p = dev_get_drvdata(&op->dev); | 645 | struct cpwd *p = dev_get_drvdata(&op->dev); |
647 | int i; | 646 | int i; |
648 | 647 | ||
649 | for (i = 0; i < 4; i++) { | 648 | for (i = 0; i < WD_NUMDEVS; i++) { |
650 | misc_deregister(&p->devs[i].misc); | 649 | misc_deregister(&p->devs[i].misc); |
651 | 650 | ||
652 | if (!p->enabled) { | 651 | if (!p->enabled) { |
@@ -678,7 +677,7 @@ static const struct of_device_id cpwd_match[] = { | |||
678 | }; | 677 | }; |
679 | MODULE_DEVICE_TABLE(of, cpwd_match); | 678 | MODULE_DEVICE_TABLE(of, cpwd_match); |
680 | 679 | ||
681 | static struct of_platform_driver cpwd_driver = { | 680 | static struct platform_driver cpwd_driver = { |
682 | .driver = { | 681 | .driver = { |
683 | .name = DRIVER_NAME, | 682 | .name = DRIVER_NAME, |
684 | .owner = THIS_MODULE, | 683 | .owner = THIS_MODULE, |
@@ -690,12 +689,12 @@ static struct of_platform_driver cpwd_driver = { | |||
690 | 689 | ||
691 | static int __init cpwd_init(void) | 690 | static int __init cpwd_init(void) |
692 | { | 691 | { |
693 | return of_register_platform_driver(&cpwd_driver); | 692 | return platform_driver_register(&cpwd_driver); |
694 | } | 693 | } |
695 | 694 | ||
696 | static void __exit cpwd_exit(void) | 695 | static void __exit cpwd_exit(void) |
697 | { | 696 | { |
698 | of_unregister_platform_driver(&cpwd_driver); | 697 | platform_driver_unregister(&cpwd_driver); |
699 | } | 698 | } |
700 | 699 | ||
701 | module_init(cpwd_init); | 700 | module_init(cpwd_init); |
diff --git a/drivers/watchdog/gef_wdt.c b/drivers/watchdog/gef_wdt.c index f6bd6f10fcec..29a7cd4b90c8 100644 --- a/drivers/watchdog/gef_wdt.c +++ b/drivers/watchdog/gef_wdt.c | |||
@@ -261,8 +261,7 @@ static struct miscdevice gef_wdt_miscdev = { | |||
261 | }; | 261 | }; |
262 | 262 | ||
263 | 263 | ||
264 | static int __devinit gef_wdt_probe(struct platform_device *dev, | 264 | static int __devinit gef_wdt_probe(struct platform_device *dev) |
265 | const struct of_device_id *match) | ||
266 | { | 265 | { |
267 | int timeout = 10; | 266 | int timeout = 10; |
268 | u32 freq; | 267 | u32 freq; |
@@ -303,7 +302,7 @@ static const struct of_device_id gef_wdt_ids[] = { | |||
303 | {}, | 302 | {}, |
304 | }; | 303 | }; |
305 | 304 | ||
306 | static struct of_platform_driver gef_wdt_driver = { | 305 | static struct platform_driver gef_wdt_driver = { |
307 | .driver = { | 306 | .driver = { |
308 | .name = "gef_wdt", | 307 | .name = "gef_wdt", |
309 | .owner = THIS_MODULE, | 308 | .owner = THIS_MODULE, |
@@ -315,12 +314,12 @@ static struct of_platform_driver gef_wdt_driver = { | |||
315 | static int __init gef_wdt_init(void) | 314 | static int __init gef_wdt_init(void) |
316 | { | 315 | { |
317 | printk(KERN_INFO "GE watchdog driver\n"); | 316 | printk(KERN_INFO "GE watchdog driver\n"); |
318 | return of_register_platform_driver(&gef_wdt_driver); | 317 | return platform_driver_register(&gef_wdt_driver); |
319 | } | 318 | } |
320 | 319 | ||
321 | static void __exit gef_wdt_exit(void) | 320 | static void __exit gef_wdt_exit(void) |
322 | { | 321 | { |
323 | of_unregister_platform_driver(&gef_wdt_driver); | 322 | platform_driver_unregister(&gef_wdt_driver); |
324 | } | 323 | } |
325 | 324 | ||
326 | module_init(gef_wdt_init); | 325 | module_init(gef_wdt_init); |
diff --git a/drivers/watchdog/hpwdt.c b/drivers/watchdog/hpwdt.c index 24b966d5061a..204a5603c4ae 100644 --- a/drivers/watchdog/hpwdt.c +++ b/drivers/watchdog/hpwdt.c | |||
@@ -710,7 +710,7 @@ static int __devinit hpwdt_init_nmi_decoding(struct pci_dev *dev) | |||
710 | return 0; | 710 | return 0; |
711 | } | 711 | } |
712 | 712 | ||
713 | static void __devexit hpwdt_exit_nmi_decoding(void) | 713 | static void hpwdt_exit_nmi_decoding(void) |
714 | { | 714 | { |
715 | unregister_die_notifier(&die_notifier); | 715 | unregister_die_notifier(&die_notifier); |
716 | if (cru_rom_addr) | 716 | if (cru_rom_addr) |
@@ -726,7 +726,7 @@ static int __devinit hpwdt_init_nmi_decoding(struct pci_dev *dev) | |||
726 | return 0; | 726 | return 0; |
727 | } | 727 | } |
728 | 728 | ||
729 | static void __devexit hpwdt_exit_nmi_decoding(void) | 729 | static void hpwdt_exit_nmi_decoding(void) |
730 | { | 730 | { |
731 | } | 731 | } |
732 | #endif /* CONFIG_HPWDT_NMI_DECODING */ | 732 | #endif /* CONFIG_HPWDT_NMI_DECODING */ |
diff --git a/drivers/watchdog/m548x_wdt.c b/drivers/watchdog/m54xx_wdt.c index cabbcfe1c847..4d43286074aa 100644 --- a/drivers/watchdog/m548x_wdt.c +++ b/drivers/watchdog/m54xx_wdt.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * drivers/watchdog/m548x_wdt.c | 2 | * drivers/watchdog/m54xx_wdt.c |
3 | * | 3 | * |
4 | * Watchdog driver for ColdFire MCF548x processors | 4 | * Watchdog driver for ColdFire MCF547x & MCF548x processors |
5 | * Copyright 2010 (c) Philippe De Muyter <phdm@macqel.be> | 5 | * Copyright 2010 (c) Philippe De Muyter <phdm@macqel.be> |
6 | * | 6 | * |
7 | * Adapted from the IXP4xx watchdog driver, which carries these notices: | 7 | * Adapted from the IXP4xx watchdog driver, which carries these notices: |
@@ -29,8 +29,8 @@ | |||
29 | #include <linux/uaccess.h> | 29 | #include <linux/uaccess.h> |
30 | 30 | ||
31 | #include <asm/coldfire.h> | 31 | #include <asm/coldfire.h> |
32 | #include <asm/m548xsim.h> | 32 | #include <asm/m54xxsim.h> |
33 | #include <asm/m548xgpt.h> | 33 | #include <asm/m54xxgpt.h> |
34 | 34 | ||
35 | static int nowayout = WATCHDOG_NOWAYOUT; | 35 | static int nowayout = WATCHDOG_NOWAYOUT; |
36 | static unsigned int heartbeat = 30; /* (secs) Default is 0.5 minute */ | 36 | static unsigned int heartbeat = 30; /* (secs) Default is 0.5 minute */ |
@@ -76,7 +76,7 @@ static void wdt_keepalive(void) | |||
76 | __raw_writel(gms0, MCF_MBAR + MCF_GPT_GMS0); | 76 | __raw_writel(gms0, MCF_MBAR + MCF_GPT_GMS0); |
77 | } | 77 | } |
78 | 78 | ||
79 | static int m548x_wdt_open(struct inode *inode, struct file *file) | 79 | static int m54xx_wdt_open(struct inode *inode, struct file *file) |
80 | { | 80 | { |
81 | if (test_and_set_bit(WDT_IN_USE, &wdt_status)) | 81 | if (test_and_set_bit(WDT_IN_USE, &wdt_status)) |
82 | return -EBUSY; | 82 | return -EBUSY; |
@@ -86,7 +86,7 @@ static int m548x_wdt_open(struct inode *inode, struct file *file) | |||
86 | return nonseekable_open(inode, file); | 86 | return nonseekable_open(inode, file); |
87 | } | 87 | } |
88 | 88 | ||
89 | static ssize_t m548x_wdt_write(struct file *file, const char *data, | 89 | static ssize_t m54xx_wdt_write(struct file *file, const char *data, |
90 | size_t len, loff_t *ppos) | 90 | size_t len, loff_t *ppos) |
91 | { | 91 | { |
92 | if (len) { | 92 | if (len) { |
@@ -112,10 +112,10 @@ static ssize_t m548x_wdt_write(struct file *file, const char *data, | |||
112 | static const struct watchdog_info ident = { | 112 | static const struct watchdog_info ident = { |
113 | .options = WDIOF_MAGICCLOSE | WDIOF_SETTIMEOUT | | 113 | .options = WDIOF_MAGICCLOSE | WDIOF_SETTIMEOUT | |
114 | WDIOF_KEEPALIVEPING, | 114 | WDIOF_KEEPALIVEPING, |
115 | .identity = "Coldfire M548x Watchdog", | 115 | .identity = "Coldfire M54xx Watchdog", |
116 | }; | 116 | }; |
117 | 117 | ||
118 | static long m548x_wdt_ioctl(struct file *file, unsigned int cmd, | 118 | static long m54xx_wdt_ioctl(struct file *file, unsigned int cmd, |
119 | unsigned long arg) | 119 | unsigned long arg) |
120 | { | 120 | { |
121 | int ret = -ENOTTY; | 121 | int ret = -ENOTTY; |
@@ -161,7 +161,7 @@ static long m548x_wdt_ioctl(struct file *file, unsigned int cmd, | |||
161 | return ret; | 161 | return ret; |
162 | } | 162 | } |
163 | 163 | ||
164 | static int m548x_wdt_release(struct inode *inode, struct file *file) | 164 | static int m54xx_wdt_release(struct inode *inode, struct file *file) |
165 | { | 165 | { |
166 | if (test_bit(WDT_OK_TO_CLOSE, &wdt_status)) | 166 | if (test_bit(WDT_OK_TO_CLOSE, &wdt_status)) |
167 | wdt_disable(); | 167 | wdt_disable(); |
@@ -177,45 +177,45 @@ static int m548x_wdt_release(struct inode *inode, struct file *file) | |||
177 | } | 177 | } |
178 | 178 | ||
179 | 179 | ||
180 | static const struct file_operations m548x_wdt_fops = { | 180 | static const struct file_operations m54xx_wdt_fops = { |
181 | .owner = THIS_MODULE, | 181 | .owner = THIS_MODULE, |
182 | .llseek = no_llseek, | 182 | .llseek = no_llseek, |
183 | .write = m548x_wdt_write, | 183 | .write = m54xx_wdt_write, |
184 | .unlocked_ioctl = m548x_wdt_ioctl, | 184 | .unlocked_ioctl = m54xx_wdt_ioctl, |
185 | .open = m548x_wdt_open, | 185 | .open = m54xx_wdt_open, |
186 | .release = m548x_wdt_release, | 186 | .release = m54xx_wdt_release, |
187 | }; | 187 | }; |
188 | 188 | ||
189 | static struct miscdevice m548x_wdt_miscdev = { | 189 | static struct miscdevice m54xx_wdt_miscdev = { |
190 | .minor = WATCHDOG_MINOR, | 190 | .minor = WATCHDOG_MINOR, |
191 | .name = "watchdog", | 191 | .name = "watchdog", |
192 | .fops = &m548x_wdt_fops, | 192 | .fops = &m54xx_wdt_fops, |
193 | }; | 193 | }; |
194 | 194 | ||
195 | static int __init m548x_wdt_init(void) | 195 | static int __init m54xx_wdt_init(void) |
196 | { | 196 | { |
197 | if (!request_mem_region(MCF_MBAR + MCF_GPT_GCIR0, 4, | 197 | if (!request_mem_region(MCF_MBAR + MCF_GPT_GCIR0, 4, |
198 | "Coldfire M548x Watchdog")) { | 198 | "Coldfire M54xx Watchdog")) { |
199 | printk(KERN_WARNING | 199 | printk(KERN_WARNING |
200 | "Coldfire M548x Watchdog : I/O region busy\n"); | 200 | "Coldfire M54xx Watchdog : I/O region busy\n"); |
201 | return -EBUSY; | 201 | return -EBUSY; |
202 | } | 202 | } |
203 | printk(KERN_INFO "ColdFire watchdog driver is loaded.\n"); | 203 | printk(KERN_INFO "ColdFire watchdog driver is loaded.\n"); |
204 | 204 | ||
205 | return misc_register(&m548x_wdt_miscdev); | 205 | return misc_register(&m54xx_wdt_miscdev); |
206 | } | 206 | } |
207 | 207 | ||
208 | static void __exit m548x_wdt_exit(void) | 208 | static void __exit m54xx_wdt_exit(void) |
209 | { | 209 | { |
210 | misc_deregister(&m548x_wdt_miscdev); | 210 | misc_deregister(&m54xx_wdt_miscdev); |
211 | release_mem_region(MCF_MBAR + MCF_GPT_GCIR0, 4); | 211 | release_mem_region(MCF_MBAR + MCF_GPT_GCIR0, 4); |
212 | } | 212 | } |
213 | 213 | ||
214 | module_init(m548x_wdt_init); | 214 | module_init(m54xx_wdt_init); |
215 | module_exit(m548x_wdt_exit); | 215 | module_exit(m54xx_wdt_exit); |
216 | 216 | ||
217 | MODULE_AUTHOR("Philippe De Muyter <phdm@macqel.be>"); | 217 | MODULE_AUTHOR("Philippe De Muyter <phdm@macqel.be>"); |
218 | MODULE_DESCRIPTION("Coldfire M548x Watchdog"); | 218 | MODULE_DESCRIPTION("Coldfire M54xx Watchdog"); |
219 | 219 | ||
220 | module_param(heartbeat, int, 0); | 220 | module_param(heartbeat, int, 0); |
221 | MODULE_PARM_DESC(heartbeat, "Watchdog heartbeat in seconds (default 30s)"); | 221 | MODULE_PARM_DESC(heartbeat, "Watchdog heartbeat in seconds (default 30s)"); |
diff --git a/drivers/watchdog/mpc8xxx_wdt.c b/drivers/watchdog/mpc8xxx_wdt.c index 8fa213cdb499..ea438ad53055 100644 --- a/drivers/watchdog/mpc8xxx_wdt.c +++ b/drivers/watchdog/mpc8xxx_wdt.c | |||
@@ -185,15 +185,18 @@ static struct miscdevice mpc8xxx_wdt_miscdev = { | |||
185 | .fops = &mpc8xxx_wdt_fops, | 185 | .fops = &mpc8xxx_wdt_fops, |
186 | }; | 186 | }; |
187 | 187 | ||
188 | static int __devinit mpc8xxx_wdt_probe(struct platform_device *ofdev, | 188 | static int __devinit mpc8xxx_wdt_probe(struct platform_device *ofdev) |
189 | const struct of_device_id *match) | ||
190 | { | 189 | { |
191 | int ret; | 190 | int ret; |
192 | struct device_node *np = ofdev->dev.of_node; | 191 | struct device_node *np = ofdev->dev.of_node; |
193 | struct mpc8xxx_wdt_type *wdt_type = match->data; | 192 | struct mpc8xxx_wdt_type *wdt_type; |
194 | u32 freq = fsl_get_sys_freq(); | 193 | u32 freq = fsl_get_sys_freq(); |
195 | bool enabled; | 194 | bool enabled; |
196 | 195 | ||
196 | if (!ofdev->dev.of_match) | ||
197 | return -EINVAL; | ||
198 | wdt_type = match->data; | ||
199 | |||
197 | if (!freq || freq == -1) | 200 | if (!freq || freq == -1) |
198 | return -EINVAL; | 201 | return -EINVAL; |
199 | 202 | ||
@@ -272,7 +275,7 @@ static const struct of_device_id mpc8xxx_wdt_match[] = { | |||
272 | }; | 275 | }; |
273 | MODULE_DEVICE_TABLE(of, mpc8xxx_wdt_match); | 276 | MODULE_DEVICE_TABLE(of, mpc8xxx_wdt_match); |
274 | 277 | ||
275 | static struct of_platform_driver mpc8xxx_wdt_driver = { | 278 | static struct platform_driver mpc8xxx_wdt_driver = { |
276 | .probe = mpc8xxx_wdt_probe, | 279 | .probe = mpc8xxx_wdt_probe, |
277 | .remove = __devexit_p(mpc8xxx_wdt_remove), | 280 | .remove = __devexit_p(mpc8xxx_wdt_remove), |
278 | .driver = { | 281 | .driver = { |
@@ -308,13 +311,13 @@ module_init(mpc8xxx_wdt_init_late); | |||
308 | 311 | ||
309 | static int __init mpc8xxx_wdt_init(void) | 312 | static int __init mpc8xxx_wdt_init(void) |
310 | { | 313 | { |
311 | return of_register_platform_driver(&mpc8xxx_wdt_driver); | 314 | return platform_driver_register(&mpc8xxx_wdt_driver); |
312 | } | 315 | } |
313 | arch_initcall(mpc8xxx_wdt_init); | 316 | arch_initcall(mpc8xxx_wdt_init); |
314 | 317 | ||
315 | static void __exit mpc8xxx_wdt_exit(void) | 318 | static void __exit mpc8xxx_wdt_exit(void) |
316 | { | 319 | { |
317 | of_unregister_platform_driver(&mpc8xxx_wdt_driver); | 320 | platform_driver_unregister(&mpc8xxx_wdt_driver); |
318 | } | 321 | } |
319 | module_exit(mpc8xxx_wdt_exit); | 322 | module_exit(mpc8xxx_wdt_exit); |
320 | 323 | ||
diff --git a/drivers/watchdog/riowd.c b/drivers/watchdog/riowd.c index 3faee1ae64bd..109b533896b7 100644 --- a/drivers/watchdog/riowd.c +++ b/drivers/watchdog/riowd.c | |||
@@ -172,8 +172,7 @@ static struct miscdevice riowd_miscdev = { | |||
172 | .fops = &riowd_fops | 172 | .fops = &riowd_fops |
173 | }; | 173 | }; |
174 | 174 | ||
175 | static int __devinit riowd_probe(struct platform_device *op, | 175 | static int __devinit riowd_probe(struct platform_device *op) |
176 | const struct of_device_id *match) | ||
177 | { | 176 | { |
178 | struct riowd *p; | 177 | struct riowd *p; |
179 | int err = -EINVAL; | 178 | int err = -EINVAL; |
@@ -238,7 +237,7 @@ static const struct of_device_id riowd_match[] = { | |||
238 | }; | 237 | }; |
239 | MODULE_DEVICE_TABLE(of, riowd_match); | 238 | MODULE_DEVICE_TABLE(of, riowd_match); |
240 | 239 | ||
241 | static struct of_platform_driver riowd_driver = { | 240 | static struct platform_driver riowd_driver = { |
242 | .driver = { | 241 | .driver = { |
243 | .name = DRIVER_NAME, | 242 | .name = DRIVER_NAME, |
244 | .owner = THIS_MODULE, | 243 | .owner = THIS_MODULE, |
@@ -250,12 +249,12 @@ static struct of_platform_driver riowd_driver = { | |||
250 | 249 | ||
251 | static int __init riowd_init(void) | 250 | static int __init riowd_init(void) |
252 | { | 251 | { |
253 | return of_register_platform_driver(&riowd_driver); | 252 | return platform_driver_register(&riowd_driver); |
254 | } | 253 | } |
255 | 254 | ||
256 | static void __exit riowd_exit(void) | 255 | static void __exit riowd_exit(void) |
257 | { | 256 | { |
258 | of_unregister_platform_driver(&riowd_driver); | 257 | platform_driver_unregister(&riowd_driver); |
259 | } | 258 | } |
260 | 259 | ||
261 | module_init(riowd_init); | 260 | module_init(riowd_init); |
diff --git a/drivers/watchdog/sbc_fitpc2_wdt.c b/drivers/watchdog/sbc_fitpc2_wdt.c index c7d67e9a7465..79906255eeb6 100644 --- a/drivers/watchdog/sbc_fitpc2_wdt.c +++ b/drivers/watchdog/sbc_fitpc2_wdt.c | |||
@@ -201,11 +201,14 @@ static struct miscdevice fitpc2_wdt_miscdev = { | |||
201 | static int __init fitpc2_wdt_init(void) | 201 | static int __init fitpc2_wdt_init(void) |
202 | { | 202 | { |
203 | int err; | 203 | int err; |
204 | const char *brd_name; | ||
204 | 205 | ||
205 | if (!strstr(dmi_get_system_info(DMI_BOARD_NAME), "SBC-FITPC2")) | 206 | brd_name = dmi_get_system_info(DMI_BOARD_NAME); |
207 | |||
208 | if (!brd_name || !strstr(brd_name, "SBC-FITPC2")) | ||
206 | return -ENODEV; | 209 | return -ENODEV; |
207 | 210 | ||
208 | pr_info("%s found\n", dmi_get_system_info(DMI_BOARD_NAME)); | 211 | pr_info("%s found\n", brd_name); |
209 | 212 | ||
210 | if (!request_region(COMMAND_PORT, 1, WATCHDOG_NAME)) { | 213 | if (!request_region(COMMAND_PORT, 1, WATCHDOG_NAME)) { |
211 | pr_err("I/O address 0x%04x already in use\n", COMMAND_PORT); | 214 | pr_err("I/O address 0x%04x already in use\n", COMMAND_PORT); |
diff --git a/drivers/watchdog/sch311x_wdt.c b/drivers/watchdog/sch311x_wdt.c index 0461858e07d0..b61ab1c54293 100644 --- a/drivers/watchdog/sch311x_wdt.c +++ b/drivers/watchdog/sch311x_wdt.c | |||
@@ -508,7 +508,7 @@ static int __init sch311x_detect(int sio_config_port, unsigned short *addr) | |||
508 | sch311x_sio_outb(sio_config_port, 0x07, 0x0a); | 508 | sch311x_sio_outb(sio_config_port, 0x07, 0x0a); |
509 | 509 | ||
510 | /* Check if Logical Device Register is currently active */ | 510 | /* Check if Logical Device Register is currently active */ |
511 | if (sch311x_sio_inb(sio_config_port, 0x30) && 0x01 == 0) | 511 | if ((sch311x_sio_inb(sio_config_port, 0x30) & 0x01) == 0) |
512 | printk(KERN_INFO PFX "Seems that LDN 0x0a is not active...\n"); | 512 | printk(KERN_INFO PFX "Seems that LDN 0x0a is not active...\n"); |
513 | 513 | ||
514 | /* Get the base address of the runtime registers */ | 514 | /* Get the base address of the runtime registers */ |
diff --git a/drivers/watchdog/w83697ug_wdt.c b/drivers/watchdog/w83697ug_wdt.c index a6c12dec91a1..df2a64dc9672 100644 --- a/drivers/watchdog/w83697ug_wdt.c +++ b/drivers/watchdog/w83697ug_wdt.c | |||
@@ -109,7 +109,7 @@ static int w83697ug_select_wd_register(void) | |||
109 | outb_p(0x08, WDT_EFDR); /* select logical device 8 (GPIO2) */ | 109 | outb_p(0x08, WDT_EFDR); /* select logical device 8 (GPIO2) */ |
110 | outb_p(0x30, WDT_EFER); /* select CR30 */ | 110 | outb_p(0x30, WDT_EFER); /* select CR30 */ |
111 | c = inb_p(WDT_EFDR); | 111 | c = inb_p(WDT_EFDR); |
112 | outb_p(c || 0x01, WDT_EFDR); /* set bit 0 to activate GPIO2 */ | 112 | outb_p(c | 0x01, WDT_EFDR); /* set bit 0 to activate GPIO2 */ |
113 | 113 | ||
114 | return 0; | 114 | return 0; |
115 | } | 115 | } |