+ if (cell_spec.args_count)
+ cell_index = cell_spec.args[0];
- nvmem_np = of_get_next_parent(cell_np);
- if (!nvmem_np)
-@@ -1257,7 +1272,7 @@ struct nvmem_cell *of_nvmem_cell_get(str
+ nvmem_np = of_get_parent(cell_np);
+ if (!nvmem_np) {
+@@ -1262,7 +1277,7 @@ struct nvmem_cell *of_nvmem_cell_get(str
return ERR_PTR(-ENOENT);
}
if (IS_ERR(cell))
__nvmem_device_put(nvmem);
-@@ -1410,8 +1425,8 @@ static void nvmem_shift_read_buffer_in_p
+@@ -1415,8 +1430,8 @@ static void nvmem_shift_read_buffer_in_p
}
static int __nvmem_cell_read(struct nvmem_device *nvmem,
{
int rc;
-@@ -1425,7 +1440,7 @@ static int __nvmem_cell_read(struct nvme
+@@ -1430,7 +1445,7 @@ static int __nvmem_cell_read(struct nvme
nvmem_shift_read_buffer_in_place(cell, buf);
if (nvmem->cell_post_process) {
cell->offset, buf, cell->bytes);
if (rc)
return rc;
-@@ -1460,7 +1475,7 @@ void *nvmem_cell_read(struct nvmem_cell
+@@ -1465,7 +1480,7 @@ void *nvmem_cell_read(struct nvmem_cell
if (!buf)
return ERR_PTR(-ENOMEM);
if (rc) {
kfree(buf);
return ERR_PTR(rc);
-@@ -1773,7 +1788,7 @@ ssize_t nvmem_device_cell_read(struct nv
+@@ -1778,7 +1793,7 @@ ssize_t nvmem_device_cell_read(struct nv
if (rc)
return rc;