mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Merge 4.3-rc5 into char-misc next
We want the fixes in here as well. Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
commit
4970c0cb6a
145 changed files with 712 additions and 392 deletions
|
|
@ -67,7 +67,7 @@ static ssize_t bin_attr_nvmem_read(struct file *filp, struct kobject *kobj,
|
|||
int rc;
|
||||
|
||||
/* Stop the user from reading */
|
||||
if (pos > nvmem->size)
|
||||
if (pos >= nvmem->size)
|
||||
return 0;
|
||||
|
||||
if (pos + count > nvmem->size)
|
||||
|
|
@ -92,7 +92,7 @@ static ssize_t bin_attr_nvmem_write(struct file *filp, struct kobject *kobj,
|
|||
int rc;
|
||||
|
||||
/* Stop the user from writing */
|
||||
if (pos > nvmem->size)
|
||||
if (pos >= nvmem->size)
|
||||
return 0;
|
||||
|
||||
if (pos + count > nvmem->size)
|
||||
|
|
@ -825,7 +825,7 @@ static int __nvmem_cell_read(struct nvmem_device *nvmem,
|
|||
return rc;
|
||||
|
||||
/* shift bits in-place */
|
||||
if (cell->bit_offset || cell->bit_offset)
|
||||
if (cell->bit_offset || cell->nbits)
|
||||
nvmem_shift_read_buffer_in_place(cell, buf);
|
||||
|
||||
*len = cell->bytes;
|
||||
|
|
@ -938,7 +938,7 @@ int nvmem_cell_write(struct nvmem_cell *cell, void *buf, size_t len)
|
|||
rc = regmap_raw_write(nvmem->regmap, cell->offset, buf, cell->bytes);
|
||||
|
||||
/* free the tmp buffer */
|
||||
if (cell->bit_offset)
|
||||
if (cell->bit_offset || cell->nbits)
|
||||
kfree(buf);
|
||||
|
||||
if (IS_ERR_VALUE(rc))
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ static int sunxi_sid_probe(struct platform_device *pdev)
|
|||
struct nvmem_device *nvmem;
|
||||
struct regmap *regmap;
|
||||
struct sunxi_sid *sid;
|
||||
int i, size;
|
||||
int ret, i, size;
|
||||
char *randomness;
|
||||
|
||||
sid = devm_kzalloc(dev, sizeof(*sid), GFP_KERNEL);
|
||||
|
|
@ -131,6 +131,11 @@ static int sunxi_sid_probe(struct platform_device *pdev)
|
|||
return PTR_ERR(nvmem);
|
||||
|
||||
randomness = kzalloc(sizeof(u8) * size, GFP_KERNEL);
|
||||
if (!randomness) {
|
||||
ret = -EINVAL;
|
||||
goto err_unreg_nvmem;
|
||||
}
|
||||
|
||||
for (i = 0; i < size; i++)
|
||||
randomness[i] = sunxi_sid_read_byte(sid, i);
|
||||
|
||||
|
|
@ -140,6 +145,10 @@ static int sunxi_sid_probe(struct platform_device *pdev)
|
|||
platform_set_drvdata(pdev, nvmem);
|
||||
|
||||
return 0;
|
||||
|
||||
err_unreg_nvmem:
|
||||
nvmem_unregister(nvmem);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int sunxi_sid_remove(struct platform_device *pdev)
|
||||
|
|
|
|||
Loading…
Reference in a new issue