From: Tudor Ambarus <tudor.ambarus@linaro.org>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: "Srinivas Kandagatla" <srini@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Alim Akhtar" <alim.akhtar@samsung.com>,
"Peter Griffin" <peter.griffin@linaro.org>,
"André Draszik" <andre.draszik@linaro.org>,
semen.protsenko@linaro.org, willmcvicker@google.com,
kernel-team@android.com, linux-kernel@vger.kernel.org,
linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 2/5] nvmem: add Samsung Exynos OTP support
Date: Thu, 13 Nov 2025 11:28:25 +0200 [thread overview]
Message-ID: <9d77461c-4487-4719-98db-1c5c5025c87e@linaro.org> (raw)
In-Reply-To: <20251113-benign-macaw-of-development-dbd1f8@kuoka>
On 11/13/25 10:30 AM, Krzysztof Kozlowski wrote:
> On Wed, Nov 12, 2025 at 08:29:06AM +0000, Tudor Ambarus wrote:
>> Add initial support for the Samsung Exynos OTP controller. Read the
>> product and chip IDs from the OTP controller registers space and
>> register the SoC info to the SoC interface.
>>
>> The driver can be extended to empower the controller become nvmem
>> provider. This is not in the scope of this patch because it seems the
>> OTP memory space is not yet used by any consumer, even downstream.
>
> Quick look tells me you just duplicated existing Samsung ChipID driver.
> Even actual product ID registers and masks are the same, with one
> difference - you read CHIPID3... which is the same as in newer Exynos,
> e.g. Exynos8895.
Yes, that's correct. It's very similar with the Samsung ChipID driver.
>
> What is exactly the point of having this as separate driver? I think
The difference is that for gs101 the chipid info is part of the OTP
registers. GS101 OTP has a clock, an interrupt line, a register space
(that contains product and chip ID, TMU data, ASV, etc) and a 32Kbit
memory space that can be read/program/locked with specific commands.
The ChipID driver handles older exynos platforms that have a dedicated
chipid device that references a SFR register space to get the product
and chip ID. On GS101 (but also for e850 and autov9 I assume) the
"ChipID block" is just an abstraction, it's not a physical device. The
ChipID info is from OTP. When the power-on sequence progresses, the OTP
chipid values are loaded to the OTP registers. We need the OTP clock to
be on in order to read them. So GS101 has an OTP device that also happens
to have chip ID info.
For now I just got the chipid info and registered it to the SoC interface
(which is very similar to that the exynos-chipid driver does), but this
driver can be extended to export both its memory space and register space
as nvmem devices, if any consumer needs them. Downstream GS101 drivers
seem to use just the chip id info and a dvfs version from the OTP
registers. DVFS version is not going to be used upstream as we're defining
the OPPs in DT. So I was not interested in extending the driver with nvmem
provider support, because it seems we don't need it for GS101.
Do the above justify the point of having a dedicated driver?
> this can easily be just customized chipid driver - with different
> implementation of exynos_chipid_get_chipid_info().
If the answer is no to my question above, how shall I model the device
that binds to the existing exynos-chipid driver?
Thanks!
ta
next prev parent reply other threads:[~2025-11-13 9:28 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-12 8:29 [PATCH v2 0/5] nvmem: add Samsung Exynos OTP support Tudor Ambarus
2025-11-12 8:29 ` [PATCH v2 1/5] dt-bindings: nvmem: add google,gs101-otp Tudor Ambarus
2025-11-13 8:22 ` Krzysztof Kozlowski
2025-11-13 9:05 ` André Draszik
2025-11-12 8:29 ` [PATCH v2 2/5] nvmem: add Samsung Exynos OTP support Tudor Ambarus
2025-11-13 8:30 ` Krzysztof Kozlowski
2025-11-13 9:28 ` Tudor Ambarus [this message]
2025-11-13 9:35 ` Krzysztof Kozlowski
2025-11-13 9:51 ` Tudor Ambarus
2025-11-13 10:26 ` Tudor Ambarus
2025-11-13 10:44 ` Krzysztof Kozlowski
2025-11-13 12:52 ` Tudor Ambarus
2025-11-13 10:43 ` Krzysztof Kozlowski
2025-11-12 8:29 ` [PATCH v2 3/5] arm64: dts: exynos: gs101: add OTP node Tudor Ambarus
2025-11-12 8:29 ` [PATCH v2 4/5] arm64: defconfig: enable Samsung Exynos OTP controller Tudor Ambarus
2025-11-12 8:29 ` [PATCH v2 5/5] MAINTAINERS: add entry for the Samsung Exynos OTP controller driver Tudor Ambarus
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=9d77461c-4487-4719-98db-1c5c5025c87e@linaro.org \
--to=tudor.ambarus@linaro.org \
--cc=alim.akhtar@samsung.com \
--cc=andre.draszik@linaro.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kernel-team@android.com \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=peter.griffin@linaro.org \
--cc=robh@kernel.org \
--cc=semen.protsenko@linaro.org \
--cc=srini@kernel.org \
--cc=willmcvicker@google.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;
as well as URLs for NNTP newsgroup(s).