Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 63d222b9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull RTC updates from Alexandre Belloni:
 "Subsystem wide cleanups:
   - Use IS_ENABLED() instead of checking for built-in or module
   - remove useless DRV_VERSION
   - remove CLK_IS_ROOT
   - remove UIE signaling

  Drivers:
   - ds1302: rewritten to be a proper SPI device driver
   - m41t80: huge cleanup, alarm, wakelarm ans oscialltor failure
     detection support
   - rv3029: switch to regmap to handle rv3049, alarm support, fixes
   - zynqmp: enable switching to battery power, fixes
   - small fixes for at91sam9, da9053, ds1307, ds1685, ds3232, r2025,
     sa1100, snvs, stmp3xxx, tps6586x"

* tag 'rtc-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (40 commits)
  rtc: tps6586x: rename so module can be autoloaded
  rtc: rv3029: hide unused i2c device table
  rtc: rs5c372: r2025: fix check for 'oscillator halted' condition
  rtc: rv3029: add alarm IRQ
  rtc: rv3029: fix set_time function
  rtc: rv3029: fix alarm support
  rtc: rv3029: Remove some checks and warnings
  rtc: rv3029: Add support of RV3049
  rtc: rv3029: convert to use regmap
  rtc: rv3029: remove 'i2c' in functions names
  rtc: stmp3xxx: print message on error
  rtc: Use IS_ENABLED() instead of checking for built-in or module
  rtc: ds3232: fix call trace when rtc->ops_lock is used as NULL
  rtc: snvs: return error in case enable_irq_wake fails
  rtc: zynqmp: Update seconds time programming logic
  rtc: sa1100: DT spelling s/interrupt-name/interrupt-names/
  rtc: mc13xxx: remove UIE signaling
  rtc: mxc: remove UIE signaling
  rtc: ds1307: Remove CLK_IS_ROOT
  rtc: hym8563: Remove CLK_IS_ROOT
  ...
parents 10cd7158 b9ba1eb0
Loading
Loading
Loading
Loading
+46 −0
Original line number Original line Diff line number Diff line
* Maxim/Dallas Semiconductor DS-1302 RTC

Simple device which could be used to store date/time between reboots.

The device uses the standard MicroWire half-duplex transfer timing.
Master output is set on low clock and sensed by the RTC on the rising
edge. Master input is set by the RTC on the trailing edge and is sensed
by the master on low clock.

Required properties:

- compatible : Should be "maxim,ds1302"

Required SPI properties:

- reg : Should be address of the device chip select within
  the controller.

- spi-max-frequency : DS-1302 has 500 kHz if powered at 2.2V,
  and 2MHz if powered at 5V.

- spi-3wire : The device has a shared signal IN/OUT line.

- spi-lsb-first : DS-1302 requires least significant bit first
  transfers.

- spi-cs-high: DS-1302 has active high chip select line. This is
  required unless inverted in hardware.

Example:

spi@901c {
	#address-cells = <1>;
	#size-cells = <0>;
	compatible = "icpdas,lp8841-spi-rtc";
	reg = <0x901c 0x1>;

	rtc@0 {
		compatible = "maxim,ds1302";
		reg = <0>;
		spi-max-frequency = <500000>;
		spi-3wire;
		spi-lsb-first;
		spi-cs-high;
	};
};
+1 −1
Original line number Original line Diff line number Diff line
@@ -13,5 +13,5 @@ Example:
		compatible = "mrvl,mmp-rtc";
		compatible = "mrvl,mmp-rtc";
		reg = <0xd4010000 0x1000>;
		reg = <0xd4010000 0x1000>;
		interrupts = <5>, <6>;
		interrupts = <5>, <6>;
		interrupt-name = "rtc 1Hz", "rtc alarm";
		interrupt-names = "rtc 1Hz", "rtc alarm";
	};
	};
+28 −24
Original line number Original line Diff line number Diff line
@@ -573,24 +573,6 @@ config RTC_DRV_EM3027
	  This driver can also be built as a module. If so, the module
	  This driver can also be built as a module. If so, the module
	  will be called rtc-em3027.
	  will be called rtc-em3027.


config RTC_DRV_RV3029C2
	tristate "Micro Crystal RV3029"
	help
	  If you say yes here you get support for the Micro Crystal
	  RV3029 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"
	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.

config RTC_DRV_RV8803
config RTC_DRV_RV8803
	tristate "Micro Crystal RV8803"
	tristate "Micro Crystal RV8803"
	help
	help
@@ -634,6 +616,15 @@ config RTC_DRV_M41T94
	  This driver can also be built as a module. If so, the module
	  This driver can also be built as a module. If so, the module
	  will be called rtc-m41t94.
	  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
config RTC_DRV_DS1305
	tristate "Dallas/Maxim DS1305/DS1306"
	tristate "Dallas/Maxim DS1305/DS1306"
	help
	help
@@ -777,6 +768,25 @@ config RTC_DRV_PCF2127
	  This driver can also be built as a module. If so, the module
	  This driver can also be built as a module. If so, the module
	  will be called rtc-pcf2127.
	  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"
comment "Platform RTC drivers"


# this 'CMOS' RTC driver is arch dependent because <asm-generic/rtc.h>
# this 'CMOS' RTC driver is arch dependent because <asm-generic/rtc.h>
@@ -834,12 +844,6 @@ config RTC_DRV_DS1286
	help
	help
	  If you say yes here you get support for the Dallas DS1286 RTC chips.
	  If you say yes here you get support for the Dallas DS1286 RTC chips.


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

config RTC_DRV_DS1511
config RTC_DRV_DS1511
	tristate "Dallas DS1511"
	tristate "Dallas DS1511"
	depends on HAS_IOMEM
	depends on HAS_IOMEM
+1 −1
Original line number Original line Diff line number Diff line
@@ -268,7 +268,7 @@ static int at91_rtc_alarm_irq_enable(struct device *dev, unsigned int enabled)
static int at91_rtc_proc(struct device *dev, struct seq_file *seq)
static int at91_rtc_proc(struct device *dev, struct seq_file *seq)
{
{
	struct sam9_rtc *rtc = dev_get_drvdata(dev);
	struct sam9_rtc *rtc = dev_get_drvdata(dev);
	u32 mr = mr = rtt_readl(rtc, MR);
	u32 mr = rtt_readl(rtc, MR);


	seq_printf(seq, "update_IRQ\t: %s\n",
	seq_printf(seq, "update_IRQ\t: %s\n",
			(mr & AT91_RTT_RTTINCIEN) ? "yes" : "no");
			(mr & AT91_RTT_RTTINCIEN) ? "yes" : "no");
+1 −1
Original line number Original line Diff line number Diff line
@@ -401,7 +401,7 @@ static int cmos_alarm_irq_enable(struct device *dev, unsigned int enabled)
	return 0;
	return 0;
}
}


#if defined(CONFIG_RTC_INTF_PROC) || defined(CONFIG_RTC_INTF_PROC_MODULE)
#if IS_ENABLED(CONFIG_RTC_INTF_PROC)


static int cmos_procfs(struct device *dev, struct seq_file *seq)
static int cmos_procfs(struct device *dev, struct seq_file *seq)
{
{
Loading