• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 #ifndef _SPI_BITBANG_H_
3 #define _SPI_BITBANG_H_
4 
5 #include <types.h>
6 
7 struct spi_bitbang_ops {
8 	int (*get_miso)(const struct spi_bitbang_ops *ops);
9 	void (*set_mosi)(const struct spi_bitbang_ops *ops, int value);
10 	void (*set_clk)(const struct spi_bitbang_ops *ops, int value);
11 	void (*set_cs)(const struct spi_bitbang_ops *ops, int value);
12 };
13 
14 int spi_bitbang_claim_bus(const struct spi_bitbang_ops *ops);
15 void spi_bitbang_release_bus(const struct spi_bitbang_ops *ops);
16 int spi_bitbang_xfer(const struct spi_bitbang_ops *ops, const void *dout,
17 		     size_t bytes_out, void *din, size_t bytes_in);
18 
19 #endif /* _SPI_BITBANG_H_ */
20