master/slave.c
changeset 1543 373cd456dc26
parent 1507 68e89abadd19
child 1586 eb9185dfa8ac
equal deleted inserted replaced
1528:dbc617badc33 1543:373cd456dc26
   319 {
   319 {
   320     unsigned int i;
   320     unsigned int i;
   321     uint8_t flags;
   321     uint8_t flags;
   322 
   322 
   323     if (data_size != 32) {
   323     if (data_size != 32) {
   324         EC_ERR("Wrong size of general category (%u/32) in slave %u.\n",
   324         EC_ERR("Wrong size of general category (%zu/32) in slave %u.\n",
   325                 data_size, slave->ring_position);
   325                 data_size, slave->ring_position);
   326         return -EINVAL;
   326         return -EINVAL;
   327     }
   327     }
   328 
   328 
   329     slave->sii.group = ec_slave_sii_string(slave, data[0]);
   329     slave->sii.group = ec_slave_sii_string(slave, data[0]);
   374     ec_sync_t *syncs;
   374     ec_sync_t *syncs;
   375     uint8_t index;
   375     uint8_t index;
   376 
   376 
   377     // one sync manager struct is 4 words long
   377     // one sync manager struct is 4 words long
   378     if (data_size % 8) {
   378     if (data_size % 8) {
   379         EC_ERR("Invalid SII sync manager category size %u in slave %u.\n",
   379         EC_ERR("Invalid SII sync manager category size %zu in slave %u.\n",
   380                 data_size, slave->ring_position);
   380                 data_size, slave->ring_position);
   381         return -EINVAL;
   381         return -EINVAL;
   382     }
   382     }
   383 
   383 
   384     count = data_size / 8;
   384     count = data_size / 8;
   389             EC_ERR("Exceeded maximum number of sync managers!\n");
   389             EC_ERR("Exceeded maximum number of sync managers!\n");
   390             return -EOVERFLOW;
   390             return -EOVERFLOW;
   391         }
   391         }
   392         memsize = sizeof(ec_sync_t) * total_count;
   392         memsize = sizeof(ec_sync_t) * total_count;
   393         if (!(syncs = kmalloc(memsize, GFP_KERNEL))) {
   393         if (!(syncs = kmalloc(memsize, GFP_KERNEL))) {
   394             EC_ERR("Failed to allocate %u bytes for sync managers.\n",
   394             EC_ERR("Failed to allocate %zu bytes for sync managers.\n",
   395                     memsize);
   395                     memsize);
   396             return -ENOMEM;
   396             return -ENOMEM;
   397         }
   397         }
   398 
   398 
   399         for (i = 0; i < slave->sii.sync_count; i++)
   399         for (i = 0; i < slave->sii.sync_count; i++)