STRUCT HSI_PORT(9)

NAME
struct_hsi_port - HSI port device

SYNOPSIS

struct hsi_port {
  struct device device;
  struct hsi_config tx_cfg;
  struct hsi_config rx_cfg;
  unsigned int num;
  unsigned int shared:1;
  int claimed;
  struct mutex lock;
  int (* async) (struct hsi_msg *msg);
  int (* setup) (struct hsi_client *cl);
  int (* flush) (struct hsi_client *cl);
  int (* start_tx) (struct hsi_client *cl);
  int (* stop_tx) (struct hsi_client *cl);
  int (* release) (struct hsi_client *cl);
  struct atomic_notifier_head n_head;
};

MEMBERS

device
    Driver model representation of the device

tx_cfg
    Current TX path configuration

rx_cfg
    Current RX path configuration

num
    Port number

shared
    Set when port can be shared by different clients

claimed
    Reference count of clients which claimed the port

lock
    Serialize port claim

async
    Asynchronous transfer callback

setup
    Callback to set the HSI client configuration

flush
    Callback to clean the HW state and destroy all pending transfers

start_tx
    Callback to inform that a client wants to TX data

stop_tx
    Callback to inform that a client no longer wishes to TX data

release
    Callback to inform that a client no longer uses the port

n_head
    Notifier chain for signaling port events to the clients.

COPYRIGHT