linux/drivers/firmware/arm_scmi/shmem.c

// SPDX-License-Identifier: GPL-2.0
/*
 * For transport using shared mem structure.
 *
 * Copyright (C) 2019-2024 ARM Ltd.
 */

#include <linux/ktime.h>
#include <linux/io.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/processor.h>
#include <linux/types.h>

#include <linux/bug.h>

#include "common.h"

/*
 * SCMI specification requires all parameters, message headers, return
 * arguments or any protocol data to be expressed in little endian
 * format only.
 */
struct scmi_shared_mem {};

static void shmem_tx_prepare(struct scmi_shared_mem __iomem *shmem,
			     struct scmi_xfer *xfer,
			     struct scmi_chan_info *cinfo)
{}

static u32 shmem_read_header(struct scmi_shared_mem __iomem *shmem)
{}

static void shmem_fetch_response(struct scmi_shared_mem __iomem *shmem,
				 struct scmi_xfer *xfer)
{}

static void shmem_fetch_notification(struct scmi_shared_mem __iomem *shmem,
				     size_t max_len, struct scmi_xfer *xfer)
{}

static void shmem_clear_channel(struct scmi_shared_mem __iomem *shmem)
{}

static bool shmem_poll_done(struct scmi_shared_mem __iomem *shmem,
			    struct scmi_xfer *xfer)
{}

static bool shmem_channel_free(struct scmi_shared_mem __iomem *shmem)
{}

static bool shmem_channel_intr_enabled(struct scmi_shared_mem __iomem *shmem)
{}

static void __iomem *shmem_setup_iomap(struct scmi_chan_info *cinfo,
				       struct device *dev, bool tx,
				       struct resource *res)
{}

static const struct scmi_shared_mem_operations scmi_shmem_ops =;

const struct scmi_shared_mem_operations *scmi_shared_mem_operations_get(void)
{}