Merge tag 'rtc-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 14 Oct 2016 20:13:44 +0000 (13:13 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 14 Oct 2016 20:13:44 +0000 (13:13 -0700)
Pull RTC updates from Alexandre Belloni:
 "RTC for 4.9

  Subsystem:
   - delete owner assignment in multiple drivers
   - constify rtc_class_ops structures

  Drivers:
   - ac100: support clock-output-names
   - cmos: properly handle ACPI alarms and quirky BIOSes and other fixes
   - ds1307: fix century bit support while staying comaptible with
     previous behaviour by default
   - ds1347: switch to regmap
   - isl12057 is now handled by ds1307
   - omap: support external wakeup
   - rv8803: allow to disable voltage drop detection"

* tag 'rtc-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (25 commits)
  rtc: rv8803: set VDETOFF and SWOFF via device tree
  dt/bindings: Add bindings for Micro Crystal rv8803
  devicetree: Add Micro Crystal AG vendor id
  rtc: cmos: avoid unused function warning
  rtc: ac100: Add NULL checking for devm_kzalloc call
  rtc: ds1347: changed raw spi calls to register map calls
  rtc: cmos: Restore alarm after resume
  rtc: cmos: Clear ACPI-driven alarms upon resume
  rtc: omap: Support ext_wakeup configuration
  rtc: cmos: Initialize hpet timer before irq is registered
  rtc: asm9260: rework locking
  rtc: asm9260: allow COMPILE_TEST
  rtc: constify rtc_class_ops structures
  rtc: ac100: support clock-output-names in device tree binding
  rtc: rx6110: remove owner assignment
  rtc: pic32: Delete owner assignment
  rtc: bq32k: Fix handling of oscillator failure flag
  rtc: bq32k: Use correct mask name for 'minutes' register.
  rtc: sysfs: fix a cast removing the const attribute
  Documentation: dt: Intersil isl12057 is not a trivial device
  ...

1  2 
Documentation/devicetree/bindings/i2c/trivial-devices.txt
Documentation/devicetree/bindings/vendor-prefixes.txt
drivers/rtc/Kconfig

index 1416c6a0d2cd8c198944f5c4b2718e27263be44f,43af4765d5fed19f02b4dbec01621100f10b283d..fbbad6446741e53fc9a4e65ec74ffd793e2fc44d
@@@ -38,7 -38,6 +38,7 @@@ dallas,ds4510         CPU Supervisor with Nonv
  dallas,ds75           Digital Thermometer and Thermostat
  dlg,da9053            DA9053: flexible system level PMIC with multicore support
  dlg,da9063            DA9063: system PMIC for quad-core application processors
 +domintech,dmard09     DMARD09: 3-axis Accelerometer
  epson,rx8010          I2C-BUS INTERFACE REAL TIME CLOCK MODULE
  epson,rx8025          High-Stability. I2C-Bus INTERFACE REAL TIME CLOCK MODULE
  epson,rx8581          I2C-BUS INTERFACE REAL TIME CLOCK MODULE
@@@ -51,13 -50,11 +51,12 @@@ fsl,sgtl5000               SGTL5000: Ultra Low-Powe
  gmt,g751              G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface
  infineon,slb9635tt    Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz)
  infineon,slb9645tt    Infineon SLB9645 I2C TPM (new protocol, max 400khz)
- isil,isl12057         Intersil ISL12057 I2C RTC Chip
  isil,isl29028         Intersil ISL29028 Ambient Light and Proximity Sensor
  maxim,ds1050          5 Bit Programmable, Pulse-Width Modulator
  maxim,max1237         Low-Power, 4-/12-Channel, 2-Wire Serial, 12-Bit ADCs
  maxim,max6625         9-Bit/12-Bit Temperature Sensors with I²C-Compatible Serial Interface
  mc,rv3029c2           Real Time Clock Module with I2C-Bus
 +mcube,mc3230          mCube 3-axis 8-bit digital accelerometer
  microchip,mcp4531-502 Microchip 7-bit Single I2C Digital Potentiometer (5k)
  microchip,mcp4531-103 Microchip 7-bit Single I2C Digital Potentiometer (10k)
  microchip,mcp4531-503 Microchip 7-bit Single I2C Digital Potentiometer (50k)
index 24c6f658bce147162d92f2009c1a4d319c490be3,a8c65f84d4bbcd640d24209b45613d5a8b68f053..caf0798908e293867929716e68c6237901e383b1
@@@ -3,8 -3,8 +3,8 @@@ Device tree binding vendor prefix regis
  This isn't an exhaustive list, but you should add new prefixes to it before
  using them to avoid name-space collisions.
  
 -abilis        Abilis Systems
  abcn  Abracon Corporation
 +abilis        Abilis Systems
  active-semi   Active-Semi International Inc
  ad    Avionic Design GmbH
  adapteva      Adapteva, Inc.
@@@ -36,7 -36,6 +36,7 @@@ aspeed        ASPEED Technology Inc
  atlas Atlas Scientific LLC
  atmel Atmel Corporation
  auo   AU Optronics Corporation
 +auvidea Auvidea GmbH
  avago Avago Technologies
  avic  Shanghai AVIC Optoelectronics Co., Ltd.
  axis  Axis Communications AB
@@@ -76,7 -75,6 +76,7 @@@ digilent      Diglent, Inc
  dlg   Dialog Semiconductor
  dlink D-Link Corporation
  dmo   Data Modul AG
 +domintech     Domintech Co., Ltd.
  dptechnics    DPTechnics
  dragino       Dragino Technology Co., Limited
  ea    Embedded Artists AB
@@@ -87,7 -85,6 +87,7 @@@ elan  Elan Microelectronic Corp
  embest        Shenzhen Embest Technology Co., Ltd.
  emmicro       EM Microelectronic
  energymicro   Silicon Laboratories (formerly Energy Micro AS)
 +engicam       Engicam S.r.l.
  epcos EPCOS AG
  epfl  Ecole Polytechnique Fédérale de Lausanne
  epson Seiko Epson Corp.
@@@ -101,12 -98,11 +101,12 @@@ ezchip   EZchip Semiconducto
  fcs   Fairchild Semiconductor
  firefly       Firefly
  focaltech     FocalTech Systems Co.,Ltd
 +friendlyarm   Guangzhou FriendlyARM Computer Tech Co., Ltd
  fsl   Freescale Semiconductor
  ge    General Electric Company
  geekbuying    GeekBuying
 -GEFanuc       GE Fanuc Intelligent Platforms Embedded Systems, Inc.
  gef   GE Fanuc Intelligent Platforms Embedded Systems, Inc.
 +GEFanuc       GE Fanuc Intelligent Platforms Embedded Systems, Inc.
  geniatech     Geniatech, Inc.
  giantplus     Giantplus Technology Co., Ltd.
  globalscale   Globalscale Technologies, Inc.
@@@ -130,6 -126,7 +130,6 @@@ i2se       I2SE Gmb
  ibm   International Business Machines (IBM)
  idt   Integrated Device Technologies, Inc.
  ifi   Ingenieurburo Fur Ic-Technologie (I/F/I)
 -iom   Iomega Corporation
  img   Imagination Technologies Ltd.
  infineon Infineon Technologies
  inforce       Inforce Computing
@@@ -138,15 -135,11 +138,15 @@@ innolux Innolux Corporatio
  intel Intel Corporation
  intercontrol  Inter Control Group
  invensense    InvenSense Inc.
 +inversepath   Inverse Path
 +iom   Iomega Corporation
  isee  ISEE 2007 S.L.
  isil  Intersil
  issi  Integrated Silicon Solutions Inc.
 +jdi   Japan Display Inc.
  jedec JEDEC Solid State Technology Association
  karo  Ka-Ro electronics GmbH
 +keithkoep     Keith & Koep GmbH
  keymile       Keymile GmbH
  kinetic Kinetic Technologies
  kosagi        Sutajio Ko-Usagi PTE Ltd.
@@@ -156,8 -149,8 +156,8 @@@ lantiq     Lantiq Semiconducto
  lenovo        Lenovo Group Ltd.
  lg    LG Corporation
  linux Linux-specific binding
 -lsi   LSI Corp. (LSI Logic)
  lltc  Linear Technology Corporation
 +lsi   LSI Corp. (LSI Logic)
  marvell       Marvell Technology Group Ltd.
  maxim Maxim Integrated Products
  meas  Measurement Specialties
@@@ -166,6 -159,7 +166,7 @@@ melexis    Melexis N.V
  merrii        Merrii Technology Co., Ltd.
  micrel        Micrel Inc.
  microchip     Microchip Technology Inc.
+ microcrystal  Micro Crystal AG
  micron        Micron Technology Inc.
  minix MINIX Technology Ltd.
  mitsubishi    Mitsubishi Electric Corporation
@@@ -197,20 -191,20 +198,20 @@@ onnn    ON Semiconductor Corp
  ontat On Tat Industrial Company
  opencores     OpenCores.org
  option        Option NV
 +ORCL  Oracle Corporation
  ortustech     Ortus Technology Co., Ltd.
  ovti  OmniVision Technologies
 -ORCL  Oracle Corporation
  oxsemi        Oxford Semiconductor, Ltd.
  panasonic     Panasonic Corporation
  parade        Parade Technologies Inc.
  pericom       Pericom Technology Inc.
  phytec        PHYTEC Messtechnik GmbH
  picochip      Picochip Ltd
 +pixcir  PIXCIR MICROELECTRONICS Co., Ltd
  plathome      Plat'Home Co., Ltd.
  plda  PLDA
 -pixcir  PIXCIR MICROELECTRONICS Co., Ltd
 -pulsedlight   PulsedLight, Inc
  powervr       PowerVR (deprecated, use img)
 +pulsedlight   PulsedLight, Inc
  qca   Qualcomm Atheros, Inc.
  qcom  Qualcomm Technologies, Inc
  qemu  QEMU, a generic and open source machine emulator and virtualizer
@@@ -238,13 -232,12 +239,13 @@@ sgx     SGX Sensortec
  sharp Sharp Corporation
  si-en Si-En Technology Ltd.
  sigma Sigma Designs, Inc.
 +sii   Seiko Instruments, Inc.
  sil   Silicon Image
  silabs        Silicon Laboratories
 +silead        Silead Inc.
 +silergy       Silergy Corp.
  siliconmitus  Silicon Mitus, Inc.
  simtek
 -sii   Seiko Instruments, Inc.
 -silergy       Silergy Corp.
  sirf  SiRF Technology, Inc.
  sis   Silicon Integrated Systems Corp.
  sitronix      Sitronix Technology Corporation
@@@ -262,12 -255,9 +263,12 @@@ starry   Starry Electronic Technology (Sh
  startek       Startek
  ste   ST-Ericsson
  stericsson    ST-Ericsson
 +summit        Summit microelectronics
 +sunchip       Shenzhen Sunchip Technology Co., Ltd
 +SUNW  Sun Microsystems, Inc
 +swir  Sierra Wireless
  syna  Synaptics Inc.
  synology      Synology, Inc.
 -SUNW  Sun Microsystems, Inc
  tbs   TBS Technologies
  tcg   Trusted Computing Group
  tcl   Toby Churchill Ltd.
@@@ -276,19 -266,17 +277,19 @@@ technologic     Technologic System
  thine THine Electronics, Inc.
  ti    Texas Instruments
  tlm   Trusted Logic Mobility
 +topeet  Topeet
  toradex       Toradex AG
  toshiba       Toshiba Corporation
  toumaz        Toumaz
 -tplink        TP-LINK Technologies Co., Ltd.
  tpk   TPK U.S.A. LLC
 +tplink        TP-LINK Technologies Co., Ltd.
 +tpo   TPO
  tronfy        Tronfy
  tronsmart     Tronsmart
  truly Truly Semiconductors Limited
  tyan  Tyan Computer Corporation
 -upisemi       uPI Semiconductor Corp.
  uniwest       United Western Technologies Corp (UniWest)
 +upisemi       uPI Semiconductor Corp.
  urt   United Radiant Technology Corporation
  usi   Universal Scientific Industrial Co., Ltd.
  v3    V3 Semiconductor
@@@ -306,7 -294,7 +307,7 @@@ x-powers   X-Power
  xes   Extreme Engineering Solutions (X-ES)
  xillybus      Xillybus Ltd.
  xlnx  Xilinx
 -zyxel ZyXEL Communications Corp.
  zarlink       Zarlink Semiconductor
  zii   Zodiac Inflight Innovations
  zte   ZTE Corp.
 +zyxel ZyXEL Communications Corp.
diff --combined drivers/rtc/Kconfig
index d1e080701264f230235668b07aedf0e4936ba4f9,4f6bda83e099242b861da52fbff7b779d6240557..e859d148aba9ecdbcecc47e745209b94ed83dd67
@@@ -208,14 -208,14 +208,14 @@@ config RTC_DRV_AS372
          will be called rtc-as3722.
  
  config RTC_DRV_DS1307
-       tristate "Dallas/Maxim DS1307/37/38/39/40, ST M41T00, EPSON RX-8025"
+       tristate "Dallas/Maxim DS1307/37/38/39/40, 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, ST M41T00,
-         EPSON RX-8025 and probably other chips. In some cases the RTC
-         must already have been initialized (by manufacturing or a
-         bootloader).
+         EPSON RX-8025, Intersil ISL12057 and probably other chips. In some
+         cases the RTC must already have been initialized (by manufacturing or
+         bootloader).
  
          The first seven registers on these chips hold an RTC, and other
          registers may add features such as NVRAM, a trickle charger for
@@@ -234,6 -234,20 +234,20 @@@ config RTC_DRV_DS1307_HWMO
          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
@@@ -338,11 -352,11 +352,11 @@@ config RTC_DRV_MAX7768
          will be called rtc-max77686.
  
  config RTC_DRV_RK808
 -      tristate "Rockchip RK808 RTC"
 +      tristate "Rockchip RK808/RK818 RTC"
        depends on MFD_RK808
        help
          If you say yes here you will get support for the
 -        RTC of RK808 PMIC.
 +        RTC of RK808 and RK818 PMIC.
  
          This driver can also be built as a module. If so, the module
          will be called rk808-rtc.
@@@ -374,16 -388,6 +388,6 @@@ config RTC_DRV_ISL1202
          This driver can also be built as a module. If so, the module
          will be called rtc-isl12022.
  
- config RTC_DRV_ISL12057
-       select REGMAP_I2C
-       tristate "Intersil ISL12057"
-       help
-         If you say yes here you get support for the Intersil ISL12057
-         I2C RTC chip.
-         This driver can also be built as a module. If so, the module
-         will be called rtc-isl12057.
  config RTC_DRV_X1205
        tristate "Xicor/Intersil X1205"
        help
@@@ -661,6 -665,7 +665,7 @@@ config RTC_DRV_DS134
          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
@@@ -1201,7 -1206,7 +1206,7 @@@ comment "on-CPU RTC drivers
  
  config RTC_DRV_ASM9260
        tristate "Alphascale asm9260 RTC"
-       depends on MACH_ASM9260
+       depends on MACH_ASM9260 || COMPILE_TEST
        help
          If you say yes here you get support for the RTC on the
          Alphascale asm9260 SoC.
@@@ -1241,6 -1246,9 +1246,9 @@@ config RTC_DRV_IMXD
  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.