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 |