From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
To: Stefan Wahren <stefan.wahren@i2se.com>,
linux-arm-kernel@lists.infradead.org
Cc: wxt@rock-chips.com, linux-api@vger.kernel.org,
Rob Herring <robh+dt@kernel.org>,
Kumar Gala <galak@codeaurora.org>,
sboyd@codeaurora.org, arnd@arndb.de, s.hauer@pengutronix.de,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org,
mporter@konsulko.com,
Maxime Ripard <maxime.ripard@free-electrons.com>,
pantelis.antoniou@konsulko.com, devicetree@vger.kernel.org,
Mark Brown <broonie@kernel.org>
Subject: Re: [PATCH v6 0/9] Add simple NVMEM Framework via regmap.
Date: Wed, 24 Jun 2015 19:50:51 +0100 [thread overview]
Message-ID: <558AFC0B.1050400@linaro.org> (raw)
In-Reply-To: <1641569650.41238.1435168054323.JavaMail.open-xchange@oxbsltgw35.schlund.de>
On 24/06/15 18:47, Stefan Wahren wrote:
> Hi Srinivas,
>
>> Srinivas Kandagatla <srinivas.kandagatla@linaro.org> hat am 24. Juni 2015 um
>> 15:03 geschrieben:
>>
>>
>>
>>
>> On 24/06/15 13:30, Stefan Wahren wrote:
>>>>> If the question is just about hexdump, then hexdump itself can read
>>>>> file from given offset and size.
>>> yes, this is my question at first. Let me show the difference between
>>> the current implementation and my expectations as a user.
>>>
>>> $ hexdump /sys/class/nvmem/mxs-ocotp/nvmem
>>>
>>> Current implementation: dump the complete register range defined in DT
>>>
>> Its dumping the range which is specified in the provider regmap. If the
>> requirement is to dump only particular range, this has to be made
>> explicit while creating regmap, which is to specify the base address to
>> start from "First data register" and max_register to be "Last data
>> register "- "First data register"
>
> i know about max_register, but i can't find the base address in regmap_config.
>
Base is not in the regmap config, its the value which you pass to the
For example, if I had to do similar change to qfprom driver It would
look like:
><-----------------------cut---------------------------------><
diff --git a/drivers/nvmem/qfprom.c b/drivers/nvmem/qfprom.c
index 7f7a82f..26ced95 100644
--- a/drivers/nvmem/qfprom.c
+++ b/drivers/nvmem/qfprom.c
@@ -52,9 +52,9 @@ static int qfprom_probe(struct platform_device *pdev)
if (IS_ERR(base))
return PTR_ERR(base);
- qfprom_regmap_config.max_register = resource_size(res) - 1;
+ qfprom_regmap_config.max_register = my_data_size;
- regmap = devm_regmap_init_mmio(dev, base, &qfprom_regmap_config);
+ regmap = devm_regmap_init_mmio(dev, base + data_offset,
&qfprom_regmap_config);
if (IS_ERR(regmap)) {
dev_err(dev, "regmap init failed\n");
return PTR_ERR(regmap);
><-----------------------cut---------------------------------><
--srini
> Do you mean struct regmap_access_table *rd_table ?
>
>>
>>> User expectation: dump only the data from OCOTP block
>>>
>>> Let me explain it for i.MX28 OCOTP
>>>
>>> 0x8002c000 // Start of OCOTP register block (defined in DT)
>>>
>>> 0x8002c020 // First data register
>>>
>>> 0x8002c290 // Last data register
>>>
>>> 0x8002dfff // End of OCOTP register block (defined in DT)
>>>
>>> My knowledge about regmap is limited, but how can i achieve that hexdump
>>> give me only the data registers? From my understanding this should be
>>> handled in regmap and not in the read function.
>>
>> Setup the base and regmap_config correctly in the provider driver before
>> calling regmap_init_mmio().
>>
>> Let me know if you need more details.
>
> Yes, please.
>
> Stefan
>
>>
>> --srini
>>
>>>
>>> Are my expectations about the raw access wrong?
>>>
>>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
WARNING: multiple messages have this Message-ID (diff)
From: srinivas.kandagatla@linaro.org (Srinivas Kandagatla)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v6 0/9] Add simple NVMEM Framework via regmap.
Date: Wed, 24 Jun 2015 19:50:51 +0100 [thread overview]
Message-ID: <558AFC0B.1050400@linaro.org> (raw)
In-Reply-To: <1641569650.41238.1435168054323.JavaMail.open-xchange@oxbsltgw35.schlund.de>
On 24/06/15 18:47, Stefan Wahren wrote:
> Hi Srinivas,
>
>> Srinivas Kandagatla <srinivas.kandagatla@linaro.org> hat am 24. Juni 2015 um
>> 15:03 geschrieben:
>>
>>
>>
>>
>> On 24/06/15 13:30, Stefan Wahren wrote:
>>>>> If the question is just about hexdump, then hexdump itself can read
>>>>> file from given offset and size.
>>> yes, this is my question at first. Let me show the difference between
>>> the current implementation and my expectations as a user.
>>>
>>> $ hexdump /sys/class/nvmem/mxs-ocotp/nvmem
>>>
>>> Current implementation: dump the complete register range defined in DT
>>>
>> Its dumping the range which is specified in the provider regmap. If the
>> requirement is to dump only particular range, this has to be made
>> explicit while creating regmap, which is to specify the base address to
>> start from "First data register" and max_register to be "Last data
>> register "- "First data register"
>
> i know about max_register, but i can't find the base address in regmap_config.
>
Base is not in the regmap config, its the value which you pass to the
For example, if I had to do similar change to qfprom driver It would
look like:
><-----------------------cut---------------------------------><
diff --git a/drivers/nvmem/qfprom.c b/drivers/nvmem/qfprom.c
index 7f7a82f..26ced95 100644
--- a/drivers/nvmem/qfprom.c
+++ b/drivers/nvmem/qfprom.c
@@ -52,9 +52,9 @@ static int qfprom_probe(struct platform_device *pdev)
if (IS_ERR(base))
return PTR_ERR(base);
- qfprom_regmap_config.max_register = resource_size(res) - 1;
+ qfprom_regmap_config.max_register = my_data_size;
- regmap = devm_regmap_init_mmio(dev, base, &qfprom_regmap_config);
+ regmap = devm_regmap_init_mmio(dev, base + data_offset,
&qfprom_regmap_config);
if (IS_ERR(regmap)) {
dev_err(dev, "regmap init failed\n");
return PTR_ERR(regmap);
><-----------------------cut---------------------------------><
--srini
> Do you mean struct regmap_access_table *rd_table ?
>
>>
>>> User expectation: dump only the data from OCOTP block
>>>
>>> Let me explain it for i.MX28 OCOTP
>>>
>>> 0x8002c000 // Start of OCOTP register block (defined in DT)
>>>
>>> 0x8002c020 // First data register
>>>
>>> 0x8002c290 // Last data register
>>>
>>> 0x8002dfff // End of OCOTP register block (defined in DT)
>>>
>>> My knowledge about regmap is limited, but how can i achieve that hexdump
>>> give me only the data registers? From my understanding this should be
>>> handled in regmap and not in the read function.
>>
>> Setup the base and regmap_config correctly in the provider driver before
>> calling regmap_init_mmio().
>>
>> Let me know if you need more details.
>
> Yes, please.
>
> Stefan
>
>>
>> --srini
>>
>>>
>>> Are my expectations about the raw access wrong?
>>>
>>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2015-06-24 18:50 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-22 23:07 [PATCH v6 0/9] Add simple NVMEM Framework via regmap Srinivas Kandagatla
2015-06-22 23:07 ` Srinivas Kandagatla
2015-06-22 23:07 ` Srinivas Kandagatla
2015-06-22 23:08 ` [PATCH v6 3/9] nvmem: Add nvmem_device based consumer apis Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
[not found] ` <1435014527-26265-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-23 20:28 ` Stefan Wahren
2015-06-23 20:28 ` Stefan Wahren
2015-06-23 20:28 ` Stefan Wahren
2015-06-24 9:52 ` Srinivas Kandagatla
2015-06-24 9:52 ` Srinivas Kandagatla
2015-06-22 23:09 ` [PATCH v6 5/9] Documentation: nvmem: add nvmem api level and how-to doc Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-22 23:09 ` [PATCH v6 6/9] nvmem: qfprom: Add Qualcomm QFPROM support Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
[not found] ` <1435014556-26392-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-24 22:07 ` Stephen Boyd
2015-06-24 22:07 ` Stephen Boyd
2015-06-24 22:07 ` Stephen Boyd
[not found] ` <1435014459-26138-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-22 23:08 ` [PATCH v6 1/9] nvmem: Add a simple NVMEM framework for nvmem providers Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-23 4:52 ` Joe Perches
2015-06-23 4:52 ` Joe Perches
2015-06-23 4:52 ` Joe Perches
2015-06-23 9:26 ` Pantelis Antoniou
2015-06-23 9:26 ` Pantelis Antoniou
[not found] ` <7BE8C921-180A-411D-A3C0-5D2A7AE3AB6A-OWPKS81ov/FWk0Htik3J/w@public.gmane.org>
2015-06-24 9:56 ` Srinivas Kandagatla
2015-06-24 9:56 ` Srinivas Kandagatla
2015-06-24 9:56 ` Srinivas Kandagatla
[not found] ` <1435014507-26181-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-23 20:10 ` Stefan Wahren
2015-06-23 20:10 ` Stefan Wahren
2015-06-23 20:10 ` Stefan Wahren
[not found] ` <982684639.251832.1435090259373.JavaMail.open-xchange-0SF9iQWekqLZ78VGacPtK8gmgJlYmuWJ@public.gmane.org>
2015-06-24 9:54 ` Srinivas Kandagatla
2015-06-24 9:54 ` Srinivas Kandagatla
2015-06-24 9:54 ` Srinivas Kandagatla
2015-06-22 23:08 ` [PATCH v6 2/9] nvmem: Add a simple NVMEM framework for consumers Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
[not found] ` <1435014518-26223-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-23 20:16 ` Stefan Wahren
2015-06-23 20:16 ` Stefan Wahren
2015-06-23 20:16 ` Stefan Wahren
[not found] ` <272462057.251967.1435090588801.JavaMail.open-xchange-0SF9iQWekqLZ78VGacPtK8gmgJlYmuWJ@public.gmane.org>
2015-06-24 9:53 ` Srinivas Kandagatla
2015-06-24 9:53 ` Srinivas Kandagatla
2015-06-24 9:53 ` Srinivas Kandagatla
2015-06-22 23:08 ` [PATCH v6 4/9] nvmem: Add bindings for simple nvmem framework Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-22 23:08 ` Srinivas Kandagatla
2015-06-23 20:35 ` Stefan Wahren
2015-06-23 20:35 ` Stefan Wahren
[not found] ` <1670081084.252423.1435091735127.JavaMail.open-xchange-0SF9iQWekqLZ78VGacPtK8gmgJlYmuWJ@public.gmane.org>
2015-06-24 9:51 ` Srinivas Kandagatla
2015-06-24 9:51 ` Srinivas Kandagatla
2015-06-24 9:51 ` Srinivas Kandagatla
2015-06-22 23:09 ` [PATCH v6 7/9] nvmem: qfprom: Add bindings for qfprom Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
[not found] ` <1435014570-26434-1-git-send-email-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-23 9:25 ` Rajendra Nayak
2015-06-23 9:25 ` Rajendra Nayak
2015-06-23 9:25 ` Rajendra Nayak
2015-06-24 9:49 ` Srinivas Kandagatla
2015-06-24 9:49 ` Srinivas Kandagatla
2015-06-22 23:09 ` [PATCH v6 8/9] nvmem: sunxi: Move the SID driver to the nvmem framework Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-22 23:09 ` Srinivas Kandagatla
2015-06-23 20:44 ` Stefan Wahren
2015-06-23 20:44 ` Stefan Wahren
2015-06-24 9:48 ` Srinivas Kandagatla
2015-06-24 9:48 ` Srinivas Kandagatla
2015-06-23 19:47 ` [PATCH v6 0/9] Add simple NVMEM Framework via regmap Stefan Wahren
2015-06-23 19:47 ` Stefan Wahren
2015-06-23 19:47 ` Stefan Wahren
2015-06-24 5:54 ` Sanchayan Maity
2015-06-24 5:54 ` Sanchayan Maity
2015-06-24 9:46 ` Srinivas Kandagatla
2015-06-24 9:46 ` Srinivas Kandagatla
2015-06-24 12:30 ` Stefan Wahren
2015-06-24 12:30 ` Stefan Wahren
[not found] ` <558AA2E2.1010606-eS4NqCHxEME@public.gmane.org>
2015-06-24 13:03 ` Srinivas Kandagatla
2015-06-24 13:03 ` Srinivas Kandagatla
2015-06-24 13:03 ` Srinivas Kandagatla
[not found] ` <558AAA8D.8030209-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-24 17:47 ` Stefan Wahren
2015-06-24 17:47 ` Stefan Wahren
2015-06-24 17:47 ` Stefan Wahren
2015-06-24 18:50 ` Srinivas Kandagatla [this message]
2015-06-24 18:50 ` Srinivas Kandagatla
[not found] ` <558AFC0B.1050400-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-06-30 17:47 ` Stefan Wahren
2015-06-30 17:47 ` Stefan Wahren
2015-06-30 17:47 ` Stefan Wahren
2015-06-22 23:15 ` [PATCH v6 9/9] nvmem: Add to MAINTAINERS for nvmem framework Srinivas Kandagatla
2015-06-22 23:15 ` Srinivas Kandagatla
2015-06-22 23:15 ` Srinivas Kandagatla
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=558AFC0B.1050400@linaro.org \
--to=srinivas.kandagatla@linaro.org \
--cc=arnd@arndb.de \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-api@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maxime.ripard@free-electrons.com \
--cc=mporter@konsulko.com \
--cc=pantelis.antoniou@konsulko.com \
--cc=robh+dt@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=sboyd@codeaurora.org \
--cc=stefan.wahren@i2se.com \
--cc=wxt@rock-chips.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.