linux/drivers/mfd/intel-m10-bmc-pmci.c

// SPDX-License-Identifier: GPL-2.0
/*
 * MAX10 BMC Platform Management Component Interface (PMCI) based
 * interface.
 *
 * Copyright (C) 2020-2023 Intel Corporation.
 */

#include <linux/bitfield.h>
#include <linux/device.h>
#include <linux/dfl.h>
#include <linux/mfd/core.h>
#include <linux/mfd/intel-m10-bmc.h>
#include <linux/minmax.h>
#include <linux/module.h>
#include <linux/regmap.h>

struct m10bmc_pmci_device {};

/*
 * Intel FGPA indirect register access via hardware controller/bridge.
 */
#define INDIRECT_CMD_OFF
#define INDIRECT_CMD_CLR
#define INDIRECT_CMD_RD
#define INDIRECT_CMD_WR
#define INDIRECT_CMD_ACK

#define INDIRECT_ADDR_OFF
#define INDIRECT_RD_OFF
#define INDIRECT_WR_OFF

#define INDIRECT_INT_US
#define INDIRECT_TIMEOUT_US

struct indirect_ctx {};

static int indirect_clear_cmd(struct indirect_ctx *ctx)
{}

static int indirect_reg_read(void *context, unsigned int reg, unsigned int *val)
{}

static int indirect_reg_write(void *context, unsigned int reg, unsigned int val)
{}

static void pmci_write_fifo(void __iomem *base, const u32 *buf, size_t count)
{}

static void pmci_read_fifo(void __iomem *base, u32 *buf, size_t count)
{}

static u32 pmci_get_write_space(struct m10bmc_pmci_device *pmci)
{}

static int pmci_flash_bulk_write(struct intel_m10bmc *m10bmc, const u8 *buf, u32 size)
{}

static int pmci_flash_bulk_read(struct intel_m10bmc *m10bmc, u8 *buf, u32 addr, u32 size)
{}

static int m10bmc_pmci_set_flash_host_mux(struct intel_m10bmc *m10bmc, bool request)
{}

static int m10bmc_pmci_flash_read(struct intel_m10bmc *m10bmc, u8 *buf, u32 addr, u32 size)
{}

static int m10bmc_pmci_flash_write(struct intel_m10bmc *m10bmc, const u8 *buf, u32 offset, u32 size)
{}

static int m10bmc_pmci_flash_lock(struct intel_m10bmc *m10bmc)
{}

static void m10bmc_pmci_flash_unlock(struct intel_m10bmc *m10bmc)
{}

static const struct intel_m10bmc_flash_bulk_ops m10bmc_pmci_flash_bulk_ops =;

static const struct regmap_range m10bmc_pmci_regmap_range[] =;

static const struct regmap_access_table m10bmc_pmci_access_table =;

static struct regmap_config m10bmc_pmci_regmap_config =;

static struct mfd_cell m10bmc_pmci_n6000_bmc_subdevs[] =;

static const struct m10bmc_csr_map m10bmc_n6000_csr_map =;

static const struct intel_m10bmc_platform_info m10bmc_pmci_n6000 =;

static int m10bmc_pmci_probe(struct dfl_device *ddev)
{}

static void m10bmc_pmci_remove(struct dfl_device *ddev)
{}

#define FME_FEATURE_ID_M10BMC_PMCI

static const struct dfl_device_id m10bmc_pmci_ids[] =;
MODULE_DEVICE_TABLE(dfl, m10bmc_pmci_ids);

static struct dfl_driver m10bmc_pmci_driver =;

module_dfl_driver();

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