master/cdev.c
changeset 1543 373cd456dc26
parent 1526 66edd310830c
child 1544 cfcaf46c5b3f
equal deleted inserted replaced
1528:dbc617badc33 1543:373cd456dc26
   584         return -EINVAL;
   584         return -EINVAL;
   585     }
   585     }
   586 
   586 
   587     if (domain->data_size != data.data_size) {
   587     if (domain->data_size != data.data_size) {
   588         up(&master->master_sem);
   588         up(&master->master_sem);
   589         EC_ERR("Data size mismatch %u/%u!\n",
   589         EC_ERR("Data size mismatch %u/%zu!\n",
   590                 data.data_size, domain->data_size);
   590                 data.data_size, domain->data_size);
   591         return -EFAULT;
   591         return -EFAULT;
   592     }
   592     }
   593 
   593 
   594     if (copy_to_user((void __user *) data.target, domain->data,
   594     if (copy_to_user((void __user *) data.target, domain->data,
   969 
   969 
   970     if (!data.nwords
   970     if (!data.nwords
   971             || data.offset + data.nwords > slave->sii_nwords) {
   971             || data.offset + data.nwords > slave->sii_nwords) {
   972         up(&master->master_sem);
   972         up(&master->master_sem);
   973         EC_ERR("Invalid SII read offset/size %u/%u for slave "
   973         EC_ERR("Invalid SII read offset/size %u/%u for slave "
   974                 "SII size %u!\n", data.offset,
   974                 "SII size %zu!\n", data.offset,
   975                 data.nwords, slave->sii_nwords);
   975                 data.nwords, slave->sii_nwords);
   976         return -EINVAL;
   976         return -EINVAL;
   977     }
   977     }
   978 
   978 
   979     if (copy_to_user((void __user *) data.words,
   979     if (copy_to_user((void __user *) data.words,
  2988 
  2988 
  2989     data.result = request.req.result;
  2989     data.result = request.req.result;
  2990     data.error_code = request.req.error_code;
  2990     data.error_code = request.req.error_code;
  2991 
  2991 
  2992     if (master->debug_level) {
  2992     if (master->debug_level) {
  2993         EC_DBG("Read %d bytes via FoE (result = 0x%x).\n",
  2993         EC_DBG("Read %zd bytes via FoE (result = 0x%x).\n",
  2994                 request.req.data_size, request.req.result);
  2994                 request.req.data_size, request.req.result);
  2995     }
  2995     }
  2996 
  2996 
  2997     if (request.req.state != EC_INT_REQUEST_SUCCESS) {
  2997     if (request.req.state != EC_INT_REQUEST_SUCCESS) {
  2998         data.data_size = 0;
  2998         data.data_size = 0;