io_device.hh (2784:6cff1a1c2935) | io_device.hh (2846:89fbe74d8ea8) |
---|---|
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; --- 68 unchanged lines hidden (view full) --- 77 78 virtual void recvFunctional(Packet *pkt) ; 79 80 virtual void recvStatusChange(Status status) 81 { peerStatus = status; } 82 83 virtual void getDeviceAddressRanges(AddrRangeList &resp, AddrRangeList &snoop); 84 | 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; --- 68 unchanged lines hidden (view full) --- 77 78 virtual void recvFunctional(Packet *pkt) ; 79 80 virtual void recvStatusChange(Status status) 81 { peerStatus = status; } 82 83 virtual void getDeviceAddressRanges(AddrRangeList &resp, AddrRangeList &snoop); 84 |
85 void resendNacked(Packet *pkt); 86 |
|
85 /** 86 * This class is used to implemented sendTiming() with a delay. When a delay 87 * is requested a new event is created. When the event time expires it 88 * attempts to send the packet. If it cannot, the packet is pushed onto the 89 * transmit list to be sent when recvRetry() is called. */ 90 class SendEvent : public Event 91 { 92 PioPort *port; --- 15 unchanged lines hidden (view full) --- 108 void sendTiming(Packet *pkt, Tick time) 109 { new PioPort::SendEvent(this, pkt, time); } 110 111 /** This function is notification that the device should attempt to send a 112 * packet again. */ 113 virtual void recvRetry(); 114 115 public: | 87 /** 88 * This class is used to implemented sendTiming() with a delay. When a delay 89 * is requested a new event is created. When the event time expires it 90 * attempts to send the packet. If it cannot, the packet is pushed onto the 91 * transmit list to be sent when recvRetry() is called. */ 92 class SendEvent : public Event 93 { 94 PioPort *port; --- 15 unchanged lines hidden (view full) --- 110 void sendTiming(Packet *pkt, Tick time) 111 { new PioPort::SendEvent(this, pkt, time); } 112 113 /** This function is notification that the device should attempt to send a 114 * packet again. */ 115 virtual void recvRetry(); 116 117 public: |
116 PioPort(PioDevice *dev, Platform *p); | 118 PioPort(PioDevice *dev, Platform *p, std::string pname = "-pioport"); |
117 118 friend class PioPort::SendEvent; 119}; 120 121 122class DmaPort : public Port 123{ 124 protected: --- 207 unchanged lines hidden --- | 119 120 friend class PioPort::SendEvent; 121}; 122 123 124class DmaPort : public Port 125{ 126 protected: --- 207 unchanged lines hidden --- |