aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@snapgear.com>2008-04-30 23:35:34 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-05-01 11:08:36 -0400
commitcc462f7df0a78df568fd4e1d19f0874476f3c002 (patch)
tree28cdcbac286d6ac8a50b812a6d5162574d90bb23
parent6c5a7d504fb0e27aa90b96267177d434642a393d (diff)
m68knommu: fix ColdFire 5272 fec driver hash registers
Renamed the 5272 hash_table registers to match the "grp" hash_table registers of the other ColdFire parts. They are actually a group hash. The makes for consistent setup across all ColdFire parts. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/net/fec.c24
-rw-r--r--drivers/net/fec.h4
2 files changed, 16 insertions, 12 deletions
diff --git a/drivers/net/fec.c b/drivers/net/fec.c
index d7a3ea88eddb..8408b43d50d9 100644
--- a/drivers/net/fec.c
+++ b/drivers/net/fec.c
@@ -2243,13 +2243,13 @@ static void set_multicast_list(struct net_device *dev)
2243 /* Catch all multicast addresses, so set the 2243 /* Catch all multicast addresses, so set the
2244 * filter to all 1's. 2244 * filter to all 1's.
2245 */ 2245 */
2246 ep->fec_hash_table_high = 0xffffffff; 2246 ep->fec_grp_hash_table_high = 0xffffffff;
2247 ep->fec_hash_table_low = 0xffffffff; 2247 ep->fec_grp_hash_table_low = 0xffffffff;
2248 } else { 2248 } else {
2249 /* Clear filter and add the addresses in hash register. 2249 /* Clear filter and add the addresses in hash register.
2250 */ 2250 */
2251 ep->fec_hash_table_high = 0; 2251 ep->fec_grp_hash_table_high = 0;
2252 ep->fec_hash_table_low = 0; 2252 ep->fec_grp_hash_table_low = 0;
2253 2253
2254 dmi = dev->mc_list; 2254 dmi = dev->mc_list;
2255 2255
@@ -2280,9 +2280,9 @@ static void set_multicast_list(struct net_device *dev)
2280 hash = (crc >> (32 - HASH_BITS)) & 0x3f; 2280 hash = (crc >> (32 - HASH_BITS)) & 0x3f;
2281 2281
2282 if (hash > 31) 2282 if (hash > 31)
2283 ep->fec_hash_table_high |= 1 << (hash - 32); 2283 ep->fec_grp_hash_table_high |= 1 << (hash - 32);
2284 else 2284 else
2285 ep->fec_hash_table_low |= 1 << hash; 2285 ep->fec_grp_hash_table_low |= 1 << hash;
2286 } 2286 }
2287 } 2287 }
2288 } 2288 }
@@ -2430,11 +2430,15 @@ int __init fec_enet_init(struct net_device *dev)
2430 */ 2430 */
2431 fec_request_intrs(dev); 2431 fec_request_intrs(dev);
2432 2432
2433 fecp->fec_hash_table_high = 0; 2433 fecp->fec_grp_hash_table_high = 0;
2434 fecp->fec_hash_table_low = 0; 2434 fecp->fec_grp_hash_table_low = 0;
2435 fecp->fec_r_buff_size = PKT_MAXBLR_SIZE; 2435 fecp->fec_r_buff_size = PKT_MAXBLR_SIZE;
2436 fecp->fec_ecntrl = 2; 2436 fecp->fec_ecntrl = 2;
2437 fecp->fec_r_des_active = 0; 2437 fecp->fec_r_des_active = 0;
2438#ifndef CONFIG_M5272
2439 fecp->fec_hash_table_high = 0;
2440 fecp->fec_hash_table_low = 0;
2441#endif
2438 2442
2439 dev->base_addr = (unsigned long)fecp; 2443 dev->base_addr = (unsigned long)fecp;
2440 2444
@@ -2500,8 +2504,8 @@ fec_restart(struct net_device *dev, int duplex)
2500 2504
2501 /* Reset all multicast. 2505 /* Reset all multicast.
2502 */ 2506 */
2503 fecp->fec_hash_table_high = 0; 2507 fecp->fec_grp_hash_table_high = 0;
2504 fecp->fec_hash_table_low = 0; 2508 fecp->fec_grp_hash_table_low = 0;
2505 2509
2506 /* Set maximum receive buffer size. 2510 /* Set maximum receive buffer size.
2507 */ 2511 */
diff --git a/drivers/net/fec.h b/drivers/net/fec.h
index 1d421606984f..292719daceff 100644
--- a/drivers/net/fec.h
+++ b/drivers/net/fec.h
@@ -88,8 +88,8 @@ typedef struct fec {
88 unsigned long fec_reserved7[158]; 88 unsigned long fec_reserved7[158];
89 unsigned long fec_addr_low; /* Low 32bits MAC address */ 89 unsigned long fec_addr_low; /* Low 32bits MAC address */
90 unsigned long fec_addr_high; /* High 16bits MAC address */ 90 unsigned long fec_addr_high; /* High 16bits MAC address */
91 unsigned long fec_hash_table_high; /* High 32bits hash table */ 91 unsigned long fec_grp_hash_table_high;/* High 32bits hash table */
92 unsigned long fec_hash_table_low; /* Low 32bits hash table */ 92 unsigned long fec_grp_hash_table_low; /* Low 32bits hash table */
93 unsigned long fec_r_des_start; /* Receive descriptor ring */ 93 unsigned long fec_r_des_start; /* Receive descriptor ring */
94 unsigned long fec_x_des_start; /* Transmit descriptor ring */ 94 unsigned long fec_x_des_start; /* Transmit descriptor ring */
95 unsigned long fec_r_buff_size; /* Maximum receive buff size */ 95 unsigned long fec_r_buff_size; /* Maximum receive buff size */