From: Alexandre Belloni <alexandre.belloni@bootlin.com>
Date: Mon, 12 Feb 2018 23:47:18 +0100
Subject: rtc: nvmem: disallow registering nvmem more than once
Git-commit: ab3ea36eda76069ba52e9b6aef5a9370b0b462bf
Patch-mainline: v4.17-rc1
References: fate#326530,fate#326531,fate#326535,fate#326538,fate#326539
Make rtc_nvmem_register return -EBUSY when an nvmem is already registered
for that RTC.
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Mian Yousaf Kaukab <yousaf.kaukab@suse.com>
---
drivers/rtc/nvmem.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/rtc/nvmem.c b/drivers/rtc/nvmem.c
index 293df6db7c42..fd1c39a5ade5 100644
--- a/drivers/rtc/nvmem.c
+++ b/drivers/rtc/nvmem.c
@@ -87,6 +87,9 @@ static void rtc_nvram_unregister(struct rtc_device *rtc)
int rtc_nvmem_register(struct rtc_device *rtc,
struct nvmem_config *nvmem_config)
{
+ if (!IS_ERR_OR_NULL(rtc->nvmem))
+ return -EBUSY;
+
if (!nvmem_config)
return -ENODEV;
--
2.11.0