mm_disk.hh (4011:e6899d7ca5b1) | mm_disk.hh (4762:c94e103c83ad) |
---|---|
1/* 2 * Copyright (c) 2006 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 25 unchanged lines hidden (view full) --- 34 */ 35 36#ifndef __DEV_SPARC_MM_DISK_HH__ 37#define __DEV_SPARC_MM_DISK_HH__ 38 39#include "base/range.hh" 40#include "dev/io_device.hh" 41#include "dev/disk_image.hh" | 1/* 2 * Copyright (c) 2006 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 25 unchanged lines hidden (view full) --- 34 */ 35 36#ifndef __DEV_SPARC_MM_DISK_HH__ 37#define __DEV_SPARC_MM_DISK_HH__ 38 39#include "base/range.hh" 40#include "dev/io_device.hh" 41#include "dev/disk_image.hh" |
42#include "params/MmDisk.hh" |
|
42 43class MmDisk : public BasicPioDevice 44{ 45 private: 46 DiskImage *image; 47 off_t curSector; 48 bool dirty; 49 uint8_t diskData[SectorSize]; 50 51 public: | 43 44class MmDisk : public BasicPioDevice 45{ 46 private: 47 DiskImage *image; 48 off_t curSector; 49 bool dirty; 50 uint8_t diskData[SectorSize]; 51 52 public: |
52 struct Params : public BasicPioDevice::Params | 53 typedef MmDiskParams Params; 54 MmDisk(const Params *p); 55 56 const Params * 57 params() const |
53 { | 58 { |
54 DiskImage *image; 55 }; 56 protected: 57 const Params *params() const { return (const Params*)_params; } | 59 return dynamic_cast<const Params *>(_params); 60 } |
58 | 61 |
59 public: 60 MmDisk(Params *p); 61 | |
62 virtual Tick read(PacketPtr pkt); 63 virtual Tick write(PacketPtr pkt); 64 65 virtual void serialize(std::ostream &os); 66}; 67 68#endif //__DEV_SPARC_MM_DISK_HH__ 69 | 62 virtual Tick read(PacketPtr pkt); 63 virtual Tick write(PacketPtr pkt); 64 65 virtual void serialize(std::ostream &os); 66}; 67 68#endif //__DEV_SPARC_MM_DISK_HH__ 69 |