Commit 50f97e91 authored by Alexandre Belloni's avatar Alexandre Belloni
Browse files

rtc: opal: constify opal_rtc_ops



Use RTC_FEATURE_ALARM to signal to the core whether alarms are available
instead of changing the global struct rtc_class_ops, allowing to make it
const.

Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20210110231752.1418816-13-alexandre.belloni@bootlin.com
parent 3948a866
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -224,9 +224,12 @@ static int opal_tpo_alarm_irq_enable(struct device *dev, unsigned int enabled)
	return enabled ? 0 : opal_set_tpo_time(dev, &alarm);
}

static struct rtc_class_ops opal_rtc_ops = {
static const struct rtc_class_ops opal_rtc_ops = {
	.read_time	= opal_get_rtc_time,
	.set_time	= opal_set_rtc_time,
	.read_alarm	= opal_get_tpo_time,
	.set_alarm	= opal_set_tpo_time,
	.alarm_irq_enable = opal_tpo_alarm_irq_enable,
};

static int opal_rtc_probe(struct platform_device *pdev)
@@ -239,12 +242,10 @@ static int opal_rtc_probe(struct platform_device *pdev)

	if (pdev->dev.of_node &&
	    (of_property_read_bool(pdev->dev.of_node, "wakeup-source") ||
	     of_property_read_bool(pdev->dev.of_node, "has-tpo")/* legacy */)) {
	     of_property_read_bool(pdev->dev.of_node, "has-tpo")/* legacy */))
		device_set_wakeup_capable(&pdev->dev, true);
		opal_rtc_ops.read_alarm	= opal_get_tpo_time;
		opal_rtc_ops.set_alarm = opal_set_tpo_time;
		opal_rtc_ops.alarm_irq_enable = opal_tpo_alarm_irq_enable;
	}
	else
		clear_bit(RTC_FEATURE_ALARM, rtc->features);

	rtc->ops = &opal_rtc_ops;
	rtc->range_min = RTC_TIMESTAMP_BEGIN_0000;