From: Gregory CLEMENT <gregory.clement@free-electrons.com> To: Andrew Lunn <andrew@lunn.ch> Cc: "Wolfram Sang" <wsa@the-dreams.de>, linux-i2c@vger.kernel.org, "Jason Cooper" <jason@lakedaemon.net>, "Sebastian Hesselbarth" <sebastian.hesselbarth@gmail.com>, "Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>, linux-arm-kernel@lists.infradead.org, "Antoine Tenart" <antoine.tenart@free-electrons.com>, "Miquèl Raynal" <miquel.raynal@free-electrons.com>, "Nadav Haklai" <nadavh@marvell.com>, "Shadi Ammouri" <shadi@marvell.com>, "Yehuda Yitschak" <yehuday@marvell.com>, "Omri Itach" <omrii@marvell.com>, "Hanna Hawa" <hannah@marvell.com>, "Igal Liberman" <igall@marvell.com>, "Marcin Wojtas" <mw@semihalf.com> Subject: Re: [PATCH v2 2/2] i2c: mv64xxx: Fix clock resource by adding an optional bus clock Date: Thu, 11 Jan 2018 09:16:11 +0100 [thread overview] Message-ID: <87lgh47qus.fsf@free-electrons.com> (raw) In-Reply-To: <20180110203243.GC11260@lunn.ch> (Andrew Lunn's message of "Wed, 10 Jan 2018 21:32:43 +0100") Hi Andrew, On mer., janv. 10 2018, Andrew Lunn <andrew@lunn.ch> wrote: > On Wed, Jan 10, 2018 at 06:07:43PM +0100, Gregory CLEMENT wrote: >> On Armada 7K/8K we need to explicitly enable the bus clock. The bus clock >> is optional because not all the SoCs need them but at least for Armada >> 7K/8K it is actually mandatory. >> >> The binding documentation is updating accordingly. >> >> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com> >> --- >> .../devicetree/bindings/i2c/i2c-mv64xxx.txt | 20 ++++++++++++++++++++ >> drivers/i2c/busses/i2c-mv64xxx.c | 12 +++++++++++- >> 2 files changed, 31 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> index 5c30026921ae..a835b724c738 100644 >> --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> @@ -25,6 +25,15 @@ default frequency is 100kHz >> whenever you're using the "allwinner,sun6i-a31-i2c" >> compatible. >> >> + - clocks: : pointers to the reference clocks for this device, the first >> + one is the one used for the clock on the i2c bus, the second >> + one is the clock used for the functional part of the >> + controller >> + >> + - clock-names : names of used clocks, mandatory if the second clock is >> + : used, the name must be "core", and "axi_clk" (the latter is >> + only for Armada 7K/8K). > > Hi Gregory > > Are these two clocks related? > > Ethernet on Dove needs two clocks enabled. > > static const struct clk_gating_soc_desc dove_gating_desc[] __initconst = { > { "usb0", NULL, 0, 0 }, > { "usb1", NULL, 1, 0 }, > { "ge", "gephy", 2, 0 }, > { "sata", NULL, 3, 0 }, > > ge has a parent clock gephy. When you enable ge, the common clock code > walks up the tree of clocks, so will also turn on gephy. > > Does this child/parent relationship exist with these i2c clocks? The child/parent relationship was the wrong assumption we made when we wrote the clock driver for Armada 7K/8K. But now with more documentation, it turned out that these 2 clocks are independant but both are needed for i2c on Armada 7K/8K. Gregory > > Andrew -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
WARNING: multiple messages have this Message-ID (diff)
From: gregory.clement@free-electrons.com (Gregory CLEMENT) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 2/2] i2c: mv64xxx: Fix clock resource by adding an optional bus clock Date: Thu, 11 Jan 2018 09:16:11 +0100 [thread overview] Message-ID: <87lgh47qus.fsf@free-electrons.com> (raw) In-Reply-To: <20180110203243.GC11260@lunn.ch> (Andrew Lunn's message of "Wed, 10 Jan 2018 21:32:43 +0100") Hi Andrew, On mer., janv. 10 2018, Andrew Lunn <andrew@lunn.ch> wrote: > On Wed, Jan 10, 2018 at 06:07:43PM +0100, Gregory CLEMENT wrote: >> On Armada 7K/8K we need to explicitly enable the bus clock. The bus clock >> is optional because not all the SoCs need them but at least for Armada >> 7K/8K it is actually mandatory. >> >> The binding documentation is updating accordingly. >> >> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com> >> --- >> .../devicetree/bindings/i2c/i2c-mv64xxx.txt | 20 ++++++++++++++++++++ >> drivers/i2c/busses/i2c-mv64xxx.c | 12 +++++++++++- >> 2 files changed, 31 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> index 5c30026921ae..a835b724c738 100644 >> --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt >> @@ -25,6 +25,15 @@ default frequency is 100kHz >> whenever you're using the "allwinner,sun6i-a31-i2c" >> compatible. >> >> + - clocks: : pointers to the reference clocks for this device, the first >> + one is the one used for the clock on the i2c bus, the second >> + one is the clock used for the functional part of the >> + controller >> + >> + - clock-names : names of used clocks, mandatory if the second clock is >> + : used, the name must be "core", and "axi_clk" (the latter is >> + only for Armada 7K/8K). > > Hi Gregory > > Are these two clocks related? > > Ethernet on Dove needs two clocks enabled. > > static const struct clk_gating_soc_desc dove_gating_desc[] __initconst = { > { "usb0", NULL, 0, 0 }, > { "usb1", NULL, 1, 0 }, > { "ge", "gephy", 2, 0 }, > { "sata", NULL, 3, 0 }, > > ge has a parent clock gephy. When you enable ge, the common clock code > walks up the tree of clocks, so will also turn on gephy. > > Does this child/parent relationship exist with these i2c clocks? The child/parent relationship was the wrong assumption we made when we wrote the clock driver for Armada 7K/8K. But now with more documentation, it turned out that these 2 clocks are independant but both are needed for i2c on Armada 7K/8K. Gregory > > Andrew -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
next prev parent reply other threads:[~2018-01-11 8:16 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-01-10 17:07 [PATCH v2 0/2] i2c: mv64xxx: Fix clock resource for Armada 7K/8K Gregory CLEMENT 2018-01-10 17:07 ` Gregory CLEMENT 2018-01-10 17:07 ` [PATCH v2 1/2] i2c: mv64xxx: Remove useless test before clk_disable_unprepare Gregory CLEMENT 2018-01-10 17:07 ` Gregory CLEMENT 2018-01-10 17:07 ` [PATCH v2 2/2] i2c: mv64xxx: Fix clock resource by adding an optional bus clock Gregory CLEMENT 2018-01-10 17:07 ` Gregory CLEMENT 2018-01-10 17:14 ` Thomas Petazzoni 2018-01-10 17:14 ` Thomas Petazzoni 2018-01-10 20:32 ` Andrew Lunn 2018-01-10 20:32 ` Andrew Lunn 2018-01-11 8:16 ` Gregory CLEMENT [this message] 2018-01-11 8:16 ` Gregory CLEMENT
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=87lgh47qus.fsf@free-electrons.com \ --to=gregory.clement@free-electrons.com \ --cc=andrew@lunn.ch \ --cc=antoine.tenart@free-electrons.com \ --cc=hannah@marvell.com \ --cc=igall@marvell.com \ --cc=jason@lakedaemon.net \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-i2c@vger.kernel.org \ --cc=miquel.raynal@free-electrons.com \ --cc=mw@semihalf.com \ --cc=nadavh@marvell.com \ --cc=omrii@marvell.com \ --cc=sebastian.hesselbarth@gmail.com \ --cc=shadi@marvell.com \ --cc=thomas.petazzoni@free-electrons.com \ --cc=wsa@the-dreams.de \ --cc=yehuday@marvell.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: linkBe 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.