10 #include <soc/pci_devs.h>
27 address = 0xff000000 | bios_base_address;
71 "Failed to set protection: 0x%08x - 0x%08x, PRRs full!\n",
77 size_t bytesout,
void *din,
size_t bytesin)
90 ctrlr = context->
ctrlr;
93 if (bytesin >
sizeof(ctrlr->
data)) {
98 if (bytesin && (din ==
NULL)) {
120 for (index = 0; index <
sizeof(ctrlr->
opmenu); index++)
121 if (opcode == ctrlr->
opmenu[index])
125 if (index ==
sizeof(ctrlr->
opmenu)) {
126 for (index = 0; index <
sizeof(ctrlr->
prefix); index++)
127 if (opcode == ctrlr->
prefix[index])
131 if (index ==
sizeof(ctrlr->
prefix)) {
205 memcpy(din, (
void *)&ctrlr->
data[0], bytesin);
242 context->
ctrlr = ctrlr;
#define B_QNC_LPC_RCBA_EN
#define R_QNC_LPC_BIOS_CNTL
#define B_QNC_LPC_RCBA_MASK
#define B_QNC_LPC_BIOS_CNTL_BIOSWE
static void write32(void *addr, uint32_t val)
static uint32_t read32(const void *addr)
void * memcpy(void *dest, const void *src, size_t n)
#define printk(level,...)
struct device * dev_find_device(u16 vendor, u16 device, struct device *from)
Find a device of a given vendor and type.
static __always_inline void pci_write_config32(const struct device *dev, u16 reg, u32 val)
static __always_inline u32 pci_read_config32(const struct device *dev, u16 reg)
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
const struct spi_ctrlr_buses spi_ctrlr_bus_map[]
void spi_init(void)
Init all SPI controllers with default values and enable all SPI controller.
const size_t spi_ctrlr_bus_map_count
#define SPICTL_DBCNT_SHIFT
#define SPICTL_SOPTR_SHIFT
#define SPICTL_COPTR_SHIFT
static int xfer(const struct spi_slave *slave, const void *dout, size_t bytesout, void *din, size_t bytesin)
int spi_protection(uint32_t address, uint32_t length)
BOOT_STATE_INIT_ENTRY(BS_DEV_INIT, BS_ON_ENTRY, spi_init_cb, NULL)
void spi_controller_lock(void)
static void spi_init_cb(void *unused)
const struct spi_ctrlr spi_driver
struct spi_context spi_driver_context
void spi_bios_base(uint32_t bios_base_address)
int spi_flash_probe(unsigned int bus, unsigned int cs, struct spi_flash *flash)
static struct spi_slave slave
volatile struct flash_ctrlr * ctrlr
const struct spi_ctrlr * ctrlr
int(* xfer)(const struct spi_slave *slave, const void *dout, size_t bytesout, void *din, size_t bytesin)