@@ -116,6 +116,13 @@ pub struct SPIError {
116116 err : io:: Error ,
117117}
118118
119+ impl SPIError {
120+ /// Fetch inner (concrete) [`LinuxI2CError`]
121+ pub fn inner ( & self ) -> & io:: Error {
122+ & self . err
123+ }
124+ }
125+
119126impl From < io:: Error > for SPIError {
120127 fn from ( err : io:: Error ) -> Self {
121128 Self { err }
@@ -124,50 +131,10 @@ impl From<io::Error> for SPIError {
124131
125132impl embedded_hal:: spi:: Error for SPIError {
126133 fn kind ( & self ) -> embedded_hal:: spi:: ErrorKind {
127- use embedded_hal:: spi:: ErrorKind :: * ;
134+ use embedded_hal:: spi:: ErrorKind ;
128135 match self . err . kind ( ) {
129- // io::ErrorKind::NotFound => todo!(),
130- // io::ErrorKind::PermissionDenied => todo!(),
131- // io::ErrorKind::ConnectionRefused => todo!(),
132- // io::ErrorKind::ConnectionReset => todo!(),
133- // io::ErrorKind::HostUnreachable => todo!(),
134- // io::ErrorKind::NetworkUnreachable => todo!(),
135- // io::ErrorKind::ConnectionAborted => todo!(),
136- // io::ErrorKind::NotConnected => todo!(),
137- // io::ErrorKind::AddrInUse => todo!(),
138- // io::ErrorKind::AddrNotAvailable => todo!(),
139- // io::ErrorKind::NetworkDown => todo!(),
140- // io::ErrorKind::BrokenPipe => todo!(),
141- // io::ErrorKind::AlreadyExists => todo!(),
142- // io::ErrorKind::WouldBlock => todo!(),
143- // io::ErrorKind::NotADirectory => todo!(),
144- // io::ErrorKind::IsADirectory => todo!(),
145- // io::ErrorKind::DirectoryNotEmpty => todo!(),
146- // io::ErrorKind::ReadOnlyFilesystem => todo!(),
147- // io::ErrorKind::FilesystemLoop => todo!(),
148- // io::ErrorKind::StaleNetworkFileHandle => todo!(),
149- // io::ErrorKind::InvalidInput => todo!(),
150- // io::ErrorKind::InvalidData => todo!(),
151- // io::ErrorKind::TimedOut => todo!(),
152- // io::ErrorKind::WriteZero => todo!(),
153- // io::ErrorKind::StorageFull => todo!(),
154- // io::ErrorKind::NotSeekable => todo!(),
155- // io::ErrorKind::FilesystemQuotaExceeded => todo!(),
156- // io::ErrorKind::FileTooLarge => todo!(),
157- // io::ErrorKind::ResourceBusy => todo!(),
158- // io::ErrorKind::ExecutableFileBusy => todo!(),
159- // io::ErrorKind::Deadlock => todo!(),
160- // io::ErrorKind::CrossesDevices => todo!(),
161- // io::ErrorKind::TooManyLinks => todo!(),
162- // io::ErrorKind::FilenameTooLong => todo!(),
163- // io::ErrorKind::ArgumentListTooLong => todo!(),
164- // io::ErrorKind::Interrupted => todo!(),
165- // io::ErrorKind::Unsupported => todo!(),
166- // io::ErrorKind::UnexpectedEof => todo!(),
167- // io::ErrorKind::OutOfMemory => todo!(),
168- // io::ErrorKind::Other => todo!(),
169- // io::ErrorKind::Uncategorized => todo!(),
170- _ => Other ,
136+ // TODO: match any errors here if we can find any that are relevant
137+ _ => ErrorKind :: Other ,
171138 }
172139 }
173140}
0 commit comments