in ipack.c [279:292]
static u8 ipack_calc_crc1(struct ipack_device *dev)
{
u8 c;
u16 crc;
unsigned int i;
crc = 0xffff;
for (i = 0; i < dev->id_avail; i++) {
c = (i != 11) ? dev->id[i] : 0;
crc = ipack_crc_byte(crc, c);
}
crc = ~crc;
return crc & 0xff;
}