coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
spi.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef __COREBOOT_SRC_SOC_CN81XX_INCLUDE_SOC_SPI_H
4 #define __COREBOOT_SRC_SOC_CN81XX_INCLUDE_SOC_SPI_H
5 
6 /* This driver serves as a CBFS media source. */
7 #include <spi-generic.h>
8 #include <stddef.h>
9 
10 void spi_enable(const size_t bus);
11 void spi_disable(const size_t bus);
12 void spi_set_cs(const size_t bus,
13  const size_t chip_select,
14  const size_t assert_is_low);
15 void spi_set_clock(const size_t bus,
16  const size_t speed_hz,
17  const size_t idle_low,
18  const size_t idle_cycles);
19 uint64_t spi_get_clock(const size_t bus);
20 void spi_set_lsbmsb(const size_t bus, const size_t lsb_first);
21 void spi_init_custom(const size_t bus,
22  const size_t speed_hz,
23  const size_t idle_low,
24  const size_t idle_cycles,
25  const size_t lsb_first,
26  const size_t chip_select,
27  const size_t assert_is_low);
28 #endif /* ! __COREBOOT_SRC_SOC_CN81XX_INCLUDE_SOC_SPI_H */
void spi_set_cs(const size_t bus, const size_t chip_select, const size_t assert_is_low)
Set SPI Chip select line and level if asserted.
Definition: spi.c:150
void spi_set_clock(const size_t bus, const size_t speed_hz, const size_t idle_low, const size_t idle_cycles)
Set SPI clock frequency.
Definition: spi.c:180
void spi_enable(const size_t bus)
Enable the SPI controller.
Definition: spi.c:106
void spi_init_custom(const size_t bus, const size_t speed_hz, const size_t idle_low, const size_t idle_cycles, const size_t lsb_first, const size_t chip_select, const size_t assert_is_low)
Init SPI with custom parameters and enable SPI controller.
Definition: spi.c:261
void spi_disable(const size_t bus)
Disable the SPI controller.
Definition: spi.c:127
void spi_set_lsbmsb(const size_t bus, const size_t lsb_first)
Set SPI LSB/MSB first.
Definition: spi.c:234
uint64_t spi_get_clock(const size_t bus)
Get current SPI clock frequency in Hz.
Definition: spi.c:211
unsigned long long uint64_t
Definition: stdint.h:17
Definition: device.h:76