interrupts.hh (8839:eeb293859255) | interrupts.hh (8851:7e966326ef5b) |
---|---|
1/* 2 * Copyright (c) 2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 174 unchanged lines hidden (view full) --- 183 } 184 185 void requestInterrupt(uint8_t vector, uint8_t deliveryMode, bool level); 186 187 BaseCPU *cpu; 188 189 int initialApicId; 190 | 1/* 2 * Copyright (c) 2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 174 unchanged lines hidden (view full) --- 183 } 184 185 void requestInterrupt(uint8_t vector, uint8_t deliveryMode, bool level); 186 187 BaseCPU *cpu; 188 189 int initialApicId; 190 |
191 // Port for receiving interrupts 192 IntPort intSlavePort; 193 |
|
191 public: 192 193 int getInitialApicId() { return initialApicId; } 194 195 /* 196 * Params stuff. 197 */ 198 typedef X86LocalApicParams Params; --- 38 unchanged lines hidden (view full) --- 237 AddrRangeList getIntAddrRange(); 238 239 Port *getPort(const std::string &if_name, int idx = -1) 240 { 241 // a bit of an odd one since there is now two ports in the 242 // Python class we also need two ports even if they are 243 // identical 244 if (if_name == "int_master") { | 194 public: 195 196 int getInitialApicId() { return initialApicId; } 197 198 /* 199 * Params stuff. 200 */ 201 typedef X86LocalApicParams Params; --- 38 unchanged lines hidden (view full) --- 240 AddrRangeList getIntAddrRange(); 241 242 Port *getPort(const std::string &if_name, int idx = -1) 243 { 244 // a bit of an odd one since there is now two ports in the 245 // Python class we also need two ports even if they are 246 // identical 247 if (if_name == "int_master") { |
245 return intPort; | 248 return &intPort; |
246 } else if (if_name == "int_slave") { | 249 } else if (if_name == "int_slave") { |
247 // memory leak...but will be removed in the next patch 248 return new IntPort(name() + ".int_slave", this, this, latency); | 250 return &intSlavePort; |
249 } 250 return BasicPioDevice::getPort(if_name, idx); 251 } 252 253 /* 254 * Functions to access and manipulate the APIC's registers. 255 */ 256 --- 55 unchanged lines hidden --- | 251 } 252 return BasicPioDevice::getPort(if_name, idx); 253 } 254 255 /* 256 * Functions to access and manipulate the APIC's registers. 257 */ 258 --- 55 unchanged lines hidden --- |