luwen_api/lib.rs
1// SPDX-FileCopyrightText: © 2023 Tenstorrent Inc.
2// SPDX-License-Identifier: Apache-2.0
3
4// Allow modules with the same name as their parent module as this improves organization of the codebase
5#![allow(clippy::module_inception)]
6
7/// Luwen-if implements all high level functions in a backend agnostic way.
8/// In the simplest terms this includes everything defined in `ChipImpl`, `HlComms` and `detect_chips`.
9/// But this also includes chip specific functions which can be found in `Wormhole` and `Blackhole` chips.
10mod arc_msg;
11pub mod chip;
12mod detect_chips;
13pub mod error;
14mod interface;
15
16pub use arc_msg::{
17 ArcMsg, ArcMsgError, ArcMsgOk, ArcMsgProtocolError, ArcState, PowerState, TypedArcMsg,
18};
19pub use chip::eth_addr::{EthAddr, IntoChip};
20pub use chip::ChipImpl;
21pub use detect_chips::{detect_chips, detect_chips_silent, ChipDetectOptions, UninitChip};
22pub use interface::{CallbackStorage, DeviceInfo, FnAxi, FnDriver, FnNoc, FnOptions, FnRemote};