Intel® Quark™ Microcontroller Software Interface  1.4.0
Intel® Quark™ Microcontroller BSP
qm_ss_i2c_transfer_t Struct Reference

QM SS I2C transfer type. More...

#include <qm_ss_i2c.h>

Data Fields

uint8_t * tx
 Write data. More...
 
uint32_t tx_len
 Write data length. More...
 
uint8_t * rx
 Read data. More...
 
uint32_t rx_len
 Read buffer length. More...
 
bool stop
 Generate master STOP. More...
 
void(* callback )(void *data, int rc, qm_ss_i2c_status_t status, uint32_t len)
 User callback. More...
 
void * callback_data
 User callback data. More...
 

Detailed Description

QM SS I2C transfer type.

  • if tx_len is 0: perform receive-only transaction.
  • if rx_len is 0: perform transmit-only transaction.
  • both tx and rx len not 0: perform a transmit-then-receive combined transaction.

Definition at line 99 of file qm_ss_i2c.h.

Field Documentation

void(* qm_ss_i2c_transfer_t::callback)(void *data, int rc, qm_ss_i2c_status_t status, uint32_t len)

User callback.

Parameters
[in]dataUser defined data.
[in]rc0 on success. Negative errno for possible error codes.
[in]statusI2C status.
[in]lenLength of the transfer if successful, 0 otherwise.

Definition at line 115 of file qm_ss_i2c.h.

void* qm_ss_i2c_transfer_t::callback_data

User callback data.

Definition at line 117 of file qm_ss_i2c.h.

uint8_t* qm_ss_i2c_transfer_t::rx

Read data.

Definition at line 102 of file qm_ss_i2c.h.

uint32_t qm_ss_i2c_transfer_t::rx_len

Read buffer length.

Definition at line 103 of file qm_ss_i2c.h.

Referenced by qm_ss_i2c_master_irq_transfer().

bool qm_ss_i2c_transfer_t::stop

Generate master STOP.

Definition at line 104 of file qm_ss_i2c.h.

uint8_t* qm_ss_i2c_transfer_t::tx

Write data.

Definition at line 100 of file qm_ss_i2c.h.

uint32_t qm_ss_i2c_transfer_t::tx_len

Write data length.

Definition at line 101 of file qm_ss_i2c.h.