1use ttkmd_if::{PciError, PciOpenError};
5use luwen_if::{chip::AxiError, error::PlatformError, ArcMsgError};
6use thiserror::Error;
7
8#[derive(Error, Debug)]
9pub enum LuwenError {
10 #[error(transparent)]
11 PlatformError(#[from] PlatformError),
12
13 #[error(transparent)]
14 PciOpenError(#[from] PciOpenError),
15
16 #[error(transparent)]
17 PciError(#[from] PciError),
18
19 #[error("{0}")]
20 Custom(String),
21}
22
23impl From<ArcMsgError> for LuwenError {
24 fn from(value: ArcMsgError) -> Self {
25 LuwenError::PlatformError(value.into())
26 }
27}
28
29impl From<AxiError> for LuwenError {
30 fn from(value: AxiError) -> Self {
31 LuwenError::PlatformError(value.into())
32 }
33}