linux/drivers/rtc/rtc-mc146818-lib.c

// SPDX-License-Identifier: GPL-2.0-only
#include <linux/bcd.h>
#include <linux/delay.h>
#include <linux/export.h>
#include <linux/mc146818rtc.h>

#ifdef CONFIG_ACPI
#include <linux/acpi.h>
#endif

#define UIP_RECHECK_DELAY
#define UIP_RECHECK_DELAY_MS
#define UIP_RECHECK_LOOPS_MS(x)

/*
 * Execute a function while the UIP (Update-in-progress) bit of the RTC is
 * unset. The timeout is configurable by the caller in ms.
 *
 * Warning: callback may be executed more then once.
 */
bool mc146818_avoid_UIP(void (*callback)(unsigned char seconds, void *param),
			int timeout,
			void *param)
{}
EXPORT_SYMBOL_GPL();

/*
 * If the UIP (Update-in-progress) bit of the RTC is set for more then
 * 10ms, the RTC is apparently broken or not present.
 */
bool mc146818_does_rtc_work(void)
{}
EXPORT_SYMBOL_GPL();

struct mc146818_get_time_callback_param {};

static void mc146818_get_time_callback(unsigned char seconds, void *param_in)
{}

/**
 * mc146818_get_time - Get the current time from the RTC
 * @time: pointer to struct rtc_time to store the current time
 * @timeout: timeout value in ms
 *
 * This function reads the current time from the RTC and stores it in the
 * provided struct rtc_time. The timeout parameter specifies the maximum
 * time to wait for the RTC to become ready.
 *
 * Return: 0 on success, -ETIMEDOUT if the RTC did not become ready within
 * the specified timeout, or another error code if an error occurred.
 */
int mc146818_get_time(struct rtc_time *time, int timeout)
{}
EXPORT_SYMBOL_GPL();

/* AMD systems don't allow access to AltCentury with DV1 */
static bool apply_amd_register_a_behavior(void)
{}

/* Set the current date and time in the real time clock. */
int mc146818_set_time(struct rtc_time *time)
{}
EXPORT_SYMBOL_GPL();