1/* 2 * Copyright (c) 2004-2005 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; --- 42 unchanged lines hidden (view full) --- 51 * with which it returns the address ranges it is interested in. 52 */ 53class PioPort : public SimpleTimingPort 54{ 55 protected: 56 /** The device that this port serves. */ 57 PioDevice *device; 58 |
59 virtual Tick recvAtomic(Packet *pkt); 60 |
61 virtual void getDeviceAddressRanges(AddrRangeList &resp, 62 AddrRangeList &snoop); 63 64 public: |
65 |
66 PioPort(PioDevice *dev, System *s, std::string pname = "-pioport"); |
67}; 68 69 70class DmaPort : public Port 71{ 72 protected: 73 struct DmaReqState : public Packet::SenderState 74 { --- 78 unchanged lines hidden (view full) --- 153 System *sys; 154 155 /** The pioPort that handles the requests for us and provides us requests 156 * that it sees. */ 157 PioPort *pioPort; 158 159 virtual void addressRanges(AddrRangeList &range_list) = 0; 160 |
161 /** Pure virtual function that the device must implement. Called 162 * when a read command is recieved by the port. 163 * @param pkt Packet describing this request 164 * @return number of ticks it took to complete 165 */ 166 virtual Tick read(Packet *pkt) = 0; 167 168 /** Pure virtual function that the device must implement. Called when a --- 120 unchanged lines hidden --- |