diff options
author | David Brownell <david-b@pacbell.net> | 2007-05-08 03:33:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 14:15:18 -0400 |
commit | ab6a2d70d18edc7a716ef3127b9e13382faec98c (patch) | |
tree | 6de624dfcbd0181e54e21f1730d2a52ae9822c47 /include/linux/rtc.h | |
parent | 5726fb2012f0d96153113ddb7f988a0daea587ce (diff) |
rtc: rtc interfaces don't use class_device
This patch removes class_device from the programming interface that the RTC
framework exposes to the rest of the kernel. Now an rtc_device is passed,
which is more type-safe and streamlines all the relevant code.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Acked-By: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/rtc.h')
-rw-r--r-- | include/linux/rtc.h | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/include/linux/rtc.h b/include/linux/rtc.h index f662ae1aa621..73ccd8fcc0c7 100644 --- a/include/linux/rtc.h +++ b/include/linux/rtc.h | |||
@@ -4,7 +4,7 @@ | |||
4 | * service. It is used with both the legacy mc146818 and also EFI | 4 | * service. It is used with both the legacy mc146818 and also EFI |
5 | * Struct rtc_time and first 12 ioctl by Paul Gortmaker, 1996 - separated out | 5 | * Struct rtc_time and first 12 ioctl by Paul Gortmaker, 1996 - separated out |
6 | * from <linux/mc146818rtc.h> to this file for 2.4 kernels. | 6 | * from <linux/mc146818rtc.h> to this file for 2.4 kernels. |
7 | * | 7 | * |
8 | * Copyright (C) 1999 Hewlett-Packard Co. | 8 | * Copyright (C) 1999 Hewlett-Packard Co. |
9 | * Copyright (C) 1999 Stephane Eranian <eranian@hpl.hp.com> | 9 | * Copyright (C) 1999 Stephane Eranian <eranian@hpl.hp.com> |
10 | */ | 10 | */ |
@@ -13,7 +13,7 @@ | |||
13 | 13 | ||
14 | /* | 14 | /* |
15 | * The struct used to pass data via the following ioctl. Similar to the | 15 | * The struct used to pass data via the following ioctl. Similar to the |
16 | * struct tm in <time.h>, but it needs to be here so that the kernel | 16 | * struct tm in <time.h>, but it needs to be here so that the kernel |
17 | * source is self contained, allowing cross-compiles, etc. etc. | 17 | * source is self contained, allowing cross-compiles, etc. etc. |
18 | */ | 18 | */ |
19 | 19 | ||
@@ -50,7 +50,7 @@ struct rtc_wkalrm { | |||
50 | * pll_value*pll_posmult/pll_clock | 50 | * pll_value*pll_posmult/pll_clock |
51 | * -ve pll_value means clock will run slower by | 51 | * -ve pll_value means clock will run slower by |
52 | * pll_value*pll_negmult/pll_clock | 52 | * pll_value*pll_negmult/pll_clock |
53 | */ | 53 | */ |
54 | 54 | ||
55 | struct rtc_pll_info { | 55 | struct rtc_pll_info { |
56 | int pll_ctrl; /* placeholder for fancier control */ | 56 | int pll_ctrl; /* placeholder for fancier control */ |
@@ -174,29 +174,28 @@ extern struct rtc_device *rtc_device_register(const char *name, | |||
174 | struct device *dev, | 174 | struct device *dev, |
175 | const struct rtc_class_ops *ops, | 175 | const struct rtc_class_ops *ops, |
176 | struct module *owner); | 176 | struct module *owner); |
177 | extern void rtc_device_unregister(struct rtc_device *rdev); | 177 | extern void rtc_device_unregister(struct rtc_device *rtc); |
178 | extern int rtc_interface_register(struct class_interface *intf); | ||
179 | 178 | ||
180 | extern int rtc_read_time(struct class_device *class_dev, struct rtc_time *tm); | 179 | extern int rtc_read_time(struct rtc_device *rtc, struct rtc_time *tm); |
181 | extern int rtc_set_time(struct class_device *class_dev, struct rtc_time *tm); | 180 | extern int rtc_set_time(struct rtc_device *rtc, struct rtc_time *tm); |
182 | extern int rtc_set_mmss(struct class_device *class_dev, unsigned long secs); | 181 | extern int rtc_set_mmss(struct rtc_device *rtc, unsigned long secs); |
183 | extern int rtc_read_alarm(struct class_device *class_dev, | 182 | extern int rtc_read_alarm(struct rtc_device *rtc, |
184 | struct rtc_wkalrm *alrm); | 183 | struct rtc_wkalrm *alrm); |
185 | extern int rtc_set_alarm(struct class_device *class_dev, | 184 | extern int rtc_set_alarm(struct rtc_device *rtc, |
186 | struct rtc_wkalrm *alrm); | 185 | struct rtc_wkalrm *alrm); |
187 | extern void rtc_update_irq(struct class_device *class_dev, | 186 | extern void rtc_update_irq(struct rtc_device *rtc, |
188 | unsigned long num, unsigned long events); | 187 | unsigned long num, unsigned long events); |
189 | 188 | ||
190 | extern struct class_device *rtc_class_open(char *name); | 189 | extern struct rtc_device *rtc_class_open(char *name); |
191 | extern void rtc_class_close(struct class_device *class_dev); | 190 | extern void rtc_class_close(struct rtc_device *rtc); |
192 | 191 | ||
193 | extern int rtc_irq_register(struct class_device *class_dev, | 192 | extern int rtc_irq_register(struct rtc_device *rtc, |
194 | struct rtc_task *task); | 193 | struct rtc_task *task); |
195 | extern void rtc_irq_unregister(struct class_device *class_dev, | 194 | extern void rtc_irq_unregister(struct rtc_device *rtc, |
196 | struct rtc_task *task); | 195 | struct rtc_task *task); |
197 | extern int rtc_irq_set_state(struct class_device *class_dev, | 196 | extern int rtc_irq_set_state(struct rtc_device *rtc, |
198 | struct rtc_task *task, int enabled); | 197 | struct rtc_task *task, int enabled); |
199 | extern int rtc_irq_set_freq(struct class_device *class_dev, | 198 | extern int rtc_irq_set_freq(struct rtc_device *rtc, |
200 | struct rtc_task *task, int freq); | 199 | struct rtc_task *task, int freq); |
201 | 200 | ||
202 | typedef struct rtc_task { | 201 | typedef struct rtc_task { |