History log of /gem5/src/dev/x86/i8259.cc
Revision Date Author Comments
# 14291:722551795497 06-Sep-2019 Gabe Black <gabeblack@google.com>

dev, x86: Delete the now unused X86 specific interrupt pins/lines.

Change-Id: I3915f0ad673119b551dcc4c5cedec180a9b88735
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20702
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>


# 14290:fa11f961ae4e 06-Sep-2019 Gabe Black <gabeblack@google.com>

dev, x86: Convert x86 devices to the generic int pins.

Change-Id: I4551ad00cf205c31555c90b53e87bc206a8d8729
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20701
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>


# 13229:b45254f2733a 12-Oct-2018 Gabe Black <gabeblack@google.com>

x86: Use little endian packet accessors.

We know data is little endian, so we can use those accessors
explicitly.

Change-Id: I09aa7f1e525ad1346e932ce4a772b64bf59dc350
Reviewed-on: https://gem5-review.googlesource.com/c/13456
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Gabe Black <gabeblack@google.com>


# 11793:ef606668d247 09-Nov-2016 Brandon Potter <brandon.potter@amd.com>

style: [patch 1/22] use /r/3648/ to reorganize includes


# 10905:a6ca6831e775 07-Jul-2015 Andreas Sandberg <andreas.sandberg@arm.com>

sim: Refactor the serialization base class

Objects that are can be serialized are supposed to inherit from the
Serializable class. This class is meant to provide a unified API for
such objects. However, so far it has mainly been used by SimObjects
due to some fundamental design limitations. This changeset redesigns
to the serialization interface to make it more generic and hide the
underlying checkpoint storage. Specifically:

* Add a set of APIs to serialize into a subsection of the current
object. Previously, objects that needed this functionality would
use ad-hoc solutions using nameOut() and section name
generation. In the new world, an object that implements the
interface has the methods serializeSection() and
unserializeSection() that serialize into a named /subsection/ of
the current object. Calling serialize() serializes an object into
the current section.

* Move the name() method from Serializable to SimObject as it is no
longer needed for serialization. The fully qualified section name
is generated by the main serialization code on the fly as objects
serialize sub-objects.

* Add a scoped ScopedCheckpointSection helper class. Some objects
need to serialize data structures, that are not deriving from
Serializable, into subsections. Previously, this was done using
nameOut() and manual section name generation. To simplify this,
this changeset introduces a ScopedCheckpointSection() helper
class. When this class is instantiated, it adds a new /subsection/
and subsequent serialization calls during the lifetime of this
helper class happen inside this section (or a subsection in case
of nested sections).

* The serialize() call is now const which prevents accidental state
manipulation during serialization. Objects that rely on modifying
state can use the serializeOld() call instead. The default
implementation simply calls serialize(). Note: The old-style calls
need to be explicitly called using the
serializeOld()/serializeSectionOld() style APIs. These are used by
default when serializing SimObjects.

* Both the input and output checkpoints now use their own named
types. This hides underlying checkpoint implementation from
objects that need checkpointing and makes it easier to change the
underlying checkpoint storage code.


# 9808:13ffc0066b76 11-Jul-2013 Steve Reinhardt <stever@gmail.com>

dev: make BasicPioDevice take size in constructor

Instead of relying on derived classes explicitly assigning
to the BasicPioDevice pioSize field, require them to pass
a size value in to the constructor.

Committed by: Nilay Vaish <nilay@cs.wisc.edu>


# 9807:63d7362bbdf2 11-Jul-2013 Steve Reinhardt <stever@gmail.com>

dev: consistently end device classes in 'Device'

PciDev and IntDev stuck out as the only device classes that
ended in 'Dev' rather than 'Device'. This patch takes care
of that inconsistency.

Note that you may need to delete pre-existing files matching
build/*/python/m5/internal/param_* as scons does not pick up
indirect dependencies on imported python modules when generating
params, and the PciDev -> PciDevice rename takes place in a
file (dev/Device.py) that gets imported quite a bit.

Committed by: Nilay Vaish <nilay@cs.wisc.edu>


# 8232:b28d06a175be 15-Apr-2011 Nathan Binkert <nate@binkert.org>

trace: reimplement the DTRACE function so it doesn't use a vector
At the same time, rename the trace flags to debug flags since they
have broader usage than simply tracing. This means that
--trace-flags is now --debug-flags and --trace-help is now --debug-help


# 7903:7fcfb515d7bf 07-Feb-2011 Joel Hestness <hestness@cs.utexas.edu>

x86: Add checkpointing capability to devices

Add checkpointing capability to the Intel 8254 timer, CMOS, I8042,
PS2 Keyboard and Mouse, I82094AA, I8237, I8254, I8259, and speaker
devices


# 5898:541097c69e22 25-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Add makeAtomicResponse to the read/write functions of x86 devices.


# 5830:1758d56964c9 01-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Set up the console interrupt and add some DPRINTFs.


# 5827:ac2c268bf4f1 01-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Rework interrupt pins to allow one to many connections.


# 5698:584248437e4f 17-Oct-2008 Nathan Binkert <nate@binkert.org>

need to add packet_access.hh in order to get tempalte definition


# 5688:e18928b6b108 13-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make auto eoi mode work in the I8259 PIC.


# 5687:cec3cfa0b6b5 13-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make non-specific EOI commands work.


# 5686:f33045b4dbee 13-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make the I8259 PIC accept a specific EOI command.


# 5657:7539092b28ac 12-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Create a mechanism for the IO APIC to access I8259 vectors.


# 5656:f548d22a2f71 12-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Actually use the extra vector bits we get from ICW2.


# 5634:22553ec2f177 11-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make the CMOS and I8259 devices use IntDev and IntPin.


# 5632:65132fd646c6 11-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Hook the CMOS device to the I8259 PICs.


# 5631:38912b6250d0 11-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make the I8259 decipher the commands it's given, and add some of it's registers.


# 5630:b49710ff49d3 11-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Change the I8259 from a subdevice into a real SimObject.