[v2,2/3] eeprom: at24: add support to fetch eeprom device property "size"

Message ID 1502736119-32084-3-git-send-email-divagar.mohandass@intel.com
State Superseded
Headers show

Commit Message

Divagar Mohandass Aug. 14, 2017, 6:41 p.m.
This adds support to fetch device property "size" from _DSD.

There is a CAT24C16/GT24C16S NVMEM chip part of the OV13858
camera module and it is connected to i2c bus on Intel KBL board.
This device will use the existing ACPI ID INT3499 and platform
fw will expose "read-only", "pagesize" and "size" props via _DSD.

Signed-off-by: Divagar Mohandass <divagar.mohandass@intel.com>
---
 drivers/misc/eeprom/at24.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Sakari Ailus Aug. 22, 2017, 9:13 a.m. | #1
Hi Divagar,

On Tue, Aug 15, 2017 at 12:11:58AM +0530, Divagar Mohandass wrote:
> This adds support to fetch device property "size" from _DSD.
> 
> There is a CAT24C16/GT24C16S NVMEM chip part of the OV13858
> camera module and it is connected to i2c bus on Intel KBL board.
> This device will use the existing ACPI ID INT3499 and platform
> fw will expose "read-only", "pagesize" and "size" props via _DSD.

Instead of the two paragraphs, how about:

Obtain the size of the EEPROM chip from DT if the "size" property is
specified for the device.

> 
> Signed-off-by: Divagar Mohandass <divagar.mohandass@intel.com>
> ---
>  drivers/misc/eeprom/at24.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c
> index 764ff5df..2199c42 100644
> --- a/drivers/misc/eeprom/at24.c
> +++ b/drivers/misc/eeprom/at24.c
> @@ -570,6 +570,10 @@ static void at24_get_pdata(struct device *dev, struct at24_platform_data *chip)
>  	if (device_property_present(dev, "read-only"))
>  		chip->flags |= AT24_FLAG_READONLY;
>  
> +	err = device_property_read_u32(dev, "size", &val);
> +	if (!err)
> +		chip->byte_len = val;
> +
>  	err = device_property_read_u32(dev, "pagesize", &val);
>  	if (!err) {
>  		chip->page_size = val;
> -- 
> 1.9.1
>
Divagar Mohandass Aug. 30, 2017, 3:57 a.m. | #2
Hi Sakari,

Thanks for your review comments. Will address it in next patch version.

---
^Divagar

>-----Original Message-----
>From: Sakari Ailus [mailto:sakari.ailus@iki.fi]
>Sent: Tuesday, August 22, 2017 2:43 PM
>To: Mohandass, Divagar <divagar.mohandass@intel.com>
>Cc: robh+dt@kernel.org; mark.rutland@arm.com; wsa@the-dreams.de;
>devicetree@vger.kernel.org; linux-i2c@vger.kernel.org; linux-
>kernel@vger.kernel.org; Mani, Rajmohan <rajmohan.mani@intel.com>
>Subject: Re: [PATCH v2 2/3] eeprom: at24: add support to fetch eeprom
>device property "size"
>
>Hi Divagar,
>
>On Tue, Aug 15, 2017 at 12:11:58AM +0530, Divagar Mohandass wrote:
>> This adds support to fetch device property "size" from _DSD.
>>
>> There is a CAT24C16/GT24C16S NVMEM chip part of the OV13858 camera
>> module and it is connected to i2c bus on Intel KBL board.
>> This device will use the existing ACPI ID INT3499 and platform fw will
>> expose "read-only", "pagesize" and "size" props via _DSD.
>
>Instead of the two paragraphs, how about:
>
>Obtain the size of the EEPROM chip from DT if the "size" property is specified
>for the device.
>
>>
>> Signed-off-by: Divagar Mohandass <divagar.mohandass@intel.com>
>> ---
>>  drivers/misc/eeprom/at24.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c
>> index 764ff5df..2199c42 100644
>> --- a/drivers/misc/eeprom/at24.c
>> +++ b/drivers/misc/eeprom/at24.c
>> @@ -570,6 +570,10 @@ static void at24_get_pdata(struct device *dev,
>struct at24_platform_data *chip)
>>  	if (device_property_present(dev, "read-only"))
>>  		chip->flags |= AT24_FLAG_READONLY;
>>
>> +	err = device_property_read_u32(dev, "size", &val);
>> +	if (!err)
>> +		chip->byte_len = val;
>> +
>>  	err = device_property_read_u32(dev, "pagesize", &val);
>>  	if (!err) {
>>  		chip->page_size = val;
>> --
>> 1.9.1
>>
>
>--
>Sakari Ailus
>e-mail: sakari.ailus@iki.fi

Patch

diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c
index 764ff5df..2199c42 100644
--- a/drivers/misc/eeprom/at24.c
+++ b/drivers/misc/eeprom/at24.c
@@ -570,6 +570,10 @@  static void at24_get_pdata(struct device *dev, struct at24_platform_data *chip)
 	if (device_property_present(dev, "read-only"))
 		chip->flags |= AT24_FLAG_READONLY;
 
+	err = device_property_read_u32(dev, "size", &val);
+	if (!err)
+		chip->byte_len = val;
+
 	err = device_property_read_u32(dev, "pagesize", &val);
 	if (!err) {
 		chip->page_size = val;