diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/rtc.h | 5 | ||||
-rw-r--r-- | include/linux/rtc/ds1685.h | 12 |
2 files changed, 10 insertions, 7 deletions
diff --git a/include/linux/rtc.h b/include/linux/rtc.h index df666cf29ef1..4e9d3c71addb 100644 --- a/include/linux/rtc.h +++ b/include/linux/rtc.h @@ -159,11 +159,16 @@ struct rtc_device { }; #define to_rtc_device(d) container_of(d, struct rtc_device, dev) +#define rtc_lock(d) mutex_lock(&d->ops_lock) +#define rtc_unlock(d) mutex_unlock(&d->ops_lock) + /* useful timestamps */ +#define RTC_TIMESTAMP_BEGIN_0000 -62167219200ULL /* 0000-01-01 00:00:00 */ #define RTC_TIMESTAMP_BEGIN_1900 -2208988800LL /* 1900-01-01 00:00:00 */ #define RTC_TIMESTAMP_BEGIN_2000 946684800LL /* 2000-01-01 00:00:00 */ #define RTC_TIMESTAMP_END_2063 2966371199LL /* 2063-12-31 23:59:59 */ #define RTC_TIMESTAMP_END_2099 4102444799LL /* 2099-12-31 23:59:59 */ +#define RTC_TIMESTAMP_END_2199 7258118399LL /* 2199-12-31 23:59:59 */ #define RTC_TIMESTAMP_END_9999 253402300799LL /* 9999-12-31 23:59:59 */ extern struct rtc_device *devm_rtc_device_register(struct device *dev, diff --git a/include/linux/rtc/ds1685.h b/include/linux/rtc/ds1685.h index 43aec568ba7c..67ee9d20cc5a 100644 --- a/include/linux/rtc/ds1685.h +++ b/include/linux/rtc/ds1685.h @@ -42,14 +42,11 @@ struct ds1685_priv { struct rtc_device *dev; void __iomem *regs; + void __iomem *data; u32 regstep; - resource_size_t baseaddr; - size_t size; int irq_num; bool bcd_mode; bool no_irq; - bool uie_unsupported; - bool alloc_io_resources; u8 (*read)(struct ds1685_priv *, int); void (*write)(struct ds1685_priv *, int, u8); void (*prepare_poweroff)(void); @@ -74,12 +71,13 @@ struct ds1685_rtc_platform_data { const bool bcd_mode; const bool no_irq; const bool uie_unsupported; - const bool alloc_io_resources; - u8 (*plat_read)(struct ds1685_priv *, int); - void (*plat_write)(struct ds1685_priv *, int, u8); void (*plat_prepare_poweroff)(void); void (*plat_wake_alarm)(void); void (*plat_post_ram_clear)(void); + enum { + ds1685_reg_direct, + ds1685_reg_indirect + } access_type; }; |