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 *
--- 177 unchanged lines hidden (view full) ---
186 BaseCPU *cpu;
187
188 public:
189 /*
190 * Params stuff.
191 */
192 typedef X86LocalApicParams Params;
193
194 void setCPU(BaseCPU * newCPU);
195
196 void
197 setClock(Tick newClock)
198 {
199 clock = newClock;
200 }
201
202 const Params *
--- 13 unchanged lines hidden (view full) ---
216 triggerTimerInterrupt()
217 {
218 LVTEntry entry = regs[APIC_LVT_TIMER];
219 if (!entry.masked)
220 requestInterrupt(entry.vector, entry.deliveryMode, entry.trigger);
221 return entry.periodic;
222 }
223
224 void addressRanges(AddrRangeList &range_list);
225 void getIntAddrRange(AddrRangeList &range_list);
226
227 Port *getPort(const std::string &if_name, int idx = -1)
228 {
229 if (if_name == "int_port")
230 return intPort;
231 return BasicPioDevice::getPort(if_name, idx);
232 }
233
234 /*
--- 7 unchanged lines hidden (view full) ---
242 {
243 regs[reg] = val;
244 }
245
246 /*
247 * Constructor.
248 */
249
250 Interrupts(Params * p);
251
252 /*
253 * Functions for retrieving interrupts for the CPU to handle.
254 */
255
256 bool checkInterrupts(ThreadContext *tc) const;
257 Fault getInterrupt(ThreadContext *tc);
258 void updateIntrInfo(ThreadContext *tc);
--- 43 unchanged lines hidden ---
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 *
--- 177 unchanged lines hidden (view full) ---
186 BaseCPU *cpu;
187
188 public:
189 /*
190 * Params stuff.
191 */
192 typedef X86LocalApicParams Params;
193
194 void setCPU(BaseCPU * newCPU);
195
196 void
197 setClock(Tick newClock)
198 {
199 clock = newClock;
200 }
201
202 const Params *
--- 13 unchanged lines hidden (view full) ---
216 triggerTimerInterrupt()
217 {
218 LVTEntry entry = regs[APIC_LVT_TIMER];
219 if (!entry.masked)
220 requestInterrupt(entry.vector, entry.deliveryMode, entry.trigger);
221 return entry.periodic;
222 }
223
224 void addressRanges(AddrRangeList &range_list);
225 void getIntAddrRange(AddrRangeList &range_list);
226
227 Port *getPort(const std::string &if_name, int idx = -1)
228 {
229 if (if_name == "int_port")
230 return intPort;
231 return BasicPioDevice::getPort(if_name, idx);
232 }
233
234 /*
--- 7 unchanged lines hidden (view full) ---
242 {
243 regs[reg] = val;
244 }
245
246 /*
247 * Constructor.
248 */
249
250 Interrupts(Params * p);
251
252 /*
253 * Functions for retrieving interrupts for the CPU to handle.
254 */
255
256 bool checkInterrupts(ThreadContext *tc) const;
257 Fault getInterrupt(ThreadContext *tc);
258 void updateIntrInfo(ThreadContext *tc);
--- 43 unchanged lines hidden ---