interrupts.hh (5704:98224505352a) | interrupts.hh (5810:606de5b3d116) |
---|---|
1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 55 unchanged lines hidden (view full) --- 64#include "base/bitfield.hh" 65#include "cpu/thread_context.hh" 66#include "dev/io_device.hh" 67#include "dev/x86/intdev.hh" 68#include "params/X86LocalApic.hh" 69#include "sim/eventq.hh" 70 71class ThreadContext; | 1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 55 unchanged lines hidden (view full) --- 64#include "base/bitfield.hh" 65#include "cpu/thread_context.hh" 66#include "dev/io_device.hh" 67#include "dev/x86/intdev.hh" 68#include "params/X86LocalApic.hh" 69#include "sim/eventq.hh" 70 71class ThreadContext; |
72class BaseCPU; |
|
72 73namespace X86ISA { 74 75class Interrupts : public BasicPioDevice, IntDev 76{ 77 protected: 78 // Storage for the APIC registers 79 uint32_t regs[NUM_APIC_REGS]; --- 97 unchanged lines hidden (view full) --- 177 bool 178 getRegArrayBit(ApicRegIndex base, uint8_t vector) 179 { 180 return bits(regs[base + (vector % 32)], vector >> 5); 181 } 182 183 void requestInterrupt(uint8_t vector, uint8_t deliveryMode, bool level); 184 | 73 74namespace X86ISA { 75 76class Interrupts : public BasicPioDevice, IntDev 77{ 78 protected: 79 // Storage for the APIC registers 80 uint32_t regs[NUM_APIC_REGS]; --- 97 unchanged lines hidden (view full) --- 178 bool 179 getRegArrayBit(ApicRegIndex base, uint8_t vector) 180 { 181 return bits(regs[base + (vector % 32)], vector >> 5); 182 } 183 184 void requestInterrupt(uint8_t vector, uint8_t deliveryMode, bool level); 185 |
186 BaseCPU *cpu; 187 |
|
185 public: 186 /* 187 * Params stuff. 188 */ 189 typedef X86LocalApicParams Params; 190 191 void | 188 public: 189 /* 190 * Params stuff. 191 */ 192 typedef X86LocalApicParams Params; 193 194 void |
195 setCPU(BaseCPU * newCPU) 196 { 197 cpu = newCPU; 198 } 199 200 void |
|
192 setClock(Tick newClock) 193 { 194 clock = newClock; 195 } 196 197 const Params * 198 params() const 199 { --- 123 unchanged lines hidden --- | 201 setClock(Tick newClock) 202 { 203 clock = newClock; 204 } 205 206 const Params * 207 params() const 208 { --- 123 unchanged lines hidden --- |