[PATCH 0/8] rtc: rework resource management

From: Bartosz Golaszewski
Date: Mon Nov 09 2020 - 11:34:22 EST


From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>

Hi Alexandre,

As discussed: this is my take on RTC devres. The series does a couple things:
it adds missing documentation of managed RTC functions, adds the 'devm_' prefix
to managed APIs, makes the rtc_device struct unaware of being managed (removes
the registered field) and also shrinks devm_rtc_allocate_device().

Other than that, there are some semi-related patches in here, like the one
using the managed variant of pinctrl_register() in rtc-omap and another one
adding a generic error message when nvmem registraton fails.

I incorporated your RTC nvmem patch into the series with a minor tweak to it.

Alexandre Belloni (1):
rtc: nvmem: remove nvram ABI

Bartosz Golaszewski (7):
rtc: omap: use devm_pinctrl_register()
Revert "rtc: sc27xx: Always read normal alarm when registering RTC
device"
Documentation: list RTC devres helpers in devres.rst
rtc: add devm_ prefix to rtc_nvmem_register()
rtc: nvmem: emit an error message when nvmem registration fails
rtc: rework rtc_register_device() resource management
rtc: shrink devm_rtc_allocate_device()

.../driver-api/driver-model/devres.rst | 6 ++
arch/alpha/kernel/rtc.c | 2 +-
drivers/mfd/menelaus.c | 2 +-
drivers/rtc/class.c | 50 ++++------
drivers/rtc/nvmem.c | 91 ++-----------------
drivers/rtc/rtc-88pm80x.c | 2 +-
drivers/rtc/rtc-88pm860x.c | 2 +-
drivers/rtc/rtc-ab-b5ze-s3.c | 2 +-
drivers/rtc/rtc-ab-eoz9.c | 2 +-
drivers/rtc/rtc-ab3100.c | 2 +-
drivers/rtc/rtc-ab8500.c | 2 +-
drivers/rtc/rtc-abx80x.c | 2 +-
drivers/rtc/rtc-ac100.c | 2 +-
drivers/rtc/rtc-armada38x.c | 2 +-
drivers/rtc/rtc-aspeed.c | 2 +-
drivers/rtc/rtc-at91rm9200.c | 2 +-
drivers/rtc/rtc-at91sam9.c | 2 +-
drivers/rtc/rtc-au1xxx.c | 2 +-
drivers/rtc/rtc-bd70528.c | 2 +-
drivers/rtc/rtc-brcmstb-waketimer.c | 2 +-
drivers/rtc/rtc-cadence.c | 2 +-
drivers/rtc/rtc-cmos.c | 6 +-
drivers/rtc/rtc-coh901331.c | 2 +-
drivers/rtc/rtc-cpcap.c | 2 +-
drivers/rtc/rtc-cros-ec.c | 2 +-
drivers/rtc/rtc-da9052.c | 2 +-
drivers/rtc/rtc-da9063.c | 2 +-
drivers/rtc/rtc-davinci.c | 2 +-
drivers/rtc/rtc-digicolor.c | 2 +-
drivers/rtc/rtc-dm355evm.c | 2 +-
drivers/rtc/rtc-ds1305.c | 5 +-
drivers/rtc/rtc-ds1307.c | 5 +-
drivers/rtc/rtc-ds1343.c | 5 +-
drivers/rtc/rtc-ds1347.c | 2 +-
drivers/rtc/rtc-ds1374.c | 2 +-
drivers/rtc/rtc-ds1511.c | 6 +-
drivers/rtc/rtc-ds1553.c | 6 +-
drivers/rtc/rtc-ds1672.c | 2 +-
drivers/rtc/rtc-ds1685.c | 5 +-
drivers/rtc/rtc-ds1742.c | 6 +-
drivers/rtc/rtc-ds2404.c | 2 +-
drivers/rtc/rtc-ds3232.c | 2 +-
drivers/rtc/rtc-ep93xx.c | 2 +-
drivers/rtc/rtc-fsl-ftm-alarm.c | 2 +-
drivers/rtc/rtc-ftrtc010.c | 2 +-
drivers/rtc/rtc-goldfish.c | 2 +-
drivers/rtc/rtc-imx-sc.c | 2 +-
drivers/rtc/rtc-imxdi.c | 2 +-
drivers/rtc/rtc-isl12026.c | 4 +-
drivers/rtc/rtc-isl1208.c | 4 +-
drivers/rtc/rtc-jz4740.c | 2 +-
drivers/rtc/rtc-lpc32xx.c | 2 +-
drivers/rtc/rtc-ls1x.c | 2 +-
drivers/rtc/rtc-m41t80.c | 2 +-
drivers/rtc/rtc-m48t59.c | 5 +-
drivers/rtc/rtc-m48t86.c | 5 +-
drivers/rtc/rtc-mc13xxx.c | 2 +-
drivers/rtc/rtc-meson-vrtc.c | 2 +-
drivers/rtc/rtc-meson.c | 4 +-
drivers/rtc/rtc-mpc5121.c | 2 +-
drivers/rtc/rtc-mrst.c | 2 +-
drivers/rtc/rtc-mt2712.c | 2 +-
drivers/rtc/rtc-mt6397.c | 2 +-
drivers/rtc/rtc-mv.c | 2 +-
drivers/rtc/rtc-mxc.c | 2 +-
drivers/rtc/rtc-mxc_v2.c | 2 +-
drivers/rtc/rtc-omap.c | 13 +--
drivers/rtc/rtc-pcap.c | 2 +-
drivers/rtc/rtc-pcf2123.c | 2 +-
drivers/rtc/rtc-pcf2127.c | 4 +-
drivers/rtc/rtc-pcf85063.c | 4 +-
drivers/rtc/rtc-pcf85363.c | 4 +-
drivers/rtc/rtc-pcf8563.c | 2 +-
drivers/rtc/rtc-pic32.c | 2 +-
drivers/rtc/rtc-pl030.c | 2 +-
drivers/rtc/rtc-pl031.c | 2 +-
drivers/rtc/rtc-pm8xxx.c | 2 +-
drivers/rtc/rtc-ps3.c | 2 +-
drivers/rtc/rtc-r9701.c | 2 +-
drivers/rtc/rtc-rc5t619.c | 2 +-
drivers/rtc/rtc-rk808.c | 2 +-
drivers/rtc/rtc-rp5c01.c | 5 +-
drivers/rtc/rtc-rs5c348.c | 2 +-
drivers/rtc/rtc-rv3028.c | 6 +-
drivers/rtc/rtc-rv3029c2.c | 4 +-
drivers/rtc/rtc-rv3032.c | 6 +-
drivers/rtc/rtc-rv8803.c | 5 +-
drivers/rtc/rtc-rx8010.c | 2 +-
drivers/rtc/rtc-rx8581.c | 4 +-
drivers/rtc/rtc-s35390a.c | 2 +-
drivers/rtc/rtc-sa1100.c | 2 +-
drivers/rtc/rtc-sc27xx.c | 10 +-
drivers/rtc/rtc-sd3078.c | 2 +-
drivers/rtc/rtc-sh.c | 2 +-
drivers/rtc/rtc-sirfsoc.c | 2 +-
drivers/rtc/rtc-snvs.c | 2 +-
drivers/rtc/rtc-st-lpc.c | 2 +-
drivers/rtc/rtc-starfire.c | 2 +-
drivers/rtc/rtc-stk17ta8.c | 5 +-
drivers/rtc/rtc-stmp3xxx.c | 2 +-
drivers/rtc/rtc-sun4v.c | 2 +-
drivers/rtc/rtc-sun6i.c | 2 +-
drivers/rtc/rtc-sunxi.c | 2 +-
drivers/rtc/rtc-tegra.c | 2 +-
drivers/rtc/rtc-test.c | 2 +-
drivers/rtc/rtc-tps6586x.c | 2 +-
drivers/rtc/rtc-tps65910.c | 2 +-
drivers/rtc/rtc-tx4939.c | 5 +-
drivers/rtc/rtc-vr41xx.c | 2 +-
drivers/rtc/rtc-vt8500.c | 2 +-
drivers/rtc/rtc-wilco-ec.c | 2 +-
drivers/rtc/rtc-wm831x.c | 2 +-
drivers/rtc/rtc-xgene.c | 2 +-
drivers/rtc/rtc-zynqmp.c | 2 +-
drivers/rtc/sysfs.c | 2 -
include/linux/rtc.h | 22 ++---
116 files changed, 180 insertions(+), 302 deletions(-)

--
2.29.1