interrupts.cc (8781:dc1bc37bfb00) interrupts.cc (8799:dac1e33e07b0)
1/*
2 * Copyright (c) 2008 The Hewlett-Packard Development Company
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

--- 337 unchanged lines hidden (view full) ---

346 low.deliveryStatus = 0;
347 regs[APIC_INTERRUPT_COMMAND_LOW] = low;
348 }
349 DPRINTF(LocalApic, "ICR is now idle.\n");
350 return 0;
351}
352
353
1/*
2 * Copyright (c) 2008 The Hewlett-Packard Development Company
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

--- 337 unchanged lines hidden (view full) ---

346 low.deliveryStatus = 0;
347 regs[APIC_INTERRUPT_COMMAND_LOW] = low;
348 }
349 DPRINTF(LocalApic, "ICR is now idle.\n");
350 return 0;
351}
352
353
354void
355X86ISA::Interrupts::addressRanges(AddrRangeList &range_list)
354AddrRangeList
355X86ISA::Interrupts::getAddrRanges()
356{
356{
357 range_list.clear();
357 AddrRangeList ranges;
358 Range<Addr> range = RangeEx(x86LocalAPICAddress(initialApicId, 0),
359 x86LocalAPICAddress(initialApicId, 0) +
360 PageBytes);
358 Range<Addr> range = RangeEx(x86LocalAPICAddress(initialApicId, 0),
359 x86LocalAPICAddress(initialApicId, 0) +
360 PageBytes);
361 range_list.push_back(range);
361 ranges.push_back(range);
362 pioAddr = range.start;
362 pioAddr = range.start;
363 return ranges;
363}
364
365
364}
365
366
366void
367X86ISA::Interrupts::getIntAddrRange(AddrRangeList &range_list)
367AddrRangeList
368X86ISA::Interrupts::getIntAddrRange()
368{
369{
369 range_list.clear();
370 range_list.push_back(RangeEx(x86InterruptAddress(initialApicId, 0),
371 x86InterruptAddress(initialApicId, 0) +
372 PhysAddrAPICRangeSize));
370 AddrRangeList ranges;
371 ranges.push_back(RangeEx(x86InterruptAddress(initialApicId, 0),
372 x86InterruptAddress(initialApicId, 0) +
373 PhysAddrAPICRangeSize));
374 return ranges;
373}
374
375
376uint32_t
377X86ISA::Interrupts::readReg(ApicRegIndex reg)
378{
379 if (reg >= APIC_TRIGGER_MODE(0) &&
380 reg <= APIC_TRIGGER_MODE(15)) {

--- 398 unchanged lines hidden ---
375}
376
377
378uint32_t
379X86ISA::Interrupts::readReg(ApicRegIndex reg)
380{
381 if (reg >= APIC_TRIGGER_MODE(0) &&
382 reg <= APIC_TRIGGER_MODE(15)) {

--- 398 unchanged lines hidden ---