浏览代码

nvmem: core: Allow ignoring length when reading a cell

nvmem_cell_read() API fills in the argument 'len' with
the number of bytes read from the cell. Many users don't
care about this length value. So allow users to pass a
NULL pointer to this len field.

Signed-off-by: Vivek Gautam <vivek.gautam@codeaurora.org>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Vivek Gautam 8 年之前
父节点
当前提交
3b4a687726
共有 1 个文件被更改,包括 4 次插入2 次删除
  1. 4 2
      drivers/nvmem/core.c

+ 4 - 2
drivers/nvmem/core.c

@@ -970,7 +970,8 @@ static int __nvmem_cell_read(struct nvmem_device *nvmem,
 	if (cell->bit_offset || cell->nbits)
 	if (cell->bit_offset || cell->nbits)
 		nvmem_shift_read_buffer_in_place(cell, buf);
 		nvmem_shift_read_buffer_in_place(cell, buf);
 
 
-	*len = cell->bytes;
+	if (len)
+		*len = cell->bytes;
 
 
 	return 0;
 	return 0;
 }
 }
@@ -979,7 +980,8 @@ static int __nvmem_cell_read(struct nvmem_device *nvmem,
  * nvmem_cell_read() - Read a given nvmem cell
  * nvmem_cell_read() - Read a given nvmem cell
  *
  *
  * @cell: nvmem cell to be read.
  * @cell: nvmem cell to be read.
- * @len: pointer to length of cell which will be populated on successful read.
+ * @len: pointer to length of cell which will be populated on successful read;
+ *	 can be NULL.
  *
  *
  * Return: ERR_PTR() on error or a valid pointer to a buffer on success. The
  * Return: ERR_PTR() on error or a valid pointer to a buffer on success. The
  * buffer should be freed by the consumer with a kfree().
  * buffer should be freed by the consumer with a kfree().