Hi Ralf,
Attached patch puts comments around the section that programs register 0x103C
for IP header alignment. Please review ...
Thanks
Manish Lachwani
--- drivers/net/titan_ge.c.orig 2004-11-23 09:00:29.000000000 -0800
+++ drivers/net/titan_ge.c 2004-11-23 09:12:07.000000000 -0800
@@ -1000,6 +1000,17 @@
* driver. This performance drawback existed in the previous
* versions of the silicon
*/
+ /*
+ * The register (0x103c) below has been used to program the
+ * chip to do the IP header alignment. The idea was to fix the
+ * IP header alignment by using existing unused registers,
+ * so that this feature can be implemented quickly. If these
+ * registers are not programmed, then the chip will not align the
+ * IP headers and an extra copy would have to be implemented
+ * in the driver on the Rx side. I am not sure if this
+ * has been documented.
+ * - Manish Lachwani (11/23/2004)
+ */
reg_data_1 = TITAN_GE_READ(0x103c + (port_num << 12));
reg_data_1 |= 0x40000000;
TITAN_GE_WRITE((0x103c + (port_num << 12)), reg_data_1);
|