51typedef volatile struct __attribute__((packed,aligned(4))) {
59#define NEORV32_XIP ((neorv32_xip_t*) (NEORV32_XIP_BASE))
int neorv32_xip_start(uint8_t abytes, uint32_t page_base)
Definition: neorv32_xip.c:119
int neorv32_xip_setup(uint8_t prsc, uint8_t cpol, uint8_t cpha, uint8_t rd_cmd)
Definition: neorv32_xip.c:75
int neorv32_xip_spi_trans(uint8_t nbytes, uint64_t *rtx_data)
Definition: neorv32_xip.c:203
void neorv32_xip_highspeed_enable(void)
Definition: neorv32_xip.c:158
NEORV32_XIP_CTRL_enum
Definition: neorv32_xip.h:62
@ XIP_CTRL_SPI_NBYTES_LSB
Definition: neorv32_xip.h:69
@ XIP_CTRL_EN
Definition: neorv32_xip.h:63
@ XIP_CTRL_XIP_BUSY
Definition: neorv32_xip.h:83
@ XIP_CTRL_RD_CMD_MSB
Definition: neorv32_xip.h:75
@ XIP_CTRL_XIP_EN
Definition: neorv32_xip.h:71
@ XIP_CTRL_XIP_ABYTES_MSB
Definition: neorv32_xip.h:73
@ XIP_CTRL_SPI_CSEN
Definition: neorv32_xip.h:78
@ XIP_CTRL_SPI_NBYTES_MSB
Definition: neorv32_xip.h:70
@ XIP_CTRL_PAGE_MSB
Definition: neorv32_xip.h:77
@ XIP_CTRL_XIP_ABYTES_LSB
Definition: neorv32_xip.h:72
@ XIP_CTRL_PRSC0
Definition: neorv32_xip.h:64
@ XIP_CTRL_PHY_BUSY
Definition: neorv32_xip.h:82
@ XIP_CTRL_BURST_EN
Definition: neorv32_xip.h:80
@ XIP_CTRL_RD_CMD_LSB
Definition: neorv32_xip.h:74
@ XIP_CTRL_PRSC2
Definition: neorv32_xip.h:66
@ XIP_CTRL_CPOL
Definition: neorv32_xip.h:67
@ XIP_CTRL_HIGHSPEED
Definition: neorv32_xip.h:79
@ XIP_CTRL_CPHA
Definition: neorv32_xip.h:68
@ XIP_CTRL_PRSC1
Definition: neorv32_xip.h:65
@ XIP_CTRL_PAGE_LSB
Definition: neorv32_xip.h:76
void neorv32_xip_burst_mode_enable(void)
Definition: neorv32_xip.c:178
void neorv32_xip_highspeed_disable(void)
Definition: neorv32_xip.c:167
void neorv32_xip_burst_mode_disable(void)
Definition: neorv32_xip.c:187
int neorv32_xip_available(void)
Definition: neorv32_xip.c:52
Definition: neorv32_xip.h:51
uint32_t DATA_HI
Definition: neorv32_xip.h:55
uint32_t CTRL
Definition: neorv32_xip.h:52
const uint32_t reserved
Definition: neorv32_xip.h:53
uint32_t DATA_LO
Definition: neorv32_xip.h:54