Free Electrons

Embedded Linux Experts

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
#
# RTC class/drivers configuration
#

config RTC_LIB
	bool

config RTC_MC146818_LIB
	bool
	select RTC_LIB

menuconfig RTC_CLASS
	bool "Real Time Clock"
	default n
	depends on !S390 && !UML
	select RTC_LIB
	help
	  Generic RTC class support. If you say yes here, you will
	  be allowed to plug one or more RTCs to your system. You will
	  probably want to enable one or more of the interfaces below.

if RTC_CLASS

config RTC_HCTOSYS
	bool "Set system time from RTC on startup and resume"
	default y
	help
	  If you say yes here, the system time (wall clock) will be set using
	  the value read from a specified RTC device. This is useful to avoid
	  unnecessary fsck runs at boot time, and to network better.

config RTC_HCTOSYS_DEVICE
	string "RTC used to set the system time"
	depends on RTC_HCTOSYS
	default "rtc0"
	help
	  The RTC device that will be used to (re)initialize the system
	  clock, usually rtc0. Initialization is done when the system
	  starts up, and when it resumes from a low power state. This
	  device should record time in UTC, since the kernel won't do
	  timezone correction.

	  The driver for this RTC device must be loaded before late_initcall
	  functions run, so it must usually be statically linked.

	  This clock should be battery-backed, so that it reads the correct
	  time when the system boots from a power-off state. Otherwise, your
	  system will need an external clock source (like an NTP server).

	  If the clock you specify here is not battery backed, it may still
	  be useful to reinitialize system time when resuming from system
	  sleep states. Do not specify an RTC here unless it stays powered
	  during all this system's supported sleep states.

config RTC_SYSTOHC
	bool "Set the RTC time based on NTP synchronization"
	default y
	help
	  If you say yes here, the system time (wall clock) will be stored
	  in the RTC specified by RTC_HCTOSYS_DEVICE approximately every 11
	  minutes if userspace reports synchronized NTP status.

config RTC_SYSTOHC_DEVICE
	string "RTC used to synchronize NTP adjustment"
	depends on RTC_SYSTOHC
	default RTC_HCTOSYS_DEVICE if RTC_HCTOSYS
	default "rtc0"
	help
	  The RTC device used for NTP synchronization. The main difference
	  between RTC_HCTOSYS_DEVICE and RTC_SYSTOHC_DEVICE is that this
	  one can sleep when setting time, because it runs in the workqueue
	  context.

config RTC_DEBUG
	bool "RTC debug support"
	help
	  Say yes here to enable debugging support in the RTC framework
	  and individual RTC drivers.

config RTC_NVMEM
	bool "RTC non volatile storage support"
	select NVMEM
	default RTC_CLASS
	help
	  Say yes here to add support for the non volatile (often battery
	  backed) storage present on RTCs.

comment "RTC interfaces"

config RTC_INTF_SYSFS
	bool "/sys/class/rtc/rtcN (sysfs)"
	depends on SYSFS
	default RTC_CLASS
	help
	  Say yes here if you want to use your RTCs using sysfs interfaces,
	  /sys/class/rtc/rtc0 through /sys/.../rtcN.

	  If unsure, say Y.

config RTC_INTF_PROC
	bool "/proc/driver/rtc (procfs for rtcN)"
	depends on PROC_FS
	default RTC_CLASS
	help
	  Say yes here if you want to use your system clock RTC through
	  the proc interface, /proc/driver/rtc.
	  Other RTCs will not be available through that API.
	  If there is no RTC for the system clock, then the first RTC(rtc0)
	  is used by default.

	  If unsure, say Y.

config RTC_INTF_DEV
	bool "/dev/rtcN (character devices)"
	default RTC_CLASS
	help
	  Say yes here if you want to use your RTCs using the /dev
	  interfaces, which "udev" sets up as /dev/rtc0 through
	  /dev/rtcN.

	  You may want to set up a symbolic link so one of these
	  can be accessed as /dev/rtc, which is a name
	  expected by "hwclock" and some other programs. Recent
	  versions of "udev" are known to set up the symlink for you.

	  If unsure, say Y.

config RTC_INTF_DEV_UIE_EMUL
	bool "RTC UIE emulation on dev interface"
	depends on RTC_INTF_DEV
	help
	  Provides an emulation for RTC_UIE if the underlying rtc chip
	  driver does not expose RTC_UIE ioctls. Those requests generate
	  once-per-second update interrupts, used for synchronization.

	  The emulation code will read the time from the hardware
	  clock several times per second, please enable this option
	  only if you know that you really need it.

config RTC_DRV_TEST
	tristate "Test driver/device"
	help
	  If you say yes here you get support for the
	  RTC test driver. It's a software RTC which can be
	  used to test the RTC subsystem APIs. It gets
	  the time from the system clock.
	  You want this driver only if you are doing development
	  on the RTC subsystem. Please read the source code
	  for further details.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-test.

comment "I2C RTC drivers"

if I2C

config RTC_DRV_88PM860X
	tristate "Marvell 88PM860x"
	depends on MFD_88PM860X
	help
	  If you say yes here you get support for RTC function in Marvell
	  88PM860x chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-88pm860x.

config RTC_DRV_88PM80X
	tristate "Marvell 88PM80x"
	depends on MFD_88PM800
	help
	  If you say yes here you get support for RTC function in Marvell
	  88PM80x chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-88pm80x.

config RTC_DRV_ABB5ZES3
	select REGMAP_I2C
	tristate "Abracon AB-RTCMC-32.768kHz-B5ZE-S3"
	help
	  If you say yes here you get support for the Abracon
	  AB-RTCMC-32.768kHz-B5ZE-S3 I2C RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ab-b5ze-s3.

config RTC_DRV_ABX80X
	tristate "Abracon ABx80x"
	help
	  If you say yes here you get support for Abracon AB080X and AB180X
	  families of ultra-low-power  battery- and capacitor-backed real-time
	  clock chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-abx80x.

config RTC_DRV_AC100
	tristate "X-Powers AC100"
	depends on MFD_AC100
	help
	  If you say yes here you get support for the real-time clock found
	  in X-Powers AC100 family peripheral ICs.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ac100.

config RTC_DRV_BRCMSTB
	tristate "Broadcom STB wake-timer"
	depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
	default ARCH_BRCMSTB || BMIPS_GENERIC
	help
	  If you say yes here you get support for the wake-timer found on
	  Broadcom STB SoCs (BCM7xxx).

	  This driver can also be built as a module. If so, the module will
	  be called rtc-brcmstb-waketimer.

config RTC_DRV_AS3722
	tristate "ams AS3722 RTC driver"
	depends on MFD_AS3722
	help
	  If you say yes here you get support for the RTC of ams AS3722 PMIC
	  chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-as3722.

config RTC_DRV_DS1307
	tristate "Dallas/Maxim DS1307/37/38/39/40/41, ST M41T00, EPSON RX-8025, ISL12057"
	help
	  If you say yes here you get support for various compatible RTC
	  chips (often with battery backup) connected with I2C. This driver
	  should handle DS1307, DS1337, DS1338, DS1339, DS1340, DS1341,
	  ST M41T00, EPSON RX-8025, Intersil ISL12057 and probably other chips.
	  In some cases the RTC must already have been initialized (by
	  manufacturing or a bootloader).

	  The first seven registers on these chips hold an RTC, and other
	  registers may add features such as NVRAM, a trickle charger for
	  the RTC/NVRAM backup power, and alarms. NVRAM is visible in
	  sysfs, but other chip features may not be available.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1307.

config RTC_DRV_DS1307_HWMON
	bool "HWMON support for rtc-ds1307"
	depends on RTC_DRV_DS1307 && HWMON
	depends on !(RTC_DRV_DS1307=y && HWMON=m)
	default y
	help
	  Say Y here if you want to expose temperature sensor data on
	  rtc-ds1307 (only DS3231)

config RTC_DRV_DS1307_CENTURY
	bool "Century bit support for rtc-ds1307"
	depends on RTC_DRV_DS1307
	default n
	help
	  The DS1307 driver suffered from a bug where it was enabling the
	  century bit inconditionnally but never used it when reading the time.
	  It made the driver unable to support dates beyond 2099.
	  Setting this option will add proper support for the century bit but if
	  the time was previously set using a kernel predating this option,
	  reading the date will return a date in the next century.
	  To solve that, you could boot a kernel without this option set, set
	  the RTC date and then boot a kernel with this option set.

config RTC_DRV_DS1374
	tristate "Dallas/Maxim DS1374"
	help
	  If you say yes here you get support for Dallas Semiconductor
	  DS1374 real-time clock chips. If an interrupt is associated
	  with the device, the alarm functionality is supported.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1374.

config RTC_DRV_DS1374_WDT
	bool "Dallas/Maxim DS1374 watchdog timer"
	depends on RTC_DRV_DS1374
	help
	  If you say Y here you will get support for the
	  watchdog timer in the Dallas Semiconductor DS1374
	  real-time clock chips.

config RTC_DRV_DS1672
	tristate "Dallas/Maxim DS1672"
	help
	  If you say yes here you get support for the
	  Dallas/Maxim DS1672 timekeeping chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1672.

config RTC_DRV_HYM8563
	tristate "Haoyu Microelectronics HYM8563"
	depends on OF
	help
	  Say Y to enable support for the HYM8563 I2C RTC chip. Apart
	  from the usual rtc functions it provides a clock output of
	  up to 32kHz.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-hym8563.

config RTC_DRV_LP8788
	tristate "TI LP8788 RTC driver"
	depends on MFD_LP8788
	help
	  Say Y to enable support for the LP8788 RTC/ALARM driver.

config RTC_DRV_MAX6900
	tristate "Maxim MAX6900"
	help
	  If you say yes here you will get support for the
	  Maxim MAX6900 I2C RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max6900.

config RTC_DRV_MAX8907
	tristate "Maxim MAX8907"
	depends on MFD_MAX8907 || COMPILE_TEST
	help
	  If you say yes here you will get support for the
	  RTC of Maxim MAX8907 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max8907.

config RTC_DRV_MAX8925
	tristate "Maxim MAX8925"
	depends on MFD_MAX8925
	help
	  If you say yes here you will get support for the
	  RTC of Maxim MAX8925 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max8925.

config RTC_DRV_MAX8998
	tristate "Maxim MAX8998"
	depends on MFD_MAX8998
	help
	  If you say yes here you will get support for the
	  RTC of Maxim MAX8998 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max8998.

config RTC_DRV_MAX8997
	tristate "Maxim MAX8997"
	depends on MFD_MAX8997
	help
	  If you say yes here you will get support for the
	  RTC of Maxim MAX8997 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max8997.

config RTC_DRV_MAX77686
	tristate "Maxim MAX77686"
	depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST
	help
	  If you say yes here you will get support for the
	  RTC of Maxim MAX77686/MAX77620/MAX77802 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max77686.

config RTC_DRV_RK808
	tristate "Rockchip RK805/RK808/RK818 RTC"
	depends on MFD_RK808
	help
	  If you say yes here you will get support for the
	  RTC of RK805, RK808 and RK818 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rk808-rtc.

config RTC_DRV_RS5C372
	tristate "Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A"
	help
	  If you say yes here you get support for the
	  Ricoh R2025S/D, RS5C372A, RS5C372B, RV5C386, and RV5C387A RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rs5c372.

config RTC_DRV_ISL1208
	tristate "Intersil ISL1208"
	help
	  If you say yes here you get support for the
	  Intersil ISL1208 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-isl1208.

config RTC_DRV_ISL12022
	tristate "Intersil ISL12022"
	help
	  If you say yes here you get support for the
	  Intersil ISL12022 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-isl12022.

config RTC_DRV_X1205
	tristate "Xicor/Intersil X1205"
	help
	  If you say yes here you get support for the
	  Xicor/Intersil X1205 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-x1205.

config RTC_DRV_PCF8523
	tristate "NXP PCF8523"
	help
	  If you say yes here you get support for the NXP PCF8523 RTC
	  chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf8523.

config RTC_DRV_PCF85063
	tristate "NXP PCF85063"
	help
	  If you say yes here you get support for the PCF85063 RTC chip

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf85063.

config RTC_DRV_PCF8563
	tristate "Philips PCF8563/Epson RTC8564"
	help
	  If you say yes here you get support for the
	  Philips PCF8563 RTC chip. The Epson RTC8564
	  should work as well.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf8563.

config RTC_DRV_PCF8583
	tristate "Philips PCF8583"
	help
	  If you say yes here you get support for the Philips PCF8583
	  RTC chip found on Acorn RiscPCs. This driver supports the
	  platform specific method of retrieving the current year from
	  the RTC's SRAM. It will work on other platforms with the same
	  chip, but the year will probably have to be tweaked.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf8583.

config RTC_DRV_M41T80
	tristate "ST M41T62/65/M41T80/81/82/83/84/85/87 and compatible"
	help
	  If you say Y here you will get support for the ST M41T60
	  and M41T80 RTC chips series. Currently, the following chips are
	  supported: M41T62, M41T65, M41T80, M41T81, M41T82, M41T83, M41ST84,
	  M41ST85, M41ST87, and MicroCrystal RV4162.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-m41t80.

config RTC_DRV_M41T80_WDT
	bool "ST M41T65/M41T80 series RTC watchdog timer"
	depends on RTC_DRV_M41T80
	help
	  If you say Y here you will get support for the
	  watchdog timer in the ST M41T60 and M41T80 RTC chips series.

config RTC_DRV_BQ32K
	tristate "TI BQ32000"
	help
	  If you say Y here you will get support for the TI
	  BQ32000 I2C RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-bq32k.

config RTC_DRV_DM355EVM
	tristate "TI DaVinci DM355 EVM RTC"
	depends on MFD_DM355EVM_MSP
	help
	  Supports the RTC firmware in the MSP430 on the DM355 EVM.

config RTC_DRV_TWL92330
	bool "TI TWL92330/Menelaus"
	depends on MENELAUS
	help
	  If you say yes here you get support for the RTC on the
	  TWL92330 "Menelaus" power management chip, used with OMAP2
	  platforms. The support is integrated with the rest of
	  the Menelaus driver; it's not separate module.

config RTC_DRV_TWL4030
	tristate "TI TWL4030/TWL5030/TWL6030/TPS659x0"
	depends on TWL4030_CORE
	depends on OF
	help
	  If you say yes here you get support for the RTC on the
	  TWL4030/TWL5030/TWL6030 family chips, used mostly with OMAP3 platforms.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-twl.

config RTC_DRV_PALMAS
	tristate "TI Palmas RTC driver"
	depends on MFD_PALMAS
	help
	  If you say yes here you get support for the RTC of TI PALMA series PMIC
	  chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-palma.

config RTC_DRV_TPS6586X
	tristate "TI TPS6586X RTC driver"
	depends on MFD_TPS6586X
	help
	  TI Power Management IC TPS6586X supports RTC functionality
	  along with alarm. This driver supports the RTC driver for
	  the TPS6586X RTC module.

config RTC_DRV_TPS65910
	tristate "TI TPS65910 RTC driver"
	depends on RTC_CLASS && MFD_TPS65910
	help
	  If you say yes here you get support for the RTC on the
	  TPS65910 chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-tps65910.

config RTC_DRV_TPS80031
	tristate "TI TPS80031/TPS80032 RTC driver"
	depends on MFD_TPS80031
	help
	  TI Power Management IC TPS80031 supports RTC functionality
	  along with alarm. This driver supports the RTC driver for
	  the TPS80031 RTC module.

config RTC_DRV_RC5T583
	tristate "RICOH 5T583 RTC driver"
	depends on MFD_RC5T583
	help
	  If you say yes here you get support for the RTC on the
	  RICOH 5T583 chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rc5t583.

config RTC_DRV_S35390A
	tristate "Seiko Instruments S-35390A"
	select BITREVERSE
	help
	  If you say yes here you will get support for the Seiko
	  Instruments S-35390A.

	  This driver can also be built as a module. If so the module
	  will be called rtc-s35390a.

config RTC_DRV_FM3130
	tristate "Ramtron FM3130"
	help
	  If you say Y here you will get support for the
	  Ramtron FM3130 RTC chips.
	  Ramtron FM3130 is a chip with two separate devices inside,
	  RTC clock and FRAM. This driver provides only RTC functionality.

	  This driver can also be built as a module. If so the module
	  will be called rtc-fm3130.

config RTC_DRV_RX8010
	tristate "Epson RX8010SJ"
	depends on I2C
	help
	  If you say yes here you get support for the Epson RX8010SJ RTC
	  chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rx8010.

config RTC_DRV_RX8581
	tristate "Epson RX-8581"
	help
	  If you say yes here you will get support for the Epson RX-8581.

	  This driver can also be built as a module. If so the module
	  will be called rtc-rx8581.

config RTC_DRV_RX8025
	tristate "Epson RX-8025SA/NB"
	help
	  If you say yes here you get support for the Epson
	  RX-8025SA/NB RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rx8025.

config RTC_DRV_EM3027
	tristate "EM Microelectronic EM3027"
	help
	  If you say yes here you get support for the EM
	  Microelectronic EM3027 RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-em3027.

config RTC_DRV_RV8803
	tristate "Micro Crystal RV8803, Epson RX8900"
	help
	  If you say yes here you get support for the Micro Crystal RV8803 and
	  Epson RX8900 RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rv8803.

config RTC_DRV_S5M
	tristate "Samsung S2M/S5M series"
	depends on MFD_SEC_CORE || COMPILE_TEST
	select REGMAP_IRQ
	help
	  If you say yes here you will get support for the
	  RTC of Samsung S2MPS14 and S5M PMIC series.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-s5m.

endif # I2C

comment "SPI RTC drivers"

if SPI_MASTER

config RTC_DRV_M41T93
	tristate "ST M41T93"
	help
	  If you say yes here you will get support for the
	  ST M41T93 SPI RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-m41t93.

config RTC_DRV_M41T94
	tristate "ST M41T94"
	help
	  If you say yes here you will get support for the
	  ST M41T94 SPI RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-m41t94.

config RTC_DRV_DS1302
	tristate "Dallas/Maxim DS1302"
	depends on SPI
	help
	  If you say yes here you get support for the Dallas DS1302 RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1302.

config RTC_DRV_DS1305
	tristate "Dallas/Maxim DS1305/DS1306"
	help
	  Select this driver to get support for the Dallas/Maxim DS1305
	  and DS1306 real time clock chips. These support a trickle
	  charger, alarms, and NVRAM in addition to the clock.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1305.

config RTC_DRV_DS1343
	select REGMAP_SPI
	tristate "Dallas/Maxim DS1343/DS1344"
	help
	  If you say yes here you get support for the
	  Dallas/Maxim DS1343 and DS1344 real time clock chips.
	  Support for trickle charger, alarm is provided.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1343.

config RTC_DRV_DS1347
	select REGMAP_SPI
	tristate "Dallas/Maxim DS1347"
	help
	  If you say yes here you get support for the
	  Dallas/Maxim DS1347 chips.

	  This driver only supports the RTC feature, and not other chip
	  features such as alarms.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1347.

config RTC_DRV_DS1390
	tristate "Dallas/Maxim DS1390/93/94"
	help
	  If you say yes here you get support for the
	  Dallas/Maxim DS1390/93/94 chips.

	  This driver supports the RTC feature and trickle charging but not
	  other chip features such as alarms.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1390.

config RTC_DRV_MAX6916
	tristate "Maxim MAX6916"
	help
	  If you say yes here you will get support for the
	  Maxim MAX6916 SPI RTC chip.

	  This driver only supports the RTC feature, and not other chip
	  features such as alarms.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max6916.

config RTC_DRV_R9701
	tristate "Epson RTC-9701JE"
	help
	  If you say yes here you will get support for the
	  Epson RTC-9701JE SPI RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-r9701.

config RTC_DRV_RX4581
	tristate "Epson RX-4581"
	help
	  If you say yes here you will get support for the Epson RX-4581.

	  This driver can also be built as a module. If so the module
	  will be called rtc-rx4581.

config RTC_DRV_RX6110
	tristate "Epson RX-6110"
	select REGMAP_SPI
	help
	  If you say yes here you will get support for the Epson RX-6610.

	  This driver can also be built as a module. If so the module
	  will be called rtc-rx6110.

config RTC_DRV_RS5C348
	tristate "Ricoh RS5C348A/B"
	help
	  If you say yes here you get support for the
	  Ricoh RS5C348A and RS5C348B RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rs5c348.

config RTC_DRV_MAX6902
	tristate "Maxim MAX6902"
	help
	  If you say yes here you will get support for the
	  Maxim MAX6902 SPI RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-max6902.

config RTC_DRV_PCF2123
	tristate "NXP PCF2123"
	help
	  If you say yes here you get support for the NXP PCF2123
	  RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf2123.

config RTC_DRV_MCP795
	tristate "Microchip MCP795"
	help
	  If you say yes here you will get support for the Microchip MCP795.

	  This driver can also be built as a module. If so the module
	  will be called rtc-mcp795.

endif # SPI_MASTER

#
# Helper to resolve issues with configs that have SPI enabled but I2C
# modular.  See SND_SOC_I2C_AND_SPI for more information
#
config RTC_I2C_AND_SPI
	tristate
	default m if I2C=m
	default y if I2C=y
	default y if SPI_MASTER=y
	select REGMAP_I2C if I2C
	select REGMAP_SPI if SPI_MASTER

comment "SPI and I2C RTC drivers"

config RTC_DRV_DS3232
	tristate "Dallas/Maxim DS3232/DS3234"
	depends on RTC_I2C_AND_SPI
	help
	  If you say yes here you get support for Dallas Semiconductor
	  DS3232 and DS3234 real-time clock chips. If an interrupt is associated
	  with the device, the alarm functionality is supported.

	  This driver can also be built as a module.  If so, the module
	  will be called rtc-ds3232.

config RTC_DRV_DS3232_HWMON
	bool "HWMON support for Dallas/Maxim DS3232/DS3234"
	depends on RTC_DRV_DS3232 && HWMON && !(RTC_DRV_DS3232=y && HWMON=m)
	default y
	help
	  Say Y here if you want to expose temperature sensor data on
	  rtc-ds3232

config RTC_DRV_PCF2127
	tristate "NXP PCF2127"
	depends on RTC_I2C_AND_SPI
	help
	  If you say yes here you get support for the NXP PCF2127/29 RTC
	  chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf2127.

config RTC_DRV_RV3029C2
	tristate "Micro Crystal RV3029/3049"
	depends on RTC_I2C_AND_SPI
	help
	  If you say yes here you get support for the Micro Crystal
	  RV3029 and RV3049 RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rv3029c2.

config RTC_DRV_RV3029_HWMON
	bool "HWMON support for RV3029/3049"
	depends on RTC_DRV_RV3029C2 && HWMON
	depends on !(RTC_DRV_RV3029C2=y && HWMON=m)
	default y
	help
	  Say Y here if you want to expose temperature sensor data on
	  rtc-rv3029.

comment "Platform RTC drivers"

# this 'CMOS' RTC driver is arch dependent because it requires
# <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
# global rtc_lock ... it's not yet just another platform_device.

config RTC_DRV_CMOS
	tristate "PC-style 'CMOS'"
	depends on X86 || ARM || M32R || PPC || MIPS || SPARC64 || MN10300
	default y if X86
	select RTC_MC146818_LIB
	help
	  Say "yes" here to get direct support for the real time clock
	  found in every PC or ACPI-based system, and some other boards.
	  Specifically the original MC146818, compatibles like those in
	  PC south bridges, the DS12887 or M48T86, some multifunction
	  or LPC bus chips, and so on.

	  Your system will need to define the platform device used by
	  this driver, otherwise it won't be accessible. This means
	  you can safely enable this driver if you don't know whether
	  or not your board has this kind of hardware.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-cmos.

config RTC_DRV_ALPHA
	bool "Alpha PC-style CMOS"
	depends on ALPHA
	select RTC_MC146818_LIB
	default y
	help
	  Direct support for the real-time clock found on every Alpha
	  system, specifically MC146818 compatibles.  If in doubt, say Y.

config RTC_DRV_VRTC
	tristate "Virtual RTC for Intel MID platforms"
	depends on X86_INTEL_MID
	default y if X86_INTEL_MID

	help
	Say "yes" here to get direct support for the real time clock
	found on Moorestown platforms. The VRTC is a emulated RTC that
	derives its clock source from a real RTC in the PMIC. The MC146818
	style programming interface is mostly conserved, but any
	updates are done via IPC calls to the system controller FW.

config RTC_DRV_DS1216
	tristate "Dallas DS1216"
	depends on SNI_RM
	help
	  If you say yes here you get support for the Dallas DS1216 RTC chips.

config RTC_DRV_DS1286
	tristate "Dallas DS1286"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the Dallas DS1286 RTC chips.

config RTC_DRV_DS1511
	tristate "Dallas DS1511"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the
	  Dallas DS1511 timekeeping/watchdog chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1511.

config RTC_DRV_DS1553
	tristate "Maxim/Dallas DS1553"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the
	  Maxim/Dallas DS1553 timekeeping chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1553.

config RTC_DRV_DS1685_FAMILY
	tristate "Dallas/Maxim DS1685 Family"
	help
	  If you say yes here you get support for the Dallas/Maxim DS1685
	  family of real time chips.  This family includes the DS1685/DS1687,
	  DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and
	  DS17885/DS17887 chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1685.

choice
	prompt "Subtype"
	depends on RTC_DRV_DS1685_FAMILY
	default RTC_DRV_DS1685

config RTC_DRV_DS1685
	bool "DS1685/DS1687"
	help
	  This enables support for the Dallas/Maxim DS1685/DS1687 real time
	  clock chip.

	  This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30)
	  systems, as well as EPPC-405-UC modules by electronic system design
	  GmbH.

config RTC_DRV_DS1689
	bool "DS1689/DS1693"
	help
	  This enables support for the Dallas/Maxim DS1689/DS1693 real time
	  clock chip.

	  This is an older RTC chip, supplanted by the DS1685/DS1687 above,
	  which supports a few minor features such as Vcc, Vbat, and Power
	  Cycle counters, plus a customer-specific, 8-byte ROM/Serial number.

	  It also works for the even older DS1688/DS1691 RTC chips, which are
	  virtually the same and carry the same model number.  Both chips
	  have 114 bytes of user NVRAM.

config RTC_DRV_DS17285
	bool "DS17285/DS17287"
	help
	  This enables support for the Dallas/Maxim DS17285/DS17287 real time
	  clock chip.

	  This chip features 2kb of extended NV-SRAM.  It may possibly be
	  found in some SGI O2 systems (rare).

config RTC_DRV_DS17485
	bool "DS17485/DS17487"
	help
	  This enables support for the Dallas/Maxim DS17485/DS17487 real time
	  clock chip.

	  This chip features 4kb of extended NV-SRAM.

config RTC_DRV_DS17885
	bool "DS17885/DS17887"
	help
	  This enables support for the Dallas/Maxim DS17885/DS17887 real time
	  clock chip.

	  This chip features 8kb of extended NV-SRAM.

endchoice

config RTC_DS1685_PROC_REGS
	bool "Display register values in /proc"
	depends on RTC_DRV_DS1685_FAMILY && PROC_FS
	help
	  Enable this to display a readout of all of the RTC registers in
	  /proc/drivers/rtc.  Keep in mind that this can potentially lead
	  to lost interrupts, as reading Control Register C will clear
	  all pending IRQ flags.

	  Unless you are debugging this driver, choose N.

config RTC_DS1685_SYSFS_REGS
	bool "SysFS access to RTC register bits"
	depends on RTC_DRV_DS1685_FAMILY && SYSFS
	help
	  Enable this to provide access to the RTC control register bits
	  in /sys.  Some of the bits are read-write, others are read-only.

	  Keep in mind that reading Control C's bits automatically clears
	  all pending IRQ flags - this can cause lost interrupts.

	  If you know that you need access to these bits, choose Y, Else N.

config RTC_DRV_DS1742
	tristate "Maxim/Dallas DS1742/1743"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the
	  Maxim/Dallas DS1742/1743 timekeeping chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds1742.

config RTC_DRV_DS2404
	tristate "Maxim/Dallas DS2404"
	help
	  If you say yes here you get support for the
	  Dallas DS2404 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ds2404.

config RTC_DRV_DA9052
	tristate "Dialog DA9052/DA9053 RTC"
	depends on PMIC_DA9052
	help
	  Say y here to support the RTC driver for Dialog Semiconductor
	  DA9052-BC and DA9053-AA/Bx PMICs.

config RTC_DRV_DA9055
	tristate "Dialog Semiconductor DA9055 RTC"
	depends on MFD_DA9055
	help
	  If you say yes here you will get support for the
	  RTC of the Dialog DA9055 PMIC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-da9055

config RTC_DRV_DA9063
	tristate "Dialog Semiconductor DA9063/DA9062 RTC"
	depends on MFD_DA9063 || MFD_DA9062
	help
	  If you say yes here you will get support for the RTC subsystem
	  for the Dialog Semiconductor PMIC chips DA9063 and DA9062.

	  This driver can also be built as a module. If so, the module
	  will be called "rtc-da9063".

config RTC_DRV_EFI
	tristate "EFI RTC"
	depends on EFI && !X86
	help
	  If you say yes here you will get support for the EFI
	  Real Time Clock.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-efi.

config RTC_DRV_STK17TA8
	tristate "Simtek STK17TA8"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the
	  Simtek STK17TA8 timekeeping chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-stk17ta8.

config RTC_DRV_M48T86
	tristate "ST M48T86/Dallas DS12887"
	help
	  If you say Y here you will get support for the
	  ST M48T86 and Dallas DS12887 RTC chips.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-m48t86.

config RTC_DRV_M48T35
	tristate "ST M48T35"
	depends on HAS_IOMEM
	help
	  If you say Y here you will get support for the
	  ST M48T35 RTC chip.

	  This driver can also be built as a module, if so, the module
	  will be called "rtc-m48t35".

config RTC_DRV_M48T59
	tristate "ST M48T59/M48T08/M48T02"
	depends on HAS_IOMEM
	help
	  If you say Y here you will get support for the
	  ST M48T59 RTC chip and compatible ST M48T08 and M48T02.

	  These chips are usually found in Sun SPARC and UltraSPARC
	  workstations.

	  This driver can also be built as a module, if so, the module
	  will be called "rtc-m48t59".

config RTC_DRV_MSM6242
	tristate "Oki MSM6242"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the Oki MSM6242
	  timekeeping chip. It is used in some Amiga models (e.g. A2000).

	  This driver can also be built as a module. If so, the module
	  will be called rtc-msm6242.

config RTC_DRV_BQ4802
	tristate "TI BQ4802"
	depends on HAS_IOMEM
	help
	  If you say Y here you will get support for the TI
	  BQ4802 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-bq4802.

config RTC_DRV_RP5C01
	tristate "Ricoh RP5C01"
	depends on HAS_IOMEM
	help
	  If you say yes here you get support for the Ricoh RP5C01
	  timekeeping chip. It is used in some Amiga models (e.g. A3000
	  and A4000).

	  This driver can also be built as a module. If so, the module
	  will be called rtc-rp5c01.

config RTC_DRV_V3020
	tristate "EM Microelectronic V3020"
	help
	  If you say yes here you will get support for the
	  EM Microelectronic v3020 RTC chip.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-v3020.

config RTC_DRV_WM831X
	tristate "Wolfson Microelectronics WM831x RTC"
	depends on MFD_WM831X
	help
	  If you say yes here you will get support for the RTC subsystem
	  of the Wolfson Microelectronics WM831X series PMICs.

	  This driver can also be built as a module. If so, the module
	  will be called "rtc-wm831x".

config RTC_DRV_WM8350
	tristate "Wolfson Microelectronics WM8350 RTC"
	depends on MFD_WM8350
	help
	  If you say yes here you will get support for the RTC subsystem
	  of the Wolfson Microelectronics WM8350.

	  This driver can also be built as a module. If so, the module
	  will be called "rtc-wm8350".

config RTC_DRV_SPEAR
	tristate "SPEAR ST RTC"
	depends on PLAT_SPEAR || COMPILE_TEST
	default y
	help
	 If you say Y here you will get support for the RTC found on
	 spear

config RTC_DRV_PCF50633
	depends on MFD_PCF50633
	tristate "NXP PCF50633 RTC"
	help
	  If you say yes here you get support for the RTC subsystem of the
	  NXP PCF50633 used in embedded systems.

config RTC_DRV_AB3100
	tristate "ST-Ericsson AB3100 RTC"
	depends on AB3100_CORE
	default y if AB3100_CORE
	help
	  Select this to enable the ST-Ericsson AB3100 Mixed Signal IC RTC
	  support. This chip contains a battery- and capacitor-backed RTC.

config RTC_DRV_AB8500
	tristate "ST-Ericsson AB8500 RTC"
	depends on AB8500_CORE
	select RTC_INTF_DEV
	select RTC_INTF_DEV_UIE_EMUL
	help
	  Select this to enable the ST-Ericsson AB8500 power management IC RTC
	  support. This chip contains a battery- and capacitor-backed RTC.

config RTC_DRV_NUC900
	tristate "NUC910/NUC920 RTC driver"
	depends on ARCH_W90X900 || COMPILE_TEST
	help
	  If you say yes here you get support for the RTC subsystem of the
	  NUC910/NUC920 used in embedded systems.

config RTC_DRV_OPAL
	tristate "IBM OPAL RTC driver"
	depends on PPC_POWERNV
	default y
	help
	  If you say yes here you get support for the PowerNV platform RTC
	  driver based on OPAL interfaces.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-opal.

config RTC_DRV_ZYNQMP
	tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
	depends on OF
	help
	  If you say yes here you get support for the RTC controller found on
	  Xilinx Zynq Ultrascale+ MPSoC.

comment "on-CPU RTC drivers"

config RTC_DRV_ASM9260
	tristate "Alphascale asm9260 RTC"
	depends on MACH_ASM9260 || COMPILE_TEST
	help
	  If you say yes here you get support for the RTC on the
	  Alphascale asm9260 SoC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-asm9260.

config RTC_DRV_DAVINCI
	tristate "TI DaVinci RTC"
	depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
	help
	  If you say yes here you get support for the RTC on the
	  DaVinci platforms (DM365).

	  This driver can also be built as a module. If so, the module
	  will be called rtc-davinci.

config RTC_DRV_DIGICOLOR
	tristate "Conexant Digicolor RTC"
	depends on ARCH_DIGICOLOR || COMPILE_TEST
	help
	  If you say yes here you get support for the RTC on Conexant
	  Digicolor platforms. This currently includes the CX92755 SoC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-digicolor.

config RTC_DRV_IMXDI
	tristate "Freescale IMX DryIce Real Time Clock"
	depends on ARCH_MXC
	help
	   Support for Freescale IMX DryIce RTC

	   This driver can also be built as a module, if so, the module
	   will be called "rtc-imxdi".

config RTC_DRV_OMAP
	tristate "TI OMAP Real Time Clock"
	depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
	depends on OF
	depends on PINCTRL
	select GENERIC_PINCONF
	help
	  Say "yes" here to support the on chip real time clock
	  present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.

	  This driver can also be built as a module, if so, module
	  will be called rtc-omap.

config HAVE_S3C_RTC
	bool
	help
	  This will include RTC support for Samsung SoCs. If
	  you want to include RTC support for any machine, kindly
	  select this in the respective mach-XXXX/Kconfig file.

config RTC_DRV_S3C
	tristate "Samsung S3C series SoC RTC"
	depends on ARCH_S3C64XX || HAVE_S3C_RTC || COMPILE_TEST
	help
	  RTC (Realtime Clock) driver for the clock inbuilt into the
	  Samsung S3C24XX series of SoCs. This can provide periodic
	  interrupt rates from 1Hz to 64Hz for user programs, and
	  wakeup from Alarm.

	  The driver currently supports the common features on all the
	  S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
	  and S3C2442.

	  This driver can also be build as a module. If so, the module
	  will be called rtc-s3c.

config RTC_DRV_EP93XX
	tristate "Cirrus Logic EP93XX"
	depends on ARCH_EP93XX || COMPILE_TEST
	help
	  If you say yes here you get support for the
	  RTC embedded in the Cirrus Logic EP93XX processors.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ep93xx.

config RTC_DRV_SA1100
	tristate "SA11x0/PXA2xx/PXA910"
	depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
	help
	  If you say Y here you will get access to the real time clock
	  built into your SA11x0 or PXA2xx CPU.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-sa1100.

config RTC_DRV_SH
	tristate "SuperH On-Chip RTC"
	depends on SUPERH || ARCH_RENESAS
	help
	  Say Y here to enable support for the on-chip RTC found in
	  most SuperH processors. This RTC is also found in RZ/A SoCs.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-sh.

config RTC_DRV_VR41XX
	tristate "NEC VR41XX"
	depends on CPU_VR41XX || COMPILE_TEST
	help
	  If you say Y here you will get access to the real time clock
	  built into your NEC VR41XX CPU.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-vr41xx.

config RTC_DRV_PL030
	tristate "ARM AMBA PL030 RTC"
	depends on ARM_AMBA
	help
	  If you say Y here you will get access to ARM AMBA
	  PrimeCell PL030 RTC found on certain ARM SOCs.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-pl030.

config RTC_DRV_PL031
	tristate "ARM AMBA PL031 RTC"
	depends on ARM_AMBA
	help
	  If you say Y here you will get access to ARM AMBA
	  PrimeCell PL031 RTC found on certain ARM SOCs.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-pl031.

config RTC_DRV_AT32AP700X
	tristate "AT32AP700X series RTC"
	depends on PLATFORM_AT32AP || COMPILE_TEST
	help
	  Driver for the internal RTC (Realtime Clock) on Atmel AVR32
	  AT32AP700x family processors.

config RTC_DRV_AT91RM9200
	tristate "AT91RM9200 or some AT91SAM9 RTC"
	depends on ARCH_AT91 || COMPILE_TEST
	help
	  Driver for the internal RTC (Realtime Clock) module found on
	  Atmel AT91RM9200's and some  AT91SAM9 chips. On AT91SAM9 chips
	  this is powered by the backup power supply.

config RTC_DRV_AT91SAM9
	tristate "AT91SAM9 RTT as RTC"
	depends on ARCH_AT91 || COMPILE_TEST
	select MFD_SYSCON
	help
	  Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
	  can be used as an RTC thanks to the backup power supply (e.g. a
	  small coin cell battery) which keeps this block and the GPBR
	  (General Purpose Backup Registers) block powered when the device
	  is shutdown.
	  Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
	  probably want to use the real RTC block instead of the "RTT as an
	  RTC" driver.

config RTC_DRV_AU1XXX
	tristate "Au1xxx Counter0 RTC support"
	depends on MIPS_ALCHEMY
	help
	  This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
	  counter) to be used as a RTC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-au1xxx.

config RTC_DRV_BFIN
	tristate "Blackfin On-Chip RTC"
	depends on BLACKFIN && !BF561
	help
	  If you say yes here you will get support for the
	  Blackfin On-Chip Real Time Clock.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-bfin.

config RTC_DRV_RS5C313
	tristate "Ricoh RS5C313"
	depends on SH_LANDISK
	help
	  If you say yes here you get support for the Ricoh RS5C313 RTC chips.

config RTC_DRV_GENERIC
	tristate "Generic RTC support"
	# Please consider writing a new RTC driver instead of using the generic
	# RTC abstraction
	depends on PARISC || M68K || PPC || SUPERH32 || COMPILE_TEST
	help
	  Say Y or M here to enable RTC support on systems using the generic
	  RTC abstraction. If you do not know what you are doing, you should
	  just say Y.

config RTC_DRV_PXA
	tristate "PXA27x/PXA3xx"
	depends on ARCH_PXA
	select RTC_DRV_SA1100
	help
         If you say Y here you will get access to the real time clock
         built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
         consisting of an SA1100 compatible RTC and the extended PXA RTC.

	 This RTC driver uses PXA RTC registers available since pxa27x
	 series (RDxR, RYxR) instead of legacy RCNR, RTAR.

config RTC_DRV_VT8500
	tristate "VIA/WonderMedia 85xx SoC RTC"
	depends on ARCH_VT8500 || COMPILE_TEST
	help
	  If you say Y here you will get access to the real time clock
	  built into your VIA VT8500 SoC or its relatives.


config RTC_DRV_SUN4V
	bool "SUN4V Hypervisor RTC"
	depends on SPARC64
	help
	  If you say Y here you will get support for the Hypervisor
	  based RTC on SUN4V systems.

config RTC_DRV_SUN6I
	bool "Allwinner A31 RTC"
	default MACH_SUN6I || MACH_SUN8I
	depends on COMMON_CLK
	depends on ARCH_SUNXI || COMPILE_TEST
	help
	  If you say Y here you will get support for the RTC found in
	  some Allwinner SoCs like the A31 or the A64.

config RTC_DRV_SUNXI
	tristate "Allwinner sun4i/sun7i RTC"
	depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
	help
	  If you say Y here you will get support for the RTC found on
	  Allwinner A10/A20.

config RTC_DRV_STARFIRE
	bool "Starfire RTC"
	depends on SPARC64
	help
	  If you say Y here you will get support for the RTC found on
	  Starfire systems.

config RTC_DRV_TX4939
	tristate "TX4939 SoC"
	depends on SOC_TX4939
	help
	  Driver for the internal RTC (Realtime Clock) module found on
	  Toshiba TX4939 SoC.

config RTC_DRV_MV
	tristate "Marvell SoC RTC"
	depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
	help
	  If you say yes here you will get support for the in-chip RTC
	  that can be found in some of Marvell's SoC devices, such as
	  the Kirkwood 88F6281 and 88F6192.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-mv.

config RTC_DRV_ARMADA38X
	tristate "Armada 38x Marvell SoC RTC"
	depends on ARCH_MVEBU || COMPILE_TEST
	help
	  If you say yes here you will get support for the in-chip RTC
	  that can be found in the Armada 38x Marvell's SoC device

	  This driver can also be built as a module. If so, the module
	  will be called armada38x-rtc.

config RTC_DRV_FTRTC010
	tristate "Faraday Technology FTRTC010 RTC"
	depends on HAS_IOMEM
	default ARCH_GEMINI
	help
	  If you say Y here you will get support for the
	  Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ftrtc010.

config RTC_DRV_PS3
	tristate "PS3 RTC"
	depends on PPC_PS3
	help
	  If you say yes here you will get support for the RTC on PS3.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ps3.

config RTC_DRV_COH901331
	tristate "ST-Ericsson COH 901 331 RTC"
	depends on ARCH_U300 || COMPILE_TEST
	help
	  If you say Y here you will get access to ST-Ericsson
	  COH 901 331 RTC clock found in some ST-Ericsson Mobile
	  Platforms.

	  This driver can also be built as a module. If so, the module
	  will be called "rtc-coh901331".


config RTC_DRV_STMP
	tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
	depends on ARCH_MXS || COMPILE_TEST
	select STMP_DEVICE
	help
	  If you say yes here you will get support for the onboard
	  STMP3xxx/i.MX23/i.MX28 RTC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-stmp3xxx.

config RTC_DRV_PCAP
	tristate "PCAP RTC"
	depends on EZX_PCAP
	help
	  If you say Y here you will get support for the RTC found on
	  the PCAP2 ASIC used on some Motorola phones.

config RTC_DRV_MC13XXX
	depends on MFD_MC13XXX
	tristate "Freescale MC13xxx RTC"
	help
	  This enables support for the RTCs found on Freescale's PMICs
	  MC13783 and MC13892.

config RTC_DRV_MPC5121
	tristate "Freescale MPC5121 built-in RTC"
	depends on PPC_MPC512x || PPC_MPC52xx
	help
	  If you say yes here you will get support for the
	  built-in RTC on MPC5121 or on MPC5200.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-mpc5121.

config RTC_DRV_JZ4740
	tristate "Ingenic JZ4740 SoC"
	depends on MACH_INGENIC || COMPILE_TEST
	help
	  If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
	  controllers.

	  This driver can also be buillt as a module. If so, the module
	  will be called rtc-jz4740.

config RTC_DRV_LPC24XX
	tristate "NXP RTC for LPC178x/18xx/408x/43xx"
	depends on ARCH_LPC18XX || COMPILE_TEST
	depends on OF && HAS_IOMEM
	help
	  This enables support for the NXP RTC found which can be found on
	  NXP LPC178x/18xx/408x/43xx devices.

	  If you have one of the devices above enable this driver to use
	  the hardware RTC. This driver can also be built as a module. If
	  so, the module will be called rtc-lpc24xx.

config RTC_DRV_LPC32XX
	depends on ARCH_LPC32XX || COMPILE_TEST
	tristate "NXP LPC32XX RTC"
	help
	  This enables support for the NXP RTC in the LPC32XX

	  This driver can also be built as a module. If so, the module
	  will be called rtc-lpc32xx.

config RTC_DRV_PM8XXX
	tristate "Qualcomm PMIC8XXX RTC"
	depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
	help
	  If you say yes here you get support for the
	  Qualcomm PMIC8XXX RTC.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-pm8xxx.

config RTC_DRV_TEGRA
	tristate "NVIDIA Tegra Internal RTC driver"
	depends on ARCH_TEGRA || COMPILE_TEST
	help
	  If you say yes here you get support for the
	  Tegra 200 series internal RTC module.

	  This drive can also be built as a module. If so, the module
	  will be called rtc-tegra.

config RTC_DRV_TILE
	tristate "Tilera hypervisor RTC support"
	depends on TILE
	help
	  Enable support for the Linux driver side of the Tilera
	  hypervisor's real-time clock interface.

config RTC_DRV_PUV3
	tristate "PKUnity v3 RTC support"
	depends on ARCH_PUV3
	help
	  This enables support for the RTC in the PKUnity-v3 SoCs.

	  This drive can also be built as a module. If so, the module
	  will be called rtc-puv3.

config RTC_DRV_LOONGSON1
	tristate "loongson1 RTC support"
	depends on MACH_LOONGSON32
	help
	  This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
	  counter) to be used as a RTC.

	  This driver can also be built as a module. If so, the module
	  will be called rtc-ls1x.

config RTC_DRV_MXC
	tristate "Freescale MXC Real Time Clock"
	depends on ARCH_MXC
	help
	   If you say yes here you get support for the Freescale MXC
	   RTC module.

	   This driver can also be built as a module, if so, the module
	   will be called "rtc-mxc".

config RTC_DRV_SNVS
	tristate "Freescale SNVS RTC support"
	select REGMAP_MMIO
	depends on HAS_IOMEM
	depends on OF
	help
	   If you say yes here you get support for the Freescale SNVS
	   Low Power (LP) RTC module.

	   This driver can also be built as a module, if so, the module
	   will be called "rtc-snvs".

config RTC_DRV_SIRFSOC
	tristate "SiRFSOC RTC"
	depends on ARCH_SIRF
	help
	  Say "yes" here to support the real time clock on SiRF SOC chips.
	  This driver can also be built as a module called rtc-sirfsoc.

config RTC_DRV_ST_LPC
	tristate "STMicroelectronics LPC RTC"
	depends on ARCH_STI
	depends on OF
	help
	  Say Y here to include STMicroelectronics Low Power Controller
	  (LPC) based RTC support.

	  To compile this driver as a module, choose M here: the
	  module will be called rtc-st-lpc.

config RTC_DRV_MOXART
	tristate "MOXA ART RTC"
	depends on ARCH_MOXART || COMPILE_TEST
	help
	   If you say yes here you get support for the MOXA ART
	   RTC module.

	   This driver can also be built as a module. If so, the module
	   will be called rtc-moxart

config RTC_DRV_MT6397
	tristate "Mediatek Real Time Clock driver"
	depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
	help
	  This selects the Mediatek(R) RTC driver. RTC is part of Mediatek
	  MT6397 PMIC. You should enable MT6397 PMIC MFD before select
	  Mediatek(R) RTC driver.

	  If you want to use Mediatek(R) RTC interface, select Y or M here.

config RTC_DRV_XGENE
	tristate "APM X-Gene RTC"
	depends on HAS_IOMEM
	depends on ARCH_XGENE || COMPILE_TEST
	help
	  If you say yes here you get support for the APM X-Gene SoC real time
	  clock.

	  This driver can also be built as a module, if so, the module
	  will be called "rtc-xgene".

config RTC_DRV_PIC32
	tristate "Microchip PIC32 RTC"
	depends on MACH_PIC32
	default y
	help
	   If you say yes here you get support for the PIC32 RTC module.

	   This driver can also be built as a module. If so, the module
	   will be called rtc-pic32

config RTC_DRV_R7301
	tristate "EPSON TOYOCOM RTC-7301SF/DG"
	select REGMAP_MMIO
	depends on OF && HAS_IOMEM
	help
	   If you say yes here you get support for the EPSON TOYOCOM
	   RTC-7301SF/DG chips.

	   This driver can also be built as a module. If so, the module
	   will be called rtc-r7301.

config RTC_DRV_STM32
	tristate "STM32 RTC"
	select REGMAP_MMIO
	depends on ARCH_STM32 || COMPILE_TEST
	help
	   If you say yes here you get support for the STM32 On-Chip
	   Real Time Clock.

	   This driver can also be built as a module, if so, the module
	   will be called "rtc-stm32".

config RTC_DRV_CPCAP
	depends on MFD_CPCAP
	tristate "Motorola CPCAP RTC"
	help
	   Say y here for CPCAP rtc found on some Motorola phones
	   and tablets such as Droid 4.

config RTC_DRV_RTD119X
	bool "Realtek RTD129x RTC"
	depends on ARCH_REALTEK || COMPILE_TEST
	default ARCH_REALTEK
	help
	  If you say yes here, you get support for the RTD1295 SoC
	  Real Time Clock.

comment "HID Sensor RTC drivers"

config RTC_DRV_HID_SENSOR_TIME
	tristate "HID Sensor Time"
	depends on USB_HID
	select IIO
	select HID_SENSOR_HUB
	select HID_SENSOR_IIO_COMMON
	help
	  Say yes here to build support for the HID Sensors of type Time.
	  This drivers makes such sensors available as RTCs.

	  If this driver is compiled as a module, it will be named
	  rtc-hid-sensor-time.

config RTC_DRV_GOLDFISH
	tristate "Goldfish Real Time Clock"
	depends on MIPS && (GOLDFISH || COMPILE_TEST)
	help
	  Say yes to enable RTC driver for the Goldfish based virtual platform.

	  Goldfish is a code name for the virtual platform developed by Google
	  for Android emulation.

endif # RTC_CLASS