linux/drivers/spi/spi-ljca.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Intel La Jolla Cove Adapter USB-SPI driver
 *
 * Copyright (c) 2023, Intel Corporation.
 */

#include <linux/auxiliary_bus.h>
#include <linux/bitfield.h>
#include <linux/bits.h>
#include <linux/dev_printk.h>
#include <linux/module.h>
#include <linux/spi/spi.h>
#include <linux/usb/ljca.h>

#define LJCA_SPI_BUS_MAX_HZ

#define LJCA_SPI_BUF_SIZE
#define LJCA_SPI_MAX_XFER_SIZE

#define LJCA_SPI_CLK_MODE_POLARITY
#define LJCA_SPI_CLK_MODE_PHASE

#define LJCA_SPI_XFER_INDICATOR_ID
#define LJCA_SPI_XFER_INDICATOR_CMPL
#define LJCA_SPI_XFER_INDICATOR_INDEX

/* SPI commands */
enum ljca_spi_cmd {};

enum {};

enum {};

enum {};

struct ljca_spi_init_packet {} __packed;

struct ljca_spi_xfer_packet {} __packed;

struct ljca_spi_dev {};

static int ljca_spi_read_write(struct ljca_spi_dev *ljca_spi, const u8 *w_data,
			       u8 *r_data, int len, int id, int complete,
			       int cmd)
{}

static int ljca_spi_init(struct ljca_spi_dev *ljca_spi, u8 div, u8 mode)
{}

static int ljca_spi_deinit(struct ljca_spi_dev *ljca_spi)
{}

static inline int ljca_spi_transfer(struct ljca_spi_dev *ljca_spi,
				    const u8 *tx_data, u8 *rx_data, u16 len)
{}

static int ljca_spi_transfer_one(struct spi_controller *controller,
				 struct spi_device *spi,
				 struct spi_transfer *xfer)
{}

static int ljca_spi_probe(struct auxiliary_device *auxdev,
			  const struct auxiliary_device_id *aux_dev_id)
{}

static void ljca_spi_dev_remove(struct auxiliary_device *auxdev)
{}

static int ljca_spi_dev_suspend(struct device *dev)
{}

static int ljca_spi_dev_resume(struct device *dev)
{}

static const struct dev_pm_ops ljca_spi_pm =;

static const struct auxiliary_device_id ljca_spi_id_table[] =;
MODULE_DEVICE_TABLE(auxiliary, ljca_spi_id_table);

static struct auxiliary_driver ljca_spi_driver =;
module_auxiliary_driver();

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