On 01/24/2010 05:16 PM, Antti Palosaari wrote:
quoted text >> + af9015_config.eeprom_sum = 0;
>> + for (reg = 0; reg< eeprom_size / sizeof(u32); reg++) {
>> + af9015_config.eeprom_sum *= GOLDEN_RATIO_PRIME_32;
>> + af9015_config.eeprom_sum += le32_to_cpu(((u32 *)eeprom)[reg]);
>> + }
>> +
>> + deb_info("%s: eeprom sum=%.8x\n", __func__,
>> af9015_config.eeprom_sum);
>
> Does this sum contain all 256 bytes from EEPROM? 256/4 is 64.
Yes it does. It is computed as a hashed sum of 32-bit numbers (4 bytes)
-- speed (does not matter) and larger space of hashes. Hence the
division by 4. The cast does the trick: ((u32 *)eeprom)[reg] -- reg
index is on a 4-byte basis.
regards,
--
js
--
unsubscribe notice To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Messages in current thread:
Re: [PATCH 1/4] media: dvb/af9015, implement eeprom hashing , Jiri Slaby , (Sun Jan 24, 9:35 am)