
Hi Wolfgang,
On Friday 26 November 2010 16:13:23 Wolfgang Denk wrote:
-#define MIN_PACKET_LENGTH 64 -#define MAX_PACKET_LENGTH 256 +#define MIN_PACKET_LENGTH 256 +#define MAX_PACKET_LENGTH (256 + 16)
Maybe it does indeed make sense to test a wider range of package sizes. Actually I'd even like to see longer packets tested as well.
How about:
#define MIN_PACKET_LENGTH 64 #define MAX_PACKET_LENGTH 1518
and changing the
for (l = MIN_PACKET_LENGTH; l <= MAX_PACKET_LENGTH; l++) { into for (l = MIN_PACKET_LENGTH; l <= MAX_PACKET_LENGTH; l+=91) {
Then you still have 16 tests, but with a much wider range of packet sizes (64...1429).
I don't like this "l+=91" statement. How about making it a bit more flexible. Something like this:
#define MIN_PACKET_LENGTH 64 #define MAX_PACKET_LENGTH 1518 #ifndef CONFIG_SYS_POST_ETH_LOOPS #define CONFIG_SYS_POST_ETH_LOOPS 10 #endif #define PACKET_INCR ((MAX_PACKET_LENGTH - MIN_PACKET_LENGTH) / \ CONFIG_SYS_POST_ETH_LOOPS)
and
for (l = MIN_PACKET_LENGTH; l <= MAX_PACKET_LENGTH; l += PACKET_INCR) {
This way, boards could also override the default loop counter. I switched to a default of 10 this time. This still seems enough for me. Especially with the longer frames now.
What do you think?
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de