linux/drivers/rtc
Lukas Stockmann 2dc0e5ceb3 rtc: pcf85063: do a SW reset if POR failed
[ Upstream commit 2b7cbd9849 ]

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>
History 2025-05-02 07:59:21 +02:00
..
class.c rtc: class: make rtc_class constant 2024-03-08 12:05:10 +01:00
dev.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
interface.c rtc: check if __rtc_read_time was successful in rtc_timer_do_work() 2024-12-05 14:03:04 +01:00
Kconfig RTC for 6.12 2024-09-25 14:38:37 -07:00
lib.c rtc: Improve performance of rtc_time64_to_tm(). Add tests. 2021-08-10 00:09:21 +02:00
lib_test.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
Makefile RTC for 6.12 2024-09-25 14:38:37 -07:00
nvmem.c nvmem: add explicit config option to read old syntax fixed OF cells 2023-10-21 19:19:06 +02:00
proc.c rtc: fix snprintf() checking in is_rtc_hctosys() 2021-05-25 00:36:11 +02:00
rtc-88pm80x.c rtc: 88pm80x: Convert to platform remove callback returning void 2023-03-17 23:03:16 +01:00
rtc-88pm860x.c rtc: 88pm860x: Convert to platform remove callback returning void 2023-03-17 23:03:16 +01:00
rtc-ab-b5ze-s3.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-ab-eoz9.c rtc: ab-eoz9: don't fail temperature reads on undervoltage notification 2024-12-05 14:03:07 +01:00
rtc-ab8500.c rtc: ab8500: Convert to platform remove callback returning void 2023-03-17 23:03:16 +01:00
rtc-abx80x.c rtc: abx80x: Fix WDT bit position of the status register 2024-12-05 14:03:03 +01:00
rtc-ac100.c rtc: ac100: remove misuses of kernel-doc 2024-01-15 22:27:35 +01:00
rtc-armada38x.c rtc: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-as3722.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
rtc-asm9260.c rtc: asm9260: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-aspeed.c rtc: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-at91rm9200.c rtc: at91rm9200: annotate at91_rtc_remove with __exit again 2023-10-16 06:33:00 +02:00
rtc-at91sam9.c rtc: at91sam9: fix OF node leak in probe() error path 2024-09-12 00:33:33 +02:00
rtc-au1xxx.c rtc: au1xxx: convert to SPDX identifier 2021-07-10 01:53:39 +02:00
rtc-bd70528.c rtc: bd70528: Drop BD70528 support 2021-06-20 22:24:52 +02:00
rtc-bq32k.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-bq4802.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
rtc-brcmstb-waketimer.c rtc: brcmstb-waketimer: support level alarm_irq 2023-10-02 00:13:57 +02:00
rtc-cadence.c rtc: cadence: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-cmos.c rtc: cmos: avoid taking rtc_lock for extended period of time 2024-12-14 20:04:09 +01:00
rtc-core.h rtc: Remove unused rtc_dev_exit(). 2022-06-24 21:24:02 +02:00
rtc-cpcap.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-cros-ec.c rtc: cros-ec: provide ID table for avoiding fallback match 2024-03-29 15:46:08 +01:00
rtc-da9052.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-da9055.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
rtc-da9063.c rtc: da9063: Use dev_err_probe() 2024-01-18 01:00:21 +01:00
rtc-digicolor.c rtc: digicolor: quiet maybe-unused variable warning 2021-02-06 00:58:24 +01:00
rtc-ds1216.c rtc: use devm_platform_ioremap_resource() to simplify code 2019-10-07 01:07:35 +02:00
rtc-ds1286.c rtc: use devm_platform_ioremap_resource() to simplify code 2019-10-07 01:07:35 +02:00
rtc-ds1302.c rtc: ds1302: remove unnecessary spi_set_drvdata() 2022-11-15 21:01:51 +01:00
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: Clamp year to valid BCD (0-99) in set_time() 2024-07-07 00:39:27 +02:00
rtc-ds1343.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
rtc-ds1347.c rtc: ds1347: fix value written to century register 2022-11-15 21:01:51 +01:00
rtc-ds1374.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-ds1390.c rtc: ds1390: mark OF related data as maybe unused 2023-03-17 23:23:22 +01:00
rtc-ds1511.c rtc: ds1511: set alarm offset limit 2024-02-29 22:16:52 +01:00
rtc-ds1553.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-ds1672.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +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: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-efi.c rtc: efi: fixed typo in efi_procfs() 2023-10-15 23:01:08 +02:00
rtc-em3027.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-ep93xx.c rtc: ep93xx: add DT support for Cirrus EP93xx 2023-10-15 23:17:05 +02:00
rtc-fm3130.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +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: ftrtc010: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-gamecube.c rtc: gamecube: Always reset HW_SRNPROT after read 2022-08-23 22:27:58 +02:00
rtc-generic.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
rtc-goldfish.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-hid-sensor-time.c rtc: hid-sensor-time: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-hym8563.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-imx-sc.c rtc: imx-sc: remove .read_alarm 2021-04-29 23:03:26 +02:00
rtc-imx-sm-bbm.c rtc: support i.MX95 BBM RTC 2024-08-28 21:54:51 +01:00
rtc-imxdi.c rtc: imxdi: Convert to platform remove callback returning void 2023-10-13 12:29:08 +02:00
rtc-isl1208.c rtc: isl1208: Update correct procedure for clearing alarm 2024-06-28 00:34:21 +02:00
rtc-isl12022.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +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:58:01 +01:00
rtc-lp8788.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-lpc24xx.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-lpc32xx.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-m41t80.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
rtc-m41t93.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-m41t94.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-m48t35.c rtc: m48t35: remove SGI-IP27 kludge 2020-03-16 11:12:11 +01:00
rtc-m48t59.c rtc: m48t59: set range 2024-09-22 01:17:10 +02:00
rtc-m48t86.c rtc: m48t86: add DT support for m48t86 2023-08-28 00:01:51 +02:00
rtc-ma35d1.c rtc: ma35d1: remove hardcoded UIE support 2024-01-08 01:33:27 +01:00
rtc-max6900.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-max6902.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-max6916.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-max8907.c rtc: max8907: Drop unused i2c include 2023-02-01 09:13:35 +01:00
rtc-max8925.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-max8997.c rtc: max8997: Fix the returned value in case of error in 'max8997_rtc_read_alarm()' 2018-11-22 18:11:35 +01:00
rtc-max8998.c rtc: maxim: Add SPDX license identifiers 2018-08-14 23:38:45 +02:00
rtc-max31335.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
rtc-max77686.c rtc: max77686: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-mc13xxx.c rtc: mc13xxx: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-mc146818-lib.c rtc: Extend timeout for waiting for UIP to clear to 1s 2023-12-17 22:33:55 +01:00
rtc-mcp795.c rtc: mcp795: drop unneeded MODULE_ALIAS 2024-04-17 01:39:35 +02:00
rtc-meson-vrtc.c rtc: meson-vrtc: Use ktime_get_real_ts64() to get the current time 2023-03-21 21:15:10 +01:00
rtc-meson.c rtc: meson: Fix email address in MODULE_AUTHOR 2022-05-18 00:20:39 +02:00
rtc-moxart.c rtc: moxart: switch to using gpiod API 2023-02-09 23:31:46 +01:00
rtc-mpc5121.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-mpfs.c rtc: mpfs: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-msc313.c rtc: msc313: Fix function prototype mismatch in msc313_rtc_probe() 2022-12-11 18:14:01 +01:00
rtc-msm6242.c rtc: msm6242: Remove unneeded msm6242_set()/msm6242_clear() functions 2019-11-18 15:23:54 +01:00
rtc-mt2712.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
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: mv: Convert to platform remove callback returning void 2023-10-13 12:29:08 +02:00
rtc-mxc.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-mxc_v2.c rtc: mxc_v2: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-nct3018y.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-ntxec.c rtc: New driver for RTC in Netronix embedded controller 2021-03-10 11:06:33 +00:00
rtc-nxp-bbnsm.c rtc: bbnsm: Add the bbnsm rtc support 2023-02-22 12:25:32 +01:00
rtc-omap.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-opal.c rtc: opal: switch to RTC_FEATURE_UPDATE_INTERRUPT 2022-03-23 19:58:39 +01:00
rtc-optee.c rtc: optee: add RTC driver for OP-TEE RTC PTA 2022-03-25 11:42:50 +01:00
rtc-palmas.c rtc: palmas: Convert to platform remove callback returning void 2023-03-17 23:03:17 +01:00
rtc-pcap.c rtc: pcap: Drop no-op remove function 2023-10-13 12:29:08 +02:00
rtc-pcf2123.c rtc: pcf2123: use IRQ flags obtained from fwnode 2023-02-01 09:13:35 +01:00
rtc-pcf2127.c rtc: pcf2127: remove useless check 2023-08-27 23:53:06 +02:00
rtc-pcf8523.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-pcf8563.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-pcf8583.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-pcf50633.c rtc: pcf50633: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-pcf85063.c rtc: pcf85063: do a SW reset if POR failed 2025-05-02 07:59:21 +02:00
rtc-pcf85363.c rtc: pcf85363: fix wrong mask/val parameters in regmap_update_bits call 2023-10-15 22:37:57 +02:00
rtc-pic32.c rtc: pic32: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-pl030.c amba: Make the remove callback return void 2021-02-02 14:25:50 +01:00
rtc-pl031.c rtc: pl031: fix rtc features null pointer dereference 2022-03-23 19:58:37 +01:00
rtc-pm8xxx.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
rtc-ps3.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-pxa.c rtc: pxa: Convert to platform remove callback returning void 2023-10-13 12:29:08 +02:00
rtc-r7301.c rtc: rtc7301: Support byte-addressed IO 2023-10-15 22:37:25 +02:00
rtc-r9701.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-rc5t583.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-rc5t619.c rtc: rc5t619: use proper module tables 2024-09-22 01:17:35 +02:00
rtc-rk808.c rtc: rk808: reduce 'struct rk808' usage 2022-12-11 20:56:33 +01:00
rtc-rp5c01.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-rs5c313.c rtc: rs5c313: correct some spelling mistakes 2022-12-15 23:34:31 +01:00
rtc-rs5c348.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-rs5c372.c rtc: rs5c372: fix Wvoid-pointer-to-enum-cast warning 2023-08-16 01:32:08 +02:00
rtc-rtd119x.c rtc: rtd119x: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-rv3028.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rv3029c2.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-rv3032.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-rv8803.c rtc: rv8803: add wakeup-source support 2024-01-15 22:29:48 +01:00
rtc-rx4581.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-rx6110.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-rx8010.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-rx8025.c rtc: Switch i2c drivers back to use .probe() 2023-06-06 23:29:37 +02:00
rtc-rx8111.c rtc: rx8111: handle VLOW flag 2024-05-07 23:40:10 +02:00
rtc-rx8581.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-rzn1.c rtc: rzn1: fix BCD to rtc_time conversion errors 2024-12-05 14:03:05 +01:00
rtc-s3c.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-s3c.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rtc-s5m.c rtc: s5m: Drop S5M8763 support 2023-04-26 11:40:26 +01:00
rtc-s35390a.c rtc: s35390a: Drop vendorless compatible string from match table 2024-09-12 00:15:49 +02:00
rtc-sa1100.c rtc: sa1100: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-sa1100.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rtc-sc27xx.c rtc: sc27xx: Fix format of SPDX identifier 2021-07-10 01:53:39 +02:00
rtc-sd2405al.c rtc: Add driver for SD2405AL 2024-09-12 00:33:24 +02:00
rtc-sd3078.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-sh.c rtc: sh: Convert to platform remove callback returning void 2023-10-13 12:29:08 +02:00
rtc-snvs.c rtc: snvs: Allow a time difference on clock register read 2022-11-15 21:25:44 +01:00
rtc-spear.c rtc: spear: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-ssd202d.c rtc: Add support for the SSD202D RTC 2023-10-16 16:54:15 +02:00
rtc-st-lpc.c rtc: st-lpc: Use IRQF_NO_AUTOEN flag in request_irq() 2024-12-05 14:03:03 +01:00
rtc-starfire.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-stk17ta8.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-stm32.c rtc: stm32: add alarm A out feature 2024-08-14 11:37:07 +02:00
rtc-stmp3xxx.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02:00
rtc-sun4v.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-sun6i.c rtc: sun6i: disable automatic clock input switching 2024-09-12 00:33:33 +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: tegra: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-test.c rtc: test: remove debug message 2020-12-03 23:43:23 +01:00
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-tps6594.c rtc: tps6594: Fix integer overflow on 32bit systems 2025-02-08 09:58:01 +01:00
rtc-tps65910.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-twl.c rtc: twl: convert comma to semicolon 2024-09-12 00:08:09 +02:00
rtc-vt8500.c rtc: vt8500: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-wilco-ec.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-wm831x.c rtc: rework rtc_register_device() resource management 2020-11-19 12:50:12 +01:00
rtc-wm8350.c rtc: wm8350: remove unnecessary messages 2023-09-06 01:26:04 +02:00
rtc-x1205.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-xgene.c rtc: xgene: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-zynqmp.c rtc: zynqmp: Fix optional clock name property 2025-02-17 10:05:44 +01:00
sysfs.c rtc: Include <linux/kstrtox.h> when appropriate 2022-11-15 21:01:51 +01:00