Linux-Hwmon Archive on lore.kernel.org
 help / color / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: Iker Perez <iker.perez@codethink.co.uk>
Cc: linux-hwmon@vger.kernel.org
Subject: Re: [PATCH v3 1/2] hwmon: (lm75) Add support for TMP75B
Date: Tue, 30 Apr 2019 09:55:11 -0700
Message-ID: <20190430165511.GA2699@roeck-us.net> (raw)
In-Reply-To: <20190430144609.19500-2-iker.perez@codethink.co.uk>

On Tue, Apr 30, 2019 at 03:46:08PM +0100, Iker Perez wrote:
> From: Iker Perez del Palomar Sustatxa <iker.perez@codethink.co.uk>
> 
> The TMP75B has a different control register, supports 12-bit
> resolution and the default conversion rate is 37 Hz.
> 
> Signed-off-by: Iker Perez del Palomar Sustatxa <iker.perez@codethink.co.uk>
> ---
>  Documentation/hwmon/lm75 |  7 +++++--
>  drivers/hwmon/lm75.c     | 11 +++++++++++
>  2 files changed, 16 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/hwmon/lm75 b/Documentation/hwmon/lm75
> index 010583608f12..0cff924cdbba 100644
> --- a/Documentation/hwmon/lm75
> +++ b/Documentation/hwmon/lm75
> @@ -47,8 +47,10 @@ Supported chips:
>      Addresses scanned: none
>      Datasheet: Publicly available at the ST website
>  	       https://www.st.com/resource/en/datasheet/stlm75.pdf
> -  * Texas Instruments TMP100, TMP101, TMP105, TMP112, TMP75, TMP75C, TMP175, TMP275
> -    Prefixes: 'tmp100', 'tmp101', 'tmp105', 'tmp112', 'tmp175', 'tmp75', 'tmp75c', 'tmp275'
> +  * Texas Instruments TMP100, TMP101, TMP105, TMP112, TMP75, TMP75B, TMP75C,
> +                      TMP175, TMP275
> +    Prefixes: 'tmp100', 'tmp101', 'tmp105', 'tmp112', 'tmp175', 'tmp75',
> +              'tmp75b', 'tmp75c', 'tmp275'
>      Addresses scanned: none
>      Datasheet: Publicly available at the Texas Instruments website
>                 http://www.ti.com/product/tmp100
> @@ -56,6 +58,7 @@ Supported chips:
>                 http://www.ti.com/product/tmp105
>                 http://www.ti.com/product/tmp112
>                 http://www.ti.com/product/tmp75
> +               http://www.ti.com/product/tmp75b
>                 http://www.ti.com/product/tmp75c
>                 http://www.ti.com/product/tmp175
>                 http://www.ti.com/product/tmp275
> diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c
> index 447af07450f1..cdb1e7833976 100644
> --- a/drivers/hwmon/lm75.c
> +++ b/drivers/hwmon/lm75.c
> @@ -59,6 +59,7 @@ enum lm75_type {		/* keep sorted in alphabetical order */
>  	tmp175,
>  	tmp275,
>  	tmp75,
> +	tmp75b,
>  	tmp75c,
>  };
>  
> @@ -378,6 +379,11 @@ lm75_probe(struct i2c_client *client, const struct i2c_device_id *id)
>  		data->resolution = 12;
>  		data->sample_time = MSEC_PER_SEC / 2;
>  		break;
> +	case tmp75b:
> +		clr_mask |= 1 << 15;    /* not one-shot mode */
> +		data->resolution = 12;
> +		data->sample_time = MSEC_PER_SEC / 4;

Looking into the datasheet, this isn't really correct,
since the configuration register is not updated accordingly.
The default, as mentioned in the description of this patch,
is 37 ms, not 250 ms. There are multiple options:
- Set the sample time to a fixed value, and update the
  configuration register accordingly.
- Read the sample time from the configuration register
  and report it.
- Add support for updating the sample time to the driver.

Either case, the reported value should match reality.

Thanks,
Guenter

> +		break;
>  	case tmp75c:
>  		clr_mask |= 1 << 5;		/* not one-shot mode */
>  		data->resolution = 12;
> @@ -438,6 +444,7 @@ static const struct i2c_device_id lm75_ids[] = {
>  	{ "tmp175", tmp175, },
>  	{ "tmp275", tmp275, },
>  	{ "tmp75", tmp75, },
> +	{ "tmp75b", tmp75b, },
>  	{ "tmp75c", tmp75c, },
>  	{ /* LIST END */ }
>  };
> @@ -537,6 +544,10 @@ static const struct of_device_id lm75_of_match[] = {
>  		.data = (void *)tmp75
>  	},
>  	{
> +		.compatible = "ti,tmp75b",
> +		.data = (void *)tmp75b
> +	},
> +	{
>  		.compatible = "ti,tmp75c",
>  		.data = (void *)tmp75c
>  	},
> -- 
> 2.11.0
> 

  reply index

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-30 14:46 [PATCH v3 0/2] Version Log Iker Perez
2019-04-30 14:46 ` [PATCH v3 1/2] hwmon: (lm75) Add support for TMP75B Iker Perez
2019-04-30 16:55   ` Guenter Roeck [this message]
2019-04-30 14:46 ` [PATCH v3 2/2] dt-bindings: hwmon: Add tmp75b to lm75.txt Iker Perez
2019-04-30 16:57   ` Guenter Roeck
2019-04-30 16:58     ` Guenter Roeck
2019-04-30 16:56 ` [PATCH v3 0/2] Version Log Guenter Roeck

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190430165511.GA2699@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=iker.perez@codethink.co.uk \
    --cc=linux-hwmon@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-Hwmon Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-hwmon/0 linux-hwmon/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-hwmon linux-hwmon/ https://lore.kernel.org/linux-hwmon \
		linux-hwmon@vger.kernel.org linux-hwmon@archiver.kernel.org
	public-inbox-index linux-hwmon

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-hwmon


AGPL code for this site: git clone https://public-inbox.org/ public-inbox