![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
Go to the source code of this file.
Data Structures | |
struct | mtk_spi_regs |
struct | mtk_spi_bus |
Typedefs | |
typedef struct mtk_spi_regs | mtk_spi_regs |
Enumerations | |
enum | { SPI_CMD_ACT_SHIFT = 0 , SPI_CMD_RESUME_SHIFT = 1 , SPI_CMD_RST_SHIFT = 2 , SPI_CMD_PAUSE_EN_SHIFT = 4 , SPI_CMD_DEASSERT_SHIFT = 5 , SPI_CMD_CPHA_SHIFT = 8 , SPI_CMD_CPOL_SHIFT = 9 , SPI_CMD_RX_DMA_SHIFT = 10 , SPI_CMD_TX_DMA_SHIFT = 11 , SPI_CMD_TXMSBF_SHIFT = 12 , SPI_CMD_RXMSBF_SHIFT = 13 , SPI_CMD_RX_ENDIAN_SHIFT = 14 , SPI_CMD_TX_ENDIAN_SHIFT = 15 , SPI_CMD_FINISH_IE_SHIFT = 16 , SPI_CMD_PAUSE_IE_SHIFT = 17 , SPI_CMD_ACT_EN = BIT(SPI_CMD_ACT_SHIFT) , SPI_CMD_RESUME_EN = BIT(SPI_CMD_RESUME_SHIFT) , SPI_CMD_RST_EN = BIT(SPI_CMD_RST_SHIFT) , SPI_CMD_PAUSE_EN = BIT(SPI_CMD_PAUSE_EN_SHIFT) , SPI_CMD_DEASSERT_EN = BIT(SPI_CMD_DEASSERT_SHIFT) , SPI_CMD_CPHA_EN = BIT(SPI_CMD_CPHA_SHIFT) , SPI_CMD_CPOL_EN = BIT(SPI_CMD_CPOL_SHIFT) , SPI_CMD_RX_DMA_EN = BIT(SPI_CMD_RX_DMA_SHIFT) , SPI_CMD_TX_DMA_EN = BIT(SPI_CMD_TX_DMA_SHIFT) , SPI_CMD_TXMSBF_EN = BIT(SPI_CMD_TXMSBF_SHIFT) , SPI_CMD_RXMSBF_EN = BIT(SPI_CMD_RXMSBF_SHIFT) , SPI_CMD_RX_ENDIAN_EN = BIT(SPI_CMD_RX_ENDIAN_SHIFT) , SPI_CMD_TX_ENDIAN_EN = BIT(SPI_CMD_TX_ENDIAN_SHIFT) , SPI_CMD_FINISH_IE_EN = BIT(SPI_CMD_FINISH_IE_SHIFT) , SPI_CMD_PAUSE_IE_EN = BIT(SPI_CMD_PAUSE_IE_SHIFT) } |
enum | spi_pad_mask { SPI_PAD0_MASK = 0x0 , SPI_PAD1_MASK = 0x1 , SPI_PAD2_MASK = 0x2 , SPI_PAD3_MASK = 0x3 , SPI_PAD_SEL_MASK = 0x3 } |
Functions | |
check_member (mtk_spi_regs, spi_pad_macro_sel_reg, 0x24) | |
void | mtk_spi_set_gpio_pinmux (unsigned int bus, enum spi_pad_mask pad_select) |
void | mtk_spi_set_timing (struct mtk_spi_regs *regs, u32 sck_ticks, u32 cs_ticks, unsigned int tick_dly) |
void | mtk_spi_init (unsigned int bus, enum spi_pad_mask pad_select, unsigned int speed_hz, unsigned int tick_dly) |
Variables | |
const struct spi_ctrlr | spi_ctrlr |
struct mtk_spi_bus | spi_bus [] |
typedef struct mtk_spi_regs mtk_spi_regs |
anonymous enum |
Definition at line 11 of file spi_common.h.
enum spi_pad_mask |
Enumerator | |
---|---|
SPI_PAD0_MASK | |
SPI_PAD1_MASK | |
SPI_PAD2_MASK | |
SPI_PAD3_MASK | |
SPI_PAD_SEL_MASK |
Definition at line 45 of file spi_common.h.
check_member | ( | mtk_spi_regs | , |
spi_pad_macro_sel_reg | , | ||
0x24 | |||
) |
void mtk_spi_init | ( | unsigned int | bus, |
enum spi_pad_mask | pad_select, | ||
unsigned int | speed_hz, | ||
unsigned int | tick_dly | ||
) |
Definition at line 56 of file spi.c.
References assert, BIOS_DEBUG, clrsetbits32, DIV_ROUND_UP, gpio_output(), mtk_spi_set_gpio_pinmux(), mtk_spi_set_timing(), printk, slave, spi_bus, SPI_BUS_NUMBER, SPI_CMD_CPHA_EN, SPI_CMD_CPOL_EN, SPI_CMD_DEASSERT_EN, SPI_CMD_FINISH_IE_EN, SPI_CMD_PAUSE_EN, SPI_CMD_PAUSE_IE_EN, SPI_CMD_RX_DMA_EN, SPI_CMD_RX_ENDIAN_EN, SPI_CMD_RXMSBF_EN, SPI_CMD_TX_DMA_EN, SPI_CMD_TX_ENDIAN_EN, SPI_CMD_TXMSBF_EN, SPI_HZ, and SPI_PAD_SEL_MASK.
Referenced by bootblock_mainboard_init(), and mainboard_early_init().
void mtk_spi_set_gpio_pinmux | ( | unsigned int | bus, |
enum spi_pad_mask | pad_select | ||
) |
Definition at line 18 of file spi.c.
References assert, bus1_pad1_funcs, pad_func::func, GPIO, gpio_set_mode(), NULL, pad0_funcs, pad1_funcs, pad_func::pin_id, SPI_BUS_NUMBER, SPI_PAD0_MASK, and SPI_PAD1_MASK.
Referenced by mtk_spi_init().
void mtk_spi_set_timing | ( | struct mtk_spi_regs * | regs, |
u32 | sck_ticks, | ||
u32 | cs_ticks, | ||
unsigned int | tick_dly | ||
) |
Definition at line 37 of file spi.c.
References GET_SCK_REG, and SET32_BITFIELDS.
Referenced by mtk_spi_init().
|
extern |
Definition at line 1 of file spi.c.
Referenced by gspi_ctrlr_params_init(), gspi_spi_to_gspi_bus(), mtk_spi_init(), and to_mtk_spi().