![]() |
TT-System-Firmware APIs 19.10.99
Tenstorrent Firmware
|
#include <zephyr/drivers/sensor/tenstorrent/pvt_tt_bh.h>#include <zephyr/drivers/sensor.h>#include <zephyr/logging/log.h>#include <zephyr/rtio/rtio.h>#include <zephyr/rtio/work.h>#include "functional_efuse.h"
Data Structures | |
| struct | ip_data_reg_t |
| union | ip_data_reg_u |
| struct | pvt_cntl_ts_pd_sdif_data_reg_t |
| union | pvt_cntl_ts_pd_sdif_data_reg_u |
| struct | pd_ip_cfg0_t |
| union | pd_ip_cfg0_u |
| struct | pvt_cntl_sdif_reg_t |
| union | pvt_cntl_sdif_reg_u |
| struct | pvt_cntl_sdif_status_reg_t |
| union | pvt_cntl_sdif_status_reg_u |
Enumerations | |
| enum | PvtType { TS = 0 , PD = 1 , VM = 2 } |
| enum | SampleType { ValidData = 0 , AnalogueAccess = 1 } |
Functions | |
| LOG_MODULE_DECLARE (pvt_tt_bh) | |
| static void | wait_sdif_ready (uint32_t status_reg_addr) |
| static void | sdif_write (uint32_t status_reg_addr, uint32_t wr_data_reg_addr, uint32_t sdif_addr, uint32_t data) |
| static void | select_delay_chain_and_start_pd_conv (uint32_t delay_chain) |
| static uint32_t | get_pvt_addr (PvtType type, uint32_t id, uint32_t base_addr) |
| static ReadStatus | read_pvt_auto_mode (PvtType type, uint32_t id, uint16_t *data, uint32_t sdif_done_base_addr, uint32_t sdif_data_base_addr) |
| static ReadStatus | read_ts (const struct device *dev, uint8_t chan, uint16_t *data) |
| static ReadStatus | read_ts_avg (const struct device *dev, uint16_t *sum) |
| static ReadStatus | read_vm (uint32_t id, uint16_t *data) |
| static ReadStatus | read_pd (uint32_t id, uint32_t delay_chain, uint16_t *data) |
| static void | pvt_tt_bh_submit_sample (struct rtio_iodev_sqe *iodev_sqe) |
| void | pvt_tt_bh_submit (const struct device *sensor, struct rtio_iodev_sqe *sqe) |
| void | pvt_tt_bh_delay_chain_set (uint32_t new_delay_chain_) |
Variables | |
| static uint32_t | selected_pd_delay_chain = 0xFF |
| static uint32_t | new_delay_chain = 1 |
| #define ALL_AGING_OSC 0x7 /* enable delay chain 19, 20, 21 for aging measurement */ |
| #define GET_PD_REG_ADDR | ( | ID, | |
| REG_NAME ) |
| #define GET_TS_REG_ADDR | ( | ID, | |
| REG_NAME ) |
| #define GET_VM_REG_ADDR | ( | ID, | |
| REG_NAME ) |
| #define IP_CFG0_ADDR 0x1 |
| #define IP_CNTL_ADDR 0x0 |
| #define PVT_CNTL_IRQ_EN_REG_ADDR 0x80080040 |
| #define PVT_CNTL_PD_00_IRQ_ENABLE_REG_ADDR 0x80080340 |
| #define PVT_CNTL_PD_00_SDIF_DATA_REG_ADDR 0x80080358 |
| #define PVT_CNTL_PD_00_SDIF_DONE_REG_ADDR 0x80080354 |
| #define PVT_CNTL_PD_CMN_CLK_SYNTH_REG_ADDR 0x80080300 |
| #define PVT_CNTL_PD_CMN_SDIF_REG_ADDR 0x8008030C |
| #define PVT_CNTL_PD_CMN_SDIF_REG_ADDR 0x8008030C |
| #define PVT_CNTL_PD_CMN_SDIF_STATUS_REG_ADDR 0x80080308 |
| #define PVT_CNTL_PD_CMN_SDIF_STATUS_REG_ADDR 0x80080308 |
| #define PVT_CNTL_TS_00_ALARMA_CFG_REG_ADDR 0x800800E0 |
| #define PVT_CNTL_TS_00_ALARMB_CFG_REG_ADDR 0x800800E4 |
| #define PVT_CNTL_TS_00_IRQ_ENABLE_REG_ADDR 0x800800C0 |
| #define PVT_CNTL_TS_00_SDIF_DATA_REG_ADDR 0x800800D8 |
| #define PVT_CNTL_TS_00_SDIF_DONE_REG_ADDR 0x800800D4 |
| #define PVT_CNTL_TS_CMN_CLK_SYNTH_REG_ADDR 0x80080080 |
| #define PVT_CNTL_TS_CMN_SDIF_REG_ADDR 0x8008008C |
| #define PVT_CNTL_TS_CMN_SDIF_STATUS_REG_ADDR 0x80080088 |
| #define PVT_CNTL_VM_00_IRQ_ENABLE_REG_ADDR 0x80080A00 |
| #define PVT_CNTL_VM_00_SDIF_RDATA_REG_ADDR 0x80080A30 |
| #define PVT_CNTL_VM_CMN_CLK_SYNTH_REG_ADDR 0x80080800 |
| #define PVT_CNTL_VM_CMN_SDIF_REG_ADDR 0x8008080C |
| #define PVT_CNTL_VM_CMN_SDIF_STATUS_REG_ADDR 0x80080808 |
| #define SDIF_DONE_TIMEOUT_MS 10 |
| #define TS_PD_OFFSET 0x40 |
| #define VM_OFFSET 0x200 |
| enum PvtType |
| enum SampleType |
| LOG_MODULE_DECLARE | ( | pvt_tt_bh | ) |
| void pvt_tt_bh_delay_chain_set | ( | uint32_t | new_delay_chain_ | ) |
| void pvt_tt_bh_submit | ( | const struct device * | sensor, |
| struct rtio_iodev_sqe * | sqe ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |