TT Zephyr Platforms 18.11.99
Tenstorrent Firmware
Loading...
Searching...
No Matches
noc2axi.c File Reference
#include "noc.h"
#include "noc2axi.h"

Data Structures

struct  NOC2AXITlb0RegT
union  NOC2AXITlb0RegU
struct  NOC2AXITlb1RegT
union  NOC2AXITlb1RegU
struct  NOC2AXITlb2RegT
union  NOC2AXITlb2RegU
struct  NOC2AXITlb3RegT
union  NOC2AXITlb3RegU

Macros

#define NOC2AXI_NUM_TLB_PER_RING   16
#define RING0_TLB_REG_OFFSET   0x1000
#define AXI2NOC_RING_SEL_BIT   15
#define NIU_0_A_REG_MAP_BASE_ADDR   0x80050000

Functions

static uint32_t volatile * GetTlbRegStartAddr (const uint8_t ring)
static void WriteTlbSetup (const uint8_t ring, const uint8_t tlb_num, NOC2AXITlb0RegU tlb0, NOC2AXITlb1RegU tlb1, NOC2AXITlb2RegU tlb2, NOC2AXITlb3RegU tlb3)
void NOC2AXITlbSetup (const uint8_t ring, const uint8_t tlb_num, const uint8_t x, const uint8_t y, const uint64_t addr)
void NOC2AXIMulticastTlbSetup (const uint8_t ring, const uint8_t tlb_num, const uint8_t x_start, const uint8_t y_start, const uint8_t x_end, const uint8_t y_end, const uint64_t addr, Noc2AxiOrdering ordering)
void NOC2AXITensixBroadcastTlbSetup (const uint8_t ring, const uint8_t tlb_num, const uint64_t addr, Noc2AxiOrdering ordering)

Macro Definition Documentation

◆ AXI2NOC_RING_SEL_BIT

#define AXI2NOC_RING_SEL_BIT   15

◆ NIU_0_A_REG_MAP_BASE_ADDR

#define NIU_0_A_REG_MAP_BASE_ADDR   0x80050000

◆ NOC2AXI_NUM_TLB_PER_RING

#define NOC2AXI_NUM_TLB_PER_RING   16

◆ RING0_TLB_REG_OFFSET

#define RING0_TLB_REG_OFFSET   0x1000

Function Documentation

◆ GetTlbRegStartAddr()

uint32_t volatile * GetTlbRegStartAddr ( const uint8_t ring)
inlinestatic

◆ NOC2AXIMulticastTlbSetup()

void NOC2AXIMulticastTlbSetup ( const uint8_t ring,
const uint8_t tlb_num,
const uint8_t x_start,
const uint8_t y_start,
const uint8_t x_end,
const uint8_t y_end,
const uint64_t addr,
Noc2AxiOrdering ordering )

◆ NOC2AXITensixBroadcastTlbSetup()

void NOC2AXITensixBroadcastTlbSetup ( const uint8_t ring,
const uint8_t tlb_num,
const uint64_t addr,
Noc2AxiOrdering ordering )

◆ NOC2AXITlbSetup()

void NOC2AXITlbSetup ( const uint8_t ring,
const uint8_t tlb_num,
const uint8_t x,
const uint8_t y,
const uint64_t addr )

◆ WriteTlbSetup()

void WriteTlbSetup ( const uint8_t ring,
const uint8_t tlb_num,
NOC2AXITlb0RegU tlb0,
NOC2AXITlb1RegU tlb1,
NOC2AXITlb2RegU tlb2,
NOC2AXITlb3RegU tlb3 )
inlinestatic