rtc: rzn1: Use temporary variable for struct device
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Fri, 21 Aug 2026 21:10:27 +0000 (22:10 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sun, 23 Aug 2026 19:23:57 +0000 (21:23 +0200)
Use a temporary variable for the struct device pointers to avoid
dereferencing.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://patch.msgid.link/20260821211032.13554-13-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-rzn1.c

index 4e62f7b..7598efc 100644 (file)
@@ -399,13 +399,14 @@ static void rzn1_rtc_disable_hardware(void *data)
 
 static int rzn1_rtc_probe(struct platform_device *pdev)
 {
+       struct device *dev = &pdev->dev;
        unsigned long rate = 32768;
        struct rzn1_rtc *rtc;
        u32 val, scmp_val = 0;
        struct clk *xtal;
        int irq, ret;
 
-       rtc = devm_kzalloc(&pdev->dev, sizeof(*rtc), GFP_KERNEL);
+       rtc = devm_kzalloc(dev, sizeof(*rtc), GFP_KERNEL);
        if (!rtc)
                return -ENOMEM;
 
@@ -413,13 +414,13 @@ static int rzn1_rtc_probe(struct platform_device *pdev)
 
        rtc->base = devm_platform_ioremap_resource(pdev, 0);
        if (IS_ERR(rtc->base))
-               return dev_err_probe(&pdev->dev, PTR_ERR(rtc->base), "Missing reg\n");
+               return dev_err_probe(dev, PTR_ERR(rtc->base), "Missing reg\n");
 
        irq = platform_get_irq_byname(pdev, "alarm");
        if (irq < 0)
                return irq;
 
-       rtc->rtcdev = devm_rtc_allocate_device(&pdev->dev);
+       rtc->rtcdev = devm_rtc_allocate_device(dev);
        if (IS_ERR(rtc->rtcdev))
                return PTR_ERR(rtc->rtcdev);
 
@@ -427,19 +428,19 @@ static int rzn1_rtc_probe(struct platform_device *pdev)
        rtc->rtcdev->range_max = RTC_TIMESTAMP_END_2099;
        rtc->rtcdev->alarm_offset_max = 7 * 86400;
 
-       ret = devm_pm_runtime_enable(&pdev->dev);
+       ret = devm_pm_runtime_enable(dev);
        if (ret < 0)
                return ret;
-       ret = pm_runtime_resume_and_get(&pdev->dev);
+       ret = pm_runtime_resume_and_get(dev);
        if (ret < 0)
                return ret;
 
-       ret = devm_add_action_or_reset(&pdev->dev, rzn1_rtc_disable_hardware, &pdev->dev);
+       ret = devm_add_action_or_reset(dev, rzn1_rtc_disable_hardware, dev);
        if (ret)
                return ret;
 
        /* Only switch to scmp if we have an xtal clock with a valid rate and != 32768 */
-       xtal = devm_clk_get_optional(&pdev->dev, "xtal");
+       xtal = devm_clk_get_optional(dev, "xtal");
        if (IS_ERR(xtal)) {
                return PTR_ERR(xtal);
        } else if (xtal) {
@@ -483,9 +484,9 @@ static int rzn1_rtc_probe(struct platform_device *pdev)
 
        spin_lock_init(&rtc->ctl1_access_lock);
 
-       ret = devm_request_irq(&pdev->dev, irq, rzn1_rtc_alarm_irq, 0, "RZN1 RTC Alarm", rtc);
+       ret = devm_request_irq(dev, irq, rzn1_rtc_alarm_irq, 0, "RZN1 RTC Alarm", rtc);
        if (ret) {
-               dev_err(&pdev->dev, "RTC alarm interrupt not available\n");
+               dev_err(dev, "RTC alarm interrupt not available\n");
                return ret;
        }
 
@@ -493,12 +494,12 @@ static int rzn1_rtc_probe(struct platform_device *pdev)
        if (irq == -EPROBE_DEFER)
                return irq;
        if (irq >= 0)
-               ret = devm_request_irq(&pdev->dev, irq, rzn1_rtc_1s_irq, 0, "RZN1 RTC 1s", rtc);
+               ret = devm_request_irq(dev, irq, rzn1_rtc_1s_irq, 0, "RZN1 RTC 1s", rtc);
 
        if (irq < 0 || ret) {
                set_bit(RTC_FEATURE_ALARM_RES_MINUTE, rtc->rtcdev->features);
                clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, rtc->rtcdev->features);
-               dev_warn(&pdev->dev, "RTC pps interrupt not available. Alarm has only minute accuracy\n");
+               dev_warn(dev, "RTC pps interrupt not available. Alarm has only minute accuracy\n");
        }
 
        return devm_rtc_register_device(rtc->rtcdev);