Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: Antony Pavlov <antonynpavlov@gmail.com>
To: Alban <albeu@free.fr>
Cc: linux-mips@linux-mips.org, Marek Vasut <marex@denx.de>,
	Wills Wang <wills.wang@live.com>,
	Daniel Schwierzeck <daniel.schwierzeck@gmail.com>,
	Gabor Juhos <juhosg@openwrt.org>
Subject: Re: [RFC v5 03/15] MIPS: ath79: use clk-ath79.c driver for AR933X
Date: Wed, 10 Feb 2016 12:04:33 +0300	[thread overview]
Message-ID: <20160210120433.5afd96256ea3614ea3f2702a@gmail.com> (raw)
In-Reply-To: <20160209230721.660ebd7b@tock>

On Tue, 9 Feb 2016 23:07:21 +0100
Alban <albeu@free.fr> wrote:

> On Tue,  9 Feb 2016 11:13:49 +0300
> Antony Pavlov <antonynpavlov@gmail.com> wrote:
> 
> > Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
> > Cc: Gabor Juhos <juhosg@openwrt.org>
> > Cc: Alban Bedel <albeu@free.fr>
> > Cc: linux-mips@linux-mips.org
> > ---
> >  arch/mips/ath79/clock.c | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/mips/ath79/clock.c b/arch/mips/ath79/clock.c
> > index eb5117c..3c98eba 100644
> > --- a/arch/mips/ath79/clock.c
> > +++ b/arch/mips/ath79/clock.c
> > @@ -24,6 +24,7 @@
> >  #include <asm/mach-ath79/ath79.h>
> >  #include <asm/mach-ath79/ar71xx_regs.h>
> >  #include "common.h"
> > +#include "machtypes.h"
> >  
> >  #define AR71XX_BASE_FREQ	40000000
> >  #define AR724X_BASE_FREQ	5000000
> > @@ -441,7 +442,9 @@ static void __init qca955x_clocks_init(void)
> >  
> >  void __init ath79_clocks_init(void)
> >  {
> > -	if (soc_is_ar71xx())
> > +	if (IS_ENABLED(CONFIG_OF) && mips_machtype == ATH79_MACH_GENERIC_OF) {
> > +		/* pass */
> > +	} else if (soc_is_ar71xx())
> 
> This will break all non AR9330 SoC as their clock won't be properly
> initialized, so this is not acceptable.

Actually this can't broke non-OF board.
This breaks only OF AR9132-based board WR1043DN just because I have not
included AR9132-related patches into RFC v5 patcheseries.

But after adding these patches the problem will disappear.

> I would also really prefer if we can avoid having two completely
> different implementation for legacy and OF platforms. Ideally both
> legacy and OF should use the same core code, just with 2 different
> wrappers. The OF wrapper would just need to get the parent clock from
> DT and call the core setup. The legacy code path would need to create
> the fixed rate parent clock with the current hard coded value, call the
> core setup, then register the clkdev and alias mapping.
> 
> I find it important to avoid code duplication because that mean double
> the amount of testing work. But in practice that generally mean that
> only one half get tested as no one wants to do double the work.

I'm completely agreed your plan. The RFC v5 patchseries was intended
to proof of-clk driver implementation. Please not that it's a RFC series.

> > @@ -484,7 +487,6 @@ static void __init ath79_clocks_init_dt(struct device_node *np)
> >  CLK_OF_DECLARE(ar7100, "qca,ar7100-pll", ath79_clocks_init_dt);
> >  CLK_OF_DECLARE(ar7240, "qca,ar7240-pll", ath79_clocks_init_dt);
> >  CLK_OF_DECLARE(ar9130, "qca,ar9130-pll", ath79_clocks_init_dt);
> > -CLK_OF_DECLARE(ar9330, "qca,ar9330-pll", ath79_clocks_init_dt);
> >  CLK_OF_DECLARE(ar9340, "qca,ar9340-pll", ath79_clocks_init_dt);
> >  CLK_OF_DECLARE(ar9550, "qca,qca9550-pll", ath79_clocks_init_dt);
> >  #endif
> 
> This should have been part of the new driver, otherwise this will break
> bisecting as there would be a version with 2 CLK_OF_DECLARE for ar9330.

No, it can't break a bisection because there is no defconfig that enables both simultaneously.
Of cause you always prepare special configuration by hand :) if you wish intentionally
break your bisection.
If I have missed something then please explain exactly the situation then a bisection
can be broken.
 
-- 
Best regards,
  Antony Pavlov

  reply	other threads:[~2016-02-10  8:39 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-09  8:13 [RFC v5 00/15] MIPS: ath79: AR9331: add devicetree support Antony Pavlov
2016-02-09  8:13 ` [RFC v5 01/15] WIP: clk: add Atheros AR933X SoCs clock driver Antony Pavlov
2016-02-09 11:05   ` Marek Vasut
2016-02-09 21:51   ` Alban
2016-02-11 12:50     ` Antony Pavlov
2016-02-12  2:21   ` Michael Turquette
2016-02-09  8:13 ` [RFC v5 02/15] dt-bindings: clock: qca,ath79-pll: fix copy-paste typos Antony Pavlov
2016-02-09 11:05   ` Marek Vasut
2016-02-09 21:52   ` Alban
2016-02-12 14:52   ` Rob Herring
2016-02-09  8:13 ` [RFC v5 03/15] MIPS: ath79: use clk-ath79.c driver for AR933X Antony Pavlov
2016-02-09 11:07   ` Marek Vasut
2016-02-09 22:07   ` Alban
2016-02-10  9:04     ` Antony Pavlov [this message]
2016-02-09  8:13 ` [RFC v5 04/15] WIP: MIPS: ath79: setup.c: disable platform code for OF boards Antony Pavlov
2016-02-09 11:08   ` Marek Vasut
2016-02-09  8:13 ` [RFC v5 05/15] MIPS: dts: qca: introduce AR9331 devicetree Antony Pavlov
2016-02-09 11:12   ` Marek Vasut
2016-02-09  8:13 ` [RFC v5 06/15] MIPS: ath79: add initial support for TP-LINK MR3020 Antony Pavlov
2016-02-09 11:13   ` Marek Vasut
2016-02-09  8:13 ` [RFC v5 07/15] usb: ehci: add vbus-gpio parameter Antony Pavlov
2016-02-09 11:14   ` Marek Vasut
2016-02-09 22:15   ` Alban
2016-02-10  0:00     ` Antony Pavlov
2016-02-18 16:12   ` Alan Stern
2016-02-18 16:12     ` Alan Stern
2016-02-18 16:39     ` Marek Vasut
2016-02-18 18:06     ` Antony Pavlov
2016-02-18 18:06       ` Antony Pavlov
2016-02-18 18:31       ` Sergei Shtylyov
2016-02-18 22:11         ` Antony Pavlov
2016-02-09  8:13 ` [RFC v5 08/15] MIPS: tl_mr3020: enable usb support Antony Pavlov
2016-02-09  8:13 ` [RFC v5 09/15] devicetree: add Dragino vendor id Antony Pavlov
2016-02-09  8:13 ` [RFC v5 10/15] MIPS: ath79: add initial support for Dragino MS14 (Dragino 2) Antony Pavlov
2016-02-09 11:16   ` Marek Vasut
2016-02-09  8:13 ` [RFC v5 11/15] devicetree: add Onion Corporation vendor id Antony Pavlov
2016-02-09  8:13 ` [RFC v5 12/15] MIPS: ath79: add initial support for Onion Omega Antony Pavlov
2016-02-09  8:13 ` [RFC v5 13/15] devicetree: add DPTechnics vendor id Antony Pavlov
2016-02-12 14:53   ` Rob Herring
2016-02-09  8:14 ` [RFC v5 14/15] MIPS: ath79: add DPT-Module support Antony Pavlov
2016-02-09  8:14 ` [RFC v5 15/15] WIP: MIPS: ath79: add AR9331 devicetree defconfig Antony Pavlov

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=20160210120433.5afd96256ea3614ea3f2702a@gmail.com \
    --to=antonynpavlov@gmail.com \
    --cc=albeu@free.fr \
    --cc=daniel.schwierzeck@gmail.com \
    --cc=juhosg@openwrt.org \
    --cc=linux-mips@linux-mips.org \
    --cc=marex@denx.de \
    --cc=wills.wang@live.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