Deleted Added
sdiff udiff text old ( 8993:d5f9445010da ) new ( 9806:3f262c18ad5d )
full compact
1/*
2 * Copyright (c) 2010-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

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

43#include "debug/Checkpoint.hh"
44#include "debug/Timer.hh"
45#include "dev/arm/amba_device.hh"
46#include "dev/arm/rtc_pl031.hh"
47#include "dev/mc146818.hh"
48#include "mem/packet.hh"
49#include "mem/packet_access.hh"
50
51PL031::PL031(Params *p)
52 : AmbaIntDevice(p), timeVal(mkutctime(&p->time)), lastWrittenTick(0),
53 loadVal(0), matchVal(0), rawInt(false), maskInt(false),
54 pendingInt(false), matchEvent(this)
55{
56 pioSize = 0xfff;
57}
58

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

86 break;
87 case RawISR:
88 data = rawInt;
89 break;
90 case MaskedISR:
91 data = pendingInt;
92 break;
93 default:
94 if (readId(pkt, ambaId, pioAddr)) {
95 // Hack for variable sized access
96 data = pkt->get<uint32_t>();
97 break;
98 }
99 panic("Tried to read PL031 at offset %#x that doesn't exist\n", daddr);
100 break;
101 }
102

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

149 break;
150 case IntClear:
151 if (pkt->get<uint32_t>()) {
152 rawInt = false;
153 pendingInt = false;
154 }
155 break;
156 default:
157 if (readId(pkt, ambaId, pioAddr))
158 break;
159 panic("Tried to read PL031 at offset %#x that doesn't exist\n", daddr);
160 break;
161 }
162
163 pkt->makeAtomicResponse();
164 return pioDelay;
165}

--- 84 unchanged lines hidden ---