Use parameter structs for initialization so it's easier
authorNathan Binkert <binkertn@umich.edu>
Sat, 13 Nov 2004 20:45:22 +0000 (15:45 -0500)
committerNathan Binkert <binkertn@umich.edu>
Sat, 13 Nov 2004 20:45:22 +0000 (15:45 -0500)
commitb031888038a905e1572bbd3ed42ee4e4a7f599a6
tree10cdccb5372ed7618edbcf275988f60528478e37
parente9f3279334f714de7bbd1415377715cd00a763d5
Use parameter structs for initialization so it's easier
to add new devices.  Abstract the Platform more so that
it is unnecessary to know know platform specifics for
interrupting or translating PCI DMA addresses.

dev/ide_ctrl.cc:
    convert to parameter struct for initialization
    use the interrupt functions in the PciDev base class
    convert from tsunami to using platform
    We don't need an interrupt controller here.
dev/ide_ctrl.hh:
    don't use Tsunami, use Platform
    make the IdeDisk a friend so that it can access my plaform
    convert to parameter struct for construction
dev/ide_disk.cc:
    don't use tsunami references, but platform references
dev/ns_gige.cc:
    Convert to parameter struct for initialzation. Use code in
    base class for interrupts so we don't need to know anything
    about the platform. Don't need an IntrControl *.
dev/ns_gige.hh:
    We don't need a Tsunami * anymore
    convert to a parameter struct for construction
dev/pcidev.cc:
    deal with new parameter struct
dev/pcidev.hh:
    - Move all of the configuration parameters into a param struct
    that we can pass into the constructor.
    - Add a Platform * for accessing new generic interrupt post/clear
    and dma address translation fuctions
    - Create functions for posting/clearing interrupts and translating
    dma addresses
dev/platform.cc:
    have default functions that panic on pci calls
dev/platform.hh:
    don't make the pci stuff pure virtual, but rather provide
    default implementations that panic.  Also, add dma address
    translation.
dev/tsunami.cc:
    this-> isn't necessary here.
    add pci address translation
dev/tsunami.hh:
    implement the pciToDma address translation

--HG--
extra : convert_revision : 7db27a2fa1f1bd84704921ec7ca0280b5653c43e
dev/ide_ctrl.cc
dev/ide_ctrl.hh
dev/ide_disk.cc
dev/ns_gige.cc
dev/ns_gige.hh
dev/pcidev.cc
dev/pcidev.hh
dev/platform.cc
dev/platform.hh
dev/tsunami.cc
dev/tsunami.hh