From: Jonathan Cameron <jic23@kernel.org>
To: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Cc: Matti Vaittinen <mazziesaccount@gmail.com>,
Lars-Peter Clausen <lars@metafoo.de>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
Jonathan Cameron <Jonathan.Cameron@huawei.com>
Subject: Re: [PATCH v2 3/4] iio: light: veml3235: extend regmap to add cache
Date: Sat, 28 Dec 2024 15:43:20 +0000 [thread overview]
Message-ID: <20241228154320.2624f2f0@jic23-huawei> (raw)
In-Reply-To: <20241224-veml3235_scale-v2-3-2e1286846c77@gmail.com>
On Tue, 24 Dec 2024 11:59:02 +0100
Javier Carrasco <javier.carrasco.cruz@gmail.com> wrote:
> The configuration and ID registers are not volatile and are not affected
> by read operations (i.e. not precious), making them suitable to be
> cached in order to reduce the number of accesses to the device.
>
> Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
This is also fine on it's own.
Applied.
> ---
> drivers/iio/light/veml3235.c | 31 +++++++++++++++++++++++++++++++
> 1 file changed, 31 insertions(+)
>
> diff --git a/drivers/iio/light/veml3235.c b/drivers/iio/light/veml3235.c
> index fa5c7e7dfbfaec1b96428612b1dcba91ea51603f..f754980ea156a6e128ff159b816e09099197c5c7 100644
> --- a/drivers/iio/light/veml3235.c
> +++ b/drivers/iio/light/veml3235.c
> @@ -101,12 +101,43 @@ static const struct iio_chan_spec veml3235_channels[] = {
> },
> };
>
> +static const struct regmap_range veml3235_readable_ranges[] = {
> + regmap_reg_range(VEML3235_REG_CONF, VEML3235_REG_ID),
> +};
> +
> +static const struct regmap_access_table veml3235_readable_table = {
> + .yes_ranges = veml3235_readable_ranges,
> + .n_yes_ranges = ARRAY_SIZE(veml3235_readable_ranges),
> +};
> +
> +static const struct regmap_range veml3235_writable_ranges[] = {
> + regmap_reg_range(VEML3235_REG_CONF, VEML3235_REG_CONF),
> +};
> +
> +static const struct regmap_access_table veml3235_writable_table = {
> + .yes_ranges = veml3235_writable_ranges,
> + .n_yes_ranges = ARRAY_SIZE(veml3235_writable_ranges),
> +};
> +
> +static const struct regmap_range veml3235_volatile_ranges[] = {
> + regmap_reg_range(VEML3235_REG_WH_DATA, VEML3235_REG_ALS_DATA),
> +};
> +
> +static const struct regmap_access_table veml3235_volatile_table = {
> + .yes_ranges = veml3235_volatile_ranges,
> + .n_yes_ranges = ARRAY_SIZE(veml3235_volatile_ranges),
> +};
> +
> static const struct regmap_config veml3235_regmap_config = {
> .name = "veml3235_regmap",
> .reg_bits = 8,
> .val_bits = 16,
> .max_register = VEML3235_REG_ID,
> .val_format_endian = REGMAP_ENDIAN_LITTLE,
> + .rd_table = &veml3235_readable_table,
> + .wr_table = &veml3235_writable_table,
> + .volatile_table = &veml3235_volatile_table,
> + .cache_type = REGCACHE_RBTREE,
> };
>
> static int veml3235_get_it(struct veml3235_data *data, int *val, int *val2)
>
next prev parent reply other threads:[~2024-12-28 15:43 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-24 10:58 [PATCH v2 0/4] iio: light: fix scale in veml3235 and add helpers to iio-gts Javier Carrasco
2024-12-24 10:59 ` [PATCH v2 1/4] iio: gts-helper: add helpers to ease searches of gain_sel and new_gain Javier Carrasco
2024-12-28 15:41 ` Jonathan Cameron
2024-12-30 9:58 ` Javier Carrasco
2024-12-24 10:59 ` [PATCH v2 2/4] iio: light: veml3235: fix code style Javier Carrasco
2024-12-28 15:42 ` Jonathan Cameron
2024-12-24 10:59 ` [PATCH v2 3/4] iio: light: veml3235: extend regmap to add cache Javier Carrasco
2024-12-28 15:43 ` Jonathan Cameron [this message]
2025-01-12 15:18 ` Andy Shevchenko
2025-01-12 16:07 ` Javier Carrasco
2025-01-12 16:11 ` Andy Shevchenko
2025-01-12 16:21 ` Javier Carrasco
2025-01-12 18:50 ` Andy Shevchenko
2025-01-14 13:23 ` Jonathan Cameron
2024-12-24 10:59 ` [PATCH v2 4/4] iio: veml3235: fix scale to conform to ABI Javier Carrasco
2024-12-28 15:47 ` Jonathan Cameron
2024-12-29 6:53 ` Matti Vaittinen
2024-12-30 10:01 ` Javier Carrasco
2024-12-30 12:13 ` Matti Vaittinen
Reply instructions:
You may reply publicly 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=20241228154320.2624f2f0@jic23-huawei \
--to=jic23@kernel.org \
--cc=Jonathan.Cameron@huawei.com \
--cc=javier.carrasco.cruz@gmail.com \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mazziesaccount@gmail.com \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox