master/cdev.c
branchstable-1.5
changeset 2124 c4afc5fede19
parent 2109 755e6ce823f0
child 2158 69f2b2702336
child 2180 912d70d6f0e5
equal deleted inserted replaced
2123:4c335a1d4db0 2124:c4afc5fede19
   898     if (copy_from_user(sdo_data, (void __user *) data.data, data.data_size)) {
   898     if (copy_from_user(sdo_data, (void __user *) data.data, data.data_size)) {
   899         kfree(sdo_data);
   899         kfree(sdo_data);
   900         return -EFAULT;
   900         return -EFAULT;
   901     }
   901     }
   902 
   902 
   903     retval = ecrt_master_sdo_download(master, data.slave_position,
   903     if (data.complete_access) {
   904             data.sdo_index, data.sdo_entry_subindex, sdo_data, data.data_size,
   904         retval = ecrt_master_sdo_download_complete(master, data.slave_position,
   905             &data.abort_code);
   905                 data.sdo_index, sdo_data, data.data_size, &data.abort_code);
       
   906     } else {
       
   907         retval = ecrt_master_sdo_download(master, data.slave_position,
       
   908                 data.sdo_index, data.sdo_entry_subindex, sdo_data,
       
   909                 data.data_size, &data.abort_code);
       
   910     }
   906 
   911 
   907     kfree(sdo_data);
   912     kfree(sdo_data);
   908 
   913 
   909     if (__copy_to_user((void __user *) arg, &data, sizeof(data))) {
   914     if (__copy_to_user((void __user *) arg, &data, sizeof(data))) {
   910         retval = -EFAULT;
   915         retval = -EFAULT;