aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hwmon')
-rw-r--r--drivers/hwmon/lm78.c12
-rw-r--r--drivers/hwmon/w83781d.c12
2 files changed, 12 insertions, 12 deletions
diff --git a/drivers/hwmon/lm78.c b/drivers/hwmon/lm78.c
index ac1b746df6d0..73bc2ffc598d 100644
--- a/drivers/hwmon/lm78.c
+++ b/drivers/hwmon/lm78.c
@@ -815,18 +815,18 @@ static int __init sm_lm78_init(void)
815 if (res) 815 if (res)
816 return res; 816 return res;
817 817
818 res = i2c_isa_add_driver(&lm78_isa_driver); 818 /* Don't exit if this one fails, we still want the I2C variants
819 if (res) { 819 to work! */
820 i2c_del_driver(&lm78_driver); 820 if (i2c_isa_add_driver(&lm78_isa_driver))
821 return res; 821 isa_address = 0;
822 }
823 822
824 return 0; 823 return 0;
825} 824}
826 825
827static void __exit sm_lm78_exit(void) 826static void __exit sm_lm78_exit(void)
828{ 827{
829 i2c_isa_del_driver(&lm78_isa_driver); 828 if (isa_address)
829 i2c_isa_del_driver(&lm78_isa_driver);
830 i2c_del_driver(&lm78_driver); 830 i2c_del_driver(&lm78_driver);
831} 831}
832 832
diff --git a/drivers/hwmon/w83781d.c b/drivers/hwmon/w83781d.c
index a4584ec69842..fea92061f863 100644
--- a/drivers/hwmon/w83781d.c
+++ b/drivers/hwmon/w83781d.c
@@ -1685,11 +1685,10 @@ sensors_w83781d_init(void)
1685 if (res) 1685 if (res)
1686 return res; 1686 return res;
1687 1687
1688 res = i2c_isa_add_driver(&w83781d_isa_driver); 1688 /* Don't exit if this one fails, we still want the I2C variants
1689 if (res) { 1689 to work! */
1690 i2c_del_driver(&w83781d_driver); 1690 if (i2c_isa_add_driver(&w83781d_isa_driver))
1691 return res; 1691 isa_address = 0;
1692 }
1693 1692
1694 return 0; 1693 return 0;
1695} 1694}
@@ -1697,7 +1696,8 @@ sensors_w83781d_init(void)
1697static void __exit 1696static void __exit
1698sensors_w83781d_exit(void) 1697sensors_w83781d_exit(void)
1699{ 1698{
1700 i2c_isa_del_driver(&w83781d_isa_driver); 1699 if (isa_address)
1700 i2c_isa_del_driver(&w83781d_isa_driver);
1701 i2c_del_driver(&w83781d_driver); 1701 i2c_del_driver(&w83781d_driver);
1702} 1702}
1703 1703