mip

Machine Interrupt Pending

Machine Interrupt Pending bits

Attributes

Defining Extension

  • Sm, version >= 0

CSR Address

0x344

Length

32-bit

64-bit

Privilege Mode

M

Format

This CSR format changes dynamically.

svg
svg

Field Summary

Name Location Type Reset Value

SSIP

1

RW

0

VSSIP

2

RW

0

MSIP

3

RO

0

STIP

5

RW

0

VSTIP

6

RO-H

0

MTIP

7

RO-H

0

SEIP

9

RW-H

0

VSEIP

10

RO-H

0

MEIP

11

RO-H

0

SGEIP

12

RO-H

0

LCOFIP

13

RW-H

0

Fields

SSIP

Location

1

Description

Supervisor Software Interrupt Pending

Reports the current pending state of an (H)S-mode software interrupt, which is generated by writing to this field.


Alias:

Type

RW

Reset value

0

VSSIP

Location

2

Description

Virtual Supervisor Software Interrupt Pending

Reports the current pending state of a VS-mode software interrupt, which is generated by writing to this field.


Aliases:

  • hip.VSSIP

  • hvip.VSSIP

  • vsip.SSIP when hideleg.VSSI is set

Type

RW

Reset value

0

MSIP

Location

3

Description

Machine Software Interrupt Pending

Unused field.

Type

RO

Reset value

0

STIP

Location

5

Description

Supervisor Timer Interrupt Pending

Reports the current pending state of an (H)S-mode timer interrupt
, which is generated by software by writing to mip.STIP.


Alias:

Type

RW

Reset value

0

VSTIP

Location

6

Description

Virtual Supervisor Timer Interrupt Pending

Reports the current pending state of a VS-mode timer interrupt
, which is generated by M-mode and/or HS-mode software by writing to hvip.VSTIP.


mip.VSTIP is never writable. If VS-mode software wants to clear the bit, it must do so
by calling into the hypervisor (which can then clear hvip.VSTIP).

Aliases:

  • hip.VSTIP

  • vsip.STIP when hideleg.VSTI is set

  • hvip.VSTIP (though hvip.VSTIP is writeable)

Type

RO-H

Reset value

0

MTIP

Location

7

Description

Machine Timer Interrupt Pending

Reports the current pending state of an M-mode timer interrupt.

Bit is controlled by the timer device (using mtimecmp), and is not writeable.

Type

RO-H

Reset value

0

SEIP

Location

9

Description

Supervisor External Interrupt Pending

Reports the current pending state of an (H)S-mode external interrupt.

This field has two parts: a software-writeable shadow value and a wire from the interrupt controller.
The value presented to software in the bit on a CSR read is the logical OR of the software-writeable value and the interrupt controller value.
When software writes this bit, only the shadow value is updated (the interrupt controller is not notified of the write).


Alias:

Type

RW-H

Reset value

0

VSEIP

Location

10

Description

Virtual Supervisor External Interrupt Pending

Reports the current pending state of a VS-mode external interrupt.

This field is the logical OR of hvip.VSEIP and the wire coming from the interrupt controller.

The field is not writable by software

  1. +
    Aliases:

    • hip.VSEIP

    • vsip.SEIP when hideleg.VSEI is set

Type

RO-H

Reset value

0

MEIP

Location

11

Description

Machine External Interrupt Pending

Reports the current pending state of an M-mode external interrupt.

MEIP is controlled by the external interrupt controller .
It is not writable by software.

Type

RO-H

Reset value

0

SGEIP

Location

12

Description

Supervisor Guest External Interrupt Pending

Read-only summary of any pending Supervisor Guest External Interrupt Pending, i.e.:
the logical-OR reduction of the hgeip register.

Alias:

  • hip.SGEIP

Type

RO-H

Reset value

0

LCOFIP

Location

13

Description

Local Counter Overflow Interrupt pending


When a counter overflow interrupt occurs, a hidden sticky bit is set.

Software writes 0 to mip.LCOFIP to clear the pending interrupt.

Alias:

Type

RW-H

Reset value

0