Re: [PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Arnd Bergmann
On Tuesday 01 July 2014 19:56:01 Alexandre Belloni wrote:
> On 01/07/2014 at 19:01:12 +0200, Arnd Bergmann wrote :
> > On Tuesday 01 July 2014 18:48:51 Alexandre Belloni wrote:
> > > On 01/07/2014 at 18:35:50 +0200, Arnd Bergmann wrote :
> > > > If I read this right, disabling 'USE_OF' results in still using
> > > > the old clock interface. Is that intentional? If you want to always
> > > > use COMMON_CLK now, the above can probably be simplified to
> > > > 
> > > > config AT91_PMC_UNIT
> > > > def_bool !ARCH_AT91X40
> > > >   select COMMON_CLK
> > > > 
> > > > and all references to AT91_USE_OLD_CLK, COMMON_CLK_AT91 and
> > > > OLD_CLK_AT91 be removed.
> > > 
> > > Yeah, this is intentional we still have 30 or so boards that we have to
> > > migrate to DT. Until then, we want to be able to boot a kernel without
> > > CCF. The next step in the migration is to switch those boards to DT,
> > > possibly using an hybrid DT/pdata approach until we can get rid of the
> > > board files. Then, we will be able to get rid of the old clk
> > > implementation (and a few other drivers still living in mach-at91).
> > 
> > Ok, I see. Do you expect those 30 boards to work if COMMON_CLK_AT91
> > is enabled, or are there known problems with that?
> > 
> > If you have reason to believe it doesn't work, maybe you can expose
> > the selection of the clock interface to users, e.g. like
> > 
> 
> We actually do the opposite, when a board without DT support is
> selected, the old clock support is also selected even when also
> selecting CONFIG_OF.

Ok, got it now. Yes, that makes sense.

I guess we can start doing the actual multiplatform enablement now,
which would be only for the DT-enabled boards -- all of Kconfig.non_dt
still has to depend on !ARCH_MULTIPLATFORM but we can make at91
either be built standalone (with board files) or multiplatform and
still support all SAM9 and RM9200 SoCs but without board files.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Alexandre Belloni
On 01/07/2014 at 19:01:12 +0200, Arnd Bergmann wrote :
> On Tuesday 01 July 2014 18:48:51 Alexandre Belloni wrote:
> > On 01/07/2014 at 18:35:50 +0200, Arnd Bergmann wrote :
> > > If I read this right, disabling 'USE_OF' results in still using
> > > the old clock interface. Is that intentional? If you want to always
> > > use COMMON_CLK now, the above can probably be simplified to
> > > 
> > > config AT91_PMC_UNIT
> > > def_bool !ARCH_AT91X40
> > >   select COMMON_CLK
> > > 
> > > and all references to AT91_USE_OLD_CLK, COMMON_CLK_AT91 and
> > > OLD_CLK_AT91 be removed.
> > 
> > Yeah, this is intentional we still have 30 or so boards that we have to
> > migrate to DT. Until then, we want to be able to boot a kernel without
> > CCF. The next step in the migration is to switch those boards to DT,
> > possibly using an hybrid DT/pdata approach until we can get rid of the
> > board files. Then, we will be able to get rid of the old clk
> > implementation (and a few other drivers still living in mach-at91).
> 
> Ok, I see. Do you expect those 30 boards to work if COMMON_CLK_AT91
> is enabled, or are there known problems with that?
> 
> If you have reason to believe it doesn't work, maybe you can expose
> the selection of the clock interface to users, e.g. like
> 

We actually do the opposite, when a board without DT support is
selected, the old clock support is also selected even when also
selecting CONFIG_OF.

-- 
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Arnd Bergmann
On Tuesday 01 July 2014 18:48:51 Alexandre Belloni wrote:
> On 01/07/2014 at 18:35:50 +0200, Arnd Bergmann wrote :
> > If I read this right, disabling 'USE_OF' results in still using
> > the old clock interface. Is that intentional? If you want to always
> > use COMMON_CLK now, the above can probably be simplified to
> > 
> > config AT91_PMC_UNIT
> > def_bool !ARCH_AT91X40
> >   select COMMON_CLK
> > 
> > and all references to AT91_USE_OLD_CLK, COMMON_CLK_AT91 and
> > OLD_CLK_AT91 be removed.
> 
> Yeah, this is intentional we still have 30 or so boards that we have to
> migrate to DT. Until then, we want to be able to boot a kernel without
> CCF. The next step in the migration is to switch those boards to DT,
> possibly using an hybrid DT/pdata approach until we can get rid of the
> board files. Then, we will be able to get rid of the old clk
> implementation (and a few other drivers still living in mach-at91).

Ok, I see. Do you expect those 30 boards to work if COMMON_CLK_AT91
is enabled, or are there known problems with that?

If you have reason to believe it doesn't work, maybe you can expose
the selection of the clock interface to users, e.g. like

config COMMON_CLK_AT91
bool "Use common clock infrastructure"
depends on AT91_PMC_UNIT
default USE_OF
select COMMON_CLK
help
  The at91 platform is migrating to use the common clk infrastructure
  for all boards, but this has not been tested on some of the older
  machines that do not use DT yet.
  If you encounter problems on legacy boards, try disabling this option
  and report the problem to linux-arm-ker...@lists.infradead.org.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Alexandre Belloni
Hi,

On 01/07/2014 at 18:35:50 +0200, Arnd Bergmann wrote :
> On Tuesday 01 July 2014 16:12:09 Alexandre Belloni wrote:
> Looks good overall, but I think this Kconfig snippet should be cleaned
> up a little now:
> 
> config AT91_USE_OLD_CLK
> bool
> 
> config AT91_PMC_UNIT
> bool
> default !ARCH_AT91X40
> 
> config COMMON_CLK_AT91
> bool
> default AT91_PMC_UNIT && USE_OF && !AT91_USE_OLD_CLK
> select COMMON_CLK
> 
> config OLD_CLK_AT91
> bool
> default AT91_PMC_UNIT && AT91_USE_OLD_CLK
> 
> 
> If I read this right, disabling 'USE_OF' results in still using
> the old clock interface. Is that intentional? If you want to always
> use COMMON_CLK now, the above can probably be simplified to
> 
> config AT91_PMC_UNIT
> def_bool !ARCH_AT91X40
>   select COMMON_CLK
> 
> and all references to AT91_USE_OLD_CLK, COMMON_CLK_AT91 and
> OLD_CLK_AT91 be removed.

Yeah, this is intentional we still have 30 or so boards that we have to
migrate to DT. Until then, we want to be able to boot a kernel without
CCF. The next step in the migration is to switch those boards to DT,
possibly using an hybrid DT/pdata approach until we can get rid of the
board files. Then, we will be able to get rid of the old clk
implementation (and a few other drivers still living in mach-at91).


-- 
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Arnd Bergmann
On Tuesday 01 July 2014 16:12:09 Alexandre Belloni wrote:
> This patch set adds support for the common clock framwork to the remaining 
> atml
> SoCs: at91rm9200, at91sam9260, at91sam9263, at91sam9g45.
> 
> It also defines the necessary main crystal and slow crystal frequencies.
> 
> I couldn't find datasheets for the following boards:
>  - mpa1600
>  - ge863-pro3
>  - animeo_ip
>  - tny_a9260
> 
> For those, I assumed the 32kHz crystal is present on the board as this is the
> most common implementation (only one board doesn't have it). Please correct me
> if this is wrong.
> 
> I could not test at91rm9200 as I don't own any board with that chip.

Looks good overall, but I think this Kconfig snippet should be cleaned
up a little now:

config AT91_USE_OLD_CLK
bool

config AT91_PMC_UNIT
bool
default !ARCH_AT91X40

config COMMON_CLK_AT91
bool
default AT91_PMC_UNIT && USE_OF && !AT91_USE_OLD_CLK
select COMMON_CLK

config OLD_CLK_AT91
bool
default AT91_PMC_UNIT && AT91_USE_OLD_CLK


If I read this right, disabling 'USE_OF' results in still using
the old clock interface. Is that intentional? If you want to always
use COMMON_CLK now, the above can probably be simplified to

config AT91_PMC_UNIT
def_bool !ARCH_AT91X40
select COMMON_CLK

and all references to AT91_USE_OLD_CLK, COMMON_CLK_AT91 and
OLD_CLK_AT91 be removed.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 00/33] ARM: at91: Switch remaining SoCs and boards to CCF

2014-07-01 Thread Alexandre Belloni
This patch set adds support for the common clock framwork to the remaining atml
SoCs: at91rm9200, at91sam9260, at91sam9263, at91sam9g45.

It also defines the necessary main crystal and slow crystal frequencies.

I couldn't find datasheets for the following boards:
 - mpa1600
 - ge863-pro3
 - animeo_ip
 - tny_a9260

For those, I assumed the 32kHz crystal is present on the board as this is the
most common implementation (only one board doesn't have it). Please correct me
if this is wrong.

I could not test at91rm9200 as I don't own any board with that chip.

Cc: Douglas Gilbert 
Cc: Gregory Hermant 
Cc: Joachim Eastwood 
Cc: Fabio Porcedda 
Cc: Jiri Prchal 
Cc: Tim Schendekehl 
Cc: Gael Portay 
Cc: Rodolfo Giometti 

Alexandre Belloni (33):
  Documentation: dt: document all the atmel pmc compatibles
  ARM: at91/dt: ariag25: define crystals frequencies
  clk: at91: main: warn when the main crystal frequency is not set
  ARM: at91: prepare common clk transition for rm9200
  ARM: at91/dt: rm9200: define clocks
  ARM: at91: move at91rm9200 SoC to the CCF
  ARM: at91/dt: at91rm9200ek: define crystals frequencies
  ARM: at91: prepare common clk transition for sam9260
  ARM: at91/dt: sam9260: define clocks
  ARM: at91/dt: sam9g20: define clocks
  ARM: at91: move at91sam9260 SoCs to the CCF
  ARM: at91/dt: at91sam9g20ek: define crystals frequencies
  ARM: at91/dt: foxg20: define crystals frequencies
  ARM: at91/dt: usb_a9260: define crystals frequencies
  ARM: at91/dt: tny_a9260: define crystals frequencies
  ARM: at91/dt: qil_a9260: define crystals frequencies
  ARM: at91/dt: mpa1600: define crytals frequencies
  ARM: at91/dt: ge863-pro3: define crystals frequencies
  ARM: at91/dt: ethernut5: define crystals frequencies
  ARM: at91/dt: animeo_ip: define crystals frequencies
  ARM: at91/dt: kizbox: define main crystal frequency
  ARM: at91: prepare common clk transition for sam9g45
  ARM: at91/dt: sam9g45: define clocks
  ARM: at91: move at91sam9g45 SoC to the CCF
  ARM: at91/dt: sam9m10g45ek: define crystals frequencies
  ARM: at91/dt: pm9g45: crystals frequencies
  ARM: at91/dt: cosino define crystals frequencies
  ARM: at91: prepare common clk transition for sam9263
  ARM: at91/dt: sam9263: define clocks
  ARM: at91: move at91sam9263 SoC to the CCF
  ARM: at91/dt: sam9263ek: define crystals frequencies
  ARM: at91/dt: tny_a9263: define crystals frequencies
  ARM: at91/dt: usb_a9263: define crystals frequencies

 .../devicetree/bindings/arm/atmel-pmc.txt  |   5 +-
 arch/arm/boot/dts/animeo_ip.dts|   8 +
 arch/arm/boot/dts/at91-ariag25.dts |   8 +
 arch/arm/boot/dts/at91-cosino.dtsi |   8 +
 arch/arm/boot/dts/at91-foxg20.dts  |   8 +
 arch/arm/boot/dts/at91-qil_a9260.dts   |   8 +
 arch/arm/boot/dts/at91rm9200.dtsi  | 304 ++
 arch/arm/boot/dts/at91rm9200ek.dts |   8 +
 arch/arm/boot/dts/at91sam9260.dtsi | 314 ++-
 arch/arm/boot/dts/at91sam9263.dtsi | 311 +++
 arch/arm/boot/dts/at91sam9263ek.dts|   8 +
 arch/arm/boot/dts/at91sam9g20.dtsi |  24 ++
 arch/arm/boot/dts/at91sam9g20ek_common.dtsi|   8 +
 arch/arm/boot/dts/at91sam9g45.dtsi | 340 -
 arch/arm/boot/dts/at91sam9m10g45ek.dts |   8 +
 arch/arm/boot/dts/ethernut5.dts|  10 +
 arch/arm/boot/dts/ge863-pro3.dtsi  |   8 +
 arch/arm/boot/dts/kizbox.dts   |   4 +
 arch/arm/boot/dts/mpa1600.dts  |   8 +
 arch/arm/boot/dts/pm9g45.dts   |   8 +
 arch/arm/boot/dts/tny_a9260_common.dtsi|   8 +
 arch/arm/boot/dts/tny_a9263.dts|   8 +
 arch/arm/boot/dts/usb_a9260_common.dtsi|   8 +
 arch/arm/boot/dts/usb_a9263.dts|   8 +
 arch/arm/mach-at91/Kconfig |   4 -
 arch/arm/mach-at91/at91rm9200.c|   6 +-
 arch/arm/mach-at91/at91sam9260.c   |   6 +-
 arch/arm/mach-at91/at91sam9263.c   |   6 +-
 arch/arm/mach-at91/at91sam9g45.c   |   6 +-
 drivers/clk/at91/clk-main.c|   1 +
 30 files changed, 1458 insertions(+), 11 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/