We don't need the checksum itself, just the yay/nay that it was correct.
Hrm ... I did a review of the code path here. the csum variable is a holder for the user to examine the checksum from the various functions. It *is* used as far as I can tell if non-NULL.
Is this your understanding as well?
The csum variable holds the checksum, yes. But nothing in attach() uses it afterwards. We only care about the return value of the function. I think the csum variable was added originally because ixgbe_validate_eeprom_checksum(), at that time, required a non-NULL input parameter...maybe? But then over time it was enhanced to allow a NULL parameter for drivers that didn't care about the csum value itself, but just the pass/fail return value of the function. In other words, ixgbe_validate_eeprom_checksum() will only populate "csum" if it's non-NULL. Grep for "checksum_val" to see what I mean.
I don't have a problem leaving the variable in if there was something to use it. Right now, nothing uses it. Is viewing the checksum something users are interested in?