@@ -13,6 +13,8 @@ use alloc::{alloc::Global, vec::Vec};
1313use bit_field:: BitField ;
1414use core:: { alloc:: Allocator , pin:: Pin } ;
1515
16+ pub use crate :: sdt:: madt:: { Polarity , TriggerMode } ;
17+
1618#[ derive( Debug , Clone ) ]
1719#[ non_exhaustive]
1820pub enum InterruptModel < A : Allocator = Global > {
@@ -280,31 +282,6 @@ pub enum NmiProcessor {
280282 ProcessorUid ( u32 ) ,
281283}
282284
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-
308285/// Describes a difference in the mapping of an ISA interrupt to how it's mapped in other interrupt
309286/// models. For example, if a device is connected to ISA IRQ 0 and IOAPIC input 2, an override will
310287/// appear mapping source 0 to GSI 2. Currently these will only be created for ISA interrupt
0 commit comments