diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2008-10-11 01:28:35 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2008-10-11 01:28:35 -0700 |
commit | cf9afbba510ceac86e011a4b37ec848cd7f7a6ed (patch) | |
tree | 7db24090520ca60681a362006bc983658cbd08f5 /src/dev/x86/i8259.hh | |
parent | 2753c07dc5131972d1dcbb7628e2f0712c778fec (diff) | |
download | gem5-cf9afbba510ceac86e011a4b37ec848cd7f7a6ed.tar.xz |
X86: Make the I8259 decipher the commands it's given, and add some of it's registers.
Diffstat (limited to 'src/dev/x86/i8259.hh')
-rw-r--r-- | src/dev/x86/i8259.hh | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/dev/x86/i8259.hh b/src/dev/x86/i8259.hh index a2f245513..131adc93f 100644 --- a/src/dev/x86/i8259.hh +++ b/src/dev/x86/i8259.hh @@ -43,6 +43,19 @@ class I8259 : public BasicPioDevice Tick latency; bool master; + // Interrupt Request Register + uint8_t IRR; + // In Service Register + uint8_t ISR; + // Interrupt Mask Register + uint8_t IMR; + + bool edgeTriggered; + bool cascadeMode; + bool expectICW4; + bool readIRR; + int initControlWord; + public: typedef I8259Params Params; @@ -55,6 +68,8 @@ class I8259 : public BasicPioDevice I8259(Params * p) : BasicPioDevice(p) { pioSize = 2; + initControlWord = 0; + readIRR = true; latency = p->pio_latency; master = p->master; } |