![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <device/mmio.h>
#include <console/console.h>
#include <delay.h>
#include <timer.h>
#include <soc/gpio.h>
#include <soc/iomap.h>
#include <soc/qup.h>
Go to the source code of this file.
Data Structures | |
struct | i2c_clk_div_fld |
Macros | |
#define | TIMEOUT_CNT 100 |
#define | QUP_ADDR(id, reg) (blsp_qup_base(id) + (reg)) |
#define | QUP_DEBUG 0 |
#define | QUPDBG BIOS_ERR, "\t-> " |
#define | qup_write32 write32 |
Variables | |
static struct i2c_clk_div_fld | i2c_clk_div_map [] |
#define QUP_ADDR | ( | id, | |
reg | |||
) | (blsp_qup_base(id) + (reg)) |
|
static |
Definition at line 93 of file qup.c.
References count, QUP_ERR_TIMEOUT, QUP_STATE_MASK, QUP_STATE_VALID, QUP_STATE_VALID_MASK, QUP_SUCCESS, read32(), and TIMEOUT_CNT.
Referenced by qup_wait_for_state().
Definition at line 41 of file qup.c.
References ARRAY_SIZE, i2c_clk_div_fld::clk_freq_out, i2c_clk_div_fld::fs_div, i2c_clk_div_fld::ht_div, i2c_clk_div_map, QUP_ADDR, QUP_I2C_MASTER_CLK_CTL, and qup_write32.
Referenced by qup_init().
|
static |
Definition at line 133 of file qup.c.
References QUP_ADDR, QUP_ERR_TIMEOUT, QUP_ERR_UNDEFINED, qup_i2c_master_status(), QUP_OPERATIONAL, QUP_SUCCESS, read32(), and stopwatch_expired().
Referenced by qup_i2c_read_fifo().
|
static |
Definition at line 149 of file qup.c.
References QUP_ADDR, QUP_ERR_TIMEOUT, QUP_ERR_UNDEFINED, qup_i2c_master_status(), QUP_OPERATIONAL, QUP_SUCCESS, read32(), and stopwatch_expired().
Referenced by qup_i2c_write_fifo_flush().
Definition at line 165 of file qup.c.
References QUP_I2C_DATA, QUP_I2C_DATA_SEQ, and QUP_I2C_STOP_SEQ.
Referenced by qup_i2c_write_fifo().
|
static |
Definition at line 64 of file qup.c.
References printk, QUP_ADDR, QUP_ERR_I2C_ARB_LOST, QUP_ERR_I2C_BUS_ERROR, QUP_ERR_I2C_FAILED, QUP_ERR_I2C_INVALID_SLAVE_ADDR, QUP_ERR_I2C_INVALID_TAG, QUP_ERR_I2C_INVALID_WRITE, QUP_ERR_I2C_NACK, QUP_ERR_XFER_FAIL, QUP_ERROR_FLAGS, QUP_I2C_ARB_LOST, QUP_I2C_BUS_ERROR, QUP_I2C_FAILED_MASK, QUP_I2C_INVALID_READ_ADDR, QUP_I2C_INVALID_TAG, QUP_I2C_INVALID_WRITE, QUP_I2C_MASTER_STATUS, QUP_I2C_PACKET_NACK, QUP_SUCCESS, QUPDBG, and read32().
Referenced by qup_fifo_wait_for(), qup_fifo_wait_while(), and qup_i2c_write_fifo_flush().
Definition at line 291 of file qup.c.
References printk, QUP_I2C_DATA, QUP_I2C_MI_TAG, QUP_I2C_MIDATA_SEQ, QUP_I2C_MISTOP_SEQ, and QUPDBG.
Referenced by qup_i2c_read_fifo().
|
static |
Definition at line 392 of file qup.c.
References printk, QUP_ERR_UNDEFINED, QUP_ERR_UNSUPPORTED, qup_i2c_read_fifo(), QUP_MODE_BLOCK, QUP_MODE_FIFO, qup_set_state(), QUP_STATE_RESET, and QUPDBG.
Referenced by qup_i2c_recv_data().
|
static |
Definition at line 318 of file qup.c.
References addr, count, qup_data_t::iic, INPUT_SERVICE_FLAG, mdelay(), qup_data_t::p, printk, QUP_ADDR, QUP_ERR_I2C_INVALID_TAG, QUP_ERR_UNDEFINED, qup_fifo_wait_for(), QUP_I2C_ADDR, qup_i2c_parse_tag(), QUP_I2C_RECV_SEQ, QUP_I2C_SLAVE_READ, QUP_I2C_START_SEQ, qup_i2c_write_fifo_flush(), QUP_INPUT_FIFO, QUP_INPUT_MODE_SHFT, QUP_IO_MODES, QUP_MODE_BLOCK, QUP_MODE_MASK, QUP_MX_INPUT_COUNT, QUP_MX_READ_COUNT, QUP_OPERATIONAL, QUP_OUTPUT_FIFO, QUP_OUTPUT_MODE_SHFT, QUP_PACK_EN, qup_reset_master_status(), qup_set_state(), QUP_STATE_PAUSE, QUP_STATE_RESET, QUP_STATE_RUN, QUP_SUCCESS, QUP_UNPACK_EN, qup_write32, QUPDBG, read32(), and stopwatch_init_usecs_expire().
Referenced by qup_i2c_read().
|
static |
Definition at line 546 of file qup.c.
References BIOS_DEBUG, qup_data_t::iic, qup_data_t::p, printk, QUP_ADDR, QUP_DEBUG, QUP_ERR_UNDEFINED, qup_i2c_read(), QUP_INPUT_MODE_SHFT, QUP_IO_MODES, QUP_MODE_MASK, and read32().
Referenced by qup_recv_data().
|
static |
Definition at line 506 of file qup.c.
References BIOS_DEBUG, qup_data_t::iic, qup_data_t::p, printk, QUP_ADDR, QUP_DEBUG, QUP_ERR_UNDEFINED, qup_i2c_write(), QUP_IO_MODES, QUP_MODE_MASK, QUP_OUTPUT_MODE_SHFT, and read32().
Referenced by qup_send_data().
|
static |
Definition at line 269 of file qup.c.
References printk, QUP_ERR_UNDEFINED, QUP_ERR_UNSUPPORTED, qup_i2c_write_fifo(), QUP_MODE_BLOCK, QUP_MODE_FIFO, qup_set_state(), QUP_STATE_RESET, and QUPDBG.
Referenced by qup_i2c_send_data().
|
static |
Definition at line 198 of file qup.c.
References addr, qup_data_t::iic, qup_data_t::p, printk, QUP_ADDR, QUP_ERR_UNDEFINED, QUP_I2C_ADDR, qup_i2c_create_output_tag(), QUP_I2C_START_SEQ, qup_i2c_write_fifo_flush(), QUP_MX_OUTPUT_COUNT, QUP_OUTPUT_FIFO, qup_reset_master_status(), qup_set_state(), QUP_STATE_RESET, QUP_STATE_RUN, qup_write32, QUPDBG, and stopwatch_init_usecs_expire().
Referenced by qup_i2c_write().
|
inlinestatic |
Definition at line 177 of file qup.c.
References BIOS_DEBUG, mdelay(), OUTPUT_FIFO_NOT_EMPTY, OUTPUT_SERVICE_FLAG, printk, QUP_ADDR, QUP_ERR_UNDEFINED, qup_fifo_wait_while(), qup_i2c_master_status(), QUP_OPERATIONAL, and qup_write32.
Referenced by qup_i2c_read_fifo(), and qup_i2c_write_fifo().
qup_return_t qup_init | ( | blsp_qup_id_t | id, |
const qup_config_t * | config_ptr | ||
) |
Definition at line 416 of file qup.c.
References qup_config_t::clk_frequency, i2c_set_mstr_clk_ctl(), qup_config_t::mode, printk, qup_config_t::protocol, QUP_ADDR, QUP_APP_CLK_ON_EN, QUP_CONFIG, QUP_CORE_CLK_ON_EN, QUP_DIVIDER_MIN_VAL, QUP_ERR_UNDEFINED, QUP_ERR_UNSUPPORTED, QUP_FS_DIVIDER_MASK, QUP_HS_DIVIDER_SHFT, QUP_I2C_MASTER_CLK_CTL, QUP_I2C_MASTER_CONFIG, QUP_INPUT_MODE_SHFT, QUP_IO_MODES, QUP_MINI_CORE_PROTO_MASK, QUP_MINI_CORE_PROTO_SHFT, QUP_MINICORE_I2C_MASTER, QUP_MODE_BLOCK, QUP_MODE_FIFO, QUP_MODE_MASK, QUP_OUTPUT_MODE_SHFT, QUP_PACK_EN, qup_set_state(), QUP_STATE_RESET, QUP_SW_RESET, QUP_UNPACK_EN, qup_wait_for_state(), qup_write32, QUPDBG, and qup_config_t::src_frequency.
Referenced by i2c_init().
qup_return_t qup_recv_data | ( | blsp_qup_id_t | id, |
qup_data_t * | p_rx_obj | ||
) |
Definition at line 566 of file qup.c.
References qup_data_t::protocol, QUP_ADDR, QUP_CONFIG, QUP_ERR_UNDEFINED, QUP_ERR_UNSUPPORTED, qup_i2c_recv_data(), QUP_MINI_CORE_PROTO_MASK, QUP_MINI_CORE_PROTO_SHFT, QUP_MINICORE_I2C_MASTER, and read32().
Referenced by i2c_read().
qup_return_t qup_reset_i2c_master_status | ( | blsp_qup_id_t | id | ) |
Definition at line 115 of file qup.c.
References QUP_ADDR, QUP_I2C_MASTER_STATUS, QUP_SUCCESS, and qup_write32.
Referenced by i2c_init().
|
static |
Definition at line 125 of file qup.c.
References QUP_ADDR, QUP_ERROR_FLAGS, QUP_ERROR_FLAGS_EN, qup_reset_i2c_master_status(), QUP_SUCCESS, and qup_write32.
Referenced by qup_i2c_read_fifo(), and qup_i2c_write_fifo().
qup_return_t qup_send_data | ( | blsp_qup_id_t | id, |
qup_data_t * | p_tx_obj, | ||
uint8_t | stop_seq | ||
) |
Definition at line 527 of file qup.c.
References qup_data_t::protocol, QUP_ADDR, QUP_CONFIG, QUP_ERR_UNDEFINED, QUP_ERR_UNSUPPORTED, qup_i2c_send_data(), QUP_MINI_CORE_PROTO_MASK, QUP_MINI_CORE_PROTO_SHFT, QUP_MINICORE_I2C_MASTER, and read32().
Referenced by i2c_write().
qup_return_t qup_set_state | ( | blsp_qup_id_t | id, |
uint32_t | state | ||
) |
Definition at line 482 of file qup.c.
References QUP_ADDR, QUP_ERR_UNDEFINED, QUP_STATE, QUP_STATE_PAUSE, QUP_STATE_RESET, QUP_STATE_VALID_MASK, qup_wait_for_state(), qup_write32, and read32().
Referenced by platform_i2c_transfer().
|
static |
Definition at line 110 of file qup.c.
References check_bit_state(), QUP_ADDR, and QUP_STATE.
Referenced by qup_init(), and qup_set_state().
|
static |
Definition at line 1 of file qup.c.
Referenced by i2c_set_mstr_clk_ctl().