linux/drivers/fpga/xilinx-core.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Common parts of the Xilinx Spartan6 and 7 Series FPGA manager drivers.
 *
 * Copyright (C) 2017 DENX Software Engineering
 *
 * Anatolij Gustschin <[email protected]>
 */

#include "xilinx-core.h"

#include <linux/delay.h>
#include <linux/fpga/fpga-mgr.h>
#include <linux/gpio/consumer.h>
#include <linux/of.h>

static int get_done_gpio(struct fpga_manager *mgr)
{}

static enum fpga_mgr_states xilinx_core_state(struct fpga_manager *mgr)
{}

/**
 * wait_for_init_b - wait for the INIT_B pin to have a given state, or wait
 * a given delay if the pin is unavailable
 *
 * @mgr:        The FPGA manager object
 * @value:      Value INIT_B to wait for (1 = asserted = low)
 * @alt_udelay: Delay to wait if the INIT_B GPIO is not available
 *
 * Returns 0 when the INIT_B GPIO reached the given state or -ETIMEDOUT if
 * too much time passed waiting for that. If no INIT_B GPIO is available
 * then always return 0.
 */
static int wait_for_init_b(struct fpga_manager *mgr, int value,
			   unsigned long alt_udelay)
{}

static int xilinx_core_write_init(struct fpga_manager *mgr,
				  struct fpga_image_info *info, const char *buf,
				  size_t count)
{}

static int xilinx_core_write(struct fpga_manager *mgr, const char *buf,
			     size_t count)
{}

static int xilinx_core_write_complete(struct fpga_manager *mgr,
				      struct fpga_image_info *info)
{}

static inline struct gpio_desc *
xilinx_core_devm_gpiod_get(struct device *dev, const char *con_id,
			   const char *legacy_con_id, enum gpiod_flags flags)
{}

static const struct fpga_manager_ops xilinx_core_ops =;

int xilinx_core_probe(struct xilinx_fpga_core *core)
{}
EXPORT_SYMBOL_GPL();

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