linux/drivers/rtc
Valentin Caron efa9c5be2c rtc: stm32: add new st,stm32mp25-rtc compatible and check RIF configuration
Introduce new st,stm32mp25-rtc compatible. It is based on st,stm32mp1-rtc.

Difference is that stm32mp25 soc implements a triple protection on RTC
registers:
- Secure bit based protection
- Privileged context based protection
- Compartment ID filtering based protection
This driver will now check theses configurations before probing to avoid
exceptions and fake reads on register.

At this time, driver needs only to check two resources: INIT and ALARM_A.
Other resources are not used.

Resource isolation framework (RIF) is a comprehensive set of hardware
blocks designed to enforce and manage isolation of STM32 hardware
resources, like memory and peripherals.

Link: https://www.st.com/resource/en/reference_manual/rm0457-stm32mp25xx-advanced-armbased-3264bit-mpus-stmicroelectronics.pdf#page=4081
Signed-off-by: Valentin Caron <valentin.caron@foss.st.com>
Link: https://lore.kernel.org/r/20240708153434.416287-3-valentin.caron@foss.st.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2024-07-10 17:15:33 +02:00
..
class.c rtc: class: make rtc_class constant 2024-03-08 12:05:10 +01:00
dev.c
interface.c rtc: interface: Add RTC offset to alarm after fix-up 2024-07-07 00:40:17 +02:00
Kconfig rtc: Add driver for Epson RX8111 2024-04-17 01:45:33 +02:00
lib_test.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
lib.c
Makefile rtc: Add driver for Epson RX8111 2024-04-17 01:45:33 +02: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-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-ab8500.c rtc: ab8500: 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: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02:00
rtc-abx80x.c rtc: abx80x: Fix return value of nvmem callback on read 2024-06-28 00:21:46 +02: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
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: remove redundant of_match_ptr() 2023-08-10 09:45:41 +02:00
rtc-au1xxx.c
rtc-bd70528.c
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
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: Fix return value of nvmem callbacks 2024-06-28 00:21:06 +02:00
rtc-core.h
rtc-cpcap.c
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-da9055.c
rtc-da9063.c rtc: da9063: Use dev_err_probe() 2024-01-18 01:00:21 +01:00
rtc-digicolor.c
rtc-ds1216.c
rtc-ds1286.c
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
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-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-generic.c
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-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: Add rtc driver for the Loongson family chips 2023-06-26 01:19:11 +02: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: m41t80: Use the unified property API get the wakeup-source property 2024-02-29 22:28:19 +01: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-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
rtc-max6916.c
rtc-max8907.c rtc: max8907: Drop unused i2c include 2023-02-01 09:13:35 +01:00
rtc-max8925.c
rtc-max8997.c
rtc-max8998.c
rtc-max31335.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +02: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-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-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: mv: Convert to platform remove callback returning void 2023-10-13 12:29:08 +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-mxc.c rtc: Explicitly include correct DT includes 2023-07-27 23:31:29 +02: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-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-optee.c
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: Explicitly include correct DT includes 2023-07-27 23:31:29 +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
rtc-pl031.c
rtc-pm8xxx.c rtc: pm8xxx: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
rtc-ps3.c
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-rc5t583.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-rc5t619.c
rtc-rk808.c rtc: rk808: reduce 'struct rk808' usage 2022-12-11 20:56:33 +01:00
rtc-rp5c01.c
rtc-rs5c313.c rtc: rs5c313: correct some spelling mistakes 2022-12-15 23:34:31 +01:00
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: 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
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: Report maximum alarm limit to rtc core 2023-08-27 23:50:22 +02: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: s5m: Drop S5M8763 support 2023-04-26 11:40:26 +01:00
rtc-s35390a.c rtc: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-07-07 00:40:29 +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
rtc-sc27xx.c
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: Simplify clk handling in st_rtc_probe() 2023-06-26 00:53:19 +02:00
rtc-starfire.c
rtc-stk17ta8.c
rtc-stm32.c rtc: stm32: add new st,stm32mp25-rtc compatible and check RIF configuration 2024-07-10 17:15:33 +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: tegra: Convert to platform remove callback returning void 2023-03-17 23:03:18 +01:00
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-tps6594.c rtc: tps6594: Add power management support 2024-06-28 00:18:55 +02:00
rtc-tps65910.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +02:00
rtc-twl.c rtc: add missing MODULE_DESCRIPTION() macro 2024-06-28 00:24:43 +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-wm831x.c
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: Convert to platform remove callback returning void 2023-03-17 23:03:19 +01:00
sysfs.c rtc: Include <linux/kstrtox.h> when appropriate 2022-11-15 21:01:51 +01:00