equal
deleted
inserted
replaced
585 return -EINVAL; |
585 return -EINVAL; |
586 } |
586 } |
587 |
587 |
588 if (domain->data_size != data.data_size) { |
588 if (domain->data_size != data.data_size) { |
589 up(&master->master_sem); |
589 up(&master->master_sem); |
590 EC_ERR("Data size mismatch %u/%u!\n", |
590 EC_ERR("Data size mismatch %u/%zu!\n", |
591 data.data_size, domain->data_size); |
591 data.data_size, domain->data_size); |
592 return -EFAULT; |
592 return -EFAULT; |
593 } |
593 } |
594 |
594 |
595 if (copy_to_user((void __user *) data.target, domain->data, |
595 if (copy_to_user((void __user *) data.target, domain->data, |
980 |
980 |
981 if (!data.nwords |
981 if (!data.nwords |
982 || data.offset + data.nwords > slave->sii_nwords) { |
982 || data.offset + data.nwords > slave->sii_nwords) { |
983 up(&master->master_sem); |
983 up(&master->master_sem); |
984 EC_ERR("Invalid SII read offset/size %u/%u for slave " |
984 EC_ERR("Invalid SII read offset/size %u/%u for slave " |
985 "SII size %u!\n", data.offset, |
985 "SII size %zu!\n", data.offset, |
986 data.nwords, slave->sii_nwords); |
986 data.nwords, slave->sii_nwords); |
987 return -EINVAL; |
987 return -EINVAL; |
988 } |
988 } |
989 |
989 |
990 if (copy_to_user((void __user *) data.words, |
990 if (copy_to_user((void __user *) data.words, |
3086 |
3086 |
3087 data.result = request.req.result; |
3087 data.result = request.req.result; |
3088 data.error_code = request.req.error_code; |
3088 data.error_code = request.req.error_code; |
3089 |
3089 |
3090 if (master->debug_level) { |
3090 if (master->debug_level) { |
3091 EC_DBG("Read %d bytes via FoE (result = 0x%x).\n", |
3091 EC_DBG("Read %zd bytes via FoE (result = 0x%x).\n", |
3092 request.req.data_size, request.req.result); |
3092 request.req.data_size, request.req.result); |
3093 } |
3093 } |
3094 |
3094 |
3095 if (request.req.state != EC_INT_REQUEST_SUCCESS) { |
3095 if (request.req.state != EC_INT_REQUEST_SUCCESS) { |
3096 data.data_size = 0; |
3096 data.data_size = 0; |