diff options
| author | Joshua Kinard <kumba@gentoo.org> | 2015-02-16 19:00:26 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-16 20:56:05 -0500 |
| commit | aaaf5fbf56f16c81a653713cc333b18ad6e25ea9 (patch) | |
| tree | 5416188285df8877c1e069f3db9a24541c2b057f /drivers/rtc/Kconfig | |
| parent | befeb596a7224119b60499eb20c7545f7a73f104 (diff) | |
rtc: add driver for DS1685 family of real time clocks
This adds a driver for the Dallas/Maxim DS1685-family of RTC chips. It
supports the DS1685/DS1687, DS1688/DS1691, DS1689/DS1693, DS17285/DS17287,
DS17485/DS17487, and DS17885/DS17887 RTC chips. These chips are commonly
found in SGI O2 and SGI Octane systems. It was originally derived from a
driver patch submitted by Matthias Fuchs many years ago for use in
EPPC-405-UC modules, which also used these RTCs. In addition to the
time-keeping functions, this RTC also handles the shutdown mechanism of
the O2 and Octane and acts as a partial NVRAM for the boot PROMS in these
systems.
Verified on both an SGI O2 and an SGI Octane.
Signed-off-by: Joshua Kinard <kumba@gentoo.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: 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 'drivers/rtc/Kconfig')
| -rw-r--r-- | drivers/rtc/Kconfig | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 3bc9ddbe5cf7..0cf2e1d9cb17 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig | |||
| @@ -801,6 +801,96 @@ config RTC_DRV_DS1553 | |||
| 801 | This driver can also be built as a module. If so, the module | 801 | This driver can also be built as a module. If so, the module |
| 802 | will be called rtc-ds1553. | 802 | will be called rtc-ds1553. |
| 803 | 803 | ||
| 804 | config RTC_DRV_DS1685_FAMILY | ||
| 805 | tristate "Dallas/Maxim DS1685 Family" | ||
| 806 | help | ||
| 807 | If you say yes here you get support for the Dallas/Maxim DS1685 | ||
| 808 | family of real time chips. This family includes the DS1685/DS1687, | ||
| 809 | DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and | ||
| 810 | DS17885/DS17887 chips. | ||
| 811 | |||
| 812 | This driver can also be built as a module. If so, the module | ||
| 813 | will be called rtc-ds1685. | ||
| 814 | |||
| 815 | choice | ||
| 816 | prompt "Subtype" | ||
| 817 | depends on RTC_DRV_DS1685_FAMILY | ||
| 818 | default RTC_DRV_DS1685 | ||
| 819 | |||
| 820 | config RTC_DRV_DS1685 | ||
| 821 | bool "DS1685/DS1687" | ||
| 822 | help | ||
| 823 | This enables support for the Dallas/Maxim DS1685/DS1687 real time | ||
| 824 | clock chip. | ||
| 825 | |||
| 826 | This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30) | ||
| 827 | systems, as well as EPPC-405-UC modules by electronic system design | ||
| 828 | GmbH. | ||
| 829 | |||
| 830 | config RTC_DRV_DS1689 | ||
| 831 | bool "DS1689/DS1693" | ||
| 832 | help | ||
| 833 | This enables support for the Dallas/Maxim DS1689/DS1693 real time | ||
| 834 | clock chip. | ||
| 835 | |||
| 836 | This is an older RTC chip, supplanted by the DS1685/DS1687 above, | ||
| 837 | which supports a few minor features such as Vcc, Vbat, and Power | ||
| 838 | Cycle counters, plus a customer-specific, 8-byte ROM/Serial number. | ||
| 839 | |||
| 840 | It also works for the even older DS1688/DS1691 RTC chips, which are | ||
| 841 | virtually the same and carry the same model number. Both chips | ||
| 842 | have 114 bytes of user NVRAM. | ||
| 843 | |||
| 844 | config RTC_DRV_DS17285 | ||
| 845 | bool "DS17285/DS17287" | ||
| 846 | help | ||
| 847 | This enables support for the Dallas/Maxim DS17285/DS17287 real time | ||
| 848 | clock chip. | ||
| 849 | |||
| 850 | This chip features 2kb of extended NV-SRAM. It may possibly be | ||
| 851 | found in some SGI O2 systems (rare). | ||
| 852 | |||
| 853 | config RTC_DRV_DS17485 | ||
| 854 | bool "DS17485/DS17487" | ||
| 855 | help | ||
| 856 | This enables support for the Dallas/Maxim DS17485/DS17487 real time | ||
| 857 | clock chip. | ||
| 858 | |||
| 859 | This chip features 4kb of extended NV-SRAM. | ||
| 860 | |||
| 861 | config RTC_DRV_DS17885 | ||
| 862 | bool "DS17885/DS17887" | ||
| 863 | help | ||
| 864 | This enables support for the Dallas/Maxim DS17885/DS17887 real time | ||
| 865 | clock chip. | ||
| 866 | |||
| 867 | This chip features 8kb of extended NV-SRAM. | ||
| 868 | |||
| 869 | endchoice | ||
| 870 | |||
| 871 | config RTC_DS1685_PROC_REGS | ||
| 872 | bool "Display register values in /proc" | ||
| 873 | depends on RTC_DRV_DS1685_FAMILY && PROC_FS | ||
| 874 | help | ||
| 875 | Enable this to display a readout of all of the RTC registers in | ||
| 876 | /proc/drivers/rtc. Keep in mind that this can potentially lead | ||
| 877 | to lost interrupts, as reading Control Register C will clear | ||
| 878 | all pending IRQ flags. | ||
| 879 | |||
| 880 | Unless you are debugging this driver, choose N. | ||
| 881 | |||
| 882 | config RTC_DS1685_SYSFS_REGS | ||
| 883 | bool "SysFS access to RTC register bits" | ||
| 884 | depends on RTC_DRV_DS1685_FAMILY && SYSFS | ||
| 885 | help | ||
| 886 | Enable this to provide access to the RTC control register bits | ||
| 887 | in /sys. Some of the bits are read-write, others are read-only. | ||
| 888 | |||
| 889 | Keep in mind that reading Control C's bits automatically clears | ||
| 890 | all pending IRQ flags - this can cause lost interrupts. | ||
| 891 | |||
| 892 | If you know that you need access to these bits, choose Y, Else N. | ||
| 893 | |||
| 804 | config RTC_DRV_DS1742 | 894 | config RTC_DRV_DS1742 |
| 805 | tristate "Maxim/Dallas DS1742/1743" | 895 | tristate "Maxim/Dallas DS1742/1743" |
| 806 | depends on HAS_IOMEM | 896 | depends on HAS_IOMEM |
