TT Zephyr Platforms 18.11.99
Tenstorrent Firmware
Loading...
Searching...
No Matches
bh_arc.h File Reference
#include <stdint.h>
#include <zephyr/drivers/smbus.h>
#include <zephyr/drivers/gpio.h>

Go to the source code of this file.

Data Structures

struct  dmStaticInfo
struct  cm2dmMessage
struct  cm2dmAck
union  cm2dmAckWire
struct  bh_arc
struct  cm2dmMessageRet

Macros

#define BH_ARC_INIT(n)

Typedefs

typedef struct dmStaticInfo dmStaticInfo
typedef struct cm2dmMessage cm2dmMessage
typedef struct cm2dmAck cm2dmAck
typedef struct cm2dmMessageRet cm2dmMessageRet

Enumerations

enum  Cm2DmMsgId {
  kCm2DmMsgIdNull = 0 ,
  kCm2DmMsgIdResetReq = 1 ,
  kCm2DmMsgIdPing = 2 ,
  kCm2DmMsgIdFanSpeedUpdate = 3 ,
  kCm2DmMsgIdReady = 4 ,
  kCm2DmMsgIdAutoResetTimeoutUpdate = 5 ,
  kCm2DmMsgTelemHeartbeatUpdate = 6 ,
  kCm2DmMsgIdForcedFanSpeedUpdate = 7 ,
  kCm2DmMsgCount
}
enum  Cm2DmResetLevel {
  kCm2DmResetLevelAsic = 0 ,
  kCm2DmResetLevelDmc = 3
}

Functions

int bharc_smbus_block_read (const struct bh_arc *dev, uint8_t cmd, uint8_t *count, uint8_t *output)
int bharc_smbus_block_write (const struct bh_arc *dev, uint8_t cmd, uint8_t count, uint8_t *input)
int bharc_smbus_word_data_write (const struct bh_arc *dev, uint16_t cmd, uint16_t word)
int bharc_smbus_byte_data_write (const struct bh_arc *dev, uint8_t cmd, uint8_t word)
int bharc_smbus_block_write_block_read (const struct bh_arc *dev, uint8_t cmd, uint8_t snd_count, uint8_t *send_buf, uint8_t *rcv_count, uint8_t *rcv_buf)

Macro Definition Documentation

◆ BH_ARC_INIT

#define BH_ARC_INIT ( n)
Value:
{.smbus = SMBUS_DT_SPEC_GET(n), \
.enable = COND_CODE_1(DT_PROP_HAS_IDX(n, gpios, 0), ({ \
.port = DEVICE_DT_GET(DT_GPIO_CTLR_BY_IDX(n, gpios, 0)), \
.pin = DT_GPIO_PIN_BY_IDX(n, gpios, 0), \
.dt_flags = DT_GPIO_FLAGS_BY_IDX(n, gpios, 0), \
}), ({})) }
#define DEVICE_DT_GET(node_id)
#define DT_PROP_HAS_IDX(node_id, prop, idx)
#define DT_GPIO_FLAGS_BY_IDX(node_id, gpio_pha, idx)
#define DT_GPIO_PIN_BY_IDX(node_id, gpio_pha, idx)
#define DT_GPIO_CTLR_BY_IDX(node_id, gpio_pha, idx)
#define SMBUS_DT_SPEC_GET(node_id)
#define COND_CODE_1(_flag, _if_1_code, _else_code)

Typedef Documentation

◆ cm2dmAck

typedef struct cm2dmAck cm2dmAck

◆ cm2dmMessage

typedef struct cm2dmMessage cm2dmMessage

◆ cm2dmMessageRet

typedef struct cm2dmMessageRet cm2dmMessageRet

◆ dmStaticInfo

typedef struct dmStaticInfo dmStaticInfo

Enumeration Type Documentation

◆ Cm2DmMsgId

enum Cm2DmMsgId
Enumerator
kCm2DmMsgIdNull 
kCm2DmMsgIdResetReq 
kCm2DmMsgIdPing 
kCm2DmMsgIdFanSpeedUpdate 
kCm2DmMsgIdReady 
kCm2DmMsgIdAutoResetTimeoutUpdate 
kCm2DmMsgTelemHeartbeatUpdate 
kCm2DmMsgIdForcedFanSpeedUpdate 
kCm2DmMsgCount  

◆ Cm2DmResetLevel

Enumerator
kCm2DmResetLevelAsic 
kCm2DmResetLevelDmc 

Function Documentation

◆ bharc_smbus_block_read()

int bharc_smbus_block_read ( const struct bh_arc * dev,
uint8_t cmd,
uint8_t * count,
uint8_t * output )

◆ bharc_smbus_block_write()

int bharc_smbus_block_write ( const struct bh_arc * dev,
uint8_t cmd,
uint8_t count,
uint8_t * input )

◆ bharc_smbus_block_write_block_read()

int bharc_smbus_block_write_block_read ( const struct bh_arc * dev,
uint8_t cmd,
uint8_t snd_count,
uint8_t * send_buf,
uint8_t * rcv_count,
uint8_t * rcv_buf )

◆ bharc_smbus_byte_data_write()

int bharc_smbus_byte_data_write ( const struct bh_arc * dev,
uint8_t cmd,
uint8_t word )

◆ bharc_smbus_word_data_write()

int bharc_smbus_word_data_write ( const struct bh_arc * dev,
uint16_t cmd,
uint16_t word )