Deleted Added
sdiff udiff text old ( 8874:9e2a4cf89be6 ) new ( 8914:8c3bd7bea667 )
full compact
1/*
2 * Copyright (c) 2009 Advanced Micro Devices, Inc.
3 * Copyright (c) 2011 Mark D. Hill and David A. Wood
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met: redistributions of source code must retain the above copyright

--- 84 unchanged lines hidden (view full) ---

93 return &physMemPort;
94 }
95
96 return NULL;
97}
98
99RubyPort::PioPort::PioPort(const std::string &_name,
100 RubyPort *_port)
101 : QueuedPort(_name, _port, queue), queue(*_port, *this), ruby_port(_port)
102{
103 DPRINTF(RubyPort, "creating port to ruby sequencer to cpu %s\n", _name);
104}
105
106RubyPort::M5Port::M5Port(const std::string &_name, RubyPort *_port,
107 RubySystem *_system, bool _access_phys_mem)
108 : QueuedPort(_name, _port, queue), queue(*_port, *this),
109 ruby_port(_port), ruby_system(_system),
110 _onRetryList(false), access_phys_mem(_access_phys_mem)
111{
112 DPRINTF(RubyPort, "creating port from ruby sequcner to cpu %s\n", _name);
113}
114
115Tick
116RubyPort::PioPort::recvAtomic(PacketPtr pkt)
117{
118 panic("RubyPort::PioPort::recvAtomic() not implemented!\n");
119 return 0;
120}

--- 519 unchanged lines hidden (view full) ---

640 }
641 DPRINTF(RubyPort, "Hit callback done!\n");
642}
643
644bool
645RubyPort::M5Port::sendNextCycle(PacketPtr pkt)
646{
647 //minimum latency, must be > 0
648 queue.schedSendTiming(pkt, curTick() + (1 * g_eventQueue_ptr->getClock()));
649 return true;
650}
651
652bool
653RubyPort::PioPort::sendNextCycle(PacketPtr pkt)
654{
655 //minimum latency, must be > 0
656 queue.schedSendTiming(pkt, curTick() + (1 * g_eventQueue_ptr->getClock()));
657 return true;
658}
659
660bool
661RubyPort::M5Port::isPhysMemAddress(Addr addr)
662{
663 AddrRangeList physMemAddrList =
664 ruby_port->physMemPort.getPeer()->getAddrRanges();

--- 28 unchanged lines hidden ---