Commit Graph

413069 Commits

Author SHA1 Message Date
Kevin Hilman
8e1c9f5944 Merge branch 'next/cleanup' into next/dt 2013-12-10 09:59:21 -08:00
Kevin Hilman
c69bb7bd60 mvebu DT changes for v3.14 (set #2)
- mvebu
     - Netgear ReadyNAS cleanup
     - add Netgear ReadyNAS 2120
 
  - kirkwood
     - Netgear ReadyNAS cleanup
     - add Netgear ReadyNAS NV+ v2
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJSo7wDAAoJEP45WPkGe8Zne+MP/iJNR0X1HK1FnLfcM5bq/dym
 JT9cfFMiIBLsLHCxayLQAG/8SwYBBbPoNjGlS2TfKNKeORM/sv6sxq08NvybOOJX
 +GGPweC4qXUzOXu4efTRnTHtrjfZe7zXDW8TUhs6TCiWV5IQP/hba3WWzk+kL1Zl
 C697b5HNsbAIo/zgiXafYoDSctyyjHWSn3vAve+RsYLWG8D0vEO8ketM1zyebLiz
 cQS8ZA8jhUK6MG3cyHzDYgCSS/OGyhne0UjAOiIn3dTC1TLr+nFkAiOjaUeCbr2a
 cR0u7iJJvmNG73pNDIDjDOScBd8eq/w7Vwmct0XmYBm9AUpy7buSaNNbS1FZRgRh
 3XJvwULcYscgFKgcB5tE+Rwi1iAYy2HVtIcHinmvk5G2Ff1GnB+ryyZy++JlO+j8
 Ft8BUIthMKPwzY3z3i7JVl+yC/ENzJddmvo5UPKJPR6Fl0wo7tIfsL9EWdZAIM4h
 sO7iZf+hkHnRnOt6iedsv7jr99K73hKMp+jfgssstlfP+44fIXbvj1hWezkJwp9J
 rHoOGnaZ5Xo6sUNsRerkTHj6EuCABeAhypcY+5V/QAqT8gyRwSeo+BiJmogF9DTd
 JX/MMjIiHNiP1ZujimPvZspo579FBxCut9+hh+Osl1ubHDM8aX4f/q+0JLYOLzGg
 cMbJ2qx9jaKFLUW51iiz
 =USMT
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-3.14-2' of git://git.infradead.org/linux-mvebu into next/dt

From Jason Cooper:
mvebu DT changes for v3.14 (set #2)

 - mvebu
    - Netgear ReadyNAS cleanup
    - add Netgear ReadyNAS 2120

 - kirkwood
    - Netgear ReadyNAS cleanup
    - add Netgear ReadyNAS NV+ v2

* tag 'mvebu-dt-3.14-2' of git://git.infradead.org/linux-mvebu:
  ARM: kirkwood: Add support for NETGEAR ReadyNAS NV+ v2
  ARM: mvebu: Add Netgear ReadyNAS 2120 board
  ARM: mvebu: Fix whitespace in NETGEAR ReadyNAS .dts files
  ARM: mvebu: NETGEAR ReadyNAS 104 .dts cleanup
  ARM: mvebu: NETGEAR ReadyNAS 102 .dts cleanup
  ARM: kirkwood: NETGEAR ReadyNAS Duo v2 .dts cleanup

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-12-10 09:21:23 -08:00
Olof Johansson
64bf54f779 Merge tag 'DT-for-v3.14-part-1' of http://git.stlinux.com/devel/kernel/linux-sti into next/dt
From Srinivas Handagatla, DT updates for STi platforms.

* tag 'DT-for-v3.14-part-1' of http://git.stlinux.com/devel/kernel/linux-sti:
  ARM: STi: Add I2C config to B2000 and B2020 boards
  ARM: STi: Supply I2C configuration to STiH415 SoC
  ARM: STi: Supply I2C configuration to STiH416 SoC
  ARM: STi: OF: Fix a typo in pincfg header

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-04 13:55:41 -08:00
Olof Johansson
94c5216ee9 AT91: Move to Common Clock Framework and sama5d3 implementation
This is the first step to move AT91 to the CCF.
 - core CCF and drivers for most of the clocks
 - use of CCF for sama5d3 (100% DT-based)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJSnLhVAAoJEAf03oE53VmQugkH/11ZuSaLsjn31/WvE4WwKdgc
 RCIx7r8BCmPLNwDFOgc7tsheH7Jb6I7BNv4MnX8NIPrcAGy6yCEaD8TqhwKGTs9s
 2YGoKB48fpwm1udDc6Hfq3/yqkPvM7AnzE1ei1rJNmLt2582tlX1FI+klQG5EoUK
 23Pf4yjxtxt31s6xjuvRjEVjEat4PWnuVLs0nZWK6mizApXjA1JPIsKS6NL7q+eG
 aBMWDGw0DW4M8VEHAZygxF16PRXnumuB7NAIxKp8SJW5/acSeQntJTNXisMQBem7
 DxWfvK7WAFEBGUcRN33a9RpKaHg0Gur1If2sw6CkZ83RnRV9CLqURty1mO4WCUo=
 =B+yP
 -----END PGP SIGNATURE-----

Merge tag 'at91-cleanup' of git://github.com/at91linux/linux-at91 into next/cleanup

From Nicolas Ferre:
AT91: Move to Common Clock Framework and sama5d3 implementation
This is the first step to move AT91 to the CCF.
- core CCF and drivers for most of the clocks
- use of CCF for sama5d3 (100% DT-based)

* tag 'at91-cleanup' of git://github.com/at91linux/linux-at91: (22 commits)
  ARM: at91/dt: remove old clk material
  ARM: at91: move sama5d3 SoC to common clk
  ARM: at91/dt: define sama5d3xek's main clk frequency
  ARM: at91/dt: define sama5d3 clocks
  ARM: at91: prepare common clk transition for sama5d3 SoC
  ARM: at91: prepare sama5 dt boards transition to common clk
  ARM: at91: add new compatible strings for pmc driver
  ARM: at91: move pit timer to common clk framework
  dt: binding: add at91 clks dt bindings documentation
  clk: at91: add PMC smd clock
  clk: at91: add PMC usb clock
  clk: at91: add PMC utmi clock
  clk: at91: add PMC programmable clocks
  clk: at91: add PMC peripheral clocks
  clk: at91: add PMC system clocks
  clk: at91: add PMC master clock
  clk: at91: add PMC pll clocks
  clk: at91: add PMC main clock
  clk: at91: add PMC macro file for dt definitions
  clk: at91: add PMC base support
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-04 13:50:33 -08:00
Olof Johansson
330641ceba Merge commit 'fixes' into next/cleanup
Merging in post-rc1 fixes that have gone into rc2/3 to avoid later conflicts.

* commit 'fixes': (39 commits)
  arm: dts: socfpga: Change some clocks of gate-clk type to perip-clk
  arm: socfpga: Enable ARM_TWD for socfpga
  ARM: multi_v7_defconfig: enable SDHCI_BCM_KONA and MMC_BLOCK_MINORS=16
  ARM: sunxi_defconfig: enable NFS, TMPFS, PRINTK_TIME and nfsroot support
  ARM: multi_v7_defconfig: enable network for BeagleBone Black
  ARM: dts: Fix the name of supplies for smsc911x shared by OMAP
  ARM: OMAP2+: Powerdomain: Fix unchecked dereference of arch_pwrdm
  ARM: dts: omap3-beagle: Add omap-twl4030 audio support
  ARM: dts: omap4-sdp: Fix pin muxing for wl12xx
  ARM: dts: omap4-panda-common: Fix pin muxing for wl12xx
  ARM: at91: fixed unresolved symbol "at91_pm_set_standby" when built without CONFIG_PM
  ARM: at91: add usart3 alias to dtsi
  ARM: at91: sama5d3: reduce TWI internal clock frequency
  mmc: omap: Fix I2C dependency and make driver usable with device tree
  mmc: omap: Fix DMA configuration to not rely on device id
  ARM: dts: omap3-beagle: Fix USB host on beagle boards (for 3.13)
  ARM: dts: omap3-igep0020: name twl4030 VPLL2 regulator as vdds_dsi
  ARM: dts: AM33XX IGEP0033: add USB support
  ARM: dts: AM33XX BASE0033: add 32KBit EEPROM support
  ARM: dts: AM33XX BASE0033: add pinmux and user led support
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-04 13:49:22 -08:00
Maxime COQUELIN
c6fddbd47f ARM: STi: Add I2C config to B2000 and B2020 boards
This patch supplies I2C configuration to B2000 and B2020
based on either STiH415 or STiH416 SoCs.

Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
2013-12-04 09:00:31 +00:00
Maxime COQUELIN
5bbb75273f ARM: STi: Supply I2C configuration to STiH415 SoC
This patch supplies I2C configuration to STiH415 SoC.

Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
2013-12-04 09:00:18 +00:00
Maxime COQUELIN
f53e99a9b4 ARM: STi: Supply I2C configuration to STiH416 SoC
This patch supplies I2C configuration to STiH416 SoC.

Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
2013-12-04 08:59:55 +00:00
Srinivas Kandagatla
1bf17b828e ARM: STi: OF: Fix a typo in pincfg header
This patch fixes a typo for OD define in st-pincfg header file.

Reported-by: Maxime Coquelin <maxime.coquelin@st.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
2013-12-04 08:58:39 +00:00
Olof Johansson
25e9cd462b mvebu DT changes for v3.14
- mvebu:
     - remove unneeded OS-specific properties from led nodes
     - add NAND controller to Armada boards
     - add sata leds to readynas 104
     - add gpio-poweroff to readynas duo v2
 
  - kirkwood:
     - comment cleanup in sheevaplug files
     - default pinctrl for sdio
     - sdio in guruplug is non-removable
 
  - orion5x:
     - typo fix
 
  - dove:
     - typo fix
     - add PMU interrupt controller and RTC interrupt via same
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJSm6WGAAoJEP45WPkGe8Znj3AP/1OZ7ukVZYS51ut3biDaEwJz
 yWtzPMLV6PeHXOn+r/IecwoysRez1T7ReUPYOh/GaApPbFxAXKVnN4HbfsEZKXOC
 f45lKgNujF2LOlg+Uzj+7W6wjWPlKWK12vGqP5jeJHff4FYZiK6wKFqvG5ThtICg
 wgn6aSoMEkGZTIRkTP9CC0uYFjqiy7RY+8k7Kxp/y3iQmD2+evPAl9CpwY9PoPb5
 q2cnoXhLi6kmQV7pnoeI2JotuTKbdlqnhVT6GfFBeoGNs9pJvQz6j36MMltP2BFU
 V0JRv4kZWtzqy1SAgHRLk9r+Cl6JYYrBbAdwFDU/64xyKvCFEwWuuGxVl/etc4Gm
 hDXoGKQOxuSj89BEkIP6SYKO508ZU4bnvqi4vvUdbXRzaXx6aJV8I7m9OnWbsu6g
 VDLvVTkDsc0EM7rdFWdgM7hZGaY94dLjd20NhOkS4rYch5w24vhTd1RHV6ZU5D/8
 AZkUgMFY03kmEyXD973OW+SN3aywJCa8UfPqNfeRgUJDD4Q+vL8KfgdZ0N4NI5uo
 SeX8I2UvldPk355He3zVuVbxm4DOIY6LPJcChiuk0BHPRHV6wRRxQ5z+N+aW5l+O
 hLZ/9DAtA9iFuL5EDdwZvzU5zl2KsR5uFnIcU5IUsaq6k0yFRUkzLsKmt0LrgyHK
 EIs/bQXOHTW76Au1GLuR
 =j87K
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-3.14' of git://git.infradead.org/linux-mvebu into next/dt

From Jason Cooper:
mvebu DT changes for v3.14

 - mvebu:
    - remove unneeded OS-specific properties from led nodes
    - add NAND controller to Armada boards
    - add sata leds to readynas 104
    - add gpio-poweroff to readynas duo v2

 - kirkwood:
    - comment cleanup in sheevaplug files
    - default pinctrl for sdio
    - sdio in guruplug is non-removable

 - orion5x:
    - typo fix

 - dove:
    - typo fix
    - add PMU interrupt controller and RTC interrupt via same

* tag 'mvebu-dt-3.14' of git://git.infradead.org/linux-mvebu:
  ARM: Dove: Add RTC interrupt via PMU interrupt controller.
  ARM: Dove: Add DT node for PMU interrupt controller.
  ARM: mvebu: Add DT entry for ReadyNAS Duo v2 to use gpio-poweroff driver
  ARM: mvebu: Add RN104 SATA LEDs driven via NXP PCA9554 I2C to GPIO muxer
  ARM: kirkwood: mark guruplug sdio as non-removable
  ARM: kirkwood: provide pinctrl default to sdio nodes
  ARM: dove: Fix typo in device_type property of phy node
  ARM: orion5x: Fix typo in device_type property of phy node
  ARM: mvebu: Enable NAND controller in Armada 370 Mirabox
  ARM: mvebu: Enable NAND controller in Armada XP GP board
  ARM: mvebu: Add support for NAND controller in Armada 370/XP
  ARM: kirkwood: Cleanup comments in Sheevaplug dts files
  ARM: mvebu: dts: remove unneeded linux,default-state from led nodes

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 17:07:28 -08:00
Olof Johansson
6316756922 mvebu soc changes for v3.14
- orion:
     - remove IRQF_DISABLED
     - directly include some .h files
 
  - mvebu:
     - remove some sparse warnings
 
  - orion5x:
     - include cleanup
     - warning removal for C=1
 
  - kirkwood:
     - remove legacy clock workarounds
     - stop rpinting a TCLK value of 0 for DT boards
 
  - dove:
     - warning removal for C=1
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJSm6KPAAoJEP45WPkGe8Zn7EQP/jrxv9Gjq/LZrUBNxMZyEedZ
 zvc7DgVAwH/TptH4kHyitnpOkcdY7gTTDmaL1r/Ch/MiGCDcb/5Q6AJ1AKJAezH1
 DJLkfBOrvvM8DMogIeBKzLCUMn+0z8vXUbiPBEo2mnbxCwq0leK+iFa1Uo0XzV5w
 i1kb15qYupCXs9u6oDnlJhh6Snx8UQXxJMdBSiG4W/A8h4yu7f1Zg3IrZ5sJfqyF
 wMwSNZ7JRIBXxh3lFVGJiACMx/SI3NEoAumDwHA8wm80uPqM0xjAS0ngRYlRWiqb
 h9RiRvw+ve1cQSUJvsV6dd2hvgoQT5WyK7QJpFljBfYFLttfesOQ0nIqpWMuTknT
 WO9GlmBdCC89fMYAIK0OAM4z0PxgLf+QVT8bEd0TnM7Qkt89QCbhT5DIzLKgZg68
 ShBOG8XXRU/Y4GozZUYglpSvhPhDag8IeM5eScObf1IkULJCeKanUrxqnRRkbDyK
 yXewlvvPzM3po6OOesK9au2zOjakzEcULS/ek0T0kvpICRrLL/LlKANstB+IfhfI
 /ly9WCOrquhyR+Rhl481soN0i4P8RjmkVURJV23UwzbCaMgIfg+GzqYfq/P9DS2t
 H9vwuI92ooVe5xQUvcitQf9XOj21yMP5ngDRZOiBv+8RYvQkCeOwFQjo+8Wrj+Bp
 earewiaYW2kXvkivdp6v
 =ZqNz
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-soc-3.14' of git://git.infradead.org/linux-mvebu into next/cleanup

From Jason Cooper:
mvebu soc changes for v3.14

 - orion:
    - remove IRQF_DISABLED
    - directly include some .h files

 - mvebu:
    - remove some sparse warnings

 - orion5x:
    - include cleanup
    - warning removal for C=1

 - kirkwood:
    - remove legacy clock workarounds
    - stop rpinting a TCLK value of 0 for DT boards

 - dove:
    - warning removal for C=1

* tag 'mvebu-soc-3.14' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: fix some sparse warnings
  ARM: kirkwood: stop printk TCLK value at boot for DT boards
  ARM: orion5x: drop unused include from common.c
  ARM: Dove: Fix compiler warnings with C=1 builds
  ARM: Orion5x: Fix warnings when using C=1.
  ARM: Orion: Add missing includes
  ARM: kirkwood: remove lagacy clk workarounds
  arm: plat-orion: remove deprecated IRQF_DISABLED

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 16:54:28 -08:00
Olof Johansson
6ecf49bc03 Renesas ARM based SoC cleanups for v3.14
* Tidy up clock table order for r7s72100, r8a7779, r8a7779, r8a7790,
   sh7372 and sh73a0 SoCs.
 * Tidy up camera-rcar header for r8a7779 SoC
 * Tidy up registration of VIN on r8a7779 SoC
 * Tidy up PFC registration on r8a7790 SoC
 * Correct typo in clocks for r8a7790 SoC
 * Don't use named resources for IPMMU, I2C and TMU on sh73a0 SoC
 * Don't use named resources for MMCIF and SDHI on ape6evm board
 * Don't use named resources for MMCIF on lager board
 * Tidy up device registration on lager board
 * Tidy up headers for bockw board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSlwO4AAoJENfPZGlqN0++NHwP/04gSfdK7Pwz8euoS0rimysQ
 cs30CQooxSBuuMrasfyNDhjmRdYNqZinGFd3B7Ir7d/EPveGpQZIUKd30rnQKjvP
 OT7RYGY356I0Fgcq3pWYt7E1VJTPsmSIW+7WHAJ6Jc5VwGaWJLE8j43+KV6CZrhz
 MjtuL8aNuxJYLGuIPcFw30x1Pp+6tJUmiaQYIGs8+KoKXceYFvDF26s27zpsk5I2
 EDJWfZRi0lUjlGtN+Uc0UU3SFbMzSyKPakAGQxmUSaBVQiEfbQwMf5TNSZAnaqV0
 HOrMjp2gCO5pM04aTwpKG8me+HDkoSvee828wJShmlnE0x8BEWAB03VNnNciDY6r
 aFZN0HnSR2ARgUKtdYhXiAEGKtJkRJ7nZ4/KSlt4Lv6tQlgc8Oh1ewklvSJ2zHWR
 6njmZP8caHQ43+xeRoamIYOv+5zkIyBOx0sxQQqXZ32fyGbR3Cj8dnR5F30NN0+q
 vwiMVSZ9IrpQK9BUPY4KGvtWNo8fLa2QUPrvrzUUob+FCfO+quBfB4PU3xlV9/B1
 sO0RqDgEswLfr9/HLVEupxusxAkTMS1/4eYq3PGmwg9skHj9ymWvZCaYTI1iVW/D
 uSl6ZisFtBJD8//J7qK8u4fhcWYzDVymOPzT2/hh2kg93h/AMwUenAKJgsmnLvm4
 kiiiELRMlU9gOzjsCfug
 =v12l
 -----END PGP SIGNATURE-----

Merge tag 'renesas-cleanup-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/cleanup

From Simon Horman:

Renesas ARM based SoC cleanups for v3.14

* Tidy up clock table order for r7s72100, r8a7779, r8a7779, r8a7790,
  sh7372 and sh73a0 SoCs.
* Tidy up camera-rcar header for r8a7779 SoC
* Tidy up registration of VIN on r8a7779 SoC
* Tidy up PFC registration on r8a7790 SoC
* Correct typo in clocks for r8a7790 SoC
* Don't use named resources for IPMMU, I2C and TMU on sh73a0 SoC
* Don't use named resources for MMCIF and SDHI on ape6evm board
* Don't use named resources for MMCIF on lager board
* Tidy up device registration on lager board
* Tidy up headers for bockw board

* tag 'renesas-cleanup-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: sh7372: tidyup clock table order
  ARM: shmobile: r7s72100: tidyup clock table order
  ARM: shmobile: sh73a0: tidyup clock table order
  ARM: shmobile: r8a7779: cleanup registration of sh_eth
  ARM: shmobile: r8a7790: Correct typo in clocks
  ARM: shmobile: r8a7779: camera-rcar header cleanup
  ARM: shmobile: Add r8a7790_register_pfc() function
  ARM: shmobile: Cosmetic update of Lager DT Reference
  ARM: shmobile: r8a7779: cleanup registration of VIN
  ARM: shmobile: bockw: header cleanup
  ARM: shmobile: sh73a0: don't use named resource for IPMMU
  ARM: shmobile: sh73a0: don't use named resource for I2C
  ARM: shmobile: sh73a0: don't use named resource for TMU
  ARM: shmobile: lager: don't use named resource for MMCIF
  ARM: shmobile: ape6evm: don't use named resource for SDHI
  ARM: shmobile: ape6evm: don't use named resource for MMCIF

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 16:50:52 -08:00
Olof Johansson
dab719392a Ux500 device tree patches for v3.14, take one:
- Fix up tc3589x bindings so this chip works again.
 
 - Remove SSP platform devices, as we now boot from device tree
   exclusively.
 
 - Delete surplus AB8500/DB8500 platform data, not obtained from
   the device tree.
 
 - Add DMA config for the MSP devices.
 
 - A series of 21 patches moving pin control config for the
   on-chip Nomadik pin controller from the board file
   to the device tree, step by step.
 
 - Two patches to the STE DMA40 driver regarding the high-prio
   DMA channel so this can be moved to the device tree. Both have
   Vinod's ACK.
 
 - Decommission of the non-device tree boot path for the timer
   initialization code.
 
 - Deletion of the non-devicetree probe path from the MTU timer
   driver, as all platforms using it are now using device tree.
   This has Daniel Lezcano's ACK.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSlQIFAAoJEEEQszewGV1zaaoP/iUClda7fps7dhBZMHOaDr48
 DAe9yBaUoGBgyjOd0QUUP4/P5PxsXQVCM13gdaITt+R4eg8XYxG3jLNxopMfGKYV
 bifbXqEd4wf0t8yUYCzhdfAeWchzSph3W2C7I2hW09b9nhJ+RWgXdzcO061E9Tbj
 BbZ4aS7IR3HfXzQ/zdMBtlbNXkWtn++HXCjC5Z0t0FKqSL7X8LKZrr3GEHZ6vfnB
 sI5/bTK3AfXt7h2wsu4z/IZK89Ttt9AATNhxajW2Pptkuggc+/KfRRDyYeZFBT70
 9KIRsF3NXSsOhOYcRNbWjNU2S8OtC7UyKMB5+y07cYU53ehaiEH8tUMait1cphlc
 kFJAqKXY87I85E6WTEgv1s4Q8H3rQzVc/IjT3LODFbuM3MeTrsrnbKDeFCOqqpJC
 4Ggq6VBXhn7G2srcM5KBYZcZhmq86qhmo0/vUOqaYcdmgdD7KJyewLNafYf5W+DX
 JxVlnzpdWsAhihUV3oBeJybM0YGvE1wa855ZqbsAZ8nrLTBoTD+zi30mIhXrQwQp
 v54ywGa0JtjpTLY6EZG2Rptq4qOUVUbkuNSv+3BYgVTqxCcCqXOu+tuzGk2O1jTh
 8/2biKCCrdbSWCmbMZDi7jlkO5ywqcn2Brav5KyZ+bCwITRybfoxeOv6f8DCT741
 bwx00XNaYVO/H+Vptd+h
 =w9pg
 -----END PGP SIGNATURE-----

Merge tag 'ux500-devicetree-v3.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt

From Linus Walleij:

Ux500 device tree patches for v3.14, take one:

- Fix up tc3589x bindings so this chip works again.

- Remove SSP platform devices, as we now boot from device tree
  exclusively.

- Delete surplus AB8500/DB8500 platform data, not obtained from
  the device tree.

- Add DMA config for the MSP devices.

- A series of 21 patches moving pin control config for the
  on-chip Nomadik pin controller from the board file
  to the device tree, step by step.

- Two patches to the STE DMA40 driver regarding the high-prio
  DMA channel so this can be moved to the device tree. Both have
  Vinod's ACK.

- Decommission of the non-device tree boot path for the timer
  initialization code.

- Deletion of the non-devicetree probe path from the MTU timer
  driver, as all platforms using it are now using device tree.
  This has Daniel Lezcano's ACK.

* tag 'ux500-devicetree-v3.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: (39 commits)
  ARM: ux500: decomission custom SMP TWD timer init
  clksrc: delete nomadik MTU non-DT boot path
  ARM: ux500: decomission the non-DT MTU init sequence
  dma: ste_dma40: Parse flags property for new 'high priority channel' request
  dma: ste_dma40: Expand DT binding to accept 'high-priority channel' flag
  ARM: ux500: Remove checking for DT during timer init
  ARM: ux500: Clean-up legacy extern prototype
  ARM: ux500: Remove unused call to register AMBA devices
  ARM: ux500: Clean-up non-DT IRQ initialisation
  pinctrl: nomadik: decomission non-DT boot path
  pinctrl: nomadik: move platform data handling into driver
  ARM: ux500: get rid of unused header
  ARM: ux500: delete Nomadik pinctrl AUXDATA
  ARM: ux500: delete remnant pin config macros
  ARM: ux500: move snowball pin configs to device tree
  ARM: ux500: move snowball LED pin control to device tree
  ARM: ux500: convert Snowball SPI pin reference
  ARM: ux500: move snowball ethernet config to device tree
  ARM: ux500: move HREFv60plus pin configs to device tree
  ARM: ux500: move final HREFv60 LCD pins to device tree
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 16:45:24 -08:00
Dinh Nguyen
a5c6e87a7b arm: dts: socfpga: Change some clocks of gate-clk type to perip-clk
Some of the clocks that were designated gate-clk do not have a gate, so
change those clocks to be of periph-clk type.

Signed-off-by: Dinh Nguyen <dinguyen@altera.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 14:19:53 -08:00
Dinh Nguyen
725dd7eb17 arm: socfpga: Enable ARM_TWD for socfpga
Update Kconfig to enable TWD.

Signed-off-by: Dinh Nguyen <dinguyen@altera.com>
Reviewed-by: Pavel Machek <pavel@denx.de>
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 14:19:48 -08:00
Olof Johansson
f39918eec7 ARM: multi_v7_defconfig: enable SDHCI_BCM_KONA and MMC_BLOCK_MINORS=16
Enable MMC/SD on the Broadcom mobile platforms, and increase the block
minors from the default 8 to 16 (since the Broadcom board by default
has root on the 8th partition).

Signed-off-by: Olof Johansson <olof@lixom.net>
Cc: stable@vger.kernel.org # v3.12
2013-12-03 12:39:14 -08:00
Olof Johansson
610ffd58db ARM: sunxi_defconfig: enable NFS, TMPFS, PRINTK_TIME and nfsroot support
This enables a few more options on the sunxi defconfigs such that I can
use nfsroot to boot them (there is no local storage support yet). It
also enables PRINTK_TIME and tmpfs since it's a common distro requirement.

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 12:39:13 -08:00
Olof Johansson
82cca5dace Merge tag 'omap-for-v3.13/more-dt-regressions' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
From Tony Lindgren:

Few more legacy booting vs device tree booting fixes that people
have noticed while booting things with device tree for things like
omap4 WLAN, smsc911x, and beagle audio. Hopefully this will be it
for the legacy booting vs device tree fixes for this -rc cycle.

* tag 'omap-for-v3.13/more-dt-regressions' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: Fix the name of supplies for smsc911x shared by OMAP
  ARM: OMAP2+: Powerdomain: Fix unchecked dereference of arch_pwrdm
  ARM: dts: omap3-beagle: Add omap-twl4030 audio support
  ARM: dts: omap4-sdp: Fix pin muxing for wl12xx
  ARM: dts: omap4-panda-common: Fix pin muxing for wl12xx
2013-12-03 12:39:12 -08:00
Olof Johansson
0dfee674b3 ARM: multi_v7_defconfig: enable network for BeagleBone Black
BeagleBone Black uses the TI CPSW ethernet controller, enable it in the
multi_v7_defconfig for testing coverage purposes.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: stable@vger.kernel.org # v3.12
2013-12-03 12:39:11 -08:00
Olof Johansson
3060817fe8 Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into fixes
From Nicolas Ferre:
AT91: second round of fixes for 3.13
- reduce IP frequency for I2C on sama5d3
- missing aliases directive for USART3 on 9x5 family
- a PM symbol is missing if !CONFIG_PM

* tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
  ARM: at91: fixed unresolved symbol "at91_pm_set_standby" when built without CONFIG_PM
  ARM: at91: add usart3 alias to dtsi
  ARM: at91: sama5d3: reduce TWI internal clock frequency
2013-12-03 12:39:10 -08:00
Olof Johansson
c0c3350c3c Merge tag 'mvebu-dt-fixes-3.13' of git://git.infradead.org/linux-mvebu into fixes
From Jason Cooper, mvebu DT fixes for v3.13:
 - mvebu
    - PCIe fixes now that we have test devices with more ports.
    - fix access to coherency registers

* tag 'mvebu-dt-fixes-3.13' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: re-enable PCIe on Armada 370 DB
  ARM: mvebu: use the virtual CPU registers to access coherency registers
  ARM: mvebu: fix second and third PCIe unit of Armada XP mv78260
  ARM: mvebu: second PCIe unit of Armada XP mv78230 is only x1 capable
2013-12-03 12:39:09 -08:00
Olof Johansson
b8be3a2279 Merge tag 'omap-for-v3.13/fixes-against-rc1-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
From Tony Lindgren:

Some omap related fixes that have come up with people moving to device
tree only based booting for omap2+.

The series contains a handful of fixes for the igep boards as they were
one of the first omap3 boards to jump over completely to device tree
based booting. So these can be considered regressions compared to
booting igep in legacy mode with board files in v3.12.

Also included are few other device tree vs legacy booting regressions:

- yet more missing omap3 .dtsi entries that have showed up booting
  various boards with device tree only

- n900 eMMC device tree fix

- fixes for beagle USB EHCI

- two fixes to make omap2420 MMC work

As we're moving omap2+ to be device tree only for v3.14, I'd like to
have v3.13 work equally well for legacy based booting and device tree
based booting. So there will be likely few more device tree related
booting patches trickling in.

This series also includes a regression fix for the omap timer posted
mode that may wrongly stay on from the bootloader for some SoCs.

* tag 'omap-for-v3.13/fixes-against-rc1-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  mmc: omap: Fix I2C dependency and make driver usable with device tree
  mmc: omap: Fix DMA configuration to not rely on device id
  ARM: dts: omap3-beagle: Fix USB host on beagle boards (for 3.13)
  ARM: dts: omap3-igep0020: name twl4030 VPLL2 regulator as vdds_dsi
  ARM: dts: AM33XX IGEP0033: add USB support
  ARM: dts: AM33XX BASE0033: add 32KBit EEPROM support
  ARM: dts: AM33XX BASE0033: add pinmux and user led support
  ARM: dts: AM33XX BASE0033: add pinmux and hdmi node to enable display
  ARM: dts: omap3-igep0020: Add pinmuxing for DVI output
  ARM: dts: omap3-igep0020: Add pinmux setup for i2c devices
  ARM: dts: omap3-igep: Update to use the TI AM/DM37x processor
  ARM: dts: omap3-igep: Add support for LBEE1USJYC WiFi connected to SDIO
  ARM: dts: omap3-igep: Fix bus-width for mmc1
  ARM: OMAP2+: dss-common: change IGEP's DVI DDC i2c bus
  ARM: OMAP2+: Disable POSTED mode for errata i103 and i767
  ARM: OMAP2+: Fix eMMC on n900 with device tree
  ARM: OMAP2+: Add fixed regulator to omap2plus_defconfig
  ARM: OMAP2+: Fix more missing data for omap3.dtsi file

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-03 12:39:08 -08:00
Florian Vaussard
ac46bf3933 ARM: dts: Fix the name of supplies for smsc911x shared by OMAP
drivers/net/ethernet/smsc/smsc911x.c is expecting supplies named
"vdd33a" and "vddvario". Currently the shared DTS file provides
"vmmc" and "vmmc_aux", and the supply lookup will fail:

smsc911x 2c000000.ethernet: Looking up vdd33a-supply from device tree
smsc911x 2c000000.ethernet: Looking up vdd33a-supply property in node /ocp/gpmc@6e000000/ethernet@gpmc failed
smsc911x 2c000000.ethernet: Looking up vddvario-supply from device tree
smsc911x 2c000000.ethernet: Looking up vddvario-supply property in node /ocp/gpmc@6e000000/ethernet@gpmc failed

Fix it!

Looks like commmit 6b2978ac40 (ARM: dts: Shared file for omap GPMC
connected smsc911x) made the problem more visible by moving the smc911x
configuration from the omap3-igep0020.dts file to the generic file.
But it seems we've had this problem since commit d72b441501
(ARM: dts: omap3-igep0020: Add SMSC911x LAN chip support).

Tested on OMAP3 Overo platform.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
[tony@atomide.com: updated comments for the commits causing the problem]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-12-02 11:38:15 -08:00
Rajendra Nayak
1cfc4bdd51 ARM: OMAP2+: Powerdomain: Fix unchecked dereference of arch_pwrdm
Commit 'cd8abed' "ARM: OMAP2+: Powerdomain: Remove the need to
always have a voltdm associated to a pwrdm" leads to the following
Smatch complaint:

arch/arm/mach-omap2/powerdomain.c:131 _pwrdm_register()
	 error: we previously assumed 'arch_pwrdm' could be null (see line 105)

So, fix the unchecked dereference of arch_pwrdm.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-12-02 11:38:14 -08:00
Jarkko Nikula
33e9c392ad ARM: dts: omap3-beagle: Add omap-twl4030 audio support
This adds typical McBSP2-TWL4030 audio description to the legacy
Beagle Board.

Signed-off-by: Jarkko Nikula <jarkko.nikula@bitmer.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-12-02 11:38:14 -08:00
Balaji T K
2562f52813 ARM: dts: omap4-sdp: Fix pin muxing for wl12xx
Mux mode for wlan/sdmmc5 should be MODE0 in pinmux_wl12xx_pins and
Enable Pull up on sdmmc5_clk to detect SDIO card.

This fixes WLAN on omap4-sdp that got broken in v3.10 when we
moved omap4 to boot using device tree only as I did not have
the WL12XX card in my omap4 SDP to test with. The commit that
attempted to make WL12XX working on omap4 SDP was 775d2418f3
(ARM: dts: Fix muxing and regulator for wl12xx on the SDIO
bus for blaze).

Signed-off-by: Balaji T K <balajitk@ti.com>
[tony@atomide.com: updated comments for the regression]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-12-02 11:38:14 -08:00
Balaji T K
2ba2866f78 ARM: dts: omap4-panda-common: Fix pin muxing for wl12xx
pin mux wl12xx_gpio and wl12xx_pins should be part of omap4_pmx_core
and not omap4_pmx_wkup. So, move wl12xx_* to omap4_pmx_core.

Fix the following error message:
pinctrl-single 4a31e040.pinmux: mux offset out of range: 0x38 (0x38)
pinctrl-single 4a31e040.pinmux: could not add functions for pinmux_wl12xx_pins 56x

SDIO card is not detected after moving pin mux to omap4_pmx_core since
sdmmc5_clk pull is disabled. Enable Pull up on sdmmc5_clk to detect SDIO card.

This fixes a regression where WLAN did not work after a warm reset
or after one up/down cycle that happened when we move omap4 to boot
using device tree only. For reference, the kernel bug is described at:

https://bugzilla.kernel.org/show_bug.cgi?id=63821

Cc: stable@vger.kernel.org # v3.10+
Signed-off-by: Balaji T K <balajitk@ti.com>
[tony@atomide.com: update comments to describe the regression]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-12-02 11:38:13 -08:00
Boris BREZILLON
b46e837d8e ARM: at91/dt: remove old clk material
This patch removes the old main clk node which is now useless as sama5d3
SoCs and boards are no longer compatible with the old at91 clk
implementations.

It also remove old clock definitions (clock definitions using at91 old clk
framework).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:29 +01:00
Boris BREZILLON
8ab033112a ARM: at91: move sama5d3 SoC to common clk
This patch removes the selection of AT91_USE_OLD_CLK when selecting sama5d3
SoC support. This will enable automatically enable COMMON_CLK_AT91 option
and add support for at91 common clk implementation.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:29 +01:00
Boris BREZILLON
72163e5ab5 ARM: at91/dt: define sama5d3xek's main clk frequency
Define the main clock frequency for the new main clock node
in sama5d3xcm.dtsi.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:29 +01:00
Boris BREZILLON
d2e8190b79 ARM: at91/dt: define sama5d3 clocks
Define sama5d3 clocks in sama5d3 device tree.
Add references to the appropriate clocks in each peripheral.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:28 +01:00
Boris BREZILLON
d1ff230022 ARM: at91: prepare common clk transition for sama5d3 SoC
This patch encloses sama5d3 old clk registration in
"#if defined(CONFIG_OLD_CLK_AT91) #endif" sections.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:28 +01:00
Boris BREZILLON
d4d24c1b4f ARM: at91: prepare sama5 dt boards transition to common clk
This patch prepare the transition to common clk for sama5 dt boards by
replacing the timer init callback.

Clocks registration cannot be done in early init callback (as formerly done
by the old clk implementation) because it requires dynamic allocation
which is not ready yet during early init.

In the other hand, at91 clocks must be registered before
at91sam926x_pit_init is called because PIT (Periodic Interval Timer) driver
request the master clk (mck).

A new function (at91sama5_dt_timer_init) is created to fullfil these needs.
This function registers all at91 clks using the dt definition before
calling the PIT init function.
The device tree clock registration is enabled only if common clk is
selected. Else the old clk registration is been done during
at91_dt_initialize call.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:27 +01:00
Boris BREZILLON
c59b631517 ARM: at91: add new compatible strings for pmc driver
This patch adds new compatible string for PMC node to prepare the
transition to common clk.

These compatible string come from pmc driver in clk subsystem and are
needed to provide new device tree compatibility with old at91 clks
(device tree using common clks will use the new compatible strings).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:27 +01:00
Boris BREZILLON
7034be876e ARM: at91: move pit timer to common clk framework
Use device tree to get the source clock of the PIT (Periodic Interval Timer).
If the clock is not found in device tree (or dt is not enabled) we'll try to
get it using clk_lookup definitions.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:26 +01:00
Boris BREZILLON
32f955c6da dt: binding: add at91 clks dt bindings documentation
This patch adds new at91 clks dt bindings documentation.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:26 +01:00
Boris BREZILLON
a9c0688fde clk: at91: add PMC smd clock
This patch adds at91 smd (Soft Modem) clock implementation using common clk
framework.

Not used by any driver right now.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:25 +01:00
Boris BREZILLON
c84a61d872 clk: at91: add PMC usb clock
This patch adds new at91 usb clock implementation using common clk framework.
This clock is used to clock usb ports (ohci, ehci and udc).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:25 +01:00
Boris BREZILLON
f090fb37de clk: at91: add PMC utmi clock
This adds new at91 utmi clock implementation using common clk framework.

This clock is a pll with a fixed factor (x40).
It is used as a source for usb clock.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:25 +01:00
Boris BREZILLON
1f22f8bb64 clk: at91: add PMC programmable clocks
This patch adds new at91 programmable clocks implementation using common clk
framework.
A programmable clock is a clock which can be exported on a given pin to clock
external devices.
Each programmable clock is given an id (from 0 to 8).
The number of available programmable clocks depends on the SoC you're using.
Programmable clock driver only implements the clock setting (clock rate and
parent setting). It must be chained to a system clock in order to
enable/disable the generated clock.
The PCKX pins used to output the clock signals must be assigned to the
appropriate peripheral (see atmel's datasheets).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:24 +01:00
Boris BREZILLON
6114067e43 clk: at91: add PMC peripheral clocks
This patch adds new at91 peripheral clock implementation using common clk
framework.

Almost all peripherals provided by at91 SoCs need a clock to work properly.
This clock is enabled/disabled using PCER/PCDR resgisters.

Each peripheral is given an id (see atmel's datasheets) which is used to
define and reference peripheral clocks.

Some new SoCs (at91sam9x5 and sama5d3) provide a new register (PCR) where you
can configure the peripheral clock as a division of the master clock.
This will help reducing the peripherals power comsumption.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:24 +01:00
Boris BREZILLON
5fba62ea26 clk: at91: add PMC system clocks
This patch adds new at91 system clock implementation using common clk
framework.

Some peripherals need to enable a "system" clock in order to work properly.
Each system clock is given an id based on the bit position in SCER/SCDR
registers.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:23 +01:00
Boris BREZILLON
e442d23440 clk: at91: add PMC master clock
This patch adds new at91 master clock implementation using common clk
framework.

The master clock layout describe the MCKR register layout.
There are 2 master clock layouts:
- at91rm9200
- at91sam9x5

Master clocks are given characteristics:
- min/max clock output rate

These characteristics are checked during rate change to avoid
over/underclocking.

These characteristics are described in atmel's SoC datasheet in
"Electrical Characteristics" paragraph.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:23 +01:00
Boris BREZILLON
1a748d2bc5 clk: at91: add PMC pll clocks
This patch adds new at91 pll clock implementation using common clk framework.

The pll clock layout describe the PLLX register layout.
There are four pll clock layouts:
- at91rm9200
- at91sam9g20
- at91sam9g45
- sama5d3

PLL clocks are given characteristics:
- min/max clock source rate
- ranges of valid clock output rates
- values to set in out and icpll fields for each supported output range

These characteristics are checked during rate change to avoid
over/underclocking.

These characteristics are described in atmel's SoC datasheet in
"Electrical Characteristics" paragraph.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:22 +01:00
Boris BREZILLON
38d34c3120 clk: at91: add PMC main clock
This patch adds new at91 main oscillator clock implementation using common
clk framework.

If rate is not provided during clock registration it is calculated using
the slow clock (main clk parent in this case) rate and MCFR register.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:22 +01:00
Boris BREZILLON
7e682b4437 clk: at91: add PMC macro file for dt definitions
This patch adds a new macro file for PMC macros.

This macro file includes the definitions of SR (status register) bit
offsets and will be use to reference PMC irqs.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:21 +01:00
Boris BREZILLON
0ad6125b15 clk: at91: add PMC base support
This patch adds at91 PMC (Power Management Controller) base support.

All at91 clocks managed by the PMC unit will use this framework.

This framework provides the following fonctionalities:
- define a new struct at91_pmc to hide PMC internals (lock, PMC memory
  mapping, irq domain, ...)
- read/write helper functions (pmc_read/write) to access PMC registers
- lock/unlock helper functions (pmc_lock/unlock) to lock/unlock access to
  pmc registers
- a new irq domain and its associated irq chip to request PMC specific
  interrupts (useful for clk prepare callbacks)

The PMC unit is declared as a dt clk provider (CLK_OF_DECLARE), and every
clk using this framework will declare a table of of_at91_clk_init_cb_t
and add it to the pmc_clk_ids table.

When the pmc dt clock setup function is called (by of_clk_init function),
it triggers the registration of every supported child clk (those matching
the definitions in pmc_clk_ids).

This patch copies at91_pmc_base (memory mapping) and at91sam9_idle
(function) from arch/arm/mach-at91/clock.c (which is not compiled if
COMMON_CLK_AT91 is enabled).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:31:13 +01:00
Boris BREZILLON
c8a8c63008 ARM: at91: add Kconfig options for common clk support
This patch adds the following Kconfig options to prepare the transition to
common clk framework:

- AT91_USE_OLD_CLK: this option is selected by every SoC which does not
  support new at91 clks based on common clk framework (SoC which does not
  define the clock tree in its device tree).
  This options is also selected when the user choose non dt boards support
  (new at91 clks can only be registered from a device tree definition).

- COMMON_CLK_AT91: this option cannot be selected directly. Instead it is
  enabled if these 3 conditions are met:
   * at least one of the selected SoCs have a PMC (Power Management
     Controller) Unit
   * device tree support is enabled
   * the old at91 clk implementation is disabled (every selected SoC define
     its clks in its device tree and non dt boards support is disabled)

- OLD_CLK_AT91: this option cannot be selected directly. Instead it is
  enabled if these 2 conditions are met:
   * at least one of the selected SoCs have a PMC (Power Management
     Controller) Unit
   * at least one of the selected SoCs does not define its clks in its
     device tree or non dt-boards support is enabled

This patch selects AT91_USE_OLD_CLK in all currently supported SoCs. These
selects will be removed after clk definitions are properly added in each
soc's device tree.
It also selects AT91_USE_OLD_CLK in all non-dt boards support.

AT91_PMC_UNIT references are replaced by OLD_CLK_AT91, because PMC Unit is
enabled for both old and common clk implementations, and old clk
implementation should not be compiled if COMMON_CLK is enabled.

To avoid future link errors, a new stub is created for at91_dt_clock_init
function if OLD_CLK_AT91 is disabled.

A new check is added in dt init functions (setup.c) to prepare for SoCs
supporting new clk implementation. These SoCs won't setup the
register_clocks callback (clk registration is done using of_clk_init).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:22:52 +01:00
Boris BREZILLON
2edb90ae42 ARM: at91: move at91_pmc.h to include/linux/clk/at91_pmc.h
This patch moves at91_pmc.h header from machine specific directory
(arch/arm/mach-at91/include/mach/at91_pmc.h) to clk include directory
(include/linux/clk/at91_pmc.h).
We need this to avoid reference to machine specific headers in clk
drivers.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 15:22:15 +01:00
Brent Taylor
7093bf2b71 ARM: at91: fixed unresolved symbol "at91_pm_set_standby" when built without CONFIG_PM
If CONFIG_PM is not defined, then arch/arm/mach-at91/pm.c is not
compiled in.  This patch creates an inline function that does nothing
if CONFIG_PM is not defined.

Signed-off-by: Brent Taylor <motobud@gmail.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-02 14:24:40 +01:00