TT Zephyr Platforms 19.0.0-rc2
Tenstorrent Firmware
Loading...
Searching...
No Matches
reset.c File Reference
#include "cm2dm_msg.h"
#include "eth.h"
#include "gddr.h"
#include "harvesting.h"
#include "init.h"
#include "irqnum.h"
#include "noc.h"
#include "noc_init.h"
#include "noc2axi.h"
#include "reg.h"
#include "status_reg.h"
#include "tensix_init.h"
#include <stdint.h>
#include <tenstorrent/msgqueue.h>
#include <tenstorrent/smc_msg.h>
#include <tenstorrent/post_code.h>
#include <tenstorrent/sys_init_defines.h>
#include <tenstorrent/tt_boot_fs.h>
#include <zephyr/drivers/misc/bh_fwtable.h>
#include <zephyr/init.h>
#include <zephyr/kernel.h>
#include <zephyr/logging/log.h>
#include <zephyr/sys/util.h>
#include <zephyr/toolchain.h>
#include <zephyr/device.h>
#include <zephyr/devicetree.h>
#include <zephyr/drivers/clock_control/clock_control_tt_bh.h>
#include <zephyr/drivers/clock_control.h>

Macros

#define DT_DRV_COMPAT   tenstorrent_bh_clock_control
#define PLL_DEVICE_INIT(inst)

Functions

 LOG_MODULE_REGISTER (InitHW, CONFIG_TT_APP_LOG_LEVEL)
static int AssertSoftResets (void)
 SYS_INIT_APP (AssertSoftResets)
static int DeassertRiscvResets (void)
 SYS_INIT_APP (DeassertRiscvResets)
static __maybe_unused uint8_t ToggleTensixReset (const union request *req, struct response *rsp)
 REGISTER_MESSAGE (TT_SMC_MSG_TOGGLE_TENSIX_RESET, ToggleTensixReset)
static __maybe_unused uint8_t ReinitTensix (const union request *req, struct response *rsp)
 Redo Tensix init that gets cleared on Tensix reset.
 REGISTER_MESSAGE (TT_SMC_MSG_REINIT_TENSIX, ReinitTensix)
static int DeassertTileResets (void)
 SYS_INIT_APP (DeassertTileResets)

Variables

static const struct device *const pll_devs [] = {DT_INST_FOREACH_STATUS_OKAY(PLL_DEVICE_INIT)}
static const struct device *const fwtable_dev = DEVICE_DT_GET(DT_NODELABEL(fwtable))
STATUS_ERROR_STATUS0_reg_u error_status0

Macro Definition Documentation

◆ DT_DRV_COMPAT

#define DT_DRV_COMPAT   tenstorrent_bh_clock_control

◆ PLL_DEVICE_INIT

#define PLL_DEVICE_INIT ( inst)
Value:
#define DEVICE_DT_INST_GET(inst)

Function Documentation

◆ AssertSoftResets()

int AssertSoftResets ( void )
static

◆ DeassertRiscvResets()

int DeassertRiscvResets ( void )
static

◆ DeassertTileResets()

int DeassertTileResets ( void )
static

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( InitHW ,
CONFIG_TT_APP_LOG_LEVEL  )

◆ REGISTER_MESSAGE() [1/2]

REGISTER_MESSAGE ( TT_SMC_MSG_REINIT_TENSIX ,
ReinitTensix  )

◆ REGISTER_MESSAGE() [2/2]

◆ ReinitTensix()

__maybe_unused uint8_t ReinitTensix ( const union request * req,
struct response * rsp )
static

Redo Tensix init that gets cleared on Tensix reset.

This includes all NOC programming and any programming within the tile.

◆ SYS_INIT_APP() [1/3]

SYS_INIT_APP ( AssertSoftResets )

◆ SYS_INIT_APP() [2/3]

SYS_INIT_APP ( DeassertRiscvResets )

◆ SYS_INIT_APP() [3/3]

SYS_INIT_APP ( DeassertTileResets )

◆ ToggleTensixReset()

__maybe_unused uint8_t ToggleTensixReset ( const union request * req,
struct response * rsp )
static

Variable Documentation

◆ error_status0

◆ fwtable_dev

const struct device* const fwtable_dev = DEVICE_DT_GET(DT_NODELABEL(fwtable))
static

◆ pll_devs

const struct device* const pll_devs[] = {DT_INST_FOREACH_STATUS_OKAY(PLL_DEVICE_INIT)}
static