Make rtc_nvmem_register return -EBUSY when an nvmem is already registered
for that RTC.

Signed-off-by: Alexandre Belloni <[email protected]>
---
 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.16.1

Reply via email to