master/slave.c
changeset 161 ddb7266d1c56
parent 160 7ddf8367196a
child 163 a1eea08070e1
equal deleted inserted replaced
160:7ddf8367196a 161:ddb7266d1c56
   124 
   124 
   125     // Alle SDOs freigeben
   125     // Alle SDOs freigeben
   126     list_for_each_entry_safe(sdo, next_sdo, &slave->sdo_dictionary, list) {
   126     list_for_each_entry_safe(sdo, next_sdo, &slave->sdo_dictionary, list) {
   127         list_del(&sdo->list);
   127         list_del(&sdo->list);
   128         if (sdo->name) kfree(sdo->name);
   128         if (sdo->name) kfree(sdo->name);
       
   129 
   129         // Alle Entries freigeben
   130         // Alle Entries freigeben
   130         list_for_each_entry_safe(en, next_en, &sdo->entries, list) {
   131         list_for_each_entry_safe(en, next_en, &sdo->entries, list) {
   131             list_del(&en->list);
   132             list_del(&en->list);
   132             kfree(en);
   133             kfree(en);
   133         }
   134         }
   539               kmalloc(sizeof(ec_eeprom_string_t) + size + 1, GFP_KERNEL))) {
   540               kmalloc(sizeof(ec_eeprom_string_t) + size + 1, GFP_KERNEL))) {
   540             EC_ERR("Failed to allocate string memory.\n");
   541             EC_ERR("Failed to allocate string memory.\n");
   541             return -1;
   542             return -1;
   542         }
   543         }
   543         string->size = size;
   544         string->size = size;
       
   545         // string memory appended to string structure
   544         string->data = (char *) string + sizeof(ec_eeprom_string_t);
   546         string->data = (char *) string + sizeof(ec_eeprom_string_t);
   545         memcpy(string->data, data + offset + 1, size);
   547         memcpy(string->data, data + offset + 1, size);
   546         string->data[size] = 0x00;
   548         string->data[size] = 0x00;
   547         list_add_tail(&string->list, &slave->eeprom_strings);
   549         list_add_tail(&string->list, &slave->eeprom_strings);
   548         offset += 1 + size;
   550         offset += 1 + size;