]>
Commit | Line | Data |
---|---|---|
54663682 GFT |
1 | Version 1.0.6 -- 03/19/2010 |
2 | * Fix memory leak while receiving packets from unregistered VLAN. | |
3 | * Protect vlgrp structure by pause RX actions. Instead of adding | |
4 | lock in the hot zone. | |
5 | * Merge new updates from mainline kernel. | |
6 | ||
7 | Version 1.0.5 -- 06/20/2009 | |
8 | * Fixed unmatched tasklet_disable and tasklet_enable pair. | |
9 | * Allocate ring buffer information data while module initialize, | |
10 | instead of using global space. | |
11 | * Drop shadow register support, due to buggy hardware. | |
12 | ||
13 | Version 1.0.4 -- ??/??/2008 | |
14 | * remove unused #include <version.h> | |
15 | By: Huang Weiyi <weiyi.huang@gmail.com> | |
16 | * fix build error at csum_ipv6_magic() | |
17 | By: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com> | |
18 | ||
19 | Version 1.0.3 -- 10/09/2008 | |
20 | * Fixing shared IRQ problem, fixed by akeem. | |
21 | * Add RSS_PATCH, HALF_MODE_PATCH bit setting for JMC250_rev 0x11. | |
22 | * Added ifdef CONFIG_PM for prevent warnings with CONFIG_PM disabled. | |
23 | ||
24 | Version 1.0.2 -- 09/15/2008 | |
25 | * Modify version check for rev 11 buggy hardware. | |
26 | ||
27 | Version 1.0.1 -- 09/05/2008 | |
28 | * Removed SPI access to flash device through ioctl. | |
29 | Will be implement with MTD block device and SPI Master in the future. | |
30 | ||
31 | Version 1.0 -- 08/29/2008 | |
32 | * Passed checkpatch.pl | |
33 | * Passed sparse cleanly. | |
34 | * Tested on various check that mentioned in SubmitChecklist. | |
35 | * Supporting message level controlled by ethtool. | |
36 | * Remove backward compatible codes. | |
37 | (But still kept in non-mainline driver) | |
38 | * Add pseudo hot-plug support. | |
39 | * Fixed fragmented IP packet's TCP/UDP checksum error. | |
40 | * Fine tune some locks, and use atomic bit operations. | |
41 | * Add SPI interface through ioctl for flash re-programing. | |
42 | * Fix high-loading link-down hardware reset unclean problem. | |
43 | * Link-Change tasklet is modified to process all link-change interrupt. | |
44 | * Fix potential racy atomic locks. | |
45 | * Add work-arround for rev 11 | |
46 | * Add register debug human readable facilities. | |
47 | ||
48 | Version 0.9e -- 08/13/2008 | |
49 | * Fix PCC ISR handling bug. | |
50 | * Allow PCCMTUCLR | |
51 | * Wait phylink if PHY WoL is enabled, preventing | |
52 | immediate resume. | |
53 | * Default to turn on Magic Frame WoL only. | |
54 | * Add pci_enable_wake on S1. | |
55 | * Don't release/request IRQ on suspend/resume. | |
56 | ||
57 | ||
58 | Version 0.9d-msix -- 08/14/2008 | |
59 | * Add MSIX support. | |
60 | * Since I still have no idea how to explicitly balance | |
61 | the load to CPUs, the 1.0 version won't include this | |
62 | feature. | |
63 | ||
64 | ||
65 | Version 0.9d -- 08/13/2008 | |
66 | * Fix watchdog bug. | |
67 | * Add jmc260 support. | |
68 | ||
69 | ||
70 | Version 0.9c -- 08/11/2008 | |
71 | * Fix change mac address bug. | |
72 | * Fix PHY Addr polling bug. | |
73 | * Add eeprom read/write support for ethtool | |
74 | * Add PHY Register dump for ethtool | |
75 | ||
76 | ||
77 | Version 0.9b -- 08/08/2008 | |
78 | * Add FPGA Support. | |
79 | * Fix NAPI <-> Adaptive PCC mode switching bug. | |
80 | * Default use Adaptive PCC mode. | |
81 | * Modified watchdog. | |
82 | * Support NAPI for 2.6.22 kernel | |
83 | ||
84 | ||
85 | Version 0.9a -- 08/07/2008 | |
86 | * Implement NAPI, use ethtool -C ethX adaptive-rx [on|off] to switch | |
87 | between NAPI or Dynamic PCC mode at runtime. | |
88 | * Fix Dynamic PCC switch bug. | |
89 | * Pass packets with error checksum to host instead of drop. | |
90 | ||
91 | ||
92 | Version 0.9 -- 08/04/2008 | |
93 | * Implement Scatter-Gather offloading. | |
94 | * Implement TCP Segment offloading. | |
95 | * Pause TX queue until TX queue have sufficient space. | |
96 | * (Saved a lot CPU) | |
97 | * Turn on WOL by default. | |
98 | * Setup Wakeup Frame to not possible matched pattern. | |
99 | * Tested TCP/UDP csum over IPv4/IPv6 over VLAN all working fine! ^^ | |
100 | * Tested TSO over IPv4/IPv6 over VLAN all working fine! ^^ | |
101 | ||
102 | ||
103 | Version 0.8 -- 08/02/2008 | |
104 | * Remember last link status for interface up/down. | |
105 | * When driver loaded/unloaded and interface down, change | |
106 | * link to 10/half force for power saving. | |
107 | * Check MTU setting when setting tx csum. | |
108 | * Implement VLAN offloading. | |
109 | ||
110 | ||
111 | Version 0.7 -- 08/01/2008 | |
112 | * Added Suspend/Resume support. | |
113 | * Added Wake on LAN support. | |
114 | ||
115 | ||
116 | Version 0.6 -- 07/30/2008 | |
117 | * Use NIC Timer for dynamic PCC. | |
118 | * Add another PCC rule for heavy error packet load. | |
119 | * Report and set GHC when change duplex at 10/100 force mode. | |
120 | * Implement Jumboframe. | |
121 | * Implement MSI. | |
122 | * Backdoor for changing "FIFO Threshold for processing next packet" | |
123 | * Using: | |
124 | * ethtool -C eth1 adaptive-rx on adaptive-tx on \ | |
125 | * rx-usecs 250 rx-frames-low N | |
126 | * N := 16 | 32 | 64 | 128 | |
127 | ||
128 | ||
129 | Version 0.5 -- 07/25/2008 | |
130 | * Add tx timeout watchdog. | |
131 | * Handle PHY Force mode correctly. | |
132 | If AN is off, mmaped PHY Status will not update, need to | |
133 | get information using SMI. | |
134 | Our NIC does not support 1000M Force Mode, return invalid | |
135 | if user try to set that. | |
136 | * Should work fine when hot-[un]pluged with pcie-hotplug driver. | |
137 | * Record TX Collision error count on half-duplex mode. | |
138 | * Implement tx ipv6/ip/tcp/udp checksum offloading | |
139 | * Implement rx ipv6/ip/tcp/udp checksum offloading | |
140 | * Add restart-AN support for ethtool. | |
141 | * Add pause control for ethtool. | |
142 | * Add register dump support for ethtool. | |
143 | * Add PCC information for ethtool. | |
144 | * Set Transmit Timer/Retry at Half Duplex Mode. | |
145 | * Change "FIFO Threshold for processing next packet" of RXCS | |
146 | default to 32QW (Originally 128QW) | |
147 | ||
148 | ||
149 | Version 0.4 -- 07/24/2008 | |
150 | * Support runtime change link speed. | |
151 | ||
152 | ||
153 | Version 0.3 -- 07/22/2008 | |
154 | * Clean up some code, try making it more fit to CodingStyle | |
155 | * Add prepad cache-line optimize support. | |
156 | * Basic RX PCC structure added. | |
157 | * Basic TX PCC structure added. | |
158 | * Reset PHY Processor and turn on ALL advertise by default. | |
159 | * Rewrite TX related functions. | |
160 | * Added 64bit address for PCI DMA support. | |
161 | * Dynamic PCC Adjustment. | |
162 | ||
163 | ||
164 | Version 0.2 -- 07/17/2008 | |
165 | * Handle multiple RX descriptor per packet (Received a LONG packet.) | |
166 | * Drop error RX packets, and update the counter. | |
167 | * Using interrupt shadow register. | |
168 | * Using sk_buff as receive buffer, NIC directly DMA to sk_buff->data. | |
169 | * Use sk_buff kernel provided for NIC directly DMA to send packet. | |
170 | * Use tasklet for tx desc cleanup. (Reduce ISR latency) | |
171 | * Rearange ring data structure for CPU caching efficiency. | |
172 | * Setup RXCS with correct values. | |
173 | * Older(tested to 2.6.18) linux kernel support. | |
174 | * Added a tasklet for link status change. | |
175 | * Added a tasklet for processing incoming packets. | |
176 | * Check DMA MRRS from pci config space, and fill TXCS. | |
177 | * Save TXCS value in local memory, reduce register read time. | |
178 | ||
179 | ||
180 | Version 0.1 -- 07/11/2008 | |
181 | * Basic function completed. | |
182 | * Interrupt handler and xmit function are implemented with | |
183 | care of multiple CPU enviroment. | |
184 | * All offload engine are not used. | |
185 | * PCC/MSI are not used. | |
186 | * Redudent memory copy are used. (Will be removed in the future) | |
187 | * Acceptible performance. | |
188 | ||
189 | Testing platform: Intel(R) Pentium(R) 4 CPU 3.00GHz | |
190 | JMicron JMC250 | |
191 | ||
192 | Peer platforman: AMD Athlon(tm) 64 Processor 3000+ | |
193 | D-Link DGE-530T (Marvell 88E8001) | |
194 | ||
195 | Speed CPU Usage | |
196 | TCP tx: 7xMB 40% | |
197 | TCP rx: 3xMB 30% | |
198 | ||
199 | Note: These speed could be limited by peer, since CPU | |
200 | load is not much, and queue is not full. | |
201 | ||
202 |