diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-20 11:15:18 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-20 11:15:18 -0700 |
commit | 9f9d2760da8c7f94fae119fac3e13d5a1702f8f0 (patch) | |
tree | e244a2969edceff750478e7d98355b76ef30aa0f /drivers/misc/bmp085.c | |
parent | ad2a8e6078a16d3b61b530f1447110841c36ae56 (diff) | |
parent | b222258ac11cae3e0350fe5992ad164a7b128103 (diff) |
Merge tag 'char-misc-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char and misc patches for 3.4-rc1 from Greg KH:
"Not much here, just a few minor fixes and some conversions to the
module_*_driver() functions, making the codebase smaller."
* tag 'char-misc-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
misc: bmp085: Use unsigned long to store jiffies
char/ramoops: included linux/err.h twice
misc: bmp085: Handle jiffies overflow correctly
misc: fsa9480: Remove obsolete cleanup for clientdata
char: Fix typo in tlclk.c
char: Fix typo in viotape.c
cs5535-mfgpt: don't call __init function from __devinit
MISC: convert drivers/misc/* to use module_spi_driver()
MISC: convert drivers/misc/* to use module_i2c_driver()
MISC: convert drivers/misc/* to use module_platform_driver()
Diffstat (limited to 'drivers/misc/bmp085.c')
-rw-r--r-- | drivers/misc/bmp085.c | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/drivers/misc/bmp085.c b/drivers/misc/bmp085.c index b29a2be2459..76c3064629f 100644 --- a/drivers/misc/bmp085.c +++ b/drivers/misc/bmp085.c @@ -87,7 +87,7 @@ struct bmp085_data { u32 raw_temperature; u32 raw_pressure; unsigned char oversampling_setting; - u32 last_temp_measurement; + unsigned long last_temp_measurement; s32 b6; /* calculated temperature correction coefficient */ }; @@ -234,7 +234,8 @@ static s32 bmp085_get_pressure(struct bmp085_data *data, int *pressure) int status; /* alt least every second force an update of the ambient temperature */ - if (data->last_temp_measurement + 1*HZ < jiffies) { + if (data->last_temp_measurement == 0 || + time_is_before_jiffies(data->last_temp_measurement + 1*HZ)) { status = bmp085_get_temperature(data, NULL); if (status != 0) goto exit; @@ -464,20 +465,8 @@ static struct i2c_driver bmp085_driver = { .address_list = normal_i2c }; -static int __init bmp085_init(void) -{ - return i2c_add_driver(&bmp085_driver); -} - -static void __exit bmp085_exit(void) -{ - i2c_del_driver(&bmp085_driver); -} - +module_i2c_driver(bmp085_driver); MODULE_AUTHOR("Christoph Mair <christoph.mair@gmail.com"); MODULE_DESCRIPTION("BMP085 driver"); MODULE_LICENSE("GPL"); - -module_init(bmp085_init); -module_exit(bmp085_exit); |