#include <linux/delay.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/fpga/fpga-bridge.h>
#define FREEZE_CSR_STATUS_OFFSET …
#define FREEZE_CSR_CTRL_OFFSET …
#define FREEZE_CSR_ILLEGAL_REQ_OFFSET …
#define FREEZE_CSR_REG_VERSION …
#define FREEZE_CSR_SUPPORTED_VERSION …
#define FREEZE_CSR_OFFICIAL_VERSION …
#define FREEZE_CSR_STATUS_FREEZE_REQ_DONE …
#define FREEZE_CSR_STATUS_UNFREEZE_REQ_DONE …
#define FREEZE_CSR_CTRL_FREEZE_REQ …
#define FREEZE_CSR_CTRL_RESET_REQ …
#define FREEZE_CSR_CTRL_UNFREEZE_REQ …
#define FREEZE_BRIDGE_NAME …
struct altera_freeze_br_data { … };
static int altera_freeze_br_req_ack(struct altera_freeze_br_data *priv,
u32 timeout, u32 req_ack)
{ … }
static int altera_freeze_br_do_freeze(struct altera_freeze_br_data *priv,
u32 timeout)
{ … }
static int altera_freeze_br_do_unfreeze(struct altera_freeze_br_data *priv,
u32 timeout)
{ … }
static int altera_freeze_br_enable_set(struct fpga_bridge *bridge,
bool enable)
{ … }
static int altera_freeze_br_enable_show(struct fpga_bridge *bridge)
{ … }
static const struct fpga_bridge_ops altera_freeze_br_br_ops = …;
static const struct of_device_id altera_freeze_br_of_match[] = …;
MODULE_DEVICE_TABLE(of, altera_freeze_br_of_match);
static int altera_freeze_br_probe(struct platform_device *pdev)
{ … }
static void altera_freeze_br_remove(struct platform_device *pdev)
{ … }
static struct platform_driver altera_freeze_br_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;