From: Stephen Boyd <sboyd@kernel.org>
To: Tomer Maimon <tmaimon77@gmail.com>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
"Avi Fishman" <avifishman70@gmail.com>,
"Benjamin Fair" <benjaminfair@google.com>,
"Biju Das" <biju.das.jz@bp.renesas.com>,
"Bjorn Andersson" <bjorn.andersson@linaro.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Daniel Lezcano" <daniel.lezcano@linaro.org>,
"Geert Uytterhoeven" <geert+renesas@glider.be>,
"Greg KH" <gregkh@linuxfoundation.org>,
"Jonathan Neuschäfer" <j.neuschaefer@gmx.net>,
"Jiri Slaby" <jirislaby@kernel.org>,
"Joel Stanley" <joel@jms.id.au>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
"Guenter Roeck" <linux@roeck-us.net>,
"Lubomir Rintel" <lkundrak@v3.sk>,
"Marcel Ziswiler" <marcel.ziswiler@toradex.com>,
"Michael Turquette" <mturquette@baylibre.com>,
"Nobuhiro Iwamatsu" <nobuhiro1.iwamatsu@toshiba.co.jp>,
"Olof Johansson" <olof@lixom.net>,
"Philipp Zabel" <p.zabel@pengutronix.de>,
"Robert Hancock" <robert.hancock@calian.com>,
"Rob Herring" <robh+dt@kernel.org>,
"Shawn Guo" <shawnguo@kernel.org>,
"Tali Perry" <tali.perry1@gmail.com>,
"Thomas G leixner" <tglx@linutronix.de>,
"Patrick Venture" <venture@google.com>,
"Vinod Koul" <vkoul@kernel.org>, "Will Deacon" <will@kernel.org>,
"Wim Van Sebroeck" <wim@linux-watchdog.org>,
"Nancy Yuen" <yuenn@google.com>,
devicetree <devicetree@vger.kernel.org>,
"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
linux-clk <linux-clk@vger.kernel.org>,
"SERIAL DRIVERS" <linux-serial@vger.kernel.org>,
LINUXWATCHDOG <linux-watchdog@vger.kernel.org>,
"Linux ARM" <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v8 04/16] clk: npcm8xx: add clock controller
Date: Fri, 22 Jul 2022 20:02:24 -0700 [thread overview]
Message-ID: <20220723030226.8E43CC341C6@smtp.kernel.org> (raw)
In-Reply-To: <CAP6Zq1ju08GSjNnEG+zDUC8W6aQMJxd5He7QJxy9++hTy0Dc7A@mail.gmail.com>
Quoting Tomer Maimon (2022-07-19 03:04:43)
> On Mon, 18 Jul 2022 at 22:14, Stephen Boyd <sboyd@kernel.org> wrote:
> >
> >
> > So the clk and reset driver should be the same driver, or one driver
> > should register the other and use the auxiliary bus to express the
> > relationship. That way we know that the drivers are tightly coupled and
> > aren't going to stomp over each other.
> I think it is very problematic to use the same driver for the reset
> and the clocks also because The NPCM reset driver is an old driver
> that was used also to the older NPCM BMC SoC so it will be problematic
> to use the clock and reset driver in the same space.
> indeed the reset and clocks are using the same memory region but they
> are not using the same registers, is it not enough?
> Please be aware that the NPCM reset driver is checking that it is
> using the reset registers before calling I/O functions.
To put it simply, platform device drivers should use platform device
APIs. The platform device APIs hide the fact that the firmware is ACPI
or DT or nothing at all. The usage of of_address_to_resource() is
problematic.
After converting that to platform APIs you'll get janitor style cleanups
trying to convert to devm_platform_ioremap_resource(). We'll have to
discuss this again when that happens, even if there's a comment in the
code indicating we can't reserve the IO space because there's another
driver. These problems have happened in the past, fun times!
Furthermore, in DT, reg properties aren't supposed to overlap. When that
happens it usually indicates the DT is being written to describe driver
structure instead of the IP blocks that are delivered by the hardware
engineer. In this case it sounds like a combined clk and reset IP block
because they piled all the SoC glue stuff into a register range. Are
there more features in this IO range?
next prev parent reply other threads:[~2022-07-23 3:02 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-11 12:35 [PATCH v8 00/16] Introduce Nuvoton Arbel NPCM8XX BMC SoC Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 01/16] dt-bindings: timer: npcm: Add npcm845 compatible string Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 02/16] dt-bindings: watchdog: " Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 03/16] dt-binding: clk: npcm845: Add binding for Nuvoton NPCM8XX Clock Tomer Maimon
2022-07-11 19:48 ` Stephen Boyd
2022-07-11 12:35 ` [PATCH v8 04/16] clk: npcm8xx: add clock controller Tomer Maimon
2022-07-11 19:55 ` Stephen Boyd
2022-07-12 7:28 ` Tomer Maimon
2022-07-14 18:23 ` Tomer Maimon
2022-07-18 19:14 ` Stephen Boyd
2022-07-19 10:04 ` Tomer Maimon
2022-07-23 3:02 ` Stephen Boyd [this message]
2022-07-24 9:06 ` Tomer Maimon
2022-07-29 22:56 ` Stephen Boyd
2022-08-04 14:01 ` Tomer Maimon
2022-08-04 20:05 ` Stephen Boyd
2022-08-08 12:37 ` Tomer Maimon
2022-08-08 13:08 ` Tomer Maimon
2022-08-09 18:02 ` Stephen Boyd
2022-07-11 12:35 ` [PATCH v8 05/16] dt-bindings: reset: npcm: add GCR syscon property Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 06/16] ARM: dts: nuvoton: add reset " Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 07/16] reset: npcm: using syscon instead of device data Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 08/16] dt-bindings: reset: npcm: Add support for NPCM8XX Tomer Maimon
2022-07-11 12:39 ` Philipp Zabel
2022-07-11 12:35 ` [PATCH v8 09/16] reset: npcm: Add NPCM8XX support Tomer Maimon
2022-07-11 12:40 ` Philipp Zabel
2022-07-11 12:35 ` [PATCH v8 10/16] dt-bindings: arm: npcm: Add maintainer Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 11/16] dt-bindings: arm: npcm: Add nuvoton,npcm845 compatible string Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 12/16] dt-bindings: arm: npcm: Add nuvoton,npcm845 GCR " Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 13/16] arm64: npcm: Add support for Nuvoton NPCM8XX BMC SoC Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 14/16] arm64: dts: nuvoton: Add initial NPCM8XX device tree Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 15/16] arm64: dts: nuvoton: Add initial NPCM845 EVB " Tomer Maimon
2022-07-11 12:35 ` [PATCH v8 16/16] arm64: defconfig: Add Nuvoton NPCM family support Tomer Maimon
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=20220723030226.8E43CC341C6@smtp.kernel.org \
--to=sboyd@kernel.org \
--cc=arnd@arndb.de \
--cc=avifishman70@gmail.com \
--cc=benjaminfair@google.com \
--cc=biju.das.jz@bp.renesas.com \
--cc=bjorn.andersson@linaro.org \
--cc=catalin.marinas@arm.com \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=geert+renesas@glider.be \
--cc=gregkh@linuxfoundation.org \
--cc=j.neuschaefer@gmx.net \
--cc=jirislaby@kernel.org \
--cc=joel@jms.id.au \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=lkundrak@v3.sk \
--cc=marcel.ziswiler@toradex.com \
--cc=mturquette@baylibre.com \
--cc=nobuhiro1.iwamatsu@toshiba.co.jp \
--cc=olof@lixom.net \
--cc=p.zabel@pengutronix.de \
--cc=robert.hancock@calian.com \
--cc=robh+dt@kernel.org \
--cc=shawnguo@kernel.org \
--cc=tali.perry1@gmail.com \
--cc=tglx@linutronix.de \
--cc=tmaimon77@gmail.com \
--cc=venture@google.com \
--cc=vkoul@kernel.org \
--cc=will@kernel.org \
--cc=wim@linux-watchdog.org \
--cc=yuenn@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).