linux/drivers/clocksource/timer-stm32-lp.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
 * Authors: Benjamin Gaignard <[email protected]> for STMicroelectronics.
 *	    Pascal Paillet <[email protected]> for STMicroelectronics.
 */

#include <linux/clk.h>
#include <linux/clockchips.h>
#include <linux/interrupt.h>
#include <linux/mfd/stm32-lptimer.h>
#include <linux/module.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/platform_device.h>
#include <linux/pm_wakeirq.h>

#define CFGR_PSC_OFFSET
#define STM32_LP_RATING
#define STM32_TARGET_CLKRATE
#define STM32_LP_MAX_PSC

struct stm32_lp_private {};

static struct stm32_lp_private*
to_priv(struct clock_event_device *clkevt)
{}

static int stm32_clkevent_lp_shutdown(struct clock_event_device *clkevt)
{}

static int stm32_clkevent_lp_set_timer(unsigned long evt,
				       struct clock_event_device *clkevt,
				       int is_periodic)
{}

static int stm32_clkevent_lp_set_next_event(unsigned long evt,
					    struct clock_event_device *clkevt)
{}

static int stm32_clkevent_lp_set_periodic(struct clock_event_device *clkevt)
{}

static int stm32_clkevent_lp_set_oneshot(struct clock_event_device *clkevt)
{}

static irqreturn_t stm32_clkevent_lp_irq_handler(int irq, void *dev_id)
{}

static void stm32_clkevent_lp_set_prescaler(struct stm32_lp_private *priv,
					    unsigned long *rate)
{}

static void stm32_clkevent_lp_init(struct stm32_lp_private *priv,
				  struct device_node *np, unsigned long rate)
{}

static int stm32_clkevent_lp_probe(struct platform_device *pdev)
{}

static const struct of_device_id stm32_clkevent_lp_of_match[] =;
MODULE_DEVICE_TABLE(of, stm32_clkevent_lp_of_match);

static struct platform_driver stm32_clkevent_lp_driver =;
module_platform_driver();

MODULE_ALIAS();
MODULE_DESCRIPTION();