twx-linux/drivers/rtc
Lukas Stockmann 7e9b836182 rtc: pcf85063: do a SW reset if POR failed
[ Upstream commit 2b7cbd98495f6ee4cd6422fe77828a19e9edf87f ]

Power-on Reset has a documented issue in PCF85063, refer to its datasheet,
section "Software reset":

"There is a low probability that some devices will have corruption of the
registers after the automatic power-on reset if the device is powered up
with a residual VDD level. It is required that the VDD starts at zero volts
at power up or upon power cycling to ensure that there is no corruption of
the registers. If this is not possible, a reset must be initiated after
power-up (i.e. when power is stable) with the software reset command"

Trigger SW reset if there is an indication that POR has failed.

Link: https://www.nxp.com/docs/en/data-sheet/PCF85063A.pdf
Signed-off-by: Lukas Stockmann <lukas.stockmann@siemens.com>
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Link: https://lore.kernel.org/r/20250120093451.30778-1-alexander.sverdlin@siemens.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-02 07:50:57 +02:00
..
class.c
dev.c
interface.c rtc: check if __rtc_read_time was successful in rtc_timer_do_work() 2024-12-09 10:32:55 +01:00
Kconfig rtc: mt6397: select IRQ_DOMAIN instead of depending on it 2024-03-26 18:20:06 -04:00
lib_test.c rtc: test: Fix invalid format specifier. 2024-03-26 18:19:18 -04:00
lib.c
Makefile rtc: Add rtc driver for the Loongson family chips 2023-06-26 01:19:11 +02:00
nvmem.c nvmem: add explicit config option to read old syntax fixed OF cells 2024-05-17 12:01:55 +02:00
proc.c
rtc-88pm80x.c
rtc-88pm860x.c
rtc-ab8500.c
rtc-ab-b5ze-s3.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-ab-eoz9.c rtc: ab-eoz9: don't fail temperature reads on undervoltage notification 2024-12-09 10:32:57 +01:00
rtc-abx80x.c rtc: abx80x: Fix WDT bit position of the status register 2024-12-09 10:32:55 +01:00
rtc-ac100.c
rtc-armada38x.c rtc: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-as3722.c
rtc-asm9260.c
rtc-aspeed.c rtc: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-at91rm9200.c rtc: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-at91sam9.c rtc: at91sam9: fix OF node leak in probe() error path 2024-10-10 11:57:57 +02:00
rtc-au1xxx.c
rtc-bd70528.c
rtc-bq32k.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-bq4802.c
rtc-brcmstb-waketimer.c rtc: brcmstb-waketimer: support level alarm_irq 2023-11-20 11:59:30 +01:00
rtc-cadence.c
rtc-cmos.c rtc: cmos: avoid taking rtc_lock for extended period of time 2024-12-14 20:00:16 +01:00
rtc-core.h
rtc-cpcap.c
rtc-cros-ec.c rtc: cros-ec: Detect and report supported alarm window size 2023-08-27 23:50:22 +02:00
rtc-da9052.c
rtc-da9055.c
rtc-da9063.c rtc: da9063: Mark the alarm IRQ as a wake IRQ 2023-08-17 01:09:50 +02:00
rtc-digicolor.c
rtc-ds1216.c
rtc-ds1286.c
rtc-ds1302.c
rtc-ds1305.c rtc: ds1305: Report maximum alarm limit to rtc core 2023-08-27 23:50:22 +02:00
rtc-ds1307.c rtc: ds1307: fix Wvoid-pointer-to-enum-cast warning 2023-08-16 01:32:08 +02:00
rtc-ds1343.c
rtc-ds1347.c
rtc-ds1374.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-ds1390.c
rtc-ds1511.c
rtc-ds1553.c
rtc-ds1672.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-ds1685.c rtc: ds1685: use EXPORT_SYMBOL_GPL for ds1685_rtc_poweroff 2023-08-02 11:18:22 -07:00
rtc-ds1742.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-ds2404.c rtc: ds2404: Convert to GPIO descriptors 2023-08-17 00:55:56 +02:00
rtc-ds3232.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-efi.c
rtc-em3027.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-ep93xx.c
rtc-fm3130.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-fsl-ftm-alarm.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-ftrtc010.c
rtc-gamecube.c
rtc-generic.c
rtc-goldfish.c
rtc-hid-sensor-time.c
rtc-hym8563.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-imx-sc.c
rtc-imxdi.c
rtc-isl1208.c rtc: isl1208: Fix return value of nvmem callbacks 2024-08-03 08:54:29 +02:00
rtc-isl12022.c rtc: isl12022: implement support for the #clock-cells DT property 2023-08-16 01:27:01 +02:00
rtc-isl12026.c rtc: isl12026: Drop "_new" from probe callback name 2023-07-27 23:32:08 +02:00
rtc-jz4740.c rtc: jz4740: fix Wvoid-pointer-to-enum-cast warning 2023-08-16 01:32:08 +02:00
rtc-loongson.c rtc: loongson: clear TOY_MATCH0_REG in loongson_rtc_isr() 2025-02-08 09:52:28 +01:00
rtc-lp8788.c
rtc-lpc24xx.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-lpc32xx.c
rtc-m41t80.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-m41t93.c
rtc-m41t94.c
rtc-m48t35.c
rtc-m48t59.c
rtc-m48t86.c rtc: m48t86: add DT support for m48t86 2023-08-28 00:01:51 +02:00
rtc-max6900.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-max6902.c
rtc-max6916.c
rtc-max8907.c
rtc-max8925.c
rtc-max8997.c
rtc-max8998.c
rtc-max77686.c
rtc-mc13xxx.c
rtc-mc146818-lib.c rtc: Extend timeout for waiting for UIP to clear to 1s 2024-01-31 16:18:56 -08:00
rtc-mcp795.c
rtc-meson-vrtc.c
rtc-meson.c
rtc-moxart.c
rtc-mpc5121.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-mpfs.c
rtc-msc313.c
rtc-msm6242.c
rtc-mt2712.c
rtc-mt6397.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-mt7622.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-mv.c
rtc-mxc_v2.c
rtc-mxc.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-nct3018y.c rtc: nct3018y: fix possible NULL dereference 2024-08-29 17:33:39 +02:00
rtc-ntxec.c
rtc-nxp-bbnsm.c
rtc-omap.c rtc: omap: Do not check for 0 return after calling platform_get_irq() 2023-08-17 01:17:34 +02:00
rtc-opal.c
rtc-optee.c
rtc-palmas.c
rtc-pcap.c
rtc-pcf2123.c
rtc-pcf2127.c rtc: pcf2127: remove useless check 2023-08-27 23:53:06 +02:00
rtc-pcf8523.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-pcf8563.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-pcf8583.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-pcf50633.c
rtc-pcf85063.c rtc: pcf85063: do a SW reset if POR failed 2025-05-02 07:50:57 +02:00
rtc-pcf85363.c rtc: pcf85363: fix wrong mask/val parameters in regmap_update_bits call 2023-11-20 11:59:30 +01:00
rtc-pic32.c
rtc-pl030.c
rtc-pl031.c
rtc-pm8xxx.c
rtc-ps3.c
rtc-pxa.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-r7301.c
rtc-r9701.c
rtc-rc5t583.c
rtc-rc5t619.c
rtc-rk808.c
rtc-rp5c01.c
rtc-rs5c313.c
rtc-rs5c348.c
rtc-rs5c372.c rtc: rs5c372: fix Wvoid-pointer-to-enum-cast warning 2023-08-16 01:32:08 +02:00
rtc-rtd119x.c
rtc-rv3028.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rv3029c2.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-rv3032.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rv8803.c rtc: rv8803: fix Wvoid-pointer-to-enum-cast warning 2023-08-16 01:32:08 +02:00
rtc-rx4581.c
rtc-rx6110.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rx8010.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-rx8025.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-rx8581.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rzn1.c rtc: rzn1: fix BCD to rtc_time conversion errors 2024-12-09 10:32:56 +01:00
rtc-s3c.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-s3c.h
rtc-s5m.c
rtc-s35390a.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-sa1100.c
rtc-sa1100.h
rtc-sc27xx.c
rtc-sd3078.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-sh.c
rtc-snvs.c
rtc-spear.c
rtc-st-lpc.c rtc: st-lpc: Use IRQF_NO_AUTOEN flag in request_irq() 2024-12-09 10:32:55 +01:00
rtc-starfire.c
rtc-stk17ta8.c
rtc-stm32.c rtc: stm32: Use NOIRQ_SYSTEM_SLEEP_PM_OPS() 2023-08-17 00:53:00 +02:00
rtc-stmp3xxx.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-sun4v.c
rtc-sun6i.c rtc: sun6i: remove unnecessary message 2023-09-06 01:26:04 +02:00
rtc-sunplus.c rtc: sunplus: Clean up redundant dev_err_probe() 2023-08-10 09:35:28 +02:00
rtc-sunxi.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-tegra.c
rtc-test.c
rtc-ti-k3.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-tps6586x.c rtc: tps6586x: Report maximum alarm limit to rtc core 2023-08-27 23:50:22 +02:00
rtc-tps65910.c rtc: tps65910: Remove redundant dev_warn() and do not check for 0 return after calling platform_get_irq() 2023-08-17 01:17:34 +02:00
rtc-twl.c rtc: twl: remove unnecessary messages 2023-09-06 01:26:04 +02:00
rtc-vt8500.c
rtc-wilco-ec.c
rtc-wm831x.c
rtc-wm8350.c rtc: wm8350: remove unnecessary messages 2023-09-06 01:26:04 +02:00
rtc-x1205.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-xgene.c
rtc-zynqmp.c rtc: zynqmp: Fix optional clock name property 2025-02-17 09:40:41 +01:00
sysfs.c