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