linux/drivers/gpio/gpio-pisosr.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2015-2023 Texas Instruments Incorporated - https://www.ti.com/
 *	Andrew Davis <[email protected]>
 */

#include <linux/bitmap.h>
#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/gpio/consumer.h>
#include <linux/gpio/driver.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/spi/spi.h>

#define DEFAULT_NGPIO

/**
 * struct pisosr_gpio - GPIO driver data
 * @chip: GPIO controller chip
 * @spi: SPI device pointer
 * @buffer: Buffer for device reads
 * @buffer_size: Size of buffer
 * @load_gpio: GPIO pin used to load input into device
 * @lock: Protects read sequences
 */
struct pisosr_gpio {};

static int pisosr_gpio_refresh(struct pisosr_gpio *gpio)
{}

static int pisosr_gpio_get_direction(struct gpio_chip *chip,
				     unsigned offset)
{}

static int pisosr_gpio_direction_input(struct gpio_chip *chip,
				       unsigned offset)
{}

static int pisosr_gpio_direction_output(struct gpio_chip *chip,
					unsigned offset, int value)
{}

static int pisosr_gpio_get(struct gpio_chip *chip, unsigned offset)
{}

static int pisosr_gpio_get_multiple(struct gpio_chip *chip,
				    unsigned long *mask, unsigned long *bits)
{}

static const struct gpio_chip template_chip =;

static void pisosr_mutex_destroy(void *lock)
{}

static int pisosr_gpio_probe(struct spi_device *spi)
{}

static const struct spi_device_id pisosr_gpio_id_table[] =;
MODULE_DEVICE_TABLE(spi, pisosr_gpio_id_table);

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

static struct spi_driver pisosr_gpio_driver =;
module_spi_driver();

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