1 |
/* |
/* |
2 |
* Cisco 7200 (Predator) simulation platform. |
* Cisco 7200/3600/2691 simulation platform. |
3 |
*/ |
*/ |
4 |
|
|
5 |
15-Aug-2005, the project is starting. |
15-Aug-2005, the project is starting. |
1554 |
----------- |
----------- |
1555 |
- NM-16ESW: added ingress and egress port mirroring (todo: BPDU and CDP |
- NM-16ESW: added ingress and egress port mirroring (todo: BPDU and CDP |
1556 |
packets shouldn't be replicated). |
packets shouldn't be replicated). |
1557 |
|
|
1558 |
|
10-Oct-2006 |
1559 |
|
----------- |
1560 |
|
- 0.2.6-RC1 release. |
1561 |
|
- NM-16ESW: implemented ARL count. Fixed the MAC address table display |
1562 |
|
problems. |
1563 |
|
|
1564 |
|
11-Oct-2006 |
1565 |
|
----------- |
1566 |
|
- C3600: fixed NVRAM configuration export. |
1567 |
|
- Merged a patch for Solaris/x86 from Damjan Marion. |
1568 |
|
- Cleaned the EEPROM stuff to have something more generic. |
1569 |
|
- NM-16ESW: base MAC address is now automatically generated. |
1570 |
|
|
1571 |
|
12-Oct-2006 |
1572 |
|
----------- |
1573 |
|
- NM-16ESW: added support to discard input packets. |
1574 |
|
|
1575 |
|
13-Oct-2006 |
1576 |
|
----------- |
1577 |
|
- NM-16ESW: modified the discard support to let BPDU packets arrive to |
1578 |
|
the CPU. |
1579 |
|
- Added online setup of idle-pc through the hypervisor command |
1580 |
|
"vm set_idle_pc_online <vm_name> <cpu_id>". |
1581 |
|
- Values computed for idle-pc are now stored in the virtual MIPS CPU |
1582 |
|
and can be known through the hypervisor command |
1583 |
|
"vm show_idle_pc_prop <vm_name> <cpu_id>". |
1584 |
|
|
1585 |
|
15-Oct-2006 |
1586 |
|
----------- |
1587 |
|
- Added a timer module. |
1588 |
|
- NM-16ESW: added an ARL ager that removes expired MAC addresses. |
1589 |
|
|
1590 |
|
18-Oct-2006 |
1591 |
|
----------- |
1592 |
|
- Added hypervisor commands to tune idle-pc parameters |
1593 |
|
("vm set_idle_max" and "vm set_idle_sleep_time"). |
1594 |
|
- Centralized NM/PA EEPROM to have common definitions for platforms |
1595 |
|
with the same type of network interfaces. |
1596 |
|
- 0.2.6-RC2 release. |
1597 |
|
|
1598 |
|
19-Oct-2006 |
1599 |
|
----------- |
1600 |
|
- C2691: added sketelon code. |
1601 |
|
- C2691: working DUART. |
1602 |
|
- C2691: added mainboard EEPROM. |
1603 |
|
|
1604 |
|
20-Oct-2006 |
1605 |
|
----------- |
1606 |
|
- Bugfix: dec21140 and amd79c97x were incorrectly discarding frames based |
1607 |
|
on the source address, preventing HSRP/VRRP to work (BTS entry #75). |
1608 |
|
- C2691: added hypervisor module to handle instances. |
1609 |
|
|
1610 |
|
22-Oct-2006 |
1611 |
|
----------- |
1612 |
|
- C2691: trying to understand the network interrupt mechanism. |
1613 |
|
|
1614 |
|
23-Oct-2006 |
1615 |
|
----------- |
1616 |
|
- C2691: fixed Galileo interrupt (IRQ 3), allowing packets to be received! |
1617 |
|
- Added a basic GT96100 system controller (for C2691). |
1618 |
|
- GT96100: added MII registers. |
1619 |
|
- Added a basic Flash device to be used as ROM+NVRAM for C2691. |
1620 |
|
- C2691: NVRAM (simulated from flash) is now ok. |
1621 |
|
- C2691: Analyzed environmental monitor register. No warning anymore. |
1622 |
|
|
1623 |
|
24-Oct-2006 |
1624 |
|
----------- |
1625 |
|
- C2691: NVRAM config export is working, config import requires more work |
1626 |
|
(since write operations to flash are not immediate). |
1627 |
|
- Allowed Galileo DMA IRQ to preempt the idle loop. |
1628 |
|
- Fixed ATA Flash "current of sectors per card" which must be in LSW/MSW |
1629 |
|
order and not MSW/LSW. |
1630 |
|
- Added another ATA Flash access method (for c2691). |
1631 |
|
- C2691: added support for CompactFlash. |
1632 |
|
|
1633 |
|
25-Oct-2006 |
1634 |
|
----------- |
1635 |
|
- GT96100: added some definitions for the Ethernet part. |
1636 |
|
|
1637 |
|
26-Oct-2006 |
1638 |
|
----------- |
1639 |
|
- Working on TX part for GT96100. Unfortunately, don't know yet how to |
1640 |
|
signal an interrupt for it on the 2691 platform :( |
1641 |
|
|
1642 |
|
27-Oct-2006 |
1643 |
|
----------- |
1644 |
|
- C2691: found how to announce correctly NM presence in slot 1. |
1645 |
|
- GT96100: finally found how to notify appropriately the network interrupt: |
1646 |
|
the Serial Cause Register has to be handled. |
1647 |
|
- C2691: added the glue code to set up GT96100 ethernet ports. |
1648 |
|
- GT96100: added RX part. Packets are now sucessfully handled. |
1649 |
|
- C2691: better understanding of network interrupt status registers. |
1650 |
|
- C2691: added correct flash code detection. |
1651 |
|
- GT96100: fixed the "PHY reset" problem. |
1652 |
|
- C2691: added default correct chassis base MAC address. |
1653 |
|
|
1654 |
|
28-Oct-2006 |
1655 |
|
----------- |
1656 |
|
- GT96100: added hash function (Mode 0 ok, Mode 1 to fix) for Ethernet |
1657 |
|
address filtering + appropriate definitions. |
1658 |
|
|
1659 |
|
29-Oct-2006 |
1660 |
|
----------- |
1661 |
|
- GT96100: fixed hash mode 1 (not tested). |
1662 |
|
- GT96100: added address filtering process. |
1663 |
|
|
1664 |
|
30-Oct-2006 |
1665 |
|
----------- |
1666 |
|
- GT96100: added minimal MIB counters. |
1667 |
|
- Implemented LBA mode for PCMCIA ATA disk devices and fixed data access. |
1668 |
|
- Changed the default idle sleep time from 50ms to 30ms to avoid timer |
1669 |
|
IRQ loss and timer drift. |
1670 |
|
- Added hypervisor command "vm show_timer_drift <vm_instance> <cpu_id>" |
1671 |
|
to display potential problem with a given idle-pc value. |
1672 |
|
- C2691: added proper support for IO memory. |
1673 |
|
- NM-16ESW: generalized code to support multiple platforms. |
1674 |
|
- C2691: added support for NM-16ESW. |
1675 |
|
|
1676 |
|
31-Oct-2006 |
1677 |
|
----------- |
1678 |
|
- C3725: initial support. Hardware very similar to c2691: Cisco rocks! |
1679 |
|
- C3745: added skeleton. |
1680 |
|
- C3745: fixed GT96100 address. |
1681 |
|
- C3745: added PCI bridges. |
1682 |
|
- C3745: Network Modules are working! |
1683 |
|
- C3745: CompactFlash working. |
1684 |
|
|
1685 |
|
01-Nov-2006 |
1686 |
|
----------- |
1687 |
|
- C3745: finally understood how to handle the system EEPROMs. |
1688 |
|
- Updated documentation (README). |
1689 |
|
- GT96100: minor enhancement of interrupt handling. |
1690 |
|
|
1691 |
|
02-Nov-2006 |
1692 |
|
----------- |
1693 |
|
- Added support for "ghost" RAM: instances use a RAM file (previously |
1694 |
|
created) and use copy-on-write on it. It allows to share common memory |
1695 |
|
between instances and so less memory is used. |
1696 |
|
|
1697 |
|
03-Nov-2006 |
1698 |
|
----------- |
1699 |
|
- Better support for ghost RAM, added hypervisor commands |
1700 |
|
"vm set_ghost_status" and "vm set_ghost_file". |
1701 |
|
|
1702 |
|
04-Nov-2006 |
1703 |
|
----------- |
1704 |
|
- NM-16ESW: fixed incorrect BPDU handling (which caused to add a 2nd |
1705 |
|
802.1Q tag to BPDU packets) and now 0100.0ccc.cccd is recognized as |
1706 |
|
a BPDU MAC address (BTS entry #). |
1707 |
|
- DEC21140: fixed CSR8 handling (missed frame counter), which returned |
1708 |
|
an undefined value (BTS entry #81). |
1709 |
|
- Merged a patch from Rostislav Opocensky who added support for C3600 |
1710 |
|
in nvram_export utility. |
1711 |
|
- Re-enaebled debugging info for NM-16ESW on 2691/3600/37xx. |
1712 |
|
|
1713 |
|
05-Nov-2006 |
1714 |
|
----------- |
1715 |
|
- NM-16ESW: fixed a crash due to incomplete device removal. |
1716 |
|
|
1717 |
|
06-Nov-2006 |
1718 |
|
----------- |
1719 |
|
- Validated use of Serial interfaces with 2691/3725/3745. |
1720 |
|
- Correct config register handling for 3600/2691/3725/3745 platforms |
1721 |
|
(config register setting was ignored). |
1722 |
|
- Added detection of empty NVRAM for 2691/3725/3745 to set the ignore config |
1723 |
|
flag in the config register (to boot faster). |
1724 |
|
- C3745: Fixed NVRAM properties. |
1725 |
|
- C7200/C3600: rewrite of configuration push into NVRAM (can now be done |
1726 |
|
offline). |
1727 |
|
- C2691/C3725/C3745: added support for config push into ROM flash |
1728 |
|
(simulated NVRAM). |
1729 |
|
|
1730 |
|
07-Nov-2006 |
1731 |
|
----------- |
1732 |
|
- Modified config export from NVRAM for all platforms (can now be done |
1733 |
|
offline). |
1734 |
|
- Better handling of base MAC address (2691/3725/3745 + NM-16ESW). |
1735 |
|
|
1736 |
|
08-Nov-2006 |
1737 |
|
----------- |
1738 |
|
- Rework of the MTS subsystem (generalization of MTS64 algorithms to MTS32 |
1739 |
|
which was broken). |
1740 |
|
- Fast memory operations for 32-bit mode. |
1741 |
|
|
1742 |
|
09-Nov-2006 |
1743 |
|
----------- |
1744 |
|
- Rewrite of the MIPS TLB lookup operation. |
1745 |
|
|
1746 |
|
10-Nov-2006 |
1747 |
|
----------- |
1748 |
|
- Fixed another bug in TLB lookup. |
1749 |
|
- Beginning of work for PA-MC-8TE1 support. |
1750 |
|
- Added hypervisor commands to send messages to instances VTTY. |
1751 |
|
- Working on PLX PCI9054 for PA-MC-8TE1. |
1752 |
|
|
1753 |
|
11-Nov-2006 |
1754 |
|
----------- |
1755 |
|
- Continuing a bit on PA-MC-8TE1. |
1756 |
|
|
1757 |
|
14-Nov-2006 |
1758 |
|
----------- |
1759 |
|
- Correct handling of VPN2 mask for TLB lookup. |
1760 |
|
- bugfix: support of c3745 was missing in the hypervisor. |
1761 |
|
- Merged a patch from Akim Dreyer for Debian support. |
1762 |
|
- 0.2.6-RC3 release. |
1763 |
|
|
1764 |
|
15-Nov-2006 |
1765 |
|
----------- |
1766 |
|
- C2691/C3725: fixed a crash occuring on some IOS images due to incorrect |
1767 |
|
platform type. |
1768 |
|
- Modified performance counter to have stats for instructions or blocks |
1769 |
|
(cannot be used simultaneously). |
1770 |
|
- "beq" jump code (x86) was incorrectly using non-local jump. |
1771 |
|
- Bugfix: incorrect number of arguments for hypervisor commands related |
1772 |
|
to ghost file handling. |
1773 |
|
- 0.2.6-RC4 release. |
1774 |
|
|