interrupt_none.mx raw

   1  //go:build !baremetal || tkey
   2  
   3  package interrupt
   4  
   5  // State represents the previous global interrupt state.
   6  type State uintptr
   7  
   8  // Disable disables all interrupts and returns the previous interrupt state. It
   9  // can be used in a critical section like this:
  10  //
  11  //	state := interrupt.Disable()
  12  //	// critical section
  13  //	interrupt.Restore(state)
  14  //
  15  // Critical sections can be nested. Make sure to call Restore in the same order
  16  // as you called Disable (this happens naturally with the pattern above).
  17  func Disable() (state State) {
  18  	return 0
  19  }
  20  
  21  // Restore restores interrupts to what they were before. Give the previous state
  22  // returned by Disable as a parameter. If interrupts were disabled before
  23  // calling Disable, this will not re-enable interrupts, allowing for nested
  24  // critical sections.
  25  func Restore(state State) {}
  26  
  27  // In returns whether the system is currently in an interrupt.
  28  func In() bool {
  29  	// There are no interrupts, so it can't be in one.
  30  	return false
  31  }
  32