linux/drivers/clocksource/timer-zevio.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 *  linux/drivers/clocksource/zevio-timer.c
 *
 *  Copyright (C) 2013 Daniel Tang <[email protected]>
 */

#include <linux/io.h>
#include <linux/irq.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/clk.h>
#include <linux/clockchips.h>
#include <linux/cpumask.h>
#include <linux/interrupt.h>
#include <linux/slab.h>

#define IO_CURRENT_VAL
#define IO_DIVIDER
#define IO_CONTROL

#define IO_TIMER1
#define IO_TIMER2

#define IO_MATCH_BEGIN
#define IO_MATCH(x)

#define IO_INTR_STS
#define IO_INTR_ACK
#define IO_INTR_MSK

#define CNTL_STOP_TIMER
#define CNTL_RUN_TIMER

#define CNTL_INC
#define CNTL_DEC

#define CNTL_TOZERO
#define CNTL_MATCH(x)
#define CNTL_FOREVER

/* There are 6 match registers but we only use one. */
#define TIMER_MATCH

#define TIMER_INTR_MSK
#define TIMER_INTR_ALL

struct zevio_timer {};

static int zevio_timer_set_event(unsigned long delta,
				 struct clock_event_device *dev)
{}

static int zevio_timer_shutdown(struct clock_event_device *dev)
{}

static int zevio_timer_set_oneshot(struct clock_event_device *dev)
{}

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

static int __init zevio_timer_add(struct device_node *node)
{}

static int __init zevio_timer_init(struct device_node *node)
{}

TIMER_OF_DECLARE(zevio_timer, "lsi,zevio-timer", zevio_timer_init);