@@ -13,6 +13,8 @@ use alloc::{alloc::Global, vec::Vec};
13
13
use bit_field:: BitField ;
14
14
use core:: { alloc:: Allocator , pin:: Pin } ;
15
15
16
+ pub use crate :: sdt:: madt:: { Polarity , TriggerMode } ;
17
+
16
18
#[ derive( Debug , Clone ) ]
17
19
#[ non_exhaustive]
18
20
pub enum InterruptModel < A : Allocator = Global > {
@@ -280,31 +282,6 @@ pub enum NmiProcessor {
280
282
ProcessorUid ( u32 ) ,
281
283
}
282
284
283
- /// Polarity indicates what signal mode the interrupt line needs to be in to be considered 'active'.
284
- #[ derive( Debug , Clone , Copy , PartialEq , Eq ) ]
285
- pub enum Polarity {
286
- SameAsBus ,
287
- ActiveHigh ,
288
- ActiveLow ,
289
- }
290
-
291
- /// Trigger mode of an interrupt, describing how the interrupt is triggered.
292
- ///
293
- /// When an interrupt is `Edge` triggered, it is triggered exactly once, when the interrupt
294
- /// signal goes from its opposite polarity to its active polarity.
295
- ///
296
- /// For `Level` triggered interrupts, a continuous signal is emitted so long as the interrupt
297
- /// is in its active polarity.
298
- ///
299
- /// `SameAsBus`-triggered interrupts will utilize the same interrupt triggering as the system bus
300
- /// they communicate across.
301
- #[ derive( Debug , Clone , Copy , PartialEq , Eq ) ]
302
- pub enum TriggerMode {
303
- SameAsBus ,
304
- Edge ,
305
- Level ,
306
- }
307
-
308
285
/// Describes a difference in the mapping of an ISA interrupt to how it's mapped in other interrupt
309
286
/// models. For example, if a device is connected to ISA IRQ 0 and IOAPIC input 2, an override will
310
287
/// appear mapping source 0 to GSI 2. Currently these will only be created for ISA interrupt
0 commit comments