gic_v2.hh (13108:8e46a4e10f94) gic_v2.hh (13109:786adb0cefde)
1/*
2 * Copyright (c) 2010, 2013, 2015-2018 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

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

137 Bitfield<25,24> list_type;
138 EndBitUnion(SWI)
139
140 BitUnion32(IAR)
141 Bitfield<9,0> ack_id;
142 Bitfield<12,10> cpu_id;
143 EndBitUnion(IAR)
144
1/*
2 * Copyright (c) 2010, 2013, 2015-2018 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

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

137 Bitfield<25,24> list_type;
138 EndBitUnion(SWI)
139
140 BitUnion32(IAR)
141 Bitfield<9,0> ack_id;
142 Bitfield<12,10> cpu_id;
143 EndBitUnion(IAR)
144
145 BitUnion32(CTLR)
146 Bitfield<3> fiqEn;
147 Bitfield<1> enableGrp1;
148 Bitfield<0> enableGrp0;
149 EndBitUnion(CTLR)
150
145 protected: /* Params */
146 /** Address range for the distributor interface */
147 const AddrRange distRange;
148
149 /** Address range for the CPU interfaces */
150 const AddrRange cpuRange;
151
152 /** All address ranges used by this GIC */

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

305 if (ix == SPURIOUS_INT) {
306 return false;
307 } else {
308 return bits(getIntConfig(ctx, ix), 1) == 0;
309 }
310 }
311
312 /** CPU enabled */
151 protected: /* Params */
152 /** Address range for the distributor interface */
153 const AddrRange distRange;
154
155 /** Address range for the CPU interfaces */
156 const AddrRange cpuRange;
157
158 /** All address ranges used by this GIC */

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

311 if (ix == SPURIOUS_INT) {
312 return false;
313 } else {
314 return bits(getIntConfig(ctx, ix), 1) == 0;
315 }
316 }
317
318 /** CPU enabled */
313 bool cpuEnabled[CPU_MAX];
319 bool cpuEnabled(ContextID ctx) const {
320 return cpuControl[ctx].enableGrp0 ||
321 cpuControl[ctx].enableGrp1;
322 }
314
323
324 /** GICC_CTLR:
325 * CPU interface control register
326 */
327 CTLR cpuControl[CPU_MAX];
328
315 /** CPU priority */
316 uint8_t cpuPriority[CPU_MAX];
317 uint8_t getCpuPriority(unsigned cpu); // BPR-adjusted priority value
318
319 /** Binary point registers */
320 uint8_t cpuBpr[CPU_MAX];
321
322 /** highest interrupt that is interrupting CPU */

--- 125 unchanged lines hidden ---
329 /** CPU priority */
330 uint8_t cpuPriority[CPU_MAX];
331 uint8_t getCpuPriority(unsigned cpu); // BPR-adjusted priority value
332
333 /** Binary point registers */
334 uint8_t cpuBpr[CPU_MAX];
335
336 /** highest interrupt that is interrupting CPU */

--- 125 unchanged lines hidden ---