linux/drivers/mailbox/sun6i-msgbox.c

// SPDX-License-Identifier: GPL-2.0
//
// Copyright (c) 2017-2019 Samuel Holland <[email protected]>

#include <linux/bitops.h>
#include <linux/clk.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/mailbox_controller.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_irq.h>
#include <linux/platform_device.h>
#include <linux/reset.h>
#include <linux/spinlock.h>

#define NUM_CHANS

#define CTRL_REG(n)
#define CTRL_RX(n)
#define CTRL_TX(n)

#define REMOTE_IRQ_EN_REG
#define REMOTE_IRQ_STAT_REG
#define LOCAL_IRQ_EN_REG
#define LOCAL_IRQ_STAT_REG

#define RX_IRQ(n)
#define RX_IRQ_MASK
#define TX_IRQ(n)
#define TX_IRQ_MASK

#define FIFO_STAT_REG(n)
#define FIFO_STAT_MASK

#define MSG_STAT_REG(n)
#define MSG_STAT_MASK

#define MSG_DATA_REG(n)

#define mbox_dbg(mbox, ...)

struct sun6i_msgbox {};

static bool sun6i_msgbox_last_tx_done(struct mbox_chan *chan);
static bool sun6i_msgbox_peek_data(struct mbox_chan *chan);

static inline int channel_number(struct mbox_chan *chan)
{}

static inline struct sun6i_msgbox *to_sun6i_msgbox(struct mbox_chan *chan)
{}

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

static int sun6i_msgbox_send_data(struct mbox_chan *chan, void *data)
{}

static int sun6i_msgbox_startup(struct mbox_chan *chan)
{}

static void sun6i_msgbox_shutdown(struct mbox_chan *chan)
{}

static bool sun6i_msgbox_last_tx_done(struct mbox_chan *chan)
{}

static bool sun6i_msgbox_peek_data(struct mbox_chan *chan)
{}

static const struct mbox_chan_ops sun6i_msgbox_chan_ops =;

static int sun6i_msgbox_probe(struct platform_device *pdev)
{}

static void sun6i_msgbox_remove(struct platform_device *pdev)
{}

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

static struct platform_driver sun6i_msgbox_driver =;
module_platform_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();