[RFC 00/50] ARM: at91: move to common clk framework

2013-06-07 Thread Boris BREZILLON
Hello,

This patch series is a proposal to move at91 clock implementation
to common clk framework.

Most of the clock provided by the PMC (Power Management Controller) are
implemented :
- main clock (main oscillator)
- pll clocks
- master clock
- programmable clocks
- utmi clock
- peripheral clocks
- system clocks

This implementation is compatible with device tree: the goal is
to define the whole clock tree in the device tree (all currently
available dt SoCs and boards are patched to support dt clocks).
Please feel free to comment the dt bindinds (I'm not sure about the
name I choose or the position of clock nodes: children of pmc node).

I removed the register_clocks function in SoC supporting dt boards only:
- at91sam9x5 SoCs
- at91sam9n12 SoC
- sama5d3 SoCs

This patch series also update at91 drivers calling clk_enable/disable
instead of the preferred clk_prepare_enable/disable_unprepare functions.


I know there are a lot of cleanup in progress for at91 arch, so please tell
me if you think this transition to common clk framework should wait.

This patch series has been tested on Kizbox (sam9g20 SoC) board using device
tree. It compiles for other SoCs and both with and without dt support, but it
has not been tested.

The clocks rate/parent change has not been tested.

Best Regards,
Boris

Boris BREZILLON (50):
  ARM: at91: move arch/arm/mach-at91/include/mach/at91_pmc.h to
include/linux/clk/at91.h
  ARM: at91: add PMC main clock using common clk framework.
  ARM: at91: add PMC pll clocks support using common clk framework.
  ARM: at91: add PMC master clock support using common clk framework.
  ARM: at91: add PMC system clocks support using common clk framework.
  ARM: at91: add PMC peripheral clocks support using common clk
framework.
  ARM: at91: add PMC programmable clocks support using common clk
framework.
  ARM: at91: add PMC utmi clock support using common clk framework.
  ARM: at91: add PMC usb clock support using common clk framework.
  ARM: at91: add PMC smd clock support using common clk framework.
  ARM: at91: add PMC clk device tree binding doc.
  ARM: at91: move to common clk framework.
  ARM: at91: move at91rm9200 SoC to common clk framework.
  ARM: at91: move at91sam9260 SoC to common clk framework.
  ARM: at91: move at91sam9263 SoC to common clk framework.
  ARM: at91: move at91sam9263 SoC to common clk framework.
  ARM: at91: move at91sam9g45 SoC to common clk framework.
  ARM: at91: move at91sam9n12 SoC to common clk framework.
  ARM: at91: move at91sam9rl SoC to common clk framework.
  ARM: at91: move at91sam9x5 SoCs to common clk framework.
  ARM: at91: move at91sam9 SoCs to common clk framework.
  ARM: at91: move sama5d3 SoCs to common clk framework.
  ARM: at91: move at91rm9200 non dt boards to common clk framework.
  ARM: at91: move at91sam9 non dt boards to common clk framework.
  ARM: at91: move pit timer to common clk framework.
  ARM: at91/tc/clocksource: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  at_hdmac: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  ASoC: atmel-ssc: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  mmc: atmel-mci: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  pwm: atmel-tcb: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  tty: atmel_serial: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  usb: gadget: at91_udc: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  drivers/usb/host/ehci-atmel.c: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  USB: ohci-at91: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  ARM: at91/avr32/atmel_lcdfb: replace clk_enable/disable with
clk_prepare_enable/disable_unprepare.
  ARM: at91/dt: move at91rm9200 SoC to clk framework.
  ARM: at91/dt: move at91sam9260 SoC to common clk framework.
  ARM: at91/dt: move at91sam9263 SoC to common clk framework.
  ARM: at91/dt: move at91sam9g45 SoC to common clk framework.
  ARM: at91/dt: move at91sam9n12 SoC to common clk framework.
  ARM: at91/dt: move at91sam9x5 SoCs to common clk framework.
  ARM: at91/dt: move at91sam9g20 SoC to common clk framework.
  ARM: at91/dt: move sama5d3 SoCs to common clk framework.
  ARM: at91/dt: move at91sam9260/sam9g20 boards to common clk
framework.
  ARM: at91/dt: move at91rm9200 boards to common clk framework.
  ARM: at91/dt: move at91sam9263 boards to common clk framework.
  ARM: at91/dt: move at91sam9g45 boards to common clk framework.
  ARM: at91/dt: move at91sam9n12 boards to common clk framework.
  ARM: at91/dt: move at91sam9x5 boards to common clk framework.
  ARM: at91/dt: move sama5d3 boards to common clk framework.

 .../devicetree/bindings/clock/at91-clock.txt   |  247 +
 arch/arm/boot/dts/animeo_ip.dts|   17 +-
 arch/arm/boot/dts/at91-ariag25.dts

Re: [RFC 00/50] ARM: at91: move to common clk framework

2013-06-07 Thread Nicolas Ferre

On 07/06/2013 10:34, Boris BREZILLON :

Hello,

This patch series is a proposal to move at91 clock implementation
to common clk framework.


Before discussion begins I would like to give my kudos to you Boris! 
This is huge work and I thank you for it: It is so great!


I am sure that Jean-Christophe will have his idea on that because he 
told me that he thought a little bit about that, but I am sure that we 
will come to a quick and seamlessly integration soon.


(Hey, I know it is not technical email, but I am so exited to see this 
happen that the noise worth it! ;-))



Most of the clock provided by the PMC (Power Management Controller) are
implemented :
- main clock (main oscillator)
- pll clocks
- master clock
- programmable clocks
- utmi clock
- peripheral clocks
- system clocks

This implementation is compatible with device tree: the goal is
to define the whole clock tree in the device tree (all currently
available dt SoCs and boards are patched to support dt clocks).
Please feel free to comment the dt bindinds (I'm not sure about the
name I choose or the position of clock nodes: children of pmc node).

I removed the register_clocks function in SoC supporting dt boards only:
- at91sam9x5 SoCs
- at91sam9n12 SoC
- sama5d3 SoCs

This patch series also update at91 drivers calling clk_enable/disable
instead of the preferred clk_prepare_enable/disable_unprepare functions.


I know there are a lot of cleanup in progress for at91 arch, so please tell
me if you think this transition to common clk framework should wait.

This patch series has been tested on Kizbox (sam9g20 SoC) board using device
tree. It compiles for other SoCs and both with and without dt support, but it
has not been tested.

The clocks rate/parent change has not been tested.

Best Regards,
Boris

Boris BREZILLON (50):
   ARM: at91: move arch/arm/mach-at91/include/mach/at91_pmc.h to
 include/linux/clk/at91.h
   ARM: at91: add PMC main clock using common clk framework.
   ARM: at91: add PMC pll clocks support using common clk framework.
   ARM: at91: add PMC master clock support using common clk framework.
   ARM: at91: add PMC system clocks support using common clk framework.
   ARM: at91: add PMC peripheral clocks support using common clk
 framework.
   ARM: at91: add PMC programmable clocks support using common clk
 framework.
   ARM: at91: add PMC utmi clock support using common clk framework.
   ARM: at91: add PMC usb clock support using common clk framework.
   ARM: at91: add PMC smd clock support using common clk framework.
   ARM: at91: add PMC clk device tree binding doc.
   ARM: at91: move to common clk framework.
   ARM: at91: move at91rm9200 SoC to common clk framework.
   ARM: at91: move at91sam9260 SoC to common clk framework.
   ARM: at91: move at91sam9263 SoC to common clk framework.
   ARM: at91: move at91sam9263 SoC to common clk framework.
   ARM: at91: move at91sam9g45 SoC to common clk framework.
   ARM: at91: move at91sam9n12 SoC to common clk framework.
   ARM: at91: move at91sam9rl SoC to common clk framework.
   ARM: at91: move at91sam9x5 SoCs to common clk framework.
   ARM: at91: move at91sam9 SoCs to common clk framework.
   ARM: at91: move sama5d3 SoCs to common clk framework.
   ARM: at91: move at91rm9200 non dt boards to common clk framework.
   ARM: at91: move at91sam9 non dt boards to common clk framework.
   ARM: at91: move pit timer to common clk framework.
   ARM: at91/tc/clocksource: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   at_hdmac: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ASoC: atmel-ssc: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   mmc: atmel-mci: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   pwm: atmel-tcb: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   tty: atmel_serial: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   usb: gadget: at91_udc: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   drivers/usb/host/ehci-atmel.c: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   USB: ohci-at91: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ARM: at91/avr32/atmel_lcdfb: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ARM: at91/dt: move at91rm9200 SoC to clk framework.
   ARM: at91/dt: move at91sam9260 SoC to common clk framework.
   ARM: at91/dt: move at91sam9263 SoC to common clk framework.
   ARM: at91/dt: move at91sam9g45 SoC to common clk framework.
   ARM: at91/dt: move at91sam9n12 SoC to common clk framework.
   ARM: at91/dt: move at91sam9x5 SoCs to common clk framework.
   ARM: at91/dt: move at91sam9g20 SoC to common clk framework.
   ARM: at91/dt: move sama5d3 SoCs to common clk framework.
   ARM: at91/dt: move at91sam9260/sam9g20 boards to common clk
 framework.
   ARM: 

Re: [RFC 00/50] ARM: at91: move to common clk framework

2013-06-07 Thread Gregory CLEMENT
On 06/07/2013 11:32 AM, boris brezillon wrote:
 On 07/06/2013 11:22, Nicolas Ferre wrote:
 On 07/06/2013 10:34, Boris BREZILLON :
 Hello,

 This patch series is a proposal to move at91 clock implementation
 to common clk framework.

 Before discussion begins I would like to give my kudos to you Boris! 
 This is huge work and I thank you for it: It is so great!

 I am sure that Jean-Christophe will have his idea on that because he 
 told me that he thought a little bit about that, but I am sure that we 
 will come to a quick and seamlessly integration soon.

 (Hey, I know it is not technical email, but I am so exited to see this 
 happen that the noise worth it! ;-))
 I received several notifications about filtered mails.
 Could you tell me if you received the whole series ?

I have just received this email. But since few days (or weeks) I have observed
a big latency on the LAKML. Sometime my emails were in the LAKML after 3 or 4
hours.

 And do you know why this could have been filtered ?

There is a filter which prevent to hijack a thread by changing the topic.
of course it is a problem for the patch set sent with git send-email. So for
this there is an exception if you have the word PATCH in your topic. But
it doesn't work with the work RFC. Maybe it is the word you have chosen. If
you are in this case then you can use [PATCH RFC ]

Regards

 
 

 Most of the clock provided by the PMC (Power Management Controller) are
 implemented :
 - main clock (main oscillator)
 - pll clocks
 - master clock
 - programmable clocks
 - utmi clock
 - peripheral clocks
 - system clocks

 This implementation is compatible with device tree: the goal is
 to define the whole clock tree in the device tree (all currently
 available dt SoCs and boards are patched to support dt clocks).
 Please feel free to comment the dt bindinds (I'm not sure about the
 name I choose or the position of clock nodes: children of pmc node).

 I removed the register_clocks function in SoC supporting dt boards only:
 - at91sam9x5 SoCs
 - at91sam9n12 SoC
 - sama5d3 SoCs

 This patch series also update at91 drivers calling clk_enable/disable
 instead of the preferred clk_prepare_enable/disable_unprepare functions.


 I know there are a lot of cleanup in progress for at91 arch, so 
 please tell
 me if you think this transition to common clk framework should wait.

 This patch series has been tested on Kizbox (sam9g20 SoC) board using 
 device
 tree. It compiles for other SoCs and both with and without dt 
 support, but it
 has not been tested.

 The clocks rate/parent change has not been tested.

 Best Regards,
 Boris

 Boris BREZILLON (50):
ARM: at91: move arch/arm/mach-at91/include/mach/at91_pmc.h to
  include/linux/clk/at91.h
ARM: at91: add PMC main clock using common clk framework.
ARM: at91: add PMC pll clocks support using common clk framework.
ARM: at91: add PMC master clock support using common clk framework.
ARM: at91: add PMC system clocks support using common clk framework.
ARM: at91: add PMC peripheral clocks support using common clk
  framework.
ARM: at91: add PMC programmable clocks support using common clk
  framework.
ARM: at91: add PMC utmi clock support using common clk framework.
ARM: at91: add PMC usb clock support using common clk framework.
ARM: at91: add PMC smd clock support using common clk framework.
ARM: at91: add PMC clk device tree binding doc.
ARM: at91: move to common clk framework.
ARM: at91: move at91rm9200 SoC to common clk framework.
ARM: at91: move at91sam9260 SoC to common clk framework.
ARM: at91: move at91sam9263 SoC to common clk framework.
ARM: at91: move at91sam9263 SoC to common clk framework.
ARM: at91: move at91sam9g45 SoC to common clk framework.
ARM: at91: move at91sam9n12 SoC to common clk framework.
ARM: at91: move at91sam9rl SoC to common clk framework.
ARM: at91: move at91sam9x5 SoCs to common clk framework.
ARM: at91: move at91sam9 SoCs to common clk framework.
ARM: at91: move sama5d3 SoCs to common clk framework.
ARM: at91: move at91rm9200 non dt boards to common clk framework.
ARM: at91: move at91sam9 non dt boards to common clk framework.
ARM: at91: move pit timer to common clk framework.
ARM: at91/tc/clocksource: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
at_hdmac: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
ASoC: atmel-ssc: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
mmc: atmel-mci: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
pwm: atmel-tcb: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
tty: atmel_serial: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
usb: gadget: at91_udc: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.

Re: [RFC 00/50] ARM: at91: move to common clk framework

2013-06-07 Thread boris brezillon

On 07/06/2013 11:22, Nicolas Ferre wrote:

On 07/06/2013 10:34, Boris BREZILLON :

Hello,

This patch series is a proposal to move at91 clock implementation
to common clk framework.


Before discussion begins I would like to give my kudos to you Boris! 
This is huge work and I thank you for it: It is so great!


I am sure that Jean-Christophe will have his idea on that because he 
told me that he thought a little bit about that, but I am sure that we 
will come to a quick and seamlessly integration soon.


(Hey, I know it is not technical email, but I am so exited to see this 
happen that the noise worth it! ;-))

I received several notifications about filtered mails.
Could you tell me if you received the whole series ?
And do you know why this could have been filtered ?





Most of the clock provided by the PMC (Power Management Controller) are
implemented :
- main clock (main oscillator)
- pll clocks
- master clock
- programmable clocks
- utmi clock
- peripheral clocks
- system clocks

This implementation is compatible with device tree: the goal is
to define the whole clock tree in the device tree (all currently
available dt SoCs and boards are patched to support dt clocks).
Please feel free to comment the dt bindinds (I'm not sure about the
name I choose or the position of clock nodes: children of pmc node).

I removed the register_clocks function in SoC supporting dt boards only:
- at91sam9x5 SoCs
- at91sam9n12 SoC
- sama5d3 SoCs

This patch series also update at91 drivers calling clk_enable/disable
instead of the preferred clk_prepare_enable/disable_unprepare functions.


I know there are a lot of cleanup in progress for at91 arch, so 
please tell

me if you think this transition to common clk framework should wait.

This patch series has been tested on Kizbox (sam9g20 SoC) board using 
device
tree. It compiles for other SoCs and both with and without dt 
support, but it

has not been tested.

The clocks rate/parent change has not been tested.

Best Regards,
Boris

Boris BREZILLON (50):
   ARM: at91: move arch/arm/mach-at91/include/mach/at91_pmc.h to
 include/linux/clk/at91.h
   ARM: at91: add PMC main clock using common clk framework.
   ARM: at91: add PMC pll clocks support using common clk framework.
   ARM: at91: add PMC master clock support using common clk framework.
   ARM: at91: add PMC system clocks support using common clk framework.
   ARM: at91: add PMC peripheral clocks support using common clk
 framework.
   ARM: at91: add PMC programmable clocks support using common clk
 framework.
   ARM: at91: add PMC utmi clock support using common clk framework.
   ARM: at91: add PMC usb clock support using common clk framework.
   ARM: at91: add PMC smd clock support using common clk framework.
   ARM: at91: add PMC clk device tree binding doc.
   ARM: at91: move to common clk framework.
   ARM: at91: move at91rm9200 SoC to common clk framework.
   ARM: at91: move at91sam9260 SoC to common clk framework.
   ARM: at91: move at91sam9263 SoC to common clk framework.
   ARM: at91: move at91sam9263 SoC to common clk framework.
   ARM: at91: move at91sam9g45 SoC to common clk framework.
   ARM: at91: move at91sam9n12 SoC to common clk framework.
   ARM: at91: move at91sam9rl SoC to common clk framework.
   ARM: at91: move at91sam9x5 SoCs to common clk framework.
   ARM: at91: move at91sam9 SoCs to common clk framework.
   ARM: at91: move sama5d3 SoCs to common clk framework.
   ARM: at91: move at91rm9200 non dt boards to common clk framework.
   ARM: at91: move at91sam9 non dt boards to common clk framework.
   ARM: at91: move pit timer to common clk framework.
   ARM: at91/tc/clocksource: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   at_hdmac: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ASoC: atmel-ssc: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   mmc: atmel-mci: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   pwm: atmel-tcb: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   tty: atmel_serial: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   usb: gadget: at91_udc: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   drivers/usb/host/ehci-atmel.c: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   USB: ohci-at91: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ARM: at91/avr32/atmel_lcdfb: replace clk_enable/disable with
 clk_prepare_enable/disable_unprepare.
   ARM: at91/dt: move at91rm9200 SoC to clk framework.
   ARM: at91/dt: move at91sam9260 SoC to common clk framework.
   ARM: at91/dt: move at91sam9263 SoC to common clk framework.
   ARM: at91/dt: move at91sam9g45 SoC to common clk framework.
   ARM: at91/dt: move at91sam9n12 SoC to common clk framework.
   ARM: at91/dt: move at91sam9x5 SoCs to common clk framework.
  

Re: [RFC 00/50] ARM: at91: move to common clk framework

2013-06-07 Thread boris brezillon

On 07/06/2013 12:14, Gregory CLEMENT wrote:

On 06/07/2013 11:32 AM, boris brezillon wrote:

On 07/06/2013 11:22, Nicolas Ferre wrote:

On 07/06/2013 10:34, Boris BREZILLON :

Hello,

This patch series is a proposal to move at91 clock implementation
to common clk framework.

Before discussion begins I would like to give my kudos to you Boris!
This is huge work and I thank you for it: It is so great!

I am sure that Jean-Christophe will have his idea on that because he
told me that he thought a little bit about that, but I am sure that we
will come to a quick and seamlessly integration soon.

(Hey, I know it is not technical email, but I am so exited to see this
happen that the noise worth it! ;-))

I received several notifications about filtered mails.
Could you tell me if you received the whole series ?

I have just received this email. But since few days (or weeks) I have observed
a big latency on the LAKML. Sometime my emails were in the LAKML after 3 or 4
hours.


And do you know why this could have been filtered ?

There is a filter which prevent to hijack a thread by changing the topic.
of course it is a problem for the patch set sent with git send-email. So for
this there is an exception if you have the word PATCH in your topic. But
it doesn't work with the work RFC. Maybe it is the word you have chosen. If
you are in this case then you can use [PATCH RFC ]

Thanks for the tip. It did the trick.

Best Regards,

Boris

Regards




Most of the clock provided by the PMC (Power Management Controller) are
implemented :
- main clock (main oscillator)
- pll clocks
- master clock
- programmable clocks
- utmi clock
- peripheral clocks
- system clocks

This implementation is compatible with device tree: the goal is
to define the whole clock tree in the device tree (all currently
available dt SoCs and boards are patched to support dt clocks).
Please feel free to comment the dt bindinds (I'm not sure about the
name I choose or the position of clock nodes: children of pmc node).

I removed the register_clocks function in SoC supporting dt boards only:
- at91sam9x5 SoCs
- at91sam9n12 SoC
- sama5d3 SoCs

This patch series also update at91 drivers calling clk_enable/disable
instead of the preferred clk_prepare_enable/disable_unprepare functions.


I know there are a lot of cleanup in progress for at91 arch, so
please tell
me if you think this transition to common clk framework should wait.

This patch series has been tested on Kizbox (sam9g20 SoC) board using
device
tree. It compiles for other SoCs and both with and without dt
support, but it
has not been tested.

The clocks rate/parent change has not been tested.

Best Regards,
Boris

Boris BREZILLON (50):
ARM: at91: move arch/arm/mach-at91/include/mach/at91_pmc.h to
  include/linux/clk/at91.h
ARM: at91: add PMC main clock using common clk framework.
ARM: at91: add PMC pll clocks support using common clk framework.
ARM: at91: add PMC master clock support using common clk framework.
ARM: at91: add PMC system clocks support using common clk framework.
ARM: at91: add PMC peripheral clocks support using common clk
  framework.
ARM: at91: add PMC programmable clocks support using common clk
  framework.
ARM: at91: add PMC utmi clock support using common clk framework.
ARM: at91: add PMC usb clock support using common clk framework.
ARM: at91: add PMC smd clock support using common clk framework.
ARM: at91: add PMC clk device tree binding doc.
ARM: at91: move to common clk framework.
ARM: at91: move at91rm9200 SoC to common clk framework.
ARM: at91: move at91sam9260 SoC to common clk framework.
ARM: at91: move at91sam9263 SoC to common clk framework.
ARM: at91: move at91sam9263 SoC to common clk framework.
ARM: at91: move at91sam9g45 SoC to common clk framework.
ARM: at91: move at91sam9n12 SoC to common clk framework.
ARM: at91: move at91sam9rl SoC to common clk framework.
ARM: at91: move at91sam9x5 SoCs to common clk framework.
ARM: at91: move at91sam9 SoCs to common clk framework.
ARM: at91: move sama5d3 SoCs to common clk framework.
ARM: at91: move at91rm9200 non dt boards to common clk framework.
ARM: at91: move at91sam9 non dt boards to common clk framework.
ARM: at91: move pit timer to common clk framework.
ARM: at91/tc/clocksource: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
at_hdmac: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
ASoC: atmel-ssc: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
mmc: atmel-mci: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
pwm: atmel-tcb: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
tty: atmel_serial: replace clk_enable/disable with
  clk_prepare_enable/disable_unprepare.
usb: gadget: at91_udc: replace clk_enable/disable with