coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
qup_se_handler.c File Reference
#include <console/console.h>
#include <soc/qup_se_handlers_common.h>
#include <soc/qcom_qup_se.h>
Include dependency graph for qup_se_handler.c:

Go to the source code of this file.

Functions

u32 qup_wait_for_m_irq (unsigned int bus)
 
u32 qup_wait_for_s_irq (unsigned int bus)
 
static int handle_tx (unsigned int bus, const u8 *dout, unsigned int tx_rem_bytes)
 
static int handle_rx (unsigned int bus, u8 *din, unsigned int rx_rem_bytes)
 
void qup_m_cancel_and_abort (unsigned int bus)
 
void qup_s_cancel_and_abort (unsigned int bus)
 
int qup_handle_transfer (unsigned int bus, const void *dout, void *din, int size, struct stopwatch *timeout)
 

Function Documentation

◆ handle_rx()

static int handle_rx ( unsigned int  bus,
u8 din,
unsigned int  rx_rem_bytes 
)
static

Definition at line 54 of file qup_se_handler.c.

References buffer_from_fifo32(), BYTES_PER_FIFO_WORD, MIN, read32(), qup::regs, and RX_FIFO_WC_MSK.

Referenced by qup_handle_transfer(), and qup_s_cancel_and_abort().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ handle_tx()

static int handle_tx ( unsigned int  bus,
const u8 dout,
unsigned int  tx_rem_bytes 
)
static

Definition at line 37 of file qup_se_handler.c.

References buffer_to_fifo32(), BYTES_PER_FIFO_WORD, FIFO_DEPTH, MIN, qup::regs, TX_WATERMARK, and write32().

Referenced by qup_handle_transfer().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ qup_handle_transfer()

int qup_handle_transfer ( unsigned int  bus,
const void dout,
void din,
int  size,
struct stopwatch timeout 
)

Definition at line 152 of file qup_se_handler.c.

References BIOS_INFO, handle_rx(), handle_tx(), M_CMD_DONE_EN, M_RX_FIFO_LAST_EN, M_RX_FIFO_WATERMARK_EN, M_TX_FIFO_WATERMARK_EN, printk, qup_m_cancel_and_abort(), qup_wait_for_m_irq(), qup::regs, stopwatch_expired(), and write32().

Referenced by i2c_do_xfer(), and qup_spi_xfer().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ qup_m_cancel_and_abort()

void qup_m_cancel_and_abort ( unsigned int  bus)

Definition at line 68 of file qup_se_handler.c.

References BIOS_INFO, M_CMD_ABORT_EN, M_CMD_CANCEL_EN, M_GENI_CMD_ABORT, M_GENI_CMD_CANCEL, printk, qup_wait_for_m_irq(), qup::regs, stopwatch_expired(), stopwatch_init_msecs_expire(), and write32().

Referenced by qup_handle_transfer(), and spi_qup_set_cs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ qup_s_cancel_and_abort()

void qup_s_cancel_and_abort ( unsigned int  bus)

◆ qup_wait_for_m_irq()

u32 qup_wait_for_m_irq ( unsigned int  bus)

Definition at line 7 of file qup_se_handler.c.

References read32(), qup::regs, stopwatch_expired(), and stopwatch_init_usecs_expire().

Referenced by qup_handle_transfer(), qup_m_cancel_and_abort(), and spi_qup_set_cs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ qup_wait_for_s_irq()

u32 qup_wait_for_s_irq ( unsigned int  bus)

Definition at line 22 of file qup_se_handler.c.

References read32(), qup::regs, stopwatch_expired(), and stopwatch_init_usecs_expire().

Referenced by qup_s_cancel_and_abort().

Here is the call graph for this function:
Here is the caller graph for this function: