Commit Graph

35875 Commits

Author SHA1 Message Date
Konstantin Khlebnikov
811a2407a3 ARM: 8115/1: LPAE: reduce damage caused by idmap to virtual memory layout
On LPAE, each level 1 (pgd) page table entry maps 1GiB, and the level 2
(pmd) entries map 2MiB.

When the identity mapping is created on LPAE, the pgd pointers are copied
from the swapper_pg_dir.  If we find that we need to modify the contents
of a pmd, we allocate a new empty pmd table and insert it into the
appropriate 1GB slot, before then filling it with the identity mapping.

However, if the 1GB slot covers the kernel lowmem mappings, we obliterate
those mappings.

When replacing a PMD, first copy the old PMD contents to the new PMD, so
that we preserve the existing mappings, particularly the mappings of the
kernel itself.

[rewrote commit message and added code comment -- rmk]

Fixes: ae2de10173 ("ARM: LPAE: Add identity mapping support for the 3-level page table format")
Signed-off-by: Konstantin Khlebnikov <k.khlebnikov@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-29 13:00:04 +01:00
Arnd Bergmann
a1ae5b1283 Minimal regression fix for n900 display that got broken with
enabling of twl4030 PM features. Turns out more work is needed
 before we can enable twl4030 PM on n900.
 
 I did not notice this earlier as I have my n900 in a rack
 and the display did not get enabled for device tree based booting
 until for v3.16.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT11p5AAoJEBvUPslcq6VzbEgQALyzdS0E48KFwfZZP2cafcRi
 AtcOAenJiHLyPEt2ja4rx6op0lglxmMgniqVJCTujt7aNLxv6QoYLAgTIXvz3ZRp
 3PyG7trH8aZ6DJXlVA9oxuyQ2n+WKWWo1A10V33IDC14VZVPwdtNr/cBO9VVy6n/
 MvWEdZU9rUKgAkVgCCV1YfaodHY9jW6Nxdpbb8vvEWJWaLg4UB7GcRRkZhH0ZVDJ
 dzv9kBNJKN9lV8Nb2QFQD8dL/PmUvdjw7Uj3XLTsXPLbiMcBGvd842zgu0RsGJMj
 ns6VET8nZNdsOf0ap14lcYyMxjf0xD8cv851fK2ug3x7H4/WC2tDdHJNj26jk0cS
 k9iyp+gO47hiSXBdmvHUO77fUoNCqn7qMM9L8i0F+3gKjZWFfUMOBnajDJ7rfsTM
 pEVD1SAHmFnYJhjHqNF8sETNfhGxTU2A5VrUBXC62Wchu9bLIQHZnDDv1l7EoOAB
 STewWGzltoLVoP+DDJPaTMW/atA7lEGmsOT8Abn27X2dOYns8/wwVmcq1RE87zwj
 mT1efgy4iMYvZRUD2rsTG6xTFH/E0IOpu7uKbhIzXlPtzCXZx9tzLMIF998ePipC
 ESNMoZth5qx0Rd6zwvYgKLE0N31HM91s/zII13s79BywkjY05W78rExBk1upkniD
 zro4uxaG9tofeYULdYpM
 =5XAH
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.16/n900-regression' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

Merge "omap n900 regression fix for v3.16 rc series" from Tony Lindgren:

Minimal regression fix for n900 display that got broken with
enabling of twl4030 PM features. Turns out more work is needed
before we can enable twl4030 PM on n900.

I did not notice this earlier as I have my n900 in a rack
and the display did not get enabled for device tree based booting
until for v3.16.

* tag 'omap-for-v3.16/n900-regression' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: Revert enabling of twl configuration for n900

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-29 13:04:27 +02:00
Tony Lindgren
d40dbcd57b Modify OMAP PLL rate rounding function to round to the exact rate requested
or the next one below it.  This is intended to resolve some DSS problems.
 
 Basic build, boot, and PM test results are available here:
 
 http://www.pwsan.com/omap/testlogs/clock-b-v3.17/20140725061121/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT0lK2AAoJEMePsQ0LvSpLUkEQAKpqkh9UYUixXBaeIQnoFcwH
 uW7/cjYPfTY1ogFgMaFJN14cTmat+Xm97Es8hgEIZYyY5OmRNYqcdBXmfQ5Mls8b
 mtxZu9FAPRfFZkfNst7Y1i969GoyTnOyOG3Ea7PlAzQacnjq7HVACLMKIDEOmGhG
 rzDSj1eFaJWTUdY0yGFQAkwd5LvuNIfuXIwQ9DlHm84/tpKEpi32tmRJBPzLaKz1
 Cu88ZiW1pfMR8BRw247wlJ9v2DJmhnrluhKhM6UFGJR6X31kw/s7wqbTi3+yNXqL
 BToTQs1xVwMnnOAntM7sc39UFg3pgZBqWFemQCHtshGqhgo1MJ8nznIvxyPXAcAp
 cLHMxMdBbs4Ds9vbJKTNVzntoam8PGO8mff0wMePqAPAuE/m/JMxBTPc5vZijI7f
 SmjirUEhK47BEtUBRQNTVX/B1ABvmodaU93ous8gbKagjH358DkrIlCwP2rerJWc
 eg9UxYNNRvK0iUsjl19vfr/qfT7vXnkp3YGfkJlR22KBJOQd1+M3X/NIBrU0fV2e
 00H9O2YdScBGzFMLvbnT0LkH4/VgilR3667Kx6LkK/r62LrG1z296kTpnfwLtivH
 1jfmhMyt1MfgOylPx/5Dh39xKqUqKeUVoBCFUr/45y3nFbEFZkILiNEuPzRNFUPK
 AgSz5lyNGFfd4mb144hM
 =fXvM
 -----END PGP SIGNATURE-----

Merge tag 'for-v3.17/omap-clock-b' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.17/soc

Modify OMAP PLL rate rounding function to round to the exact rate requested
or the next one below it.  This is intended to resolve some DSS problems.

Basic build, boot, and PM test results are available here:

http://www.pwsan.com/omap/testlogs/clock-b-v3.17/20140725061121/
2014-07-29 04:03:30 -07:00
Russell King
823a19cd3b ARM: fix alignment of keystone page table fixup
If init_mm.brk is not section aligned, the LPAE fixup code will miss
updating the final PMD.  Fix this by aligning map_end.

Fixes: a77e0c7b27 ("ARM: mm: Recreate kernel mappings in early_paging_init()")
Cc: <stable@vger.kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-29 11:41:54 +01:00
Laurent Pinchart
4aa5dd7e56 ARM: omap: Don't set iommu pdata da_start and da_end fields
The fields are not used by the driver and will be removed from platform
data. Don't set them.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
2014-07-29 12:39:23 +02:00
Suman Anna
79859094e5 mailbox/omap: remove OMAP1 mailbox driver
There are no existing users for OMAP1 mailbox driver
in kernel. Commit ab6f775 "Removing dead OMAP_DSP"
has cleaned up all the dead code related to the only
possible user, including the creation of the mailbox
platform device.

Remove this stale driver so that the OMAP mailbox
driver can be simplified and streamlined better for
converting to mailbox framework.

Signed-off-by: Suman Anna <s-anna@ti.com>
Acked-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2014-07-29 01:55:09 -07:00
Tony Lindgren
d937678ab6 ARM: dts: Revert enabling of twl configuration for n900
Commit 9188883fd6 (ARM: dts: Enable twl4030 off-idle configuration
for selected omaps) allowed n900 to cut off core voltages during
off-idle. This however caused a regression where twl regulator
vaux1 was not getting enabled for the LCD panel as we are not
requesting it for the panel.

Turns out quite a few devices on n900 are using vaux1, and we need
to either stop idling it, or add proper regulator_get calls for all
users. But until we have a proper solution implemented and tested,
let's just disable the twl off-idle configuration for now for n900.

Reported-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Fixes: 9188883fd6 (ARM: dts: Enable twl4030 off-idle configuration for selected omaps)
Signed-off-by: Tony Lindgren <tony@atomide.com>
2014-07-29 00:16:25 -07:00
Soren Brinkmann
d1a28b6860 ARM: zynq: DT: Remove DMA from board DTs
The DMA engine is enabled for all DTs that derive from zynq-7000.dtsi.
There is no need to override the 'status' property in board DTs.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-29 07:33:02 +02:00
Michal Simek
fdf2618378 ARM: zynq: DT: Add CAN node
Add node describing Zynq's CAN controller.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
2014-07-29 07:31:40 +02:00
Vikas Sajjan
22ead0d702 ARM: EXYNOS: Add exynos5260 PMU compatible string to DT match table
Exynos initialisation code now relies on obtaining the PMU address via
DT, so add the exynos5260 PMU compatible string to DT match table.

Signed-off-by: Vikas Sajjan <vikas.sajjan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-29 06:17:39 +09:00
Vikas Sajjan
fbe4e9f55b ARM: dts: Add PMU DT node for exynos5260 SoC
Adds PMU DT node for exynos5260 SoC.

Signed-off-by: Vikas Sajjan <vikas.sajjan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-29 06:17:39 +09:00
Andreas Faerber
98504def7c ARM: EXYNOS: Add support for Exynos5410 PMU
Exynos initialization code now relies on obtaining the PMU address,
so add the new 5410 value to the list of compatible string matches.
This unbreaks booting on 5410 based boards.

Fixes: fce9e5bb25 ("ARM: EXYNOS: Add support for mapping PMU base
address via DT")

Signed-off-by: Andreas Faerber <afaerber@suse.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-29 06:12:11 +09:00
Andreas Faerber
0a8f594117 ARM: dts: Add PMU to exynos5410
Exynos initialization code now relies on obtaining the PMU address,
so prepare a PMU node for Exynos5410.

Fixes: fce9e5bb25 ("ARM: EXYNOS: Add support for mapping PMU base
address via DT")

Signed-off-by: Andreas Faerber <afaerber@suse.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-29 06:12:04 +09:00
Kukjin Kim
6da287ad02 Merge branch 'v3.17-next/power-exynos' into v3.17-next/dt-samsung-2 2014-07-29 06:09:42 +09:00
Linus Torvalds
31dab719fa Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull ARM AES crypto fixes from Herbert Xu:
 "This push fixes a regression on ARM where odd-sized blocks supplied to
  AES may cause crashes"

* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
  crypto: arm-aes - fix encryption of unaligned data
  crypto: arm64-aes - fix encryption of unaligned data
2014-07-28 11:35:30 -07:00
Roger Quadros
f048615efc ARM: dts: am437x-gp-evm: Update binding for touchscreen size
Update the bindings for touchscreen size.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2014-07-28 10:26:19 -07:00
Roger Quadros
342666ceb2 ARM: dts: am43x-epos-evm: Update binding for touchscreen size
Update the bindings for touchscreen size.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2014-07-28 10:26:19 -07:00
Arnd Bergmann
21b9554e7b ARM: mach-bcm: soc updates for 3.17
- BCM Mobile SMP support
 - BRCM STB platform support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT1mChAAoJEOfTILNwq7R4DDYQAJudlSqjwerAjQZwcdoe/xmP
 74LjnWeCU3l1PhvtTynjPz3YWp+6VsHPDiHwJ00/ZTotCaa3Nl+zs5EbKs4aDeIb
 R6YvvIJ4bmAaStmiWV32gM9UzC+4VGV8RsI8zbsbLFLhh6ChMYs47xTyLFeXd9Ks
 999CW2T+TIQmvJHhD9hmpVFf6s+TWeDpS1VKagPeZAz1tTB7XTqKItQNalrobi+b
 j4ak0Qsg/cYKjjG48320I2LuuXvUBZuW1nGLJ6sR90MKj1fWvUnwlJGv0Fyze1eF
 B1mTBD5OznZyCOJqOUA8zXxesDFoCcPSjq4rrBgCBYu8KLTCeC7ZXUPiuYLihs1B
 I64y7JzQThTqJghORgOb9oRq+DRHmO2hN6Ssfh41uJIJk9T6tssG3/qcwW6sdJPR
 r64VknaQR3yyWTOWsCpWQwjY0VgTUvtH5WjVAnnx/MZzp/P8JDDYftYh4TPXnIu+
 fhHPl6P1NoFm4hV6cYUNd1dT+tDACJDVOBytxRqgJ6BpcCOyPbe8aODDHES1ZOT7
 XVTO0NSrO2ywbDb7JA/OteEHy1Ql7BL85Dx0+AK3WCsgOrZ7YjoODo2/5qr+I8p0
 0hyYP+NZNljCrnXy0j4F1DNjJq1saVp1LS03ye9RqclsAdjqsrze9cmupZLNAj5o
 qzDzm8AMGqRYBrM2gVfJ
 =lUq9
 -----END PGP SIGNATURE-----

Merge tag 'for-3.17/bcm-soc' of git://github.com/broadcom/mach-bcm into next/soc

Merge "ARM: mach-bcm: soc updates for 3.17" from Matt Porter:

- BCM Mobile SMP support
- BRCM STB platform support

* tag 'for-3.17/bcm-soc' of git://github.com/broadcom/mach-bcm:
  MAINTAINERS: add entry for Broadcom ARM STB architecture
  ARM: brcmstb: select GISB arbiter and interrupt drivers
  ARM: brcmstb: add infrastructure for ARM-based Broadcom STB SoCs
  ARM: configs: enable SMP in bcm_defconfig
  ARM: add SMP support for Broadcom mobile SoCs

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 17:25:43 +02:00
Arnd Bergmann
8cfb4e3d30 ARM: mach-bcm: dt updatees for 3.17
- BCM Mobile SMP support
 - BRCM STB platform support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT1mIQAAoJEOfTILNwq7R4E9EQALNeAA80eWRF+xtGp7heShrt
 lxm1gT8JUyCIG6GvCiYy5QvNpSaxaLqWpsSHdmxETfUHzexvICUJUECNmxUR49RX
 9TScOu3P0lfQrd6+ZoAZdqTeiOv4nbQjdTrioIPvnjNKP/pk3FJy43ExkPaElDqG
 792hrsPcKJ2Qet2Eu73Xx2LtEgarWoR9MDV/Yr1eI1CoKDiVobOCTeQlv+AtwEnW
 Mj+DBRdMKykLvB5aS1fN1lRP+AOEibgn6mWyQExT1+8uVrqX5zjiuqtrxLqwgMep
 9UFk1gUu4u/ao9CELi/thwBHm0BYt43y4h/mA9KspgOxE+eOoBXEruyxEb1s/hVU
 nqF59FNfIJNVKA1dgOrYmph3xMTEMeenkf/EHBoXEsLOQRW84PIpHUYbsrj7akr2
 aUte0nL7dWYXgcT+V6pn2IADWXGkp4AzAr1i8nAApHifDJmQ65a+ph7Y/J1s6eag
 SWLdHLWQLcSS/YPHHyXWKSCwf3vHEx3GNfeoXqqpYgSLlfWifSXQpJc+Pi0hQrvv
 12qmQkWmEc/wEDuJeOFmUedG1ZDW2ID03cCh10G2alkUCvn9i2STtfjV7Z7MkDtz
 DbJCGoLfsQA92Zc0U5zHnuG7jDs+eCtODeKCpsrSuOoqOKUIze6gOStAfclC17sk
 yigSWSFaOFhb6udn8dP5
 =ZOoN
 -----END PGP SIGNATURE-----

Merge tag 'for-3.17/bcm-dt' of git://github.com/broadcom/mach-bcm into next/dt

Merge "ARM: mach-bcm: dt updatees for 3.17" from Matt Porter:

- BCM Mobile SMP support
- BRCM STB platform support

* tag 'for-3.17/bcm-dt' of git://github.com/broadcom/mach-bcm:
  ARM: brcmstb: dts: add a reference DTS for Broadcom 7445
  ARM: brcmstb: gic: add compatible string for Broadcom Brahma15
  ARM: brcmstb: add misc. DT bindings for brcmstb
  ARM: brcmstb: add CPU binding for Broadcom Brahma15
  ARM: dts: enable SMP support for bcm21664
  ARM: dts: enable SMP support for bcm28155
  devicetree: bindings: document Broadcom CPU enable method

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 17:05:59 +02:00
Arnd Bergmann
565f46dc4d Linux 3.16-rc6
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJTzJFGAAoJEHm+PkMAQRiGNzQH/087gQch5K+A2HKvPzjUXq57
 G82DJHLONMMq8+NY3Vqhp8g2V8zRbXGJEvMJMsyuscO37Vo7ADcrYo8lqY9w5bIl
 h+Zarhkqz0rqRs2SfMMIVzdd2W7MzL+lqj3GplGPxHztw0+qk7PRKILx6eRppGaH
 JaD4NfkD5+1vfve/2d1ze9D5pCiw6PFNzjesKZxScQhNhIyLdRamfSTY4r9XeURo
 CxpwjphEYfvAcgc39mwzEHPHyKSqULu0By6R8FXQpJ9QjVtzcGEiF+cPqGncpZOR
 5ZSyU5e1CpBl9w8o6Lm9ewXmaCSnBU/VFrOwWvZrXfokZedXBOz7KdShU93XFjU=
 =0VJM
 -----END PGP SIGNATURE-----

Merge tag 'v3.16-rc6' into next/dt

Update to Linux 3.16-rc6 as a dependency for the broadcom changes.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 17:04:15 +02:00
Arnd Bergmann
4fd1f229c2 mvebu DT changes for v3.17 (round 4)
- Armada XP
     - New board, Lenovo ix4-300d NAS
     - Add Lenovo to vendor-prefixes
 
  - Dove
     - Add LCD controllers
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJT1l8ZAAoJEP45WPkGe8ZnoEAP/1tuwu6stZaEQSEEtI6TB5QP
 RIjW19sMHcxNsH2s5uCXnG/Zrijkv+iPVizzx7uHs8upjvyo0Q4kPX3NYq4hQFMT
 AriVnTHTVZ0ostX2IjflWWdikPwUi+a6yYmlZs2pUvUO/mrvuoMCDKNm4ry2zPZs
 T4bXaKvHy+Y7LtqIQLTarr3oqkVi5N0zu+lVz7YMOj6plFrt+Q2ek0XiqJIjcR/+
 59TozGocVQzS3p8zj2CJdHyqAdsId+mLQHsuLyMSHwQMADZsFtlmk71gFTlSrjdh
 IL5IJbGaWXLVVelNo66T77a3bg3zpKetcA+4qwzIZjYQaZv9Et+old/dBUiAoumn
 Vbo+QvqjumJRmFCY8ja3UNxKAjtPzdStZiomf2lCkJwEnxiFFwV2PCIxf9HkKGqC
 tKU0vKG3fhmw1oOqkxRHNlNNtH8w+yfcAp1BDH6dnEUr3Og+vfZJeth+a6zDScaI
 EBtTcBxHyfz9TmHw2SrUc8gjhEM0UkpE9UThukjy/futXxqlBn9BbgON9+s2IpqH
 65s4I3ddtHcvO/ZamGC2IhHBmoorhdZ1HTYC2bkiq5IMrvkWEHWQpCZJlkEXfeLa
 JxzFqU4i+W5824krYcYd2E46APE5CUT8d/tcuPog+LPy8B+T4Br2vhEzZ4bE9nTz
 4VkOqw8kkJpAB3cIzXDy
 =Ixkt
 -----END PGP SIGNATURE-----

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

Merge "mvebu DT changes for v3.17 (round 4)" from Jason Cooper"

 - Armada XP
    - New board, Lenovo ix4-300d NAS
    - Add Lenovo to vendor-prefixes

 - Dove
    - Add LCD controllers

* tag 'mvebu-dt-3.17-4' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Add dts definition for Lenovo Iomega ix4-300d NAS
  of: Add Lenovo Group Ltd. to the vendor-prefixes list.
  ARM: dts: dove: add DT LCD controllers

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 16:51:02 +02:00
Marc Carino
79187a8e24 ARM: brcmstb: dts: add a reference DTS for Broadcom 7445
Add a sample DTS which will allow bootup of a board populated
with the BCM7445 chip.

Signed-off-by: Marc Carino <marc.ceeeee@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Cc: Matt Porter <mporter@linaro.org>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 10:01:46 -04:00
Mikulas Patocka
f3c400ef47 crypto: arm-aes - fix encryption of unaligned data
Fix the same alignment bug as in arm64 - we need to pass residue
unprocessed bytes as the last argument to blkcipher_walk_done.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: stable@vger.kernel.org	# 3.13+
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2014-07-28 22:01:03 +08:00
Brian Norris
305787f901 ARM: brcmstb: select GISB arbiter and interrupt drivers
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:59:51 -04:00
Benoit Masson
40c2da4536 ARM: mvebu: Add dts definition for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0,
powered by a Marvell Armada XP MV78230 dual core CPU.

http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/

Signed-off-by: Benoit Masson <yahoo@perenite.com>
Link: https://lkml.kernel.org/r/1406503839-4662-1-git-send-email-yahoo@perenite.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-28 13:59:41 +00:00
Marc Carino
4fbe66d990 ARM: brcmstb: add infrastructure for ARM-based Broadcom STB SoCs
The BCM7xxx series of Broadcom SoCs are used primarily in set-top boxes.

This patch adds machine support for the ARM-based Broadcom SoCs.

Signed-off-by: Marc Carino <marc.ceeeee@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:58:52 -04:00
Alex Elder
67115239ca ARM: configs: enable SMP in bcm_defconfig
Also explicitly set CONFIG_NR_CPUS to 2, limiting it to the most we
currently need.

Signed-off-by: Ray Jui <rjui@broadcom.com>
Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:42:36 -04:00
Alex Elder
9a5a110eb9 ARM: add SMP support for Broadcom mobile SoCs
This patch adds SMP support for BCM281XX and BCM21664 family SoCs.

This feature is controlled with a distinct config option such that
an SMP-enabled multi-v7 binary can be configured to run these SoCs
in uniprocessor mode.  Since this SMP functionality is used for
multiple Broadcom mobile chip families the config option is called
ARCH_BCM_MOBILE_SMP (for lack of a better name).

On SoCs of this type, the secondary core is not held in reset on
power-on.  Instead it loops in a ROM-based holding pen.  To release
it, one must write into a special register a jump address whose
low-order bits have been replaced with a secondary core's id, then
trigger an event with SEV.  On receipt of an event, the ROM code
will examine the register's contents, and if the low-order bits
match its cpu id, it will clear them and write the value back to the
register just prior to jumping to the address specified.

The location of the special register is defined in the device tree
using a "secondary-boot-reg" property in a node whose "enable-method"
matches.

Derived from code originally provided by Ray Jui <rjui@broadcom.com>

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:42:24 -04:00
Alex Elder
1d3138b75e ARM: dts: enable SMP support for bcm21664
Define nodes representing the two Cortex A9 CPUs in a bcm21644 SoC.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:41:54 -04:00
Alex Elder
a62451c3f9 ARM: dts: enable SMP support for bcm28155
Define nodes representing the two Cortex A9 CPUs in a bcm28155 SoC.

Signed-off-by: Ray Jui <rjui@broadcom.com>
Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Matt Porter <mporter@linaro.org>
2014-07-28 09:41:44 -04:00
Alexander Graf
784aa3d7fb KVM: Rename and add argument to check_extension
In preparation to make the check_extension function available to VM scope
we add a struct kvm * argument to the function header and rename the function
accordingly. It will still be called from the /dev/kvm fd, but with a NULL
argument for struct kvm *.

Signed-off-by: Alexander Graf <agraf@suse.de>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
2014-07-28 15:23:17 +02:00
Arnd Bergmann
1c607f0af0 Collected changes for existing Rockchip boards
- convert to new clock driver
 - bring structure in line with recent rk3288 comments
   (no soc-nodes, using phandles when adding changes, sorted by address)
 - i2c, board-pmic and pwm nodes nodes
 - sd card slot and ir receiver on radxa rock
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJT1jA+AAoJEPOmecmc0R2BjLUH/0tqosFsfksVGJY+MX7+foRh
 KClPetsBuktT+XbOxg9LkLE8MbBvEMbtMzQDoeUk4sRyBdbX5Je+EYkF4V97KkDv
 zSAAfHCXOoPPVJpuxHoVQO/sCRG38oKUhtngTPzY70Lw3Gax8R0bAPRcG8c3R++C
 Tep4q8TBkRenSnHBf94rk6kiyfs0ktUAroW4oWVWICPAGpKGpQU9kUpw91QmONe1
 RdqUCW3g1yKHXj3n0DYjZmouIwrc/5fybMFH0tgy/PXeGFv02kZz+3ZkBTrWr/uz
 yy9hhrIKrBvRbpz0WP5b6Ij5INQBDUSx3/rU2zGnWl2DRZl7YTPAMwXAUJCPLKs=
 =wLux
 -----END PGP SIGNATURE-----

Merge tag 'v3.17-rockchip-rk3xxx-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Merge "ARM: dts: changes for existing rockchip boards" from Heiko Stuebner:

Collected changes for existing Rockchip boards
- convert to new clock driver
- bring structure in line with recent rk3288 comments
  (no soc-nodes, using phandles when adding changes, sorted by address)
- i2c, board-pmic and pwm nodes nodes
- sd card slot and ir receiver on radxa rock

* tag 'v3.17-rockchip-rk3xxx-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rk3188-radxarock: add GPIO IR receiver node
  ARM: dts: rockchip: add pwm nodes
  ARM: dts: rockchip: add both clocks to uart nodes
  ARM: dts: rk3188-radxarock: enable sd-card slot
  ARM: dts: add i2c and regulator nodes to rk3188-radxarock
  ARM: dts: rockchip: add tps65910 regulator for bqcurie2
  ARM: dts: add rk3066 and rk3188 i2c device nodes and pinctrl settings
  ARM: dts: rockchip: oder nodes by register address
  ARM: dts: rockchip: remove address from pinctrl nodes
  ARM: dts: uses handles to reference nodes for changes
  ARM: dts: rockchip: add handles for shared nodes that don't have one yet
  ARM: dts: rockchip: remove soc subnodes
  arm: dts: rockchip: remove obsolete clock gate definitions
  ARM: dts: rockchip: move oscillator input clock into main dtsi
  ARM: dts: rockchip: add cru nodes and update device clocks to use it

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 14:16:24 +02:00
Arnd Bergmann
b99cfa66e1 Initial support for Rockchip RK3288 SoCs.
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJT05voAAoJEPOmecmc0R2BI9cH/0IscqtOhxZ0vAnIxp2lf7C5
 r3SHUM65T+qz3/r0fYmwSL98l64CWc75JaQoPK7LuZTou+BhR0WlsHbNJRQxWbXf
 u9McbRXEnvK8rmMl7KbeWrK/FhOpqiO6f1pmui9neA1WFKB4/BQgpNZNBjpn6OHO
 XH0JhD7k0gITVlaN9C0Ijz9zrMfZplD6hp8hX5X0a6XNzmur55IbLRkXTI8MEFUu
 aA5m1R49xnuUT0d8R8rScxO9a1pTafvFgawQulxTvcmEttiqKvSbxQE4/JZfOEiH
 sOAzeKoPt8C7wtkeO9j6hbw/z9VDOKqYN/ytMNNGpDU9b5jr+TwUqkwYvHbRkrg=
 =bKG6
 -----END PGP SIGNATURE-----

Merge tag 'v3.17-rockchip-rk3288' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Merge "Initial support for Rockchip RK3288 SoCs" from Heiko Stuebner:

* tag 'v3.17-rockchip-rk3288' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: Build dtbs for Rockchip boards
  ARM: dts: add rk3288 evaluation board
  ARM: dts: rockchip: add core rk3288 dtsi
  ARM: rockchip: enable support for RK3288 SoCs
  ARM: Kconfig: set default gpio number for rockchip SoCs
  ARM: rockchip: add debug uart used by rk3288
  ARM: rockchip: clarify usability of DEBUG_RK3X_UART debug_ll options
  dt-bindings: arm: add cortex-a12 and cortex-a17 cpu compatible properties

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 14:15:34 +02:00
Arnd Bergmann
3fdef7e3bc Merge branch 'clk-rockchip' of git://git.linaro.org/people/mike.turquette/linux into next/soc
This is a dependency for the rk3288 DT updates, the branch should
first get merged through Mike's clk git.

* 'clk-rockchip' of git://git.linaro.org/people/mike.turquette/linux:
  ARM: rockchip: Select ARCH_HAS_RESET_CONTROLLER
  clk: rockchip: add clock controller for rk3288
  dt-bindings: add documentation for rk3288 cru
  clk: rockchip: add clock driver for rk3188 and rk3066 clocks
  dt-bindings: add documentation for rk3188 clock and reset unit
  clk: rockchip: add reset controller
  clk: rockchip: add clock type for pll clocks and pll used on rk3066
  clk: rockchip: add basic infrastructure for clock branches
  clk: composite: improve rate_hw sanity check logic
  clk: composite: allow read-only clocks
  clk: composite: support determine_rate using rate_ops->round_rate + mux_ops->set_parent

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 14:15:25 +02:00
Arnd Bergmann
5be42f334b Merge branch 'clk-rockchip' of git://git.linaro.org/people/mike.turquette/linux into next/soc
This is a dependency for the rk3288 DT updates, the branch should
first get merged through Mike's clk git.

* 'clk-rockchip' of git://git.linaro.org/people/mike.turquette/linux:
  ARM: rockchip: Select ARCH_HAS_RESET_CONTROLLER
  clk: rockchip: add clock controller for rk3288
  dt-bindings: add documentation for rk3288 cru
  clk: rockchip: add clock driver for rk3188 and rk3066 clocks
  dt-bindings: add documentation for rk3188 clock and reset unit
  clk: rockchip: add reset controller
  clk: rockchip: add clock type for pll clocks and pll used on rk3066
  clk: rockchip: add basic infrastructure for clock branches
  clk: composite: improve rate_hw sanity check logic
  clk: composite: allow read-only clocks
  clk: composite: support determine_rate using rate_ops->round_rate + mux_ops->set_parent

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-28 14:02:13 +02:00
Peter Ujfalusi
eb3fe7def6 ARM: edma: Add edma_assign_channel_eventq() to move channel to a give queue
In some cases it is desired to move a channel to a specific event queue.
Such a use case is audio, where it is preferred that it is served with
highest priority compared to other DMA clients.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2014-07-28 17:03:13 +05:30
Peter Ujfalusi
85a70762b7 ARM: edma: Set default queue to lowest priority
Use the lowest priority queue as default for clients.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2014-07-28 17:03:09 +05:30
Linus Walleij
0a6d315827 gpio: split gpiod board registration into machine header
As per example from the regulator subsystem: put all defines and
functions related to registering board info for GPIO descriptors
into a separate <linux/gpio/machine.h> header.

Cc: Andrew Victor <linux@maxim.org.za>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Alexandre Courbot <gnurou@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2014-07-28 12:23:35 +02:00
Chen-Yu Tsai
495bccf391 ARM: dt: sun6i: Add #address-cells and #size-cells to i2c controller nodes
dtc was giving warnings for missing #address-cells and #size-cells for
the new sun6i-a31-hummingbird.dts, which has a i2c-based rtc device.

This patch adds the properties for all i2c controller nodes for sun6i.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2014-07-28 11:34:39 +02:00
Andreas Färber
f07ab7a0f3 ARM: dts: zynq: Add SPI
Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-28 11:09:23 +02:00
Beniamino Galvani
08567053f5 ARM: dts: rk3188-radxarock: add GPIO IR receiver node
This adds a device tree node for the infrared receiver connected to a
GPIO pin on the Radxa Rock.

Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-27 00:25:59 +02:00
Beniamino Galvani
550c7f4e63 ARM: dts: rockchip: add pwm nodes
This adds the necessary nodex and pinctrl settings for the Rockchip PWM-driver.

Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>

Modified to use the new clock defines and added rk3066 pins.
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-27 00:24:16 +02:00
Heiko Stuebner
69667ca2c4 ARM: dts: rockchip: add both clocks to uart nodes
Use the newly ammended dw_8250 clock binding to define both the baudclk as
well as the pclk supplying the ip.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:44:15 +02:00
Heiko Stuebner
b09e35a388 ARM: dts: rk3188-radxarock: enable sd-card slot
The Radxa Rock contains one sd-card slot. Add the supplying regulator
and enable its dw_mmc node.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:43:59 +02:00
Beniamino Galvani
fe2c89afa7 ARM: dts: add i2c and regulator nodes to rk3188-radxarock
This enables the 2nd i2c bus and adds the act8846 pmic as device.

Signed-off-by: Beniamino Galvani <b.galvani@gmail.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:40:46 +02:00
Heiko Stuebner
a953a6c77d ARM: dts: rockchip: add tps65910 regulator for bqcurie2
The Curie2 uses a tps659102 as its main pmic, so add the i2c1 and tps65910
node as well as define the used voltages and regulator-names according to
the schematics.

Also fix the supply of the sd0 regulator, as it is supplied by the vio reg.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:39:13 +02:00
Heiko Stuebner
9cdffd8cb9 ARM: dts: add rk3066 and rk3188 i2c device nodes and pinctrl settings
The core controller settings themself are identical, only the compatible and
pinctrl settings differ.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:35:29 +02:00
Heiko Stuebner
ff84b90ecd ARM: dts: rockchip: oder nodes by register address
To create some sort of ordering of nodes, they are suggested to be ordered by
their register address.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:28:03 +02:00
Heiko Stuebner
6e4b3b4b66 ARM: dts: rockchip: remove address from pinctrl nodes
The pincontroller uses the GRF and PMU syscons nowadays, so should not
contain an address in its device node.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:22:43 +02:00
Heiko Stuebner
fcbbf96525 ARM: dts: uses handles to reference nodes for changes
Use the handles for subsequent changes to nodes, similar to like the rk3288
submission does it.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:19:56 +02:00
Heiko Stuebner
e40b43d6ea ARM: dts: rockchip: add handles for shared nodes that don't have one yet
Some nodes that are changed in the dtsi hierarchy do not have handles yet.
As it was suggested in the rk3288 submission to do subsequent nodes changes
through such handle-references, add the missing ones.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:19:50 +02:00
Heiko Stuebner
c3030d30d9 ARM: dts: rockchip: remove soc subnodes
Comments received from the rk3288 submission indicated that a generic subnode
to group soc components should not be used.

So to keep all rockchip devicetree files similar, remove it from rk3066 and rk3188.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-26 23:19:06 +02:00
Heiko Stuebner
d356d96f85 arm: dts: rockchip: remove obsolete clock gate definitions
The clock and reset unit is now provided by the rk3188-cru clock driver and thus
the old style definitions of the gate clocks can go away.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-By: Max Schwarz <max.schwarz@online.de>
Tested-By: Max Schwarz <max.schwarz@online.de>
2014-07-26 23:15:33 +02:00
Heiko Stuebner
560106c1ca ARM: dts: rockchip: move oscillator input clock into main dtsi
The clock definitions get a lot shorter due to the soc clocks being handled by
rk3188-cru and only the input clock remains. These can now simply live
in the main rk3xxx.dtsi without affecting readability.

At the same time, rename the node to oscillator, adding a clock-output-names
property to match how the rk3288 handles this.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-By: Max Schwarz <max.schwarz@online.de>
Tested-By: Max Schwarz <max.schwarz@online.de>
2014-07-26 23:15:31 +02:00
Heiko Stuebner
b13d2a7b43 ARM: dts: rockchip: add cru nodes and update device clocks to use it
This adds a node for the clock and reset unit on rk3188 and rk3066 SoCs and
also updates the device nodes retrieve their clocks from there, instead of
the previous gate clock nodes.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-By: Max Schwarz <max.schwarz@online.de>
Tested-By: Max Schwarz <max.schwarz@online.de>
2014-07-26 23:15:22 +02:00
Arnd Bergmann
39fbf98408 mvebu SoC changes for v3.17 (round 4)
- Armada XP
     - Fix return value check in pmsu code
     - Document URLs for new public datasheets (Thanks, Marvell & free-electrons!)
 
  - Armada 370/38x
     - Add cpuidle support
 
  - mvebu
     - Fix build when no platforms are selected
     - Update EBU SoC status in docs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJT0kjkAAoJEP45WPkGe8ZnqpsQALFvbZKqBmvm+dj4G/dB9YYg
 ihJM1FasU5yrHWhQlUSJw3Lntf/WwK2Qbrq3NmeCNo9qxx5r3IOv8inLah+XsXWv
 C4RyiqmbnbiUg24QwHHGHLnRZuKCZdciiCyVmDO5DxRiT7Ov7EffOiiEws1WIUU1
 6os30LEp82UpfcUkevJi12AkQvgTcX8tQXN2Kc7TgbxzJcyOt9M03BUej9gDdqD3
 XfeBZv/WTapZllifRF04zsVJUtPKx48BmR0KdInYlsRfjg7knbYb1qkC7iysPJvv
 G2XPWYOTVC7bbY+ZRfDcreowcTbBxXNiVbtPMM0+5kfli76/thPFutlA9/hi5plR
 WeGa6V+M61RMdOexg9C/lVIpdqXLpI1xINlRv4vyjalm28JgvzAoucaaFnY6Rdxt
 ApDIbhHzYCWyHwMn9DXi5s2nhMFL7i7JXCL/iDySzZB+ZNSKd+ULn1AhTOnOjFSL
 jU7S9htD8tNZ7MuTX1Jg6gsuGxH1yr8x6kUX99DymUiYlKT7XbrXPa3Xf9vS8dx+
 j0y7J6aJET7dlReH3tScehKOjnt44Djwgb9HiEilMNNYCWUQkKwxZCxnDQ6xNFCV
 COXfu+nx87yVbBhSlJH+m0hQbf3jBmx/vuKnjYLRrZ/ATeWv/uWd78G2tZV7ercU
 AiXn0eiPzFWML9isjqzd
 =y40Y
 -----END PGP SIGNATURE-----

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

Merge "mvebu SoC changes for v3.17 (round 4)" from Jason Cooper:

 - Armada XP
    - Fix return value check in pmsu code
    - Document URLs for new public datasheets (Thanks, Marvell & free-electrons!)

 - Armada 370/38x
    - Add cpuidle support

 - mvebu
    - Fix build when no platforms are selected
    - Update EBU SoC status in docs

* tag 'mvebu-soc-3.17-4' of git://git.infradead.org/linux-mvebu: (21 commits)
  Documentation: arm: misc updates to Marvell EBU SoC status
  Documentation: arm: add URLs to public datasheets for the Marvell Armada XP SoC
  ARM: mvebu: fix build without platforms selected
  ARM: mvebu: add cpuidle support for Armada 38x
  ARM: mvebu: add cpuidle support for Armada 370
  cpuidle: mvebu: add Armada 38x support
  cpuidle: mvebu: add Armada 370 support
  cpuidle: mvebu: rename the driver from armada-370-xp to mvebu-v7
  ARM: mvebu: export the SCU address
  ARM: mvebu: make the snoop disabling optional in mvebu_v7_pmsu_idle_prepare()
  ARM: mvebu: use a local variable to store the resume address
  ARM: mvebu: make the cpuidle initialization more generic
  ARM: mvebu: rename the armada_370_xp symbols to mvebu_v7 in pmsu.c
  ARM: mvebu: use the common function for Armada 375 SMP workaround
  ARM: mvebu: add a common function for the boot address work around
  ARM: mvebu: sort the #include of pmsu.c in alphabetic order
  ARM: mvebu: split again armada_370_xp_pmsu_idle_enter() in PMSU code
  ARM: mvebu: fix return value check in armada_xp_pmsu_cpufreq_init()
  clk: mvebu: extend clk-cpu for dynamic frequency scaling
  ARM: mvebu: extend PMSU code to support dynamic frequency scaling
  ...

Conflicts:
	arch/arm/mach-mvebu/Kconfig
	drivers/cpuidle/cpuidle-armada-370-xp.c

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 18:17:08 +02:00
Arnd Bergmann
dffd7e35a5 Merge branch 'cleanup/gpio-header-removal' into next/soc
* cleanup/gpio-header-removal:
  ARM: delete old reference to ARM_GPIOLIB_COMPLEX
  ARM: kill CONFIG_NEED_MACH_GPIO_H
  ARM: mach-s5p: get rid of all <mach/gpio.h> headers
  ARM: s5p: cut the custom ARCH_NR_GPIOS definition

This resolves a massive amount of conflicts between the
mach/gpio.h removal and the s5p platform removal.

Almost all changes are trivial, as both sides remove
stuff.

Conflicts:
	arch/arm/Kconfig
	arch/arm/mach-s5p64x0/common.c
	arch/arm/mach-s5p64x0/dev-audio.c
	arch/arm/mach-s5p64x0/include/mach/gpio-samsung.h
	arch/arm/mach-s5p64x0/mach-smdk6440.c
	arch/arm/mach-s5p64x0/mach-smdk6450.c
	arch/arm/mach-s5p64x0/setup-fb-24bpp.c
	arch/arm/mach-s5p64x0/setup-i2c0.c
	arch/arm/mach-s5p64x0/setup-i2c1.c
	arch/arm/mach-s5p64x0/setup-sdhci-gpio.c
	arch/arm/mach-s5p64x0/setup-spi.c
	arch/arm/mach-s5pc100/dev-audio.c
	arch/arm/mach-s5pc100/include/mach/gpio-samsung.h
	arch/arm/mach-s5pc100/mach-smdkc100.c
	arch/arm/mach-s5pc100/setup-fb-24bpp.c
	arch/arm/mach-s5pc100/setup-i2c0.c
	arch/arm/mach-s5pc100/setup-i2c1.c
	arch/arm/mach-s5pc100/setup-ide.c
	arch/arm/mach-s5pc100/setup-keypad.c
	arch/arm/mach-s5pc100/setup-sdhci-gpio.c
	arch/arm/mach-s5pc100/setup-spi.c
	arch/arm/mach-s5pv210/dev-audio.c
	arch/arm/mach-s5pv210/include/mach/gpio-samsung.h
	arch/arm/mach-s5pv210/mach-aquila.c
	arch/arm/mach-s5pv210/mach-goni.c
	arch/arm/mach-s5pv210/mach-smdkv210.c
	arch/arm/mach-s5pv210/setup-fb-24bpp.c
	arch/arm/mach-s5pv210/setup-fimc.c
	arch/arm/mach-s5pv210/setup-i2c0.c
	arch/arm/mach-s5pv210/setup-i2c1.c
	arch/arm/mach-s5pv210/setup-i2c2.c
	arch/arm/mach-s5pv210/setup-ide.c
	arch/arm/mach-s5pv210/setup-keypad.c
	arch/arm/mach-s5pv210/setup-sdhci-gpio.c
	arch/arm/mach-s5pv210/setup-spi.c
	arch/arm/plat-samsung/Kconfig
	arch/arm/plat-samsung/s5p-irq-eint.c

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 18:00:40 +02:00
Arnd Bergmann
944483d033 Merge branch 'next/fixes-non-critical' into next/soc
This resolves a nontrivial conflict against a bug fix
in another branch.

Conflicts:
	arch/arm/mach-exynos/pm.c

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 17:54:21 +02:00
Arnd Bergmann
03eea7cda2 CPU-Hotplug support for RK3066 and RK3188
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABCAAGBQJT0NA6AAoJEPOmecmc0R2B+PYH/RD+OYgBNgwSahT13DG2Irky
 EJKJ+BQCIMk0Q+D2Vag/fOiGFeEFpXxeciGu1WkrEyQq2yLpPqzgPEH8NE/XRkkI
 tO/EZY/SERWeL+M5VzybQzvLN9JftSv312yzGc+MMcvOe0kazzFI0O9rQKzBBpxm
 SJKwWZrvDhGOzivOQco+aLYYEcEw7Ai8vfug4Ay75oJ1fQodHiAGhYaJ/+FYbIP/
 aEyVzKoyIAII45Mg6Fg5v+WrfuRaZq76Ch7cxqwLlnuJySVxg62qLzXgLflCTqM7
 NwUFuQHJihBUkeEhAsYiwM23D/1SEKYO2/WWgyiN1nlUNZRxVgqkGYyLnoQQMRs=
 =W1+9
 -----END PGP SIGNATURE-----

Merge tag 'v3.17-rockchip-smp-hotplug' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/soc

Merge "CPU-Hotplug support for RK3066 and RK3188" from Heiko Stuebner:

* tag 'v3.17-rockchip-smp-hotplug' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: rockchip: Add cpu hotplug support for RK3XXX SoCs
  ARM: rockchip: select ARMv7 compiler flags for platsmp.o

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 17:34:26 +02:00
Doug Anderson
b1db66b818 ARM: dts: Build dtbs for Rockchip boards
This allows the "make dtbs" target to work.

Signed-off-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:27 +02:00
Heiko Stuebner
6ce0562a75 ARM: dts: add rk3288 evaluation board
There exist 2 variants using either the act8846 or rk808 as pmic, while the
rest of the board stays the same.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Will Deacon <will.deacon@arm.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:25 +02:00
Heiko Stuebner
2ab557b72d ARM: dts: rockchip: add core rk3288 dtsi
Node definitions shared by all rk3288 based boards.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Will Deacon <will.deacon@arm.com>
Tested-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:22 +02:00
Heiko Stuebner
7a1917abdd ARM: rockchip: enable support for RK3288 SoCs
Enable HAVE_ARM_ARCH_TIMER and add a rockchip,rk3288 compatible.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Will Deacon <will.deacon@arm.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:19 +02:00
Heiko Stuebner
7b5da4c3b9 ARM: Kconfig: set default gpio number for rockchip SoCs
The new rk3288 needs a bigger gpio space, as it has 9 gpio banks.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Tested-by: Will Deacon <will.deacon@arm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:17 +02:00
Heiko Stuebner
efd02ee92b ARM: rockchip: add debug uart used by rk3288
The uarts on rk3288 are still compatible with the dw_8250, but located
at a different position and need DEBUG_UART_8250_WORD enabled.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Tested-by: Will Deacon <will.deacon@arm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:14 +02:00
Heiko Stuebner
aa9c4f740d ARM: rockchip: clarify usability of DEBUG_RK3X_UART debug_ll options
The debug uart settings from the DEBUG_RK3X_UART options are usable on
all Rockchip SoCs from the rk30xx and rk31xx series but not on the
new rk3288 SoCs. Thus clarify their use to prevent confusion.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 13:07:09 +02:00
Haojian Zhuang
28c9770bcb ARM: dts: fix L2 address in Hi3620
Fix the address of L2 controler register in hi3620 SoC.
This has been wrong from the point that the file was merged
in v3.14.

Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
Acked-by: Wei Xu <xuwei5@hisilicon.com>
Cc: stable@vger.kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 12:14:32 +02:00
Arnd Bergmann
96bda115ec Samsung S5PV210 DT support for v3.17
- support common clock framework for s5pv210 clock
 - add generic PHY driver on s5pv210 to support it via DT
 - add dt support for s5pv210-goni, smdkc110, smdkv210 and torbreck boards
 - remove board files from mach-s5pv210 and unused codes
 - enable multiplatform for s5pv210
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJT0ZTrAAoJEA0Cl+kVi2xqaAgP/RZjKZizSPCTTM71wQv4QWjU
 TR3SJMgejnePLzHU6h22P11PBV1KOCec9nko+7M+vQeSCJscoJsudmSiKRceh0tC
 9ATq5eSIw/p3WVjRSFOsj95O1urKdFQPzQ/odwwtw4WRnFerZoY9ihRBKnZxRCJc
 oQdFTDTJeBVlPUxLV1/slS+HWP+I/csYXnAF1Y2tz0GxEX+7iQ6LS7YuCB3kGiG1
 S4mcNyfyhUjpxO4oL0QazCEpsX7UgyNm9MMaW7jGxjc7J7GraiVnFdo3C8yZIeS/
 zAkA6YnOBoFqwCwgJsvo8VBsfqUtMC49GVJYSFiVNe3s9W6awuLfr8GhhHLX7q6t
 dGib2p0DtYbVNGRUHW1PWkwBefdFEGkYmNugcS9/WiqTL2oUr3L11LaAEbzVC2pq
 cBnT7+8lyEoaBmpeMDpmXUti4fyQH4uNxMjoRT4qDI1d/U20+d5pZFZzuQbuZ5xX
 UZnk4vs6YRZAqYgkPh9Wg5A56J+ku21oHBlnbjIxBgrjA9UjP4foCk3rA8iZT1JD
 eH7r033zcOZ1LUOZWO53O4/l5pE8cfU6FweEb9h6ADfrMB8vKTAeDbwipI4n+l0v
 /VxlIV+cRCEuWPCNuYJkOLpqj7L36MFkbkppJy8wyPPPu1UUrpAWpq/Pw60uEW7M
 hkVo/JtpTjqzUEEb7mC1
 =7b91
 -----END PGP SIGNATURE-----

Merge tag 's5pv210-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc

Merge "Samsung S5PV210 DT support for v3.17" from Kukjin Kim:

- support common clock framework for s5pv210 clock
- add generic PHY driver on s5pv210 to support it via DT
- add dt support for s5pv210-goni, smdkc110, smdkv210 and torbreck boards
- remove board files from mach-s5pv210 and unused codes
- enable multiplatform for s5pv210

* tag 's5pv210-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  clk: samsung: s5pv210: Remove legacy board support
  ARM: SAMSUNG: Remove remaining legacy code
  gpio: samsung: Remove legacy support of S5PV210
  ARM: S5PV210: Enable multi-platform build support
  cpufreq: s5pv210: Make the driver multiplatform aware
  ARM: S5PV210: Register cpufreq platform device
  ARM: S5PV210: move debug-macro.S into the common space
  ARM: S5PV210: Untie PM support from legacy code
  ARM: S5PV210: Remove support for board files
  ARM: dts: Add Device tree for s5pc110/s5pv210 boards
  ARM: dts: Add Device tree for s5pv210 SoC
  ARM: S5PV210: Add board file for boot using Device Tree
  phy: Add support for S5PV210 to the Exynos USB 2.0 PHY driver
  clk: samsung: Add S5PV210 Audio Subsystem clock driver
  ARM: SAMSUNG: Remove legacy clock code
  serial: samsung: Remove support for legacy clock code
  cpufreq: s3c24xx: Remove some dead code
  ARM: S5PV210: Migrate clock handling to Common Clock Framework
  clk: samsung: Add clock driver for S5PV210 and compatible SoCs

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 12:01:27 +02:00
Arnd Bergmann
8e5655cd4f Samsung power management related updates for v3.17
- support cluster power off on exynos5420 and exynos5800
   to save power.
 - use PMU address via DT to remove PMU static mapping
 - remove exynos_cpuidle_init() and exynos_cpufreq_init()
 
 * Note that this is including tags/samsung-cleanup and
 tags/exynos-cpuidle are already merged into arm-soc.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJT0ZIeAAoJEA0Cl+kVi2xqoj8P/RwWyzRXwnsGHFK2VLEUD6sw
 OzzG65ASqoDfgfYAyJSDJpb07k3wgQTD2vTu0v67trmAAPMMXtF/Kd6hYI9n0uto
 94cj1PSO259KG5ec/KuhxwBDOFfhZPqDIh27EGNa3jYyDKHhshiP+fOAf8YfSMgb
 LZL+dKRrM0asXKBZF5e1IjSf0Gk3LW9IO4crVH5DizQdSdY+BtFOcFzIyqB86qto
 j59cz9tOvdc9wYAGDLYayK/5lq1sldaxLSwm1PRk8KLC0PkUsqS/xM2EnmhjOX+w
 oLclq1IzVy3ae74GBT2LUIsx+3fRQUvMXuREDn/s3GyFAIDaWAEoswhHTlynIxC3
 wkwP/yxdyoHSZ0RfPyfE6Uf/SbzN7+y92Le3KAJ+Cvlb8GhmikdOUwhQ4ByY3r4+
 677kSwSYaI0ew8TDgucsjO9iuBL/6vW8QeZj0hmujpYMG05sckcR0fx6J8fteXK9
 iUWpAmHZM5AHp3OLZAV/SsWyW9CJMKzTr0DF3Z6ZMNYRURdpACAVgmuZL6/cq5w+
 3GKaQ6sSpxAQYSKH8wqSDbB2hlJAt7BRN48lxgh+d7PTDkD9fkLwfF6ht699FNUO
 jRy7FDqledVqNmBXGW0ZzFnuLX5NaW3VtXzkpHZyRtIYrMu10k1PZYqYHxfvlieO
 lZ+EU9vrN75Ik5Xn/pFK
 =1TAS
 -----END PGP SIGNATURE-----

Merge tag 'power-exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc

Merge "Samsung power management related updates for v3.17" from Kukjin Kim

- support cluster power off on exynos5420 and exynos5800
  to save power.
- use PMU address via DT to remove PMU static mapping
- remove exynos_cpuidle_init() and exynos_cpufreq_init()

* Note that this is including tags/samsung-cleanup and
tags/exynos-cpuidle are already merged into arm-soc.

* tag 'power-exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: Move cpufreq and cpuidle device registration to init_machine
  ARM: EXYNOS: Refactored code for using PMU address via DT
  ARM: EXYNOS: Support cluster power off on exynos5420/5800

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 12:00:25 +02:00
Arnd Bergmann
f169f4007e Linux 3.16-rc6
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJTzJFGAAoJEHm+PkMAQRiGNzQH/087gQch5K+A2HKvPzjUXq57
 G82DJHLONMMq8+NY3Vqhp8g2V8zRbXGJEvMJMsyuscO37Vo7ADcrYo8lqY9w5bIl
 h+Zarhkqz0rqRs2SfMMIVzdd2W7MzL+lqj3GplGPxHztw0+qk7PRKILx6eRppGaH
 JaD4NfkD5+1vfve/2d1ze9D5pCiw6PFNzjesKZxScQhNhIyLdRamfSTY4r9XeURo
 CxpwjphEYfvAcgc39mwzEHPHyKSqULu0By6R8FXQpJ9QjVtzcGEiF+cPqGncpZOR
 5ZSyU5e1CpBl9w8o6Lm9ewXmaCSnBU/VFrOwWvZrXfokZedXBOz7KdShU93XFjU=
 =0VJM
 -----END PGP SIGNATURE-----

Merge branches 'samsung/cleanup' and 'samsung/s5p-cleanup-v2', tag 'v3.16-rc6' into next/soc

The following samsung branches are based on these cleanups,
which are already in mainline before this branch gets pulled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 11:59:20 +02:00
Arnd Bergmann
fd9f5edf6e Fixes for omaps that were not considered urgent enough for the
rc series. Mostly a fix for GPMC allocation and omap5 ABB
 (Adaptive Body Bias).
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT0PLHAAoJEBvUPslcq6VzVicQANRgbrIUKCHiYvi2ngRafAzT
 JrJ6xDn1Z9gQSXErlc1syxrH8YFZuNth+jGBs+yvZ+kN5kh6vCXk34MANxxv/IjO
 Qkm3qAjpEwGlzeW9LKwGfA9vqcnvbNJtf+xXXsaS6vB4Eac2epBjNF1aRLHqUN1n
 x3buaT7otHNUYzDts5mEPkF1W8ZmmyROvcdedAYaM5wayGK/7ETO7oto4l2l9h39
 rsPKX5IL+L36EDCbz45FlmiRf5jXZhR80vfcC9wR1I6om8jov4KZTPTapoSGvaxg
 17UaZ2RzMvTbapUJ8kRH7fGt43GPqGO9tqxTzUEXyf1IwP6BhPmVNXNCPWlSbcGn
 6zATw4DtKtqEDGu3eOLEvo5yb2QydrC3p9CIl7cmVqRECCBSEtHcoQ8pbGeMCzOP
 XPaCw3TKJe5lzAqVqGcgryq7NnzhzvAzLW3MfDvSq5nsYbr8bkvv+6RqyZ7RpY7Q
 sv0pROA1Niwi8XyGeFMvh+NB2MtmPXRbV4if0SeKwZAxWIvUk+RXejxyhP7WEqCe
 MiUUx/tYjzDi8wjL6BqT7elpjPizR3jy1iuevmTUdsTK6Ks5QcCSwXtlKwr/VzbA
 pn4u5ylclXcOuR2EOdPwjTk3++HXvDGKZtRhyjFIf6dnQB/ThJs+5yF1QrWvkiD1
 alomdF9oL2wy4cf4dOLA
 =nbzr
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.17/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical

Merge non-urgent omap fixes from Tony Lindgren:

Fixes for omaps that were not considered urgent enough for the
rc series. Mostly a fix for GPMC allocation and omap5 ABB
(Adaptive Body Bias).

* tag 'omap-for-v3.17/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: omap2+: gpmc-nand: Use dynamic platform_device_alloc()
  omap16xx: Removes fixme no longer needed in ocpi_enable()
  ARM: dts: OMAP5: Add device nodes for ABB
  ARM: omap2+: usb-tusb6010.c: Cleaning up variable is set more than once

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 11:36:28 +02:00
Arnd Bergmann
0081b77d98 SoC related changes for omaps for v3.17 merge window:
- Add device tree and hwmod data for various devices
   for new SoCs
 
 - Remove legacy mailbox hwmod data that's no longer
   needed for SoCs that are DT only. Note that this may
   cause a minor merge conflict in mach-omap2/devices.c
   with omap_init_mbox() and omap_init_hdmi_audio(), both
   are legacy code that is getting removed
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT0PR7AAoJEBvUPslcq6VzcUkP/RlSR5qip8BgSsar600B/W11
 JFKl8t4VNcoutv109UYrmHaodYDsou6Sgj3QhZk1iQ8Sl76TCXDbF2LUtlpEt4VR
 tpzr01o9gRw7SqxOxpIo6AB6owNmfiEhlRX9OsbGC5efgVFPJUO3ycK7ap2JdKbr
 Cr976YBE6RVe5JDrQAbKGThilOoidOxUAFToXNbo72VM59V0E8J8LQQJHHs6oWeR
 fz6p1sj1P45xUO8/LQ11Aaz5iQ/6bai4sHHZffFcglfjqxEHx5xFbFriEuUS5s+9
 dmfyvP1fy7dkiLVFo5KZuDVUBMnLGFUWUWlmxf/dMH+dw4yjxRlyXSxLHa2U8vAO
 ttRHBBCph5y2gxSYBvkVXdqV4DdgrIjS7yWUJBnXo+73N/8CfFjOv/kc7l7p2vCu
 7uNa7c03+xVG/+EhZPMPxI4nzhb8KRLqZ9k8+FhIfvzuHdA2x//BGYvjmLdi84fk
 aEptRjeM5Shvgf89r/OThAiQmQYjMCxUB16jcZVyTaIj6C3sFnudWJR/N0VEaPnZ
 QdlbvgN9w+/cvWWFA1P11wgriDKWWS6nWz24tp/YvBI12cIl//NXO8FNv+sOV6Jt
 zpjqJTa16c3SxPKTkv6yIzdB5h5Jxouw/EXzrT0Uj5gL0kRqwA17FEdySR31uSDl
 F/T9CcZK7JMIx9uCQ8Hf
 =lKl0
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.17/soc-new' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

Merge "SoC related changes for omaps for v3.17 merge window"
from Tony Lindgren:

- Add device tree and hwmod data for various devices
  for new SoCs

- Remove legacy mailbox hwmod data that's no longer
  needed for SoCs that are DT only. Note that this may
  cause a minor merge conflict in mach-omap2/devices.c
  with omap_init_mbox() and omap_init_hdmi_audio(), both
  are legacy code that is getting removed

* tag 'omap-for-v3.17/soc-new' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: DRA7: hwmod: Add data for RTC
  arm: dra7xx: Add hwmod data for MDIO and CPSW
  arm: dra7xx: Add hwmod data for pcie1 and pcie2 subsystems
  arm: dra7xx: Add hwmod data for pcie1 phy and pcie2 phy
  ARM: DRA7: hwmod: Add OCP2SCP3 module
  ARM: DRA7: hwmod: remove interrupts for DMA
  ARM: OMAP2+: DMA: remove requirement of irq for platform-dma driver
  ARM: AM33xx: hwmod_data: Remove legacy mailbox addrs
  ARM: OMAP4: hwmod_data: Remove legacy mailbox addrs
  ARM: OMAP2: hwmod_data: Remove legacy mailbox data and addrs
  ARM: OMAP2+: Avoid mailbox legacy device creation for DT-boot
  ARM: DRA7: hwmod_data: Add mailbox hwmod data
  ARM: dts: DRA7: Add mailbox nodes
  ARM: dts: AM4372: Correct mailbox node data
  ARM: dts: AM33xx: Add mailbox node
  ARM: dts: OMAP4: Add mailbox node
  ARM: dts: OMAP2+: Add mailbox fifo and user information
  ARM: AM43xx: hwmod: add DSS hwmod data

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 11:33:34 +02:00
Arnd Bergmann
ba66d7f00f Merge branch 'omap/cleanup' into next/soc
This is a dependency for the omap/soc branch

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-26 11:32:47 +02:00
Tomasz Figa
d19bb397e1 ARM: dts: exynos: Update PMU node with CLKOUT related data
This patch extends nodes of PMU system controller on Exynos4210, 4x12,
5250 and 5420 SoCs with newly defined properties used by Exynos CLKOUT
driver.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
2014-07-26 02:47:10 +02:00
Himangi Saraogi
a91c7775e3 xen/arm: use BUG_ON
Use BUG_ON(x) rather than if(x) BUG();

The semantic patch that fixes this problem is as follows:

// <smpl>
@@ identifier x; @@
-if (x) BUG();
+BUG_ON(x);
// </smpl>

Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2014-07-25 12:05:48 -04:00
Paul Walmsley
0a26344440 ARM: OMAP2+: clock: allow omap2_dpll_round_rate() to round to next-lowest rate
Change the behavior of omap2_dpll_round_rate() to round to either the
exact rate requested, or the next lowest rate that the clock is able to
provide.

This is not an ideal fix, but is intended to provide a relatively safe
way for drivers to set PLL rates, until a better solution can be
implemented.

For the time being, omap3_noncore_dpll_set_rate() is still allowed to
set its rate to something other than what the caller requested; but will
warn when this occurs.

Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-25 06:11:15 -06:00
Andreas Färber
fbb4add88c ARM: dts: zynq: Add DMAC for Parallella
Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-25 09:45:51 +02:00
Andreas Färber
6726e3edf8 ARM: dts: zynq: Add Parallella device tree
This allows to boot the Adapteva Parallella board to serial console.

Cc: Andreas Olofsson <andreas@adapteva.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-25 09:45:49 +02:00
Cyrille Pitchen
d58c86ec77 ARM: at91: change compatibility string for sama5d3x gem
this new compatibility string prevents macb/gem driver from using the
scatter-gather and gso features on sama5d3x boards.

Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-07-24 23:39:55 -07:00
Gaurav Minocha
ae9304c9d3 Adding selftest testdata dynamically into live tree
This patch attaches selftest's device tree data (required by /drivers/of/selftest.c)
dynamically into live device tree. First, it links selftest device tree data into the
kernel image and then iterates over all the nodes and attaches them into the live tree.
Once the testcases are complete, it removes the data attached.

This patch will remove the manual process of addition and removal of selftest device
tree data into the machine's dts file.

Tested successfully with current selftest's testcases.

Signed-off-by: Gaurav Minocha <gaurav.minocha.os@gmail.com>
[glikely: Removed ability to build as a module and fixed no-devicetree bug]
Signed-off-by: Grant Likely <grant.likely@linaro.org>
2014-07-25 00:18:13 -06:00
Russell King
087b047011 ARM: dts: dove: add DT LCD controllers
Add the DT fragment for the Marvell Dove LCD controllers.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Link: https://lkml.kernel.org/r/E1XAKGS-0004WE-8h@rmk-PC.arm.linux.org.uk
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-25 00:07:22 +00:00
Arnd Bergmann
ce800342c8 ARM: mvebu: fix build without platforms selected
When building a multiplatform kernel that enables 'ARCH_MVEBU' but
none of the individual options under it, we get this link error:

arch/arm/mach-mvebu/built-in.o: In function `mvebu_armada375_smp_wa_init':
:(.text+0x190): undefined reference to `mvebu_setup_boot_addr_wa'

The best solution seems to be to ensure that in this configuration,
we don't actually build any of the mvebu code.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lkml.kernel.org/r/7339332.ZE2mWIdyDh@wuerfel
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 23:14:36 +00:00
Jason Cooper
54ef3fe697 Merge branch 'mvebu/soc-cpuidle' into mvebu/soc
Conflicts:
	arch/arm/mach-mvebu/pmsu.c
2014-07-24 23:10:02 +00:00
Greg Kroah-Hartman
040bf7d63d Fourth round of IIO new drivers, functionality and cleanups for the 3.17 cycle
New functionality
 * A new modifier to indicate that a rotation is relative to either
   true or magnetic north.  This is to be used by some magnetometers
   that provide data in this way.
 * hid magnetometer now supports output rotations from various variants on
   North
 * HMC5843 driver converted to regmap and reworked to allow easy support
   of other similar devices.  Support for HMC5983 added via both i2c and SPI.
 * Rework of Exynos driver to simplify extension to support more devices.
 * Addition of support for the Exynos3250 ADC (which requires an additional
   clock)  Support for quite a few more devices on its way.
 
 Cleanups
 * ad7997 - a number of cleanups and tweaks to how the events are controlled
   to make it more intuitive.
 * kxcjk - cleanups and minor fixes for this new driver.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJT0VkRAAoJEFSFNJnE9BaIVmwP/i9/kzwHaXr09GbOMoUNlnuP
 4wU+qJTucPOlj0rNvE6VewOshkF5G1soMAc97MAlEL12mU0qXt+q9m9xu7aVnQwF
 FU87BECdmbWVSIfGnCwkm2PzN+zLmGKr/TTPdCa+kuX1WIq7tUfVwYJVqU7vxDde
 n1G5Rx3sbujwAd/kP5X0Bk35X2Wng4Af0f3tkuoRC8nFWCxXN1qW9VZHlJCp5UIh
 c4J1COUeANf26CnMbgz3qqumGtYX1gbGHi3zzD4vYxD+inqKtvg/pqTqge3J7E9D
 HBhyNn0Rd3m2DDoz/5fRQ5z/5CAKLkpsqJa9ZsYLzzmo3AHUDYoVA6tGIoExhW9q
 7P8FJgJx0Gc58V/A0Y48vcHAcqinoL+2vphc5BHZXA2wdeVHZxWO3e7HX7KUmr55
 AXlHowFf0VKoJjJtcfFkFjalF5flIfyA7Kiu+10kptj8wsoX+AjUHXPYDfeRxw+S
 7nkr/7janHvsBhoP83PqPdRSrlnNPiLJSl8ZIgegVpKOBtsRKJLGW4zlwTp1lchr
 M1ydD9eh3uUT3luKRCJzoXo60Ia15x3KBrZxIkQiORIW2otlfUm7dduICc4p9Ij7
 RjU8S1NbOVZiD8fNcbmnFp0Xj3cGf4K/Jf1Jvs/QrGB2GAuYoF48BIyeaHj0tCr8
 n4wJtDu+aly6vzM7Kf8d
 =iOto
 -----END PGP SIGNATURE-----

Merge tag 'iio-for-3.17d' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

Jonathan writes:

Fourth round of IIO new drivers, functionality and cleanups for the 3.17 cycle

New functionality
* A new modifier to indicate that a rotation is relative to either
  true or magnetic north.  This is to be used by some magnetometers
  that provide data in this way.
* hid magnetometer now supports output rotations from various variants on
  North
* HMC5843 driver converted to regmap and reworked to allow easy support
  of other similar devices.  Support for HMC5983 added via both i2c and SPI.
* Rework of Exynos driver to simplify extension to support more devices.
* Addition of support for the Exynos3250 ADC (which requires an additional
  clock)  Support for quite a few more devices on its way.

Cleanups
* ad7997 - a number of cleanups and tweaks to how the events are controlled
  to make it more intuitive.
* kxcjk - cleanups and minor fixes for this new driver.
2014-07-24 14:57:19 -07:00
Gregory Fong
04fcab32d3 ARM: 8111/1: Enable erratum 798181 for Broadcom Brahma-B15
Broadcom Brahma-B15 (r0p0..r0p2) is also affected by Cortex-A15
erratum 798181, so enable the workaround for Brahma-B15.

Signed-off-by: Gregory Fong <gregory.0xf0@gmail.com>
Acked-by: Marc Carino <marc.ceeeee@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-24 14:40:26 +01:00
Uwe Kleine-König
91942d1766 ARM: 8112/1: only select ARM_PATCH_PHYS_VIRT if MMU is enabled
This fixes the following warning:

	warning: (ARCH_MULTIPLATFORM && ARCH_INTEGRATOR && ARCH_SHMOBILE_LEGACY) selects ARM_PATCH_PHYS_VIRT which has unmet direct dependencies (!XIP_KERNEL && MMU && (!ARCH_REALVIEW || !SPARSEMEM))

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-24 14:29:13 +01:00
Marc Carino
c51e78ed58 ARM: 8110/1: do CPU-specific init for Broadcom Brahma15 cores
Perform any CPU-specific initialization required on the
Broadcom Brahma-15 core.

Signed-off-by: Marc Carino <marc.ceeeee@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-24 14:27:12 +01:00
Steven Capper
ded9477984 ARM: 8109/1: mm: Modify pte_write and pmd_write logic for LPAE
For LPAE, we have the following means for encoding writable or dirty
ptes:
                              L_PTE_DIRTY       L_PTE_RDONLY
    !pte_dirty && !pte_write        0               1
    !pte_dirty && pte_write         0               1
    pte_dirty && !pte_write         1               1
    pte_dirty && pte_write          1               0

So we can't distinguish between writeable clean ptes and read only
ptes. This can cause problems with ptes being incorrectly flagged as
read only when they are writeable but not dirty.

This patch renumbers L_PTE_RDONLY from AP[2] to a software bit #58,
and adds additional logic to set AP[2] whenever the pte is read only
or not dirty. That way we can distinguish between clean writeable ptes
and read only ptes.

HugeTLB pages will use this new logic automatically.

We need to add some logic to Transparent HugePages to ensure that they
correctly interpret the revised pgprot permissions (L_PTE_RDONLY has
moved and no longer matches PMD_SECT_AP2). In the process of revising
THP, the names of the PMD software bits have been prefixed with L_ to
make them easier to distinguish from their hardware bit counterparts.

Signed-off-by: Steve Capper <steve.capper@linaro.org>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-24 14:27:08 +01:00
Steven Capper
f295070687 ARM: 8108/1: mm: Introduce {pte,pmd}_isset and {pte,pmd}_isclear
Long descriptors on ARM are 64 bits, and some pte functions such as
pte_dirty return a bitwise-and of a flag with the pte value. If the
flag to be tested resides in the upper 32 bits of the pte, then we run
into the danger of the result being dropped if downcast.

For example:
	gather_stats(page, md, pte_dirty(*pte), 1);
where pte_dirty(*pte) is downcast to an int.

This patch introduces a new macro pte_isset which performs the bitwise
and, then performs a double logical invert (where needed) to ensure
predictable downcasting. The logical inverse pte_isclear is also
introduced.

Equivalent pmd functions for Transparent HugePages have also been
added.

Signed-off-by: Steve Capper <steve.capper@linaro.org>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-24 14:27:07 +01:00
Arnd Bergmann
bf1d9879ea Two regression fixes for omaps and one fix for device signaling:
- L2 cache regression fix for a warning about trying to access
   a read-only register
 
 - GPMC ECC software fallback regression fix for omap3
 
 - Fix for dra7 pinctrl pull-up direction that causes signal issues
   for anybody trying to use the internal pull up or down
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT0PDDAAoJEBvUPslcq6Vz2kkP/2XcaWEl5xWEP6vTFDwy1RDL
 apjp2qURWpJ579bT5y5KlGP8vyBeSLfdXl+ccCuHhBrRtYCZfsUdRaii/AHDcsd/
 N0p1ZaAQLwfMXUo1sVgW2grSOJEo8QZs8DEZ7eJfE8SnH2g/i4j+VFknYOO1t6vA
 +QoHRWcY0CRLNVHSyGGFk235pfdq1ZAKskayzQ4wCjOXuH2tKILjFsiCxItPStih
 CmKqZCoO+BQMz7dLTGZsdchDTqf0PceMh7w6PWO65QeJxr16nWmGbqnZRlUGeBqo
 vTZO1Rsfb4DlRYRGBxJ1ybVJw2cgmsx8fWKv4eYVrulGNKUE2m3UYj+oYCst0g5i
 VOPMwLiLapciCZi/4er2VWtb9sFWY6XaTAJHVRtrtX6RZgZC5c3cWGzkykXOkF7N
 Ut7He/TT41uc5OIjuG6WGQNCIfKOmfBcSDeNRqyr9YzZpn6lbJ+U4kk0kco1pyda
 IHrRUD+yHuXK0FjZvZMDlWmKqP3QLK+xjL7LRzsiJ4yfymikckjS2RH0iP9PGuCV
 T68PPl+rzyHjmVUnbBCgLnatTAQ9uHPCb4Eb5rRZaiO+4nUyqeqikMWU/DsiS4jc
 1igudgOx53/0zCCQC/VHVL9HGb4fSrbevMzq8YR3uyyS2b/R8FFbGs6Y6TCIDWdi
 TUSv/ckpA4uUbe22SFTn
 =/FMt
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.16/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

Merge "Two regression fixes for omaps and one fix for device
signaling" from Tony Lindgren:

- L2 cache regression fix for a warning about trying to access
  a read-only register

- GPMC ECC software fallback regression fix for omap3

- Fix for dra7 pinctrl pull-up direction that causes signal issues
  for anybody trying to use the internal pull up or down

* tag 'omap-for-v3.16/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: gpmc: fix gpmc_hwecc_bch_capable()
  pinctrl: dra: dt-bindings: Fix pull enable/disable
  ARM: OMAP2+: l2c: squelch warning dump on power control setting

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-24 14:06:33 +02:00
Gregory CLEMENT
e53b1fd432 ARM: mvebu: add cpuidle support for Armada 38x
Unlike the Armada XP and the Armada 370, this SoC uses a Cortex A9
core. Consequently, the procedure to enter the idle state is
different: interaction with the SCU, not disabling snooping, etc.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-16-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:47:40 +00:00
Gregory CLEMENT
3b9e4b1441 ARM: mvebu: add cpuidle support for Armada 370
This commit introduces the cpuidle support for Armada 370. The main
difference compared to the already supported Armada XP is that the
Armada 370 has an issue caused by "a slow exit process from the deep
idle state due to heavy L1/L2 cache cleanup operations performed by
the BootROM software" (cf errata GL-BootROM-10).

To work around this issue, we replace the restart code of the BootROM
by some custom code located in an internal SRAM. For this purpose, we
use the common function mvebu_boot_addr_wa() introduced in the commit
"ARM: mvebu: Add a common function for the boot address work around".

The message in case of failure to suspend the system was switched from
the warn level to the debug level. Indeed due to the "slow exit
process from the deep idle state" in Armada 370, this situation
happens quite often. Using the debug level avoids spamming the kernel
logs, but still allows to enable it if needed.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-15-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:47:37 +00:00
Gregory CLEMENT
f50ee82471 cpuidle: mvebu: rename the driver from armada-370-xp to mvebu-v7
This driver will be able to manage the cpuidle for more SoCs than just
Armada 370 and XP. It will also support Armada 38x and potentially
other SoC of the Marvell Armada EBU family. To take this into account,
this patch renames the driver and its symbols.

It also changes the driver name from cpuidle-armada-370-xp to
cpuidle-armada-xp, because separate platform drivers will be
registered for the other SoC types. This change must be done
simultaneously in the cpuidle driver and in the PMSU code in order to
remain bisectable.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lkml.kernel.org/r/1406120453-29291-12-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:47:11 +00:00
Gregory CLEMENT
6a2b5343e2 ARM: mvebu: export the SCU address
The SCU address will be needed in other files than board-v7.c,
especially in pmsu.c for cpuidle related activities. So this patch
adds a function that allows to retrieve the virtual address at which
the SCU has been mapped.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-10-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:40 +00:00
Gregory CLEMENT
5da964e0fa ARM: mvebu: make the snoop disabling optional in mvebu_v7_pmsu_idle_prepare()
On some mvebu v7 SoCs (the ones using a Cortex-A9 core and not a PJ4B
core), the snoop disabling feature does not exist as the hardware
coherency is handled in a different way. Therefore, in preparation to
the introduction of the cpuidle support for those SoCs, this commit
modifies the mvebu_v7_psmu_idle_prepare() function to take several
flags, which allow to decide whether snooping should be disabled, and
whether we should use the deep idle mode or not.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-9-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:35 +00:00
Gregory CLEMENT
752a993776 ARM: mvebu: use a local variable to store the resume address
The resume address used by the cpuidle code will not always be the
same depending on the SoC. Using a local variable to store the resume
address allows to keep the same function for the PM notifier but with
a different address. This address will be set during the
initialization of the cpuidle logic in pmsu.c.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-8-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:19 +00:00
Gregory CLEMENT
54a4d1b8d4 ARM: mvebu: make the cpuidle initialization more generic
In preparation to the addition of the cpuidle support for more SoCs,
this patch moves the Armada XP specific initialization to a separate
function.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-7-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:16 +00:00
Gregory CLEMENT
898ef3e9bf ARM: mvebu: rename the armada_370_xp symbols to mvebu_v7 in pmsu.c
Most of the function related to the PMSU are not specific to the
Armada 370 or Armada XP SoCs. They can also be used for most of the
other mvebu ARMv7 SoCs, and will actually be used to support cpuidle
on Armada 38x.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-6-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:13 +00:00
Gregory CLEMENT
305969fb62 ARM: mvebu: use the common function for Armada 375 SMP workaround
Use the common function mvebu_setup_boot_addr_wa() introduced in the
commit "ARM: mvebu: Add a common function for the boot address work
around" instead of the dedicated version for Armada 375.

This commit also moves the workaround in the system-controller
module. Indeed the workaround on 375 is really related to setting the
boot address which is done by the system controller.

As a bonus we no longer use an harcoded value to access the register
storing the boot address.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-5-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:10 +00:00
Gregory CLEMENT
3076cc58c9 ARM: mvebu: add a common function for the boot address work around
On some of the mvebu SoCs and due to internal BootROM issue, the CPU
initial jump code must be placed in the SRAM memory of the SoC. In
order to achieve this, we have to unmap the BootROM and at some
specific location where the BootROM was placed, create a dedicated
MBus window for the SRAM. This SRAM is initialized with a few
instructions of code that allows to jump to the real secondary CPU
boot address. The SRAM used is the Crypto engine one.

This work around is currently needed for booting SMP on Armada 375 Z1
and will be needed for cpuidle support on Armada 370. Instead of
duplicating the same code, this commit introduces a common function to
handle it: mvebu_setup_boot_addr_wa().

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-4-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:06 +00:00
Gregory CLEMENT
3e328428d4 ARM: mvebu: sort the #include of pmsu.c in alphabetic order
Sorting the headers in alphabetic order will help to reduce conflicts
when adding new headers later.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-3-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:46:03 +00:00
Gregory CLEMENT
9ce35884bd ARM: mvebu: split again armada_370_xp_pmsu_idle_enter() in PMSU code
do_armada_370_xp_cpu_suspend() and armada_370_xp_pmsu_idle_prepare(),
have been merged into a single function called
armada_370_xp_pmsu_idle_enter() by the commit "bbb92284b6c8 ARM:
mvebu: slightly refactor/rename PMSU idle related functions", in
prepare for the introduction of the CPU hotplug support for Armada XP.

But for cpuidle the prepare function will be common to all the mvebu
SoCs that use the PMSU, while the suspend function will be specific to
each SoC. Keeping the prepare function separate will help reducing
code duplication while new SoC support is added.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Link: https://lkml.kernel.org/r/1406120453-29291-2-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-24 11:45:59 +00:00
Jason Cooper
5abe65e3d6 Merge branch 'mvebu/fixes' into mvebu/soc-cpuidle 2014-07-24 11:41:36 +00:00
Arnd Bergmann
683809f27e Second Round of Renesas ARM Based SoC Fixes for v3.16
* Fix SD2CKCR register address of r8a7791 (R-Car M2) SoC
 
   This corrects a bug introduced in v3.14 by
   59e79895b9 ("ARM: shmobile: r8a7791: Add clocks").
 
   However, it does not manifest in mainline code until
   SDHI devices were enabled on the Koelsch board in v3.15 by
   2c60a7df72 ("ARM: shmobile: Add SDHI devices for Koelsch DTS").
 
   It also manifests on the Henninger board when
   SDHI devices were enabled in v3.16-rc1 by
   1299df03d7 ("ARM: shmobile: henninger: add SDHI0/2 DT support")
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT0FapAAoJENfPZGlqN0++socQAI25b++UQ89EiUQE/98yB/vq
 ma63gl346dXdv6lb8iN+rx9Vk3wtzNuroozds2iulmAnutMTdQ83huektaYdPkQ4
 T+RxOl4liJUbQRBg2+8UBtiaTB+oGQWbRkqt/MOvniTbOqYKs71Oym901ULlQMKL
 9RSyWORUx5x2c+zZMJ0eU8T6Bl9hf0P0ikHwUv9ZYIQzrYxjJubdmyVoNI6slxF9
 S4O4sUZfOSVqfSis5rEfWgG29jBYjlGdTyFXp1+kE19J02wikGRTjgM9bWkxarrF
 wfa+ZQXjMywsdY8rCSxeNEYFuS3NW7s4ylRIC4UfpvSg1cvNVVE5m4BK0E2IOIyJ
 kW/zSimYfh/RJSX+HMZ2hfipvFDE6dDOL5PHpwJ8fhWfM5Yinn1Wgfa2mUDxsPFe
 CAfhtiTB56Rhzo+ln9UcNwaakZs/uSsG0jq3lI2zNTUd+1VMS+7xB/3pdKQjDGo/
 75+UKvdcqJ4yprfcvKwIp0LsJCKWIm1hQTqSFWuYfpVaNbM+9CFQculw0YZxOWxc
 xFr3LznFidUJCHKiM4ngnPBsLfDCdjVU5MyqDXcW9iVEKeSQJJ01CCORA4MjTUT5
 niZEMcAoIMaeXeuVnL5FlRK5Owd6SgryWpy4XUlf+ioGLLE5EzuLqA9TJe4eo41P
 caa5gpyUDbTjH1J4GktY
 =SQyi
 -----END PGP SIGNATURE-----

Merge tag 'renesas-fixes2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes

Merge "Second Round of Renesas ARM Based SoC Fixes for v3.16" from Simon Horman

* Fix SD2CKCR register address of r8a7791 (R-Car M2) SoC

  This corrects a bug introduced in v3.14 by
  59e79895b9 ("ARM: shmobile: r8a7791: Add clocks").

  However, it does not manifest in mainline code until
  SDHI devices were enabled on the Koelsch board in v3.15 by
  2c60a7df72 ("ARM: shmobile: Add SDHI devices for Koelsch DTS").

  It also manifests on the Henninger board when
  SDHI devices were enabled in v3.16-rc1 by
  1299df03d7 ("ARM: shmobile: henninger: add SDHI0/2 DT support")

* tag 'renesas-fixes2-for-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7791: Fix SD2CKCR register address

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-24 13:24:57 +02:00
Pawel Moll
d2168146c2 platform: Remove most references to platform_bus device
A number of board files in arch/arm and arch/unicore32
explicitly reference platform_bus device as a parent
for new platform devices.

This is unnecessary, as platform device API guarantees
that devices with NULL parent are going to by adopted
by the mentioned "root" device.

This patch removes or replaces with NULL such references.

Signed-off-by: Pawel Moll <pawel.moll@arm.com>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-07-23 19:09:03 -07:00
Thomas Gleixner
41fa4215f8 arm: bL_switcher:k Use ktime_get_real_ns()
Use the nanoseconds based interface instead of converting from a
timespec.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: John Stultz <john.stultz@linaro.org>
2014-07-23 15:01:45 -07:00
Chanwoo Choi
e6ca2d848c ARM: dts: Fix wrong compatible string for Exynos3250 ADC
This patchset fix wrong compatible string for Exynos3250 ADC. Exynos3250 SoC
need to control only special clock for ADC. Exynos SoC except for Exynos3250
has not included special clock for ADC. The exynos ADC driver can control
special clock if compatible string is 'exynos3250-adc-v2'.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-07-23 21:59:03 +01:00
Arnd Bergmann
60c70c8c58 Merge tag 'v3.17-next-mediatek-support' of https://github.com/mbgg/linux-mediatek into next/soc
Merge basic support for the Mediatek Cortex-A7 SoCs from Matthias Brugger:

Support is quite basic, as the only component working up to now are the
timers.

* tag 'v3.17-next-mediatek-support' of https://github.com/mbgg/linux-mediatek:
  arm: mediatek: add dts for Aquaris5 mobile phone
  dt-bindings: add documentation for Mediatek SoC
  arm: add basic support for Mediatek MT6589 boards

Signed-off-by: Matthias Brugger matthias.bgg@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-23 22:54:06 +02:00
Arnd Bergmann
55be3cf836 arm: Xilinx Zynq dt patches for v3.17 second pull request
- Add GPIO and XADC node to dtsi
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iEYEABECAAYFAlPPpuEACgkQykllyylKDCHm+ACgkCCEgvgjRBAWcwc5Sn/jqYxE
 J6YAoIianfG4810qxJrZN0A6RiMWH/EH
 =iLkC
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-3.17-2' of git://git.xilinx.com/linux-xlnx into next/dt

Merge "arm: Xilinx Zynq dt patches for v3.17 second pull request" from Michal Simek:

- Add GPIO and XADC node to dtsi

* tag 'zynq-dt-for-3.17-2' of git://git.xilinx.com/linux-xlnx:
  ARM: zynq: DT: Add GPIO node
  ARM: zynq: DT: Add XADC node

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-23 22:34:17 +02:00
Arnd Bergmann
f8a2a45320 mvebu DT changes for v3.17 (round 3)
- Armada 375
     - Fix ethernet aliases for new node added for v3.17
     - Add missing MDIO clock for new node added for v3.17
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTz6X+AAoJEP45WPkGe8ZnjT4QAKDmMMYP6bSILe4JpGFeEwp/
 9so3aFCkRMmM9ENgZmXU93hiAIMtmofivU7hHBz+IevFmK2KkoxLxIDfQjhandS1
 7ek5U5T+e6wzq8GGW3tYKMZiqsT0LpE1sJurcq4k13zYML2DO6YDZr19bIa9fZLL
 DWuj+QvFZUHvuoXYioKU9OyfoREHkImD3DDdPSYeGpDF/lOUrFFqhIG9ZDhuZEhw
 G5PAgfqXyHZtxJX4LvZUxFTOIhoefVOCt4519sjFBOpjKW3urZRsYLnUTO/Q1+Fc
 O/8Y5U3GSyYJ+LKxxqYNZuWReZ+wZ+WCoKmP5O4bLwl4hJwo7bciYMEtLdP4Q22A
 K4JzGNPX4d6quLLIpRg3Jl0lf0FBQhZu57S8oNa5jUy2oTCGL7a2bf5CMlBeIzGV
 hjPMboHV+yJeJ+t78npa8hrrLQtS/Oky574C2EBqkaXXKAj4fq6VNMkza7m6XvYA
 imgD/jlU417GRhHwu+lPFqcaTdptWfc1s4TrOaXoWOy5a/KdwxJTQvH3lS+QoME7
 smNI4+sUeyjkk2gpKPHC5yg1gU56B242aQ2EgNgljZ+x3YIjhodA7RKK1ylFEYSe
 jJmSGeeGhdaumvxbTV95lHMgW/M6ODofaPAgYT4jXuNB6SelT9iezG4WV/rbSOOe
 gIGE5Mv9dldojbwJSK85
 =y5gn
 -----END PGP SIGNATURE-----

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

Merge "mvebu DT changes for v3.17 (round 3)" from Jason Cooper:

 - Armada 375
    - Fix ethernet aliases for new node added for v3.17
    - Add missing MDIO clock for new node added for v3.17

* tag 'mvebu-dt-3.17-3' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Add missing MDIO clock in Armada 375
  ARM: mvebu: Add ethernet aliases required by U-Boot

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-07-23 22:32:49 +02:00
John Stultz
24e4a8c3e8 ktime: Kill non-scalar ktime_t implementation for 2038
The non-scalar ktime_t implementation is basically a timespec
which has to be changed to support dates past 2038 on 32bit
systems.

This patch removes the non-scalar ktime_t implementation, forcing
the scalar s64 nanosecond version on all architectures.

This may have additional performance overhead on some 32bit
systems when converting between ktime_t and timespec structures,
however the majority of 32bit systems (arm and i386) were already
using scalar ktime_t, so no performance regressions will be seen
on those platforms.

On affected platforms, I'm open to finding optimizations, including
avoiding converting to timespecs where possible.

[ tglx: We can now cleanup the ktime_t.tv64 mess, but thats a
  different issue and we can throw a coccinelle script at it ]

Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
2014-07-23 10:16:50 -07:00
Arnd Bergmann
ec4c4d877b video: fix up versatile CLCD helper move
commit 11c32d7b62 ("video: move Versatile CLCD helpers")
moved files out of the plat-versatile directory but in the process
got a few of the dependencies wrong:

- If CONFIG_FB is not set, the file no longer gets built, resulting
  in a link error
- If CONFIG_FB or CONFIG_FB_ARMCLCD are disabled, we also get a
  Kconfig warning for incorrect dependencies due to the symbol
  being 'select'ed from the platform Kconfig.
- When the file is not built, we also get a link error for missing
  symbols.

This patch should fix all three, by removing the 'select' statements,
changing the Kconfig description of the symbol to be enabled in
exactly the right configurations, and adding inline stub functions
for the case when the framebuffer driver is disabled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
2014-07-23 17:41:00 +02:00
Wei Yongjun
b03e119fff ARM: mvebu: fix return value check in armada_xp_pmsu_cpufreq_init()
In case of error, the function clk_get() returns ERR_PTR()
and never returns NULL. The NULL test in the return value
check should be replaced with IS_ERR().

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Link: https://lkml.kernel.org/r/1406038688-26417-1-git-send-email-weiyj_lk@163.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-23 12:31:13 +00:00
Soren Brinkmann
e0a5c552ca ARM: zynq: DT: Add GPIO node
Add node describing Zynq's GPIO controller.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-23 14:05:56 +02:00
Soren Brinkmann
215556046d ARM: zynq: DT: Add XADC node
Add node for the Xilinx A/D Converter.

Cc: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-23 14:05:41 +02:00
Ezequiel Garcia
112dc53db1 ARM: mvebu: Add missing MDIO clock in Armada 375
In Armada 375 SoCs, the MDIO is handled by a separate orion-mdio driver,
despite the register is contained within the "LMS" block of the network
controller.

Therefore we need to add the clock to the MDIO devicetree to prevent the
controller from being accesed with its clock gated. This is needed, for
instance, to be able to load the MDIO driver before the network driver.

Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Link: https://lkml.kernel.org/r/1405961296-5846-7-git-send-email-ezequiel.garcia@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-23 12:04:40 +00:00
Marcin Wojtas
6c1062baf6 ARM: mvebu: Add ethernet aliases required by U-Boot
The vendor bootloader provided for Armada 375 boards expect an
alias for the ethernet nodes, which is used to fixup the MAC address.

Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Link: https://lkml.kernel.org/r/1405961296-5846-6-git-send-email-ezequiel.garcia@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2014-07-23 12:04:12 +00:00
Robert Jarzmik
a38b1f60b5 ARM: pxa: Add non device-tree timer link to clocksource
As clocksource pxa_timer was moved to clocksource framework, the
pxa_timer initialization needs to be a bit amended, to pass the
necessary informations to clocksource, ie :
 - the timer interrupt (mach specific)
 - the timer registers base (ditto)
 - the timer clockrate

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2014-07-23 12:02:39 +02:00
Robert Jarzmik
6f6caeaa9a ARM: pxa: Add CLKSRC_OF dependency
Select CLKSRC_OF for PXA architectures.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2014-07-23 12:02:38 +02:00
Robert Jarzmik
c5421d7aa4 clocksource: pxa: Move PXA timer to clocksource framework
Move time.c from arch/arm/mach-pxa/time.c to
drivers/clocksource/pxa_timer.c.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2014-07-23 12:02:37 +02:00
Romain Perier
f54b91fdfa ARM: rockchip: Add cpu hotplug support for RK3XXX SoCs
Adds ability to shutdown all CPUs except the first one
(since it might be special for a lot of platforms).
It is now possible to use kexec which requires such a feature.

Signed-off-by: Romain Perier <romain.perier@gmail.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-23 11:42:29 +02:00
Heiko Stuebner
09af6a59fb ARM: rockchip: select ARMv7 compiler flags for platsmp.o
When compiling for multiplatform for both ARMv6 and ARMv7, the default
compiler flags are for ARMv6, and the following cpu-hotplug change will
fail with:
 /tmp/ccSFxfmI.s:68: Error: selected processor does not support ARM mode `isb '
 /tmp/ccSFxfmI.s:74: Error: selected processor does not support ARM mode `isb '
 /tmp/ccSFxfmI.s:75: Error: selected processor does not support ARM mode `dsb '

Fix this in a similar manner as in commit 9f0affcf3e "ARM: mvebu: Fix pmsu
compilation when ARMv6 is selected", by specifying ARMv7 flags for platsmp.o.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2014-07-23 11:42:26 +02:00
Christoph Fritz
33753cd2ba ARM: OMAP2+: gpmc: fix gpmc_hwecc_bch_capable()
This patch adds bch8 ecc software fallback which is mostly used by
omap3s because they lack hardware elm support.

Fixes: 0611c41934 (ARM: OMAP2+: gpmc:
update gpmc_hwecc_bch_capable() for new platforms and ECC schemes)
Cc: <stable@vger.kernel.org> # 3.15.x+
Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Reviewed-by: Pekon Gupta <pekon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2014-07-23 01:48:24 -07:00
Tony Lindgren
3965f5ba04 Merge branch 'omap-for-v3.17/mailbox' into omap-for-v3.17/soc 2014-07-23 01:26:02 -07:00
Tony Lindgren
ecf4c7938f OMAP hwmod data additions for v3.17. Most of these are DRA7xx-related,
although one patch adds DSS hwmods for AM43xx.
 
 Basic build, boot, and PM test results are available here:
 
 http://www.pwsan.com/omap/testlogs/hwmod-a-v3.17/20140722143514/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTztT1AAoJEMePsQ0LvSpLM90P/jT8Ea/hjZzsZwi48RD/xv5u
 fFXVdb69jx0sS8HrXPIpuyLxYASFM4iRK7cJn6C0ptNj31mi+BKRhIH2xKdtxw/X
 n+5UvBirHj+Vk3Sk2OVmb7oKslDlOCPQvwMkWfOQzF6CCujIqrhMhzzq71b6GfWb
 KVmlsQoMWqApedcNHpoOLwvD+TZBbU4RRRtUb9owYXSPGReci4korT5SDADjfA7Y
 nuGLk0YnkF2CsShORyM8BYrB1DXJjIk133d3xOK+blgV8slMik3af2N77CwWPTtP
 P/qj8Uk3J787FG9nV8nq9aSpNZa8cOSIFSjdg2OhpwV5hX6wGJlnm5Q2sbQyzyxM
 9Xe5L40i/F96F/vHDyCwTEdPoyu6VHysJG6qCGbsKp7rfEIj9WPhSZoi2hxqzxI5
 furH0hwA68l68C+ujOsUX1xU8RfCrpEW8Knj69FBuHhX87x4Yoxc1KuIA4wabol3
 8fEts6S99aVYit7GAoU2JnPzBCoE6aRT5Ns7rnswCqNFu4xKW8CkOLHR02MA2l0v
 1TZPIFBGkHwU/r0U8VhLKqr/bGqVtPMyUJnmuGGoT3Wdcm1oi+Hk6940Hc8SqjAk
 dIkIirS+08cpn4SuJJa+HrNMLmeFF2pqSumpAvr+kK2OFFhpnx9LHbq++JCMCIZB
 0uOAyHGMtY9E/vTJwQgt
 =csSf
 -----END PGP SIGNATURE-----

Merge tag 'for-v3.17/omap-hwmod-a' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.17/soc

OMAP hwmod data additions for v3.17.  Most of these are DRA7xx-related,
although one patch adds DSS hwmods for AM43xx.

Basic build, boot, and PM test results are available here:

http://www.pwsan.com/omap/testlogs/hwmod-a-v3.17/20140722143514/
2014-07-23 01:21:33 -07:00
Shinobu Uehara
c9b227723d ARM: shmobile: r8a7791: Fix SD2CKCR register address
59e79895b9
(ARM: shmobile: r8a7791: Add clocks)
added r8a7791 SD clocks when v3.14.

2c60a7df72
(ARM: shmobile: Add SDHI devices for Koelsch DTS)
enabled SD on r8a7791 Koelsch when v3.15.

1299df03d7
(ARM: shmobile: henninger: add SDHI0/2 DT support)
enable SD on r8a7791 Henninger when v3.16.

But r8a7791 SD clock had wrong address.
This patch fixup it.

[Kuninori Morimoto: tidyup for upstreaming]

Signed-off-by: Shinobu Uehara <shinobu.uehara.xc@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-07-23 08:55:12 +09:00
Pankaj Dubey
6887d9e568 ARM: EXYNOS: Move cpufreq and cpuidle device registration to init_machine
As exynos_cpuidle_init() and exynos_cpufreq_init() functions have just
one line of code for registering platform devices. So we can move them
to exynos_dt_machine_init() and remove exynos_cpuidle_init() and
exynos_cpufreq_init(). This will help in reducing lines of code in
exynos.c, making it more clean.

Suggested-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-23 08:20:38 +09:00
Pankaj Dubey
2e94ac4289 ARM: EXYNOS: Refactored code for using PMU address via DT
Under "arm/mach-exynos" many files are using PMU register offsets.
Since we have added support for accessing PMU base address via DT,
now we can remove PMU mapping from exynosX_iodesc. Let's convert
all these access using iomapped address.
This will help us in removing static mapping of PMU base address
as well as help in reducing dependency over machine header files.
Thus helping for migration of PMU implementation from machine to
driver folder which can be reused for ARM64 based SoC.

Also as we have removed static mappings from "regs-pmu.h" it does
not need map.h anymore. But "platsmp.c" needed this and till now it
got included indirectly. So lets move header inclusion of
"mach/map.h" from "regs-pmu.h" to "platsmp.c".

Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-23 08:20:30 +09:00
Abhilash Kesavan
20fe6f98fa ARM: EXYNOS: Support cluster power off on exynos5420/5800
Turning off a cluster when all 4 cores of the cluster are powered off
saves power significantly. Powering off the A15 L2 alone gives around
100mW in savings. Add support for powering off the A15/A7 clusters on
exynos5420/5800.

The patch enables specific register bits which ensure that:
   - cluster L2 will be turned on before the first man is powered up.
   - last man will be turned off before the cluster L2 is turned off.
   - core is powered down before powering it up.

Remove the exynos_cluster_power_control function completely as we can
rely on the above mentioned bits rather than polling the cluster power
status register.

Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Tested-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-23 08:20:21 +09:00
Kukjin Kim
5f534d10d2 Merge branch 'v3.17-next/cpuidle-exynos' into v3.17-next/power-exynos 2014-07-23 08:18:15 +09:00
Kukjin Kim
036c37c580 Merge branch 'v3.17-next/cleanup-samsung' into v3.17-next/power-exynos 2014-07-23 08:18:08 +09:00
Mark Brown
78c5e0bb14 PM / OPP: Remove ARCH_HAS_OPP
Since the OPP layer is a kernel library which has been converted to be
directly selectable by its callers rather than user selectable and
requiring architectures to enable it explicitly the ARCH_HAS_OPP symbol
has become redundant and can be removed. Do so.

Signed-off-by: Mark Brown <broonie@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Nishanth Menon <nm@ti.com>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-07-23 00:51:30 +02:00
Jason Cooper
ba3ec5780b Merge branch 'mvebu/soc-cpufreq' into mvebu/soc 2014-07-22 20:46:48 +00:00
Lokesh Vutla
c913c8a15a ARM: DRA7: hwmod: Add data for RTC
Add hwmod data for RTC

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Reviewed-by: Rajendra Nayak <rnayak@ti.com>
[paul@pwsan.com: updated to apply]
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-22 14:35:06 -06:00
Mugunthan V N
077c42f75e arm: dra7xx: Add hwmod data for MDIO and CPSW
Adding hwmod data for CPSW and MDIO which is present in DRA7xx SoC

Cc: Rajendra Nayak <rnayak@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Tested-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-22 14:35:05 -06:00
Kishon Vijay Abraham I
8dd3eb711e arm: dra7xx: Add hwmod data for pcie1 and pcie2 subsystems
Added hwmod data for pcie1 and pcie2 subsystem present in DRA7xx SOC.

Cc: Tony Lindgren <tony@atomide.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Reviewed-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-22 14:35:05 -06:00
Kishon Vijay Abraham I
70c18ef7f1 arm: dra7xx: Add hwmod data for pcie1 phy and pcie2 phy
Added hwmod data for pcie1 and pcie2 phy present in DRA7xx SOC.
Also added the missing CLKCTRL OFFSET macro and CONTEXT OFFSET macro
for pcie1 phy and pcie2 phy.

Cc: Tony Lindgren <tony@atomide.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Reviewed-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-22 14:35:05 -06:00
Roger Quadros
df0d0f11ff ARM: DRA7: hwmod: Add OCP2SCP3 module
This module is needed for the SATA and PCIe PHYs.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Reviewed-by: Rajendra Nayak <rnayak@ti.com>
Tested-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2014-07-22 14:35:05 -06:00
Olof Johansson
e9a86d96be STi defconfig updates for v3.17
Highlights:
 -----------
  - Enable ST's Thermal controller driver
  - Enable ST's Keyscan driver
  - Enable ST's MiPHY365 Phy driver for STiH416 SATA & PCIe
  - Enable ST's AHCI driver.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTzk/SAAoJEMo4jShGhw+J3DsP/Av4g9HXeFGtBaL0yX2Ao01H
 zXOV7K4t8/pwRxty/BT4XDRboMO6ZFKVl+5m+DQbddfi9sj+NiZqBv3P1SJwO0gt
 MYnntobWUXw7XzgYEoN9alt0KLHo6fQIRUuLF0H8WzzttuaUqN1ev/NujFR5BXOt
 MHM1PLxUKuLkloF1sh3YyN4+sxMOwILXNIRFs9uTK13eI596/QEjiBbqlOfR34OA
 jAI0aSWKdupNjv8eX3bkY2pYpKRg+fKBPfuwa2VKd+xW5d5zGGXGk5iRvPdmNue/
 pyy59wIjmncyIZr+PfJt6tXUSf8zrB17uUnezdbu7b647Des5b2O0sewWzSx+ajY
 ZdBh6tp2YzxVgyq1EG0cnUFsqXQLsHWuYdYBlg8PkDZyFLBNJA1o6Z/UNZclaE9Y
 /oqpkoSSDzgecVkROTIcHqp5fIgUNEUe085Fgs71jNGE7SxsLMvkIgTcir+7Ebad
 C0GmInnG/3EfU2VSQU/ZA1lvrOqsSNnsv0kXVRJLkacHDIuBd88ooVB3vsvq5AVc
 gWLs+fN4RQm/rFiLnIq39xOQwMrT8f4LnxoLb0obbAPA2oJl5cEBe92uuulAA2Qb
 7ZaR9SNdDL+SQSLIc91HKhMoZYeNqbRSdBRUF73jcRRR6iPGih6k0kMZ+/TngcZ1
 3qBF2J9/pIs/BsJV3cur
 =Q09M
 -----END PGP SIGNATURE-----

Merge tag 'sti-defconfig-for-v3.17-1' of git://git.stlinux.com/devel/kernel/linux-sti into next/defconfig

Merge "ARM: STi: defconfig changes for v3.17" from Maxime Coquelin:

STi defconfig updates for v3.17

 - Enable ST's Thermal controller driver
 - Enable ST's Keyscan driver
 - Enable ST's MiPHY365 Phy driver for STiH416 SATA & PCIe
 - Enable ST's AHCI driver.

* tag 'sti-defconfig-for-v3.17-1' of git://git.stlinux.com/devel/kernel/linux-sti:
  ARM: multi_v7_defconfig: Enable MiPHY365x - ST's Generic (SATA & PCIe) PHY
  ARM: multi_v7_defconfig: Enable ST's (S)ATA driver
  ARM: multi_v7_defconfig: add ST Keyscan driver
  ARM: update multi_v7_defconfig for STI
  ARM: multi_v7_defconfig: Configure in ST's Thermal Controller
  + Linux 3.16-rc6

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-22 09:17:18 -07:00
Matthias Brugger
afaedea451 arm: mediatek: add dts for Aquaris5 mobile phone
The Aquaris5 is a mobile phone based on the MT6589 SoC.

Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2014-07-22 17:52:38 +02:00
Matthias Brugger
f682a21854 arm: add basic support for Mediatek MT6589 boards
This adds a generic devicetree board file and a dtsi for boards
based on MT6589 SoCs from Mediatek.

Apart from the generic parts (gic, clocks) the only component
currently supported are the timers.

Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2014-07-22 17:52:37 +02:00
Lee Jones
ad8adbf2c7 ARM: multi_v7_defconfig: Enable MiPHY365x - ST's Generic (SATA & PCIe) PHY
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
2014-07-22 13:40:11 +02:00
Lee Jones
622e6f62cf ARM: multi_v7_defconfig: Enable ST's (S)ATA driver
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
2014-07-22 13:40:11 +02:00
Gabriel FERNANDEZ
affcc5bf41 ARM: multi_v7_defconfig: add ST Keyscan driver
This patch adds KEYBOARD_ST_KEYSCAN config

Signed-off-by: Gabriel Fernandez <gabriel.fernandez@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
2014-07-22 13:14:05 +02:00
Nishanth Menon
2aa7f52b53 ARM: DRA7: hwmod: remove interrupts for DMA
DMA interrupts are now available in of, and the definitions are
duplicates in hwmod. This prevents us from dynamically allocating
interrupt resources for dma from devicetree.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2014-07-21 23:32:51 -07:00
Nishanth Menon
76be4a5415 ARM: OMAP2+: DMA: remove requirement of irq for platform-dma driver
we have currently 2 DMA drivers that try to co-exist.
drivers/dma/omap-dma.c which registers it's own IRQ and is device tree
aware and uses arch/arm/plat-omap/dma.c instance created by
arch/arm/mach-omap2/dma.c to maintain channel usage (omap_request_dma).

Currently both try to register interrupts and mach-omap2/plat-omap dma.c
attempts to use the IRQ number registered by hwmod to register it's own
interrupt handler.

Now, there is no reasonable way of static allocating DMA irq in GIC
SPI when we use crossbar. However, since the dma_chan structure is
freed as a result of IRQ not being present due to devm allocation,
maintaining information of channel by platform code fails at a later
point in time when that region of memory is reused.

So, if hwmod does not indicate an IRQ number, then, assume that
dma-engine will take care of the interrupt handling.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2014-07-21 23:32:51 -07:00
Olof Johansson
9db58cc9f3 SoC specific omap clean-up for v3.17 merge window:
- Changes to PRM and clock related code to help move
   things to drivers
 
 - Removal of unused ctrl module defines that no longer
   are needed with things moving to .dts files and
   drivers
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTzPycAAoJEBvUPslcq6Vz7wcP/0sEABcw76XZywQL3Eh5lq2H
 mxsgM4/YYLqQ2ILEM/R1cawgo/ywl0IRN8uZbPZpcxSxii3auMt40y+PWfnRGRQU
 NP+3G112Xr7gdBloKcwgpsX2HhKKL8stiq7qJjgVsgVk/rIib+0DrDwEoznZjLFJ
 V7tlURMcJjsOpUFr20k/gCQ7gkk0evHVRsvLqpTlx+oxs1QZVOuT3xoN7nqdmmsY
 kqYfIAuffvlrfwqQr1Se5hzMngScjPZ8Fq2IYPQBoZHCGs3tsPFkKle76toi0cHS
 iLML35cRmyyqpgx/tyAxnQrouJkkiu1frkGqHcNBmqwU66ztildSrLHj5OLSr32C
 fI2nNeKSO16sGwVKf1ouv9x2L5DQlqfUSYhGeCzhBuMzBa82krl6Dxc7YQx53/Ob
 b0K/+guHh6afitqMuzxJiP02Aq4vi/9KE7YHI3PELZNl7v/BOyxo5B9j+Xqzt3Az
 tdjbkX20znlTuuTMwFow5r2T6fB2Z8Ltf1gwEeUMWsdgXpS+kmI+jiYI98fJ4B1j
 q1ObRfruTSetRrLrNJ9BSY4GCiPYp6Jii+zV1NHviVvxSp9c/62zvTUwJbWRSkfZ
 lhVVRyq3IN0YMQdhpZ4FpPYF7SzHOU7ot5bZ/bnq3CJU6zMzo1UIBOA6/W0vWiY6
 yM/0UtoEwqB77QeM0zgJ
 =m/Fd
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.17/soc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup

Merge "omap soc clean-up for v3.17 merge window" from Tony Lindgren:

SoC specific omap clean-up for v3.17 merge window:
 - Changes to PRM and clock related code to help move
   things to drivers
 - Removal of unused ctrl module defines that no longer
   are needed with things moving to .dts files and
   drivers

* tag 'omap-for-v3.17/soc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (23 commits)
  ARM: OMAP2+: clock/interface: remove some headers from clkt_iclk.c file
  ARM: OMAP2+: clock/dpll: remove unused header includes from dpll3xxx.c
  ARM: OMAP2+: clock/dpll: remove unused header includes from clkt_dpll.c
  ARM: OMAP2+: clock/interface: add a clk_features definition for idlest value
  ARM: OMAP2+: clock/dpll: add jitter correction behind clk_features
  ARM: OMAP2+: clock/dpll: convert bypass check to use clk_features
  ARM: OMAP2+: clock/dpll: add private API for checking if DPLL is in bypass
  ARM: OMAP2+: clock: add fint values to the ti_clk_features struct
  ARM: OMAP2+: clock: introduce ti_clk_features flags
  ARM: OMAP4+: dpll44xx: remove cm-regbits-44xx.h and clock44xx.h includes
  ARM: OMAP4+: dpll: remove cpu_is_omap44xx checks
  ARM: OMAP4+: clock: remove DEFINE_CLK_OMAP_HSDIVIDER macro
  ARM: OMAP4: Ctrl module register define diet
  ARM: OMAP3: control: isolate control module init to its own function
  ARM: OMAP3: PRM: move modem reset and iva2 idle to PRM driver
  ARM: OMAP3: control: add API for setting up the modem pads
  ARM: OMAP3: PRM: move PRM init code from PM core to the driver
  ARM: OMAP24xx: PRM: add API for clearing wakeup status bits
  ARM: OMAP3: PRM: add API for saving PRM scratchpad contents
  ARM: OMAP3: PRM: add API for checking and clearing cold reset status
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-21 10:49:46 -07:00
Peter Griffin
859facfd62 ARM: update multi_v7_defconfig for STI
This patch enables SDHCI STI platform driver.

Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
2014-07-21 11:44:54 +02:00
Lee Jones
a8dc325c7a ARM: multi_v7_defconfig: Configure in ST's Thermal Controller
Signed-off-by: Ajit Pal Singh <ajitpal.singh@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
2014-07-21 11:40:50 +02:00
Tony Lindgren
3db53918e3 An OMAP clock cleanup series for 3.17 from Tero Kristo.
This is in preparation for moving this code into drivers/clk/ti.
 
 Basic build, boot, and PM test logs are here:
 
 http://www.pwsan.com/omap/testlogs/clock-a-v3.17/20140717034329/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTyBKrAAoJEMePsQ0LvSpL7qQQAKxrP6yJOVZ+toasgB1Uu7T+
 ZceFZJwePa0Nfcl2xswHyqrJR2wh+kFic6RrCcj2s7pP2WBdGAVlxob45nh4BoXZ
 VzxzC0MX9AE/s8+cB+oUiHyMEDGVBVN33gmJRcf+Es1zK/MCCJLZyoiK+fyEvPhZ
 ECyeEG8uxk2iqyCvpwnq8uYER17YWuo8HKhdm4N60ItFofZ3UAYsGz/H3/zZrjcm
 r8Ms+Rm1OvRqIFQLM8yrstCGhB5Hv3esOHY7L2mgdxfUQ64POZRfOmsHhlxQQqAM
 o+hsbsgEe/zYsDP4i4ehnFvKCO652luzrk5hyCXkieuBRHB0Aj7YPaC9LuAhxhNi
 qHGy+Al+4HMETDPo/O3e2IW+egp4WujIcEONUSct4PwGxyjZw28RjFHRowoBKsap
 qhlnEVo7QzvtRt78h54oNalg4+O6dja+PMoJ/XckI1JUxfgbcO0fM2BwrwlBaK+b
 4pN92KOiSMoGlIN9pndfNo+hYLeblORf5xCECDvv2rYt5zjpOEc9Q6EsrMemyYfq
 wYN3o+N2ajcwLQZL1jqMidy0RV5eZfGzfCmPzQutOjpQ/KtCZSc7ID8PfdEwn3/l
 vEfmbk6O9ozo+M4J81VQMl2l/peldpG+pH3HyNy+VRsIEvJ7W57CsUJ1npj6dJsE
 xuU4+0ixHM2Awv0y9eAW
 =v3th
 -----END PGP SIGNATURE-----

Merge tag 'for-v3.17/omap-clock-a' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.17/soc

An OMAP clock cleanup series for 3.17 from Tero Kristo.
This is in preparation for moving this code into drivers/clk/ti.

Basic build, boot, and PM test logs are here:

http://www.pwsan.com/omap/testlogs/clock-a-v3.17/20140717034329/
2014-07-21 00:35:38 -07:00
Olof Johansson
185829efb8 mvebu DT changes for v3.17 (round 2)
- kirkwood
    - Add d2 Network v2 board
 
  - mvebu
    - Add Armada 375 ethernet node
    - Add CA9 MPcore SoC controller node
    - Add support for dynamic freq scaling on Armada XP
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyZ0+AAoJEP45WPkGe8ZnuS8P/A9ARBOZHfRAjWY+jFRgiDl4
 eC+e6Iad1J6hQ4oWvK0KKLajvHc7GoPJIX8axFotXfoMEJJePPYM9Ye3TxtFPLU6
 xhiB9yakk4/EFhx0N223P7gBCnpwxEnSTVTKrx3nRVIWlDPfw7kV33JgMiExFXZB
 9idpAAHzvkSGIM4JNRc65YC+Auy3Pe++yLiMaAXwyscA7ucZZouot7MUCHnY+J6M
 BoKec244nMWSk6FzWWx2EEPQ4wTUoNpYh5tM6Y7JV8mtgIKLYe0gTseMQgy7hN2Q
 OnLFluK5jVbSqp0DIYR3Bf2Dw25YKrw9HjI10a4blXoJhu04naU8aVzDsMRZIgPS
 hJyG/V9gPqXoWjkDiCZO4OrksJQOjabP2inthpW6mYeoc+o9Ar1y6gb8TRJMnida
 EM4nf5sus1kJPLNkBhoAtbf7lzGPI0p7po2rrmH9uYzpfWGeLKzkTtudjvZTCaD7
 7jF5lCp9KpOI6gwvSt6CQd0TFiU7F6NVsV7N1kJnCW3HRfgSggxefEkIuRAVMzwd
 U9wvxu3o2XTVHx2DHv/9Oq+hiWiu9lX8s4nQXWBXIEcS+8hq4WbrBz5fKxzm+UQx
 2Jmo/Q6bNPB2oYRVySkLJ8BzG9yG+mQFC7Gj6a/gsoAZTWw9lu/ECCYXQztec70n
 o1jOJwWvn+wF2TcJgTPq
 =3NU7
 -----END PGP SIGNATURE-----

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

Merge "ARM: mvebu: DT changes for v3.17 (round 2)" from Jason Cooper:

mvebu DT changes for v3.17 (round 2):

 - kirkwood
  * Add d2 Network v2 board

 - mvebu
  * Add Armada 375 ethernet node
  * Add CA9 MPcore SoC controller node
  * Add support for dynamic freq scaling on Armada XP

* tag 'mvebu-dt-3.17-2' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: update Armada XP DT for dynamic frequency scaling
  ARM: mvebu: add CA9 MPcore SoC Controller node
  ARM: mvebu: Enable the network controller in Armada 375 DB board
  ARM: mvebu: Add support for the network controller in Armada 375 SoC
  ARM: Kirkwood: add DT support for d2 Network v2
  ARM: Kirkwood: allow to use netxbig DTSI for d2net_v2 DTS

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-20 12:23:56 -07:00
Olof Johansson
87adf92b95 mvebu DT changes for v3.17
- kirkwood
     - add boards net2big and net5big
 
  - dove
     - add vendor prefix for SolidRun
     - split CuBox into it's variants
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTrWmuAAoJEP45WPkGe8Zn3zwQALeJr/x5nqhKb31d6gPwVkI2
 SQXbXqmumlcmEnU6DBUBxuquZHbWMsQNzHuzcDpkL4wIWbLS+ZYfPzwVV6pp5CLH
 YJXQxjXBY5zpRCUhXNtPzNurVdDVPAc+t0JFhbcGmnxktPE7FWMI9luH0g52h4tr
 tuhot9uzU8P2eT2Il/QOjs0gA3nZlGXGAZSgUy9drBGRi11pnRLOh16XIi/38h3O
 RrNWNirCRnhAuQgPwOYt3jnDrG/Lqrr4UXeRw0uWIhM3w1dTtuZjxcEEtNXylToO
 pbgkAq7dZc32VqlJHwfI5y9YhNHG2fj6Y3IBngzD9XymrsCJJoRLSZixRR9w5G++
 jCLFfTmdCrhKvCwA20vC6pu02Q9TLGq7CRjfRAC+FZmZGYUmQvCTuOQ96h4iFkWQ
 S7avpw4OV8H3Zk3ncZTz8U2fFARoHwz/MzvZewD+wmoITPcrbj8AhQvOz9du9je4
 ekVqruwPK/GrXZusYHXEt4TvRnPq1ziqt8Wy/oyZuGesOYQGYUS9frGVoU4sJ9g2
 t7K0kzlkBiougDsdYQGcqNMHjGYTC8ciLCho9QlBlJmw2FQ+rya1LPfOpxWnaJ3C
 ZQ85dSy64Bfq1LZX9TiCFTkuSqmH2+nY9yc7pJnIx9Sfb9IK7BbphQgSvKsSZxBC
 9piGkkRBPfIHq9iEs9rG
 =RIUZ
 -----END PGP SIGNATURE-----

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

Merge "ARM: mvebu: DT changes for v3.17" from Jason Cooper:

mvebu DT changes for v3.17
 - kirkwood
   * add boards net2big and net5big

 - dove
   * add vendor prefix for SolidRun
   * split CuBox into it's variants

* tag 'mvebu-dt-3.17' of git://git.infradead.org/linux-mvebu:
  ARM: kirkwood: fix net5big regulator gpio assignments
  ARM: dts: mvebu: split SolidRun CuBox into variants
  dt-binding: add vendor prefix for SolidRun
  ARM: Kirkwood: Add DT descriptions for net2big and net5big.

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-20 12:22:56 -07:00
Olof Johansson
aaaa10b096 Samsung DT updates for v3.17
exynos3250: add i2s dt for audio interface
 
 exynos4
  - cleanup arm-pmu node because of 4 pmu on
    exynos4412 but 2 pmu on other exynos4 SoCs
  - add support sub-nodes to exynos usb host for exynos4
 
 exynos4412-odroid-common
  - fix T-FLASH hotplug detection
  - disable 'always on' for BUCK8
  - add support for GPIO based buttons
  - add MAX98090 audio codec
 
 exynos4412-odroidx2 and exynos4412-odroidu3
 - refactor exynos4412-odroidx and exynos4412-odroid-common
   for odroid-x2 and u2/u3
 
 exynos4412-odroidx
  - add support for USB phy, host and device
  - enable common hardware blocks, secure firmware calls,
    watchdog, g2d and fimc (mem2mem) multimedia accelerators
  - add support for USB phy, host and device
  - correct memory size
 
 exynos5410
  - fill in CPU clock-frequency property to avoid warning
 
 exynos5420
  - remove display pd because of instability
 
 exynos5420-peach-pit and exynos5800-peach-pi
  - sort nodes each other to check its differences easily
  - enable audio support and add sound-card name property
  - add mask-tpm-reset node
  - add cros_ec including keyboard, i2c tunnel and tps65090
    and battery under the i2c tunnel
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTybsKAAoJEA0Cl+kVi2xqs6YP/jZ6goZrfxAa2ZbNHd6VHg3M
 61mm3X1WNVohjC8uMoK6NzS4BVzwjYwgq5pRYa80bSx93h0ygPWNM0RapaW7993G
 JHa9RCwfOww7c33ZzeFlalDVpbbStRdT/Z5bca4XFPhzuuNqzt5NSFTisRHnYzVg
 9G7YGYzYJdBPPgGiowtel2TjCw+cVMk6nnV4WParOACYVLVmRU78dBYQ+BQC1aZ9
 YsNqjO/7Y1wKMMpmpoNlKd4/PC6kVqzMCDAWQA4TDqdXD3aEOcIMAr52o41tEVzr
 4BVyBw17nxMhE+wAk/LWRka4sE0yX51y0shAFdm2l/F671Q/dX8+Vx9H9YCyfib9
 9p1CHuVLo3rDiOaScRLYcusk2N1C8+CctwZ90eTkdGcB0APdwqVDZIpSfv743dJf
 toJBxfB3In0+2ca47w4Fcm2gLkaH028/dqjSwM1esBXWEurFOc2WfUiY4mJXd1TR
 +N+dYjU9u3R6n5/jUIKNtc49BLhIQMM3dPZRI//u6W/zEIsN5LpFhH4mm0lLfpb0
 mADbxwDAYvTAtLtImTkfb/BWdynXdFDFH1DFRZMV4GT+y2gktS43BKRzdATAGR6C
 y5I9q/rRZMEletfO+xkDyNkueNkwi3ZSHJubfvZC201qfL+LUxDxoOuKeLnsybSs
 gehX1kv8ut/K3/fXGkkK
 =LmMW
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Merge "Samsung DT updates for v3.17" from Kukjin Kim:

exynos3250: add i2s dt for audio interface

exynos4
 - cleanup arm-pmu node because of 4 pmu on
   exynos4412 but 2 pmu on other exynos4 SoCs
 - add support sub-nodes to exynos usb host for exynos4

exynos4412-odroid-common
 - fix T-FLASH hotplug detection
 - disable 'always on' for BUCK8
 - add support for GPIO based buttons
 - add MAX98090 audio codec

exynos4412-odroidx2 and exynos4412-odroidu3
- refactor exynos4412-odroidx and exynos4412-odroid-common
  for odroid-x2 and u2/u3

exynos4412-odroidx
 - add support for USB phy, host and device
 - enable common hardware blocks, secure firmware calls,
   watchdog, g2d and fimc (mem2mem) multimedia accelerators
 - add support for USB phy, host and device
 - correct memory size

exynos5410
 - fill in CPU clock-frequency property to avoid warning

exynos5420
 - remove display pd because of instability

exynos5420-peach-pit and exynos5800-peach-pi
 - sort nodes each other to check its differences easily
 - enable audio support and add sound-card name property
 - add mask-tpm-reset node
 - add cros_ec including keyboard, i2c tunnel and tps65090
   and battery under the i2c tunnel

* tag 'samsung-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: Add I2S dt node for exynos3250
  ARM: dts: Add cros_ec to exynos5420-peach-pit and exynos5800-peach-pi
  ARM: dts: clean up arm-pmu node for exynos4
  ARM: dts: remove display power domain for exynos5420
  ARM: dts: Add sound nodes for Odroid-X2/U3 boards
  ARM: dts: fix T-FLASH hotplug detection for exynos4412-odroid-common
  ARM: dts: add support for GPIO buttons for exynos4412-odroid
  ARM: dts: disable 'always on' for BUCK8 regulator for exynos4412-odroid-common
  ARM: dts: refactor Odroid DTS file and add support for Odroid X2 and U2/U3
  ARM: dts: correct memory size for exynos4412-odroidx
  ARM: dts: add support for USB phy, host and device for exynos4412-odroidx
  ARM: dts: enable common hardware blocks for exynos4412-odroidx
  ARM: dts: add port sub-nodes to exynos usb host modules for exynos4
  ARM: dts: Add mask-tpm-reset node in exynos5800-peach-pi
  ARM: dts: Add mask-tpm-reset node in exynos5420-peach-pit
  ARM: dts: Add sound-card name for Snow/Peach-Pit/Peach-Pi
  ARM: dts: Fill in CPU clock-frequency for exynos5410
  ARM: dts: Sort nodes within Peach-pit/Peach-pi dts files
  ARM: dts: Enable audio support for exynos5800-peach-pi
2014-07-19 15:06:48 -07:00
Olof Johansson
f37ac9e5a4 exynos cpuidle update for v3.17
- add callbacks exynos_suspend() and exynos_powered_up()
   for support cpuidle through mcpm
 - skip exynos_cpuidle for exynos5420 because is uses
   cpuidle-big-liggle generic cpuidle driver
 - add generic functions to calculate cpu number is used
   for pmu and this is required for exynos5420 multi-cluster
 - add of_device_id structure for big.LITTLE cpuidle and
   add "samsung,exynos5420" compatible string for exynos5420
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTybYIAAoJEA0Cl+kVi2xqcmsP/Au37R0j1B8KpZ4scUBTczHJ
 t/oucJ3N2y7vSNdqZ21izolKQjl94NAidpzeaL0lXmthoAhdc8ESwMK8Nd9TR27r
 qJyu+FiXQFhZy9NbaKbkvl27bzfRJPaBQzDAPM6HvExP5p0aIUCGXu9mDUb6koe4
 Zm344G5az7iooRkerPw6SrswiJ6BJ6R4elkFGsZLDTRhLWoZ36PG2puRuEk6lVO7
 X7bsyvbx+Go6ru4KUvMRBIoMUDRDL0NbIFq0p8Q6naEbHSucYAo9MfHYJ/Hux/9B
 G7UoVwLjPyR2jbAYIn6XyDjWKvPEL1FwwuY1OwJ/oIa32yD0LQ1d6dEX7Px5z4Ts
 6lpTeaFKPuDLz2VN+WuRyTySnJ3cD4RihagNSTpTIMmvk0k2tPwtXhvhTkP73Gsb
 fV11rywmyMbdcBvRawN7DmSz10iSoF6VLsMF3WBcaNDBzbthRNMmHc2twbkBo0T+
 lxyHvstwD78vrYODLX6lelfsru1RPwaIFFj/sTSaGibLR+I8Xq2MKPpZeO8lUwAJ
 u057QCBDmVvwkBc40HRnjBvP+RjJp3+jnaB3GVplPkOaSmhEtRQezyHKEzbT0LoW
 n9l4UbnmV8QeiWRtFfI4qK43ZTp4Eq6b/CE7qIrDG1zTofJK3ySuo7/t2wm5HMTQ
 GJNJpPl6GweryKVDlJ0M
 =jkc2
 -----END PGP SIGNATURE-----

Merge tag 'exynos-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc

Merge "Samsung exynos cpuidle update for v3.17" from Kukjin Kim:

- add callbacks exynos_suspend() and exynos_powered_up()
  for support cpuidle through mcpm
- skip exynos_cpuidle for exynos5420 because is uses
  cpuidle-big-liggle generic cpuidle driver
- add generic functions to calculate cpu number is used
  for pmu and this is required for exynos5420 multi-cluster
- add of_device_id structure for big.LITTLE cpuidle and
  add "samsung,exynos5420" compatible string for exynos5420

* tag 'exynos-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: populate suspend and powered_up callbacks for mcpm
  ARM: EXYNOS: do not allow cpuidle registration for exynos5420
  cpuidle: big.LITTLE: init driver for exynos5420
  cpuidle: big.LITTLE: Add ARCH_EXYNOS entry in config
  ARM: EXYNOS: add generic function to calculate cpu number
  cpuidle: big.LITTLE: add of_device_id structure
  + Linux 3.16-rc5

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 15:03:08 -07:00
Olof Johansson
f57c0e049a Samsung cleanup for v3.17
: Most of them are for exynos SoCs, remove useless
 codes and update for PMU consolidation.
 
 - remove unnecessary header file in mach-exynos/pmu.c
 - remove unused code in mach-exynos/common.h
 - remove mach-exynos/regs-pmu.h dependency from PD
 - remove file path from comment section in mach-exynos
 
 - move SYSREG definitions into mach-exynos/regs-sys.h
 
 - add mapping PMU base address via DT for PMU cleanup
 
 - use staic in mach-exynos/common.h
 - update Samsung UART config options for low-level debug
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTybGdAAoJEA0Cl+kVi2xqwW4QAIgCaoe33s4qCUY1n1xZjLld
 DiLaolgeFyTMB7jekRgNhdCrdUXNPWRhp94dM3pzoiV8RAzXru86Xa86FbVkH6SZ
 sPShkL4auv+D+fQ1bso0EyB2GPGm5m8IJ7ZrPwgVUItX7TUnfIsvNsOsg7iY9gcw
 dMe8fb+oFieVlutX3ITL6thtmrJxCgM67Yyt/WY4HrShtR9dNi1soTUYBmQLznD/
 zqf58657eTVc8M0eiA9mkFSQJ1N5C670fyZN6CcQoKXIGvf5oh4ba6CUKkSQBM9Y
 UY7jksM/nXujyj0N2tIKNKFrkhBGhH99Rtp66R93tV7FCM9rgbsYwWwJCr6rqAVk
 u9NQFF2pbvRsgkw18coV9yxVyafLYlVdfGUzl2yq7u9SR3wmPcjROERer0h5UueR
 0mEq5v6eok2EZ29Tn2vU2Io0RShFbxLGNQC2/cs3PS+Un7xla5VOmwFjtKlWWtVA
 LHTbdGthjSGxH0SXOfXQD2pubkXLLEU7AekpOC+i14o97g9B235mHIP/m+X7a3F7
 cVCza9yRtKA1ztkdgq3vC29n09+4hU1qGVsQN8btM8ItqpGqLbb8qUj6wLGfhOXb
 UfYBo5RrIb1neAhKapaaB5Nus/9AQrkkYwVPiO+pWZ1KrIvRSLEjFjjrc4pJw+QS
 SQdAhJJQ0k6H82lQAu9A
 =goDG
 -----END PGP SIGNATURE-----

Merge tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup

Merge "Samsung cleanup for v3.17" from Kukjin Kim:

Most of them are for exynos SoCs, remove useless codes and update for
PMU consolidation.

- remove unnecessary header file in mach-exynos/pmu.c
- remove unused code in mach-exynos/common.h
- remove mach-exynos/regs-pmu.h dependency from PD
- remove file path from comment section in mach-exynos

- move SYSREG definitions into mach-exynos/regs-sys.h

- add mapping PMU base address via DT for PMU cleanup

- use staic in mach-exynos/common.h
- update Samsung UART config options for low-level debug

* tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: Add support for mapping PMU base address via DT
  ARM: EXYNOS: Remove "linux/bug.h" from pmu.c
  ARM: EXYNOS: Remove regs-pmu.h header dependency from pm_domain
  ARM: EXYNOS: Remove file path from comment section
  ARM: EXYNOS: Move SYSREG definition into sys-reg specific file
  ARM: EXYNOS: Make exynos machine_ops as static
  ARM: EXYNOS: Remove unused code in common.h
  ARM: debug: Update Samsung UART config options
  + Linux 3.16-rc5

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 15:01:08 -07:00
Sachin Kamat
fc3791f3a9 ARM: exynos_defconfig: Update exynos_defconfig
Removed outdated configs. Enabled most of the configs used on latest
Exynos based platforms. This will provide a reference for users trying
to verify and test various features on Exynos based platforms and also
help in detecting breakages by widening the build coverage.

Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
[arun.kk@samsung.com: on Snow, Pit, Pi chromebooks]
Tested-by: Arun Kumar K <arun.kk@samsung.com>
Tested-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 14:59:32 -07:00
Krzysztof Kozlowski
7310d99ffc ARM: EXYNOS: Fix build breakge with PM_SLEEP=n
Fix building of exynos_defconfig with disabled PM_SLEEP:
CONFIG_PM_SLEEP=n
CONFIG_PM_SLEEP_SMP=n
CONFIG_SUSPEND=n
by moving functions for power up/down of CPU and cluster to platsmp.c

The build error messages:
arch/arm/mach-exynos/built-in.o: In function `exynos_boot_secondary':
arch/arm/mach-exynos/platsmp.c:111: undefined reference to `exynos_cpu_power_state'
arch/arm/mach-exynos/platsmp.c:112: undefined reference to `exynos_cpu_power_up'
arch/arm/mach-exynos/platsmp.c:116: undefined reference to `exynos_cpu_power_state'
make: *** [vmlinux] Error 1

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>,
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 14:59:24 -07:00
Olof Johansson
46dd1230ba mvebu defconfig changes for v3.17 (round 2)
- mvebu
    - Add appended_dtb support
    - Add devtmpfs support
    - Add 375 network driver
    - Add cpuidle support
    - Add cpufreq support
 
  - kirkwood
    - Remove kirkwood_defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyZrLAAoJEP45WPkGe8ZnPkQQAILwRM3P36VWU5KrcpHq9XYj
 FG1vabDUPOt4cjKjwrjLB23AL0oYaHWkoqwvVEIuCjWqrD1uYn/qemgA2e9/C+dT
 sfwOq+nDy2uDFwa3L8BTTtTgmJcmjMwU0ntXv1DUEjLZnSLg+qmpzS8RVCBhTkbZ
 VLhMmJAuyM5WLWFLyncKkODufsghFpQ/8oC9cs1kiLKHoUQPjiYtPjVZlEM3evHF
 Sg6Rs40GjNe6qX4gydGGQCEDsr/eWqVFzAx75DJqDHCj2I4leDdeK0Wb1etmJrWS
 4zPBAcBShUDsRnDlOXJ98ek8tpcTE9gUI9Zrf0m9vz7MB6eIbpUYUNWVnPjVFNLx
 SCSKquUpaPZAJZ0mN8Gpe/RAYSt1l42aQal2Y7Qw0Pd22mwB+yzSfPJjGqM3BqHF
 LKl3S9cCV6lmTdmV+S+medwgX9OzoDFniSzNcqYRNrRkbHHPGIIVK9oLEu6Nd3/C
 +v2SUN34psIUIgYGKJcrRaBx2SFxX1Xhmh3AfeBHtNqhCDBLKKlqVkI3yBxckXEN
 yOMy9AcipZ/sCNC9gk+BN4jYuFsv6+IUk74+193rzvRjhL/6s7fCb7UIMqrAk0Y3
 +1ggU1p+TWBbBzzP2e2K54z8QZ5I3g8p/PIgfQBoJ5knF5XUXUMAfLKBDhvgvKOW
 5/QxQY/GeiWN8F+BwI/4
 =aLjX
 -----END PGP SIGNATURE-----

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

Merge "ARM: mvebu: defconfig changes for v3.17 (round 2)" from Jason Cooper:

"Here's all the defconfig changes we have for mvebu this time around. The
big one is the removal of kirkwood_defconfig, corresponding to the
mach-kirkwood/ removal in mvebu/soc."

 - mvebu
   * Add appended_dtb support
   * Add devtmpfs support
   * Add 375 network driver
   * Add cpuidle support
   * Add cpufreq support

 - kirkwood
   * Remove kirkwood_defconfig

* tag 'mvebu-defconfig-3.17-2' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: update mvebu_v7_defconfig with cpufreq support
  ARM: mvebu: defconfig: enable cpuidle support in mvebu_v7_defconfig
  ARM: Kirkwood: Remove kirkwood_defconfig
  ARM: mvebu: enable Armada 375 network driver in mvebu_v7_defconfig
  ARM: mvebu: add devtmpfs to mvebu_v5_defconfig
  ARM: mvebu: add appended DTB support in mvebu_v5_defconfig

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 14:30:21 -07:00
Olof Johansson
4338925434 mvebu SoC changes for v3.17 (round 2)
- kirkwood
    - Remove mach-kirkwood/, It's fully supported in mach-mvebu/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyZhcAAoJEP45WPkGe8ZnrcAP/jxptr0gH1Lin3eHItfiK7X+
 s8JOtb0bL23mMElvnA85RkJC+n5lVeP16YfMEeg+oJDWn6wBC1UTOXCBRv93iEyg
 bUFlvo1rHUgcvY3Kj7/V5biCertYy2J/EU54h6fHgOWOb9P9pT9R2GRONlVn2ZSR
 xdzL/OPXamG0yCaIW7AGPCp5SNMMNFzZXdIIL5dxhx5oxSg71JgoPwXOomyAfSBi
 niDiQEfQ3a7h8Fj9QYEnJxIUkatw6g5rojgQIcyeWFJYlMKn5CsqBsbr5M24ZaFX
 O7GuHZbsZvU/vhfjcOmF5bjnBTNhOoKuc9rXh9NytLbtqXCjkMeQ9I+/bvoXARFt
 +sPsQOsoHN8OyY1To3wONR0LLPLGLA5giveyjgevKg61rb7tktdVr5R5uu8eujYO
 Qp52jua/ySW2H5soJwxPWcSuE4GY9cQscCDU1lZKXKcQmu0VqDwk1vaF3r5+sHCl
 Lm0Ur2d++BMm1L7WrX03+MdGzuiTu+m8duslukPV4VnRt6og9u6EOFy2Q5iv9NDX
 ZN6kGrcuQHSjrp/fFb+mV1xlW01SHAgD2tyy0AkN/RXSiyd8/+2rVtrr4JZcHr7S
 PCCfK3dsGyGPCWOmeh0/y/OMtJn8lR/s4sktK6y4AUw/m7yqJMsngVZ0ZAJNNL/R
 rwV7qc4RtvkCGMNUkokE
 =lxH8
 -----END PGP SIGNATURE-----

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

Merge "ARM: mvebu SoC changes for v3.17 (round 2)" from Jason Cooper:

"Yeah, it's just one patch, but it's a beautiful one!  Thanks to the
efforts of many people over the last couple years, and in particular,
Andrew Lunn, Kirkwood has been completely converted to DT."

 - kirkwood
   * Remove mach-kirkwood/, It's fully supported in mach-mvebu/

* tag 'mvebu-soc-3.17-2' of git://git.infradead.org/linux-mvebu:
  ARM: Kirkwood: Remove mach-kirkwood

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 14:28:06 -07:00
Olof Johansson
a67f02c98e ARM: tegra: defconfig updates for 3.17
This set of patches update the tegra_defconfig by first regenerating on
 top of v3.16-rc1 to prune all non-existent symbols or symbols which are
 now selected by default.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyRhfAAoJEN0jrNd/PrOhTE0P/0ThW4RfNkX0FNpn1f8LwYxz
 5h0+/UPrTxU5AimkjNxLDwHNXKaYrcwNyC5dKc7FlpcUXnXcWt6aTHD2whubVxDf
 y4MTo+I8HcPfGA11y4T8A2KE1l/Ddhn4rY9lK0pE4eQnlfhPc+prpEnHdmdskAvS
 6ZZmZi0vOfbx+VswJMVaBU+CuC0kY80ZbRR8jn7G3hVlFdE+WW6qVBIw3PP1VtZi
 xO0Q10nmGPdelOPWf3mbMxOagxRrIsVXLUQe4G4YnkDQdDODgYDtMOPWh3yhME3f
 KHDEtvrK7SxKTkd7QL7TT8B4veFdhZNNdUmAaRygbEymhM6esZvR85BXWeo4jmZE
 55yZe6eq6AdpPGA8BmxLnUQzr8R+Gapvmf58eonaaW+fZKiJWO5S0uRPOERW08HU
 tEaFJOCUHto2gqLA30KsGVPeNkaMznw9o/wEztRpqszMJjd7pA8G0mGAj/s1wZFD
 sHFdHyBBPxb5Of038cqB3ro7yWp3xefM1yYU2ekAkE/vf0orqhhpO6UexH9/rgSx
 LShXWOBPcxPm6kZSbfRJFP7LzGWRC6OlzcOeGooUXWXy+dPbOPIITdW/bdm5RaHy
 oZFZkuTGvxIpuF/GJTV0aSMzF0NiG/7dTjSIyhnEANjPRlRclusOE6n2jHhykQh7
 aHaIf+98ThRztfW7tKW+
 =mKLn
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.17-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/defconfig

Merge "ARM: tegra: defconfig updates for 3.17" from Theirry Reding:

This set of patches update the tegra_defconfig by first regenerating on
top of v3.16-rc1 to prune all non-existent symbols or symbols which are
now selected by default.

* tag 'tegra-for-3.17-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: enable igb, stmpe, i2c chardev, lm95245, pwm leds
  ARM: tegra: rebuild tegra_defconfig

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:53:10 -07:00
Olof Johansson
223f93ed7e ARM: tegra: device tree changes for 3.17
- New board support:
   - Apalis T30
 - HDA support for Tegra124 and Venice2
 - Display on Medcom Wide and Roth
 - GK20A support on Tegra124
 - XUSB pad controller for Tegra124 and Jetson TK1
 - Various cleanups
 
 This pulls in the for-3.17/fuse-move, for-3.17/dt-cros-ec-kbd and
 for-3.17/xusb-padctl branches to resolve dependencies.
 
 Note that the Apalis T30 support has a runtime dependency on the
 for-3.17/pcie-regulators branch, so they should preferably be applied
 in that order. I didn't merge that branch into this because Apalis T30
 support is new, therefore can't regress, and because the dependency
 exists only at runtime.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyRtaAAoJEN0jrNd/PrOhgRUQAJUXqH+xOusiIJj0Q+1Uh2ga
 5JiqBqhVjaN0plF9XyZJq3/FP3mU8IslLswK3ybh/gqwOGqQ0qrXP2Nc9GHsvS8I
 KIyMRqu7sGgTKFMHRLH3V7+LTwr6nNoonTFCDQAhJZb3nbxmxpToyj2XpSpcN3kX
 ZaJXeSMe6yk09YQijvM6aq/gAPaz2aHLkIThzwA6GvFj3vfRKyoqQdeycUY4y1Lq
 AUGADoJOqo33megAdGlu1iFAmm36xv6c6g6TK3EnBnvYf6PTwAPg3IHIGu5G7UD9
 kcWqrveCi5VwIKWv4vJ7S3frj7OXHovel4qvN6GiDHQLKAHB+6PJAQwHYhLdHiEP
 PhXfosca7KnAPDncoeKyETiYU4W4mIVOec+ySvFZvI17/hgfW/UkLuyzWTYytLjA
 4B9Y3H/LgVIaKFwNEVpYh0511S2J9Zbm8X0qw51M0krO3d/Ux08OeXS5KCQLjHRK
 m1VJ6atYYbfqOO4v664pwZkPVSvwz2mCw/Pi6STFd2vl6R05onuS7voHQd7LqFa/
 15mSaAbdUxNr1RNCz4wTSxJ4gauD+TWmJdboT4i2hAvgL9SSLjJ9tOvwQxQIliRg
 NKUNwtfRPIOiO/dywl4bDDQphxjdCtuLZtHdKhqcPzTakKpXIw70THgEdEACtYMt
 FRZSkOHGAnpfZkiBNbt1
 =t3Ef
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.17-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/dt

Merge "ARM: tegra: device tree changes for 3.17" from Thierry Reding:

- New board support:
  * Apalis T30
- HDA support for Tegra124 and Venice2
- Display on Medcom Wide and Roth
- GK20A support on Tegra124
- XUSB pad controller for Tegra124 and Jetson TK1
- Various cleanups

This pulls in the for-3.17/fuse-move, for-3.17/dt-cros-ec-kbd and
for-3.17/xusb-padctl branches to resolve dependencies.

Note that the Apalis T30 support has a runtime dependency on the
for-3.17/pcie-regulators branch, so they should preferably be applied
in that order. I didn't merge that branch into this because Apalis T30
support is new, therefore can't regress, and because the dependency
exists only at runtime.

* tag 'tegra-for-3.17-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (28 commits)
  ARM: tegra: roth: add display DT node
  ARM: tegra: Fix typoed ams,ext-control properties
  ARM: tegra: jetson-tk1: Add XUSB pad controller
  ARM: tegra: tegra124: Add XUSB pad controller
  ARM: tegra: add GK20A GPU to Tegra124 DT
  ARM: tegra: of: add GK20A device tree binding
  ARM: tegra: roth: enable input on mmc clock pins
  ARM: tegra: roth: fix unsupported pinmux properties
  ARM: tegra: Migrate Apalis T30 PCIe power supply scheme
  ARM: tegra: tamonten: add the display to the Medcom Wide
  ARM: tegra: tamonten: add the base board regulators
  ARM: tegra: initial support for apalis t30
  ARM: tegra: jetson-tk1: mark eMMC as non-removable
  ARM: tegra: venice2 - Enable HDA
  ARM: tegra: Add Tegra124 HDA support
  ARM: tegra: Add the EC i2c tunnel to tegra124-venice2
  soc/tegra: fuse: fix dummy functions
  soc/tegra: fuse: move APB DMA into Tegra20 fuse driver
  soc/tegra: Add efuse and apbmisc bindings
  soc/tegra: Add efuse driver for Tegra
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:51:26 -07:00
Olof Johansson
b776eec135 ARM: tegra: rework PCIe regulators
This branch reworks the set of regulators that the Tegra PCIe driver
 uses, so that the driver and DT bindings more correctly model what's
 really going on in HW. For backwards-compatibility the driver will
 fallback to using the old set of regulators if the new ones can't be
 found.
 
 I've made this a separate branch in case it needs to be pulled into the
 PCIe tree to resolve any conflicts.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyRXmAAoJEN0jrNd/PrOhpcIP/1bhFxw7a0HjG1Cwtj27uJKo
 2S9z28sFbVERmOTy4Sfy/bf3EEBNZajgYJ0kOIJbrVRkpGV6BU/3nNVmqR9G1jOY
 9wVr7e9Z0lWQ8r8e9jXIRpTOO1PUFfx3AhyjD1kT5bUsI8m5dcDmryyLqsvh2UDn
 F1S2JpAeylVSFzZLspqnuc1HgG6V4xMxt7JCKQqQo4uTTs2LVWpLWRqQEOhpsmVW
 WDSzovSXBThm4wXvZlrTij7HuOqYbwG3wLpzJMVVfhysRZDfIO8i7hK2kAQ8+3O6
 0yS8HsfzrjhGvNgbGUt+hGTYg+omHp3i0RJf/AxhOIOrA5fIs4pOTC2HSqq+kG4x
 K2OWCUboaTbMpJ/+TwcY83Ohk/r+Qj3Ay9loyIbQ5e2ORbkmpvbBALiQLTFwswaf
 zPsuwSXW8imVnPsduo+7qnvq2sbQ45Wy30wZMPRKYSfQzNY40AK0hzvRtW1BfMHY
 3P35z+9uIygiOr4KlwvbnTjL/nNWa5aVO8CYDfAxDa81SUJn/4vGkJNLNw6z1zo8
 Jvem210R6G0dca257NFWZ9w7hB9bfX3AVR8ZovDkg7tiOOlaOwq8HJrVU8oM3dtu
 /ztRVYKo/XqRtKyCcUnCtoF6CswlhfT4u4JOmo/5KwD9VBmxQPWHEkUwMl9j6eu3
 5dNKF79ROlQ1Idk0jjDZ
 =48cL
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.17-pcie-regulators' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers

Merge "ARM: tegra: rework PCIe regulators" from Thierry Reding:

This branch reworks the set of regulators that the Tegra PCIe driver
uses, so that the driver and DT bindings more correctly model what's
really going on in HW. For backwards-compatibility the driver will
fallback to using the old set of regulators if the new ones can't be
found.

I've made this a separate branch in case it needs to be pulled into the
PCIe tree to resolve any conflicts.

* tag 'tegra-for-3.17-pcie-regulators' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: Remove legacy PCIe power supply properties
  PCI: tegra: Remove deprecated power supply properties
  PCI: tegra: Implement accurate power supply scheme
  ARM: tegra: Add new PCIe regulator properties
  PCI: tegra: Overhaul regulator usage

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:35:45 -07:00
Olof Johansson
c6b659c005 ARM: tegra: core code changes for 3.17
Some of the code that's currently called from the Tegra machine setup
 code is moved to regular initcalls. To catch dependency violations, the
 various code paths now WARN if they're called to early. Not all of the
 potential candidates are converted yet, but those that were have been
 verified to work across all supported Tegra generations.
 
 A new function, soc_is_tegra(), is also provided to make sure that the
 initcalls can abort early if they aren't run on Tegra, which can happen
 for multi-platform builds.
 
 Finally this also moves out the PMC driver to drivers/soc/tegra so that
 it can be shared with 64-bit ARM.
 
 This is based on the for-3.17/fuse-move branch. The split is somewhat
 arbitrary but allows the dependents of the for-3.17/fuse-move to pull
 in as little code as necessary.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIbBAABAgAGBQJTySPxAAoJEN0jrNd/PrOhVIAP+N6yVxQa/8sMYpy7ohr2b/ZP
 IcevK+9Q3mZYzxVoI1am1p11louZgGFE11yuvI2kmjTLg9UcFC+O6iEc05XvIIIC
 nVLg4V1F5VWyv0BtnqTAuMX+hOqj9ZFx5Xuq0rpulKLs9aygkKEJnI0eOyMDbnAN
 OsGmhOeblZkgS0Gk9Dg9NiFPpQ/sl6LRZDoVpYA+fKEb6SCxei5Z48aaUhhHwq2k
 IVQUcMWz9k4mPjWO9OcO2gkDaq79OYWzk/DP4hFk5telZAkGjJg+UdNWIXSPg9A/
 sjMxpkRpTR8sDVPZ3n1YnxJ9sUV3Q88SmN+x78W0QGNbLxELU8Fhd2xPVrA2PAIG
 +uP0DKkrDi+AV3euEBOIOKTMptrgGDPigT+b127vxUigbQ3D90SV9xN0+/+NaLcv
 J3msHcjFo9IW03a5q8DBdkeIy4xs7uZW9uR72ie1uUtv2oLkoS/qrwxauj3x8J52
 dqtY98xCPtFQnR2HyT7VRLBibGq0zelQ9aYENy5Su+3UI73AIG15ztzrOcEvN8Cc
 DAbBKgix63TlJF51VlCCLGUMpt1StDoia8A3iMIqNEu/CJqXaqQ/77im4KGybqgm
 JoH7OHVhewDBxVg2XfwcDX8TnmMQjLTMkzLG8oSg7uAqyrJm0xkC7ttx4gPRlSJX
 kEQrfqyjbL3C42+4lgc=
 =w/53
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.17-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/cleanup

Merge "ARM: tegra: core code changes for 3.17" from Thierry Reding:

Some of the code that's currently called from the Tegra machine setup
code is moved to regular initcalls. To catch dependency violations, the
various code paths now WARN if they're called to early. Not all of the
potential candidates are converted yet, but those that were have been
verified to work across all supported Tegra generations.

A new function, soc_is_tegra(), is also provided to make sure that the
initcalls can abort early if they aren't run on Tegra, which can happen
for multi-platform builds.

Finally this also moves out the PMC driver to drivers/soc/tegra so that
it can be shared with 64-bit ARM.

This is based on the for-3.17/fuse-move branch. The split is somewhat
arbitrary but allows the dependents of the for-3.17/fuse-move to pull
in as little code as necessary.

* tag 'tegra-for-3.17-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: Convert PMC to a driver
  soc/tegra: fuse: Set up in early initcall
  ARM: tegra: Always lock the CPU reset vector
  ARM: tegra: Setup CPU hotplug in a pure initcall
  soc/tegra: Implement runtime check for Tegra SoCs

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:31:22 -07:00
Olof Johansson
23e892929e ARM: tegra: move fuse code out of arch/arm
This branch moves code related to the Tegra fuses out of arch/arm and
 into a centralized location which could be shared with ARM64. It also
 adds support for reading the fuse data through sysfs.
 
 Included is also some preparatory work that moves Tegra-related header
 files from include/linux to include/soc/tegra as suggested by Arnd.
 
 Furthermore the Tegra chip ID is now retrieved using a function rather
 than a variable so that sanity checks can be done. This is convenient
 in subsequent patches that will move some of the code that's currently
 called from Tegra machine setup into regular initcalls so that it can
 be reused on 64-bit ARM. The sanity checks help with verifying that no
 code tries to obtain the Tegra chip ID before the underlying driver is
 properly initialized.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyR7HAAoJEN0jrNd/PrOhXRoQAKIs/o8Xf6aTb48OOODFt8g0
 3GiKaYfVPk6VzkrhywmulOndmYy9BjLwhX2jnPgPzFbM5h2jk39/PK3RtssD92Wm
 sHbDflbCj+gaLvjETbTWtYbbYmejqp2xhte/F+MMT0QJKl8BjmyO6WOoUL1+QEyW
 p+OUYRgasmyAiq7qov1MeMW+edNqFHhHpmnsva62NUbcOaKTJ6U6antm79PoAA9M
 Da3UScoX9BxqsyuxBteLdcpgSgOHjW/eLz9xHVf5gtG4ZsTjkWFRyP9wwY6rCxij
 +6cMvKs8OT2y+TjQ6qv5/Zu+XbXGbo2yujnK2oFkLsST/LWobGfuGXUp/K7CkkKJ
 0wgZS1t2iT3RXSQn/Fz8zJx9j0q3GJmvMFmdrOAh8Vx6ucP1m8DZ4noms37D0+Wn
 2HSW55sAXIUFALZgOiVRq0GXtw/iA76S9GtjfFWkCkyGV4WLH6C1NSoojvmXWQ3U
 QQWlpGODQFYUTDUhwh6/T3cP7Ip12W9OU2eTNfdgn8D+PU16CPSfdXN6JWxBI13L
 vVUxWMm9JG+QkbSjfw4q2A0dHEu6lssmOSvMjU6pm5v6xCfry6Fn6m3vBBU3OpLx
 mOge6U696hwL3tNMuwfsIVFNQpoHJT+2Saq71jS+XZeGn+5wC3ovejREls0HIzze
 kwHNIuMygB78uVwWyMJr
 =XyRE
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.17-fuse-move' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/cleanup

Merge "ARM: tegra: move fuse code out of arch/arm" from Thierry Reding:

This branch moves code related to the Tegra fuses out of arch/arm and
into a centralized location which could be shared with ARM64. It also
adds support for reading the fuse data through sysfs.

Included is also some preparatory work that moves Tegra-related header
files from include/linux to include/soc/tegra as suggested by Arnd.

Furthermore the Tegra chip ID is now retrieved using a function rather
than a variable so that sanity checks can be done. This is convenient
in subsequent patches that will move some of the code that's currently
called from Tegra machine setup into regular initcalls so that it can
be reused on 64-bit ARM. The sanity checks help with verifying that no
code tries to obtain the Tegra chip ID before the underlying driver is
properly initialized.

* tag 'tegra-for-3.17-fuse-move' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  soc/tegra: fuse: fix dummy functions
  soc/tegra: fuse: move APB DMA into Tegra20 fuse driver
  soc/tegra: Add efuse and apbmisc bindings
  soc/tegra: Add efuse driver for Tegra
  ARM: tegra: move fuse exports to soc/tegra/fuse.h
  ARM: tegra: export apb dma readl/writel
  ARM: tegra: Use a function to get the chip ID
  ARM: tegra: Sort includes alphabetically
  ARM: tegra: Move includes to include/soc/tegra

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:29:11 -07:00
Olof Johansson
7b2a428a33 Allwinner core additions for 3.17
Nothing very fancy here, only the introduction from the new Allwinner A23 SoC.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTyYkGAAoJEBx+YmzsjxAgF7sQAMBIpDf5H7ivlF4bp+G3oaZA
 w09Nk76g/PYxPOWuOY8wP2U/5XTbWflsLEWKtIX02Ig2u6cHIVzZ4iPixHlpkV5l
 0jwVwF3MDNJ5EdRh8Hgb2pQ6UpswMWdwVweFyQc7TngKimRLxFBh53SELfOUe3eR
 JX55EtjH0c3ui3JMgdRLV+HiwOf87n9v1mMipAU1f2m75tQf3CeJ0PhNajvBZa7u
 WvMKit7wFGZ4n24mh9ch/ZekYQIlE19kho0EWtfjEt/rrSjL1Htwg0Rpo09obdN7
 Mcbh/u7mNi7VwG0scBWhgNVTE2DyQygB+phGKEER8jbsG+hIvihlk+hkvne8COdF
 vqjQJoE+O/3iEFojOsLZ/sGeGrb505dBugSRnU8/P6fnP043ElNHzYz45HV+8prS
 H6AJRkPI4yIM4LuVO+wcpht/KsS9kgWktHY7wWRoSOHZwmLHp+oIKRiCZhavZbzm
 blX6/7NMvuIx/P/0Cgc0CAbv2igSBpwy6xzGt3Jx0yu2YGTKedrVUl1AfVLv5BYx
 fubGbMfwh5OKPiTl+kHeUf32cEpHJLQGYeGJ5tn1Pv5l9FpLENQTsJSWdMCpqYPE
 2Csn5UvmrdFZ0dl5OoFPUOQ2QLjotz2EjnAOBSKha2ZHYgTDEX/FIWz1pdfCk1I9
 LkbGzjWxVh6sYb3Dnzy3
 =z+k2
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-core-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/soc

Merge "Allwinner core additions for 3.17" from Maxime Ripard:

Nothing very fancy here, only the introduction from the new Allwinner A23 SoC.

* tag 'sunxi-core-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux:
  ARM: sunxi: select MFD_SUN6I_PRCM when sun8i arch support is enabled
  ARM: sunxi: Add earlyprintk support using R_UART (sun6i/sun8i)
  ARM: sunxi: Introduce Allwinner A23 support

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:22:47 -07:00
Olof Johansson
15bebad68e Allwinner DT additions for 3.17
Among the few patches that we have so far, there's a few noticeable changes:
   - Introduction of the Allwinner A23 SoC
   - Support for the GMAC on the A31. This is only available so far on the
     boards which bootloader enable the PHY regulator.
   - Addition of the infrared receiver
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTyYdmAAoJEBx+YmzsjxAgQO4QALUmVQllTZc+aha/BG+MNYds
 KpyIPvRuQ4npHNV+AjPtxthrQFlkEkwJ73JD0d8EzdOrkh0x5vrnlGwwprsa864V
 PIc2gB5q0dgK5EKx1jaa7+S+RopxZh8zpIc557tanHqG5QKfPSArxS7Y2Yidsztk
 GmfcZ/Y22HWGE/uGGieO5j+j+hGV1wKuLo+IP25UpE8XynFjCIcK9l0UREp24xW4
 RLc873nRQhrp1KTtijrgv+qC3P1l432n0f0vmvwY5/izfE50vXU/FN9W/6X/0Gg9
 CTS8hhZ2p3ILVoOgpSJVHRJ/SejYQkzL2r+hOTeXKpxjoHcI2FgrAJ+BpSLDNcYJ
 XyT/N95eeC8sPUBQe2fwyD+qW4q0qnfeCth9FAsIzXHVUsanVhA/gaWJhU/R7FkO
 uGbUFUBRoBJs3BvDnJ31zilHqzryldykEJRQcYQ8zc5h2EP10yf3MAt04ZyB++/4
 d+YFVR71k10QFqBiHqKzYk3btjG7k+OslPHJe7Ijoheap4ZMzTQFah4/X/x3uOIO
 XN5ay0jh5Ll1cuGQm4q6c8DggEVxOmKeF9AehTjZh3bG/aBFIuxoI85m1WTeUWEU
 h2dJ8591YkmBJIF7dy0lue1QqY0CkG9iiKDt0wIeEjRdInggr7ZH3C7CzB+dk+gE
 9BctMcK14uDrFw3DseWz
 =QpT9
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/dt

Merge "Allwinner DT additions for 3.17" from Maxime Ripard:

Among the few patches that we have so far, there's a few noticeable changes:
 - Introduction of the Allwinner A23 SoC
 - Support for the GMAC on the A31. This is only available so far on the
   boards which bootloader enable the PHY regulator.
 - Addition of the infrared receiver

* tag 'sunxi-dt-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux: (22 commits)
  ARM: dts: sun6i: Add Merrii A31 Hummingbird support
  ARM: dts: sun6i: Add ethernet alias for GMAC
  ARM: dts: sun6i: Add A31 GMAC gigabit ethernet controller node
  ARM: dts: sun6i: Add GMAC clock node to the A31 dtsi
  ARM: dts: sun6i: Add pin muxing options for GMAC
  ARM: sun8i: Add PRCM clock and reset controller nodes to the DTSI
  ARM: sun8i: Add reset controller nodes to the DTSI
  ARM: sun8i: Add basic clock nodes to the DTSI
  ARM: dts: sun4i: Add ir node to various boards
  ARM: dts: sun4i: Add ir controller nodes and pinmux
  ARM: dts: sun4i: Add new ba10-tvbox board
  ARM: dts: sun7i: Add board support for LinkSprite pcDuino V3
  ARM: dts: sun7i: Add ir receiver support to a20-i12-tvbox
  ARM: dts: sun7i: Rename sun7i-a20-ir to sun4i-a10-ir
  ARM: dts: sun7i: Add AXP209 support to various boards
  ARM: dts: sun4i: Add AXP209 support to various boards
  ARM: dts: sunxi: Add #interrupt-cells to pinctrl nodes
  ARM: sun8i: dt: Add Ippo-q8h v5 support
  ARM: sunxi: Add Allwinner A23 dtsi
  ARM: sunxi: Add IR controllers on A20 to dtsi
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:19:28 -07:00
Olof Johansson
730346236a arm: Xilinx Zynq dt patches for v3.17
- Document and use new cadence serial binding
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iEYEABECAAYFAlPI73sACgkQykllyylKDCGYzQCggc3g80f6R008+SNKlrN0Wuy+
 b9kAnjqTO0Q0kDf4PlI/a5EVsfPmOzoS
 =Bo6W
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-3.17' of git://git.xilinx.com/linux-xlnx into next/dt

Merge "Xilinx Zynq changes for v3.17" from Michal Simek:

arm: Xilinx Zynq dt patches for v3.17

- Document and use new cadence serial binding

* tag 'zynq-dt-for-3.17' of git://git.xilinx.com/linux-xlnx:
  ARM: zynq: DT: Migrate UART to Cadence binding
  tty: cadence: Document DT binding
  + Linux 3.16-rc5

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:16:34 -07:00
Olof Johansson
1409f3fd5b The i.MX device tree updates for 3.17:
- Add device tree sources and pin function header for i.MX6SX SoC
  - Initial imx6sx-sdb board support with FEC, MMC, USB, PMIC, Audio
    and GPIO key enabled
  - New board support: mbimxsd25 and mbimxsd27 from Eukrea, aristainetos
    imx6dl boards, Rex Pro and Basic, Ka-Ro TX6
  - Restructure imx6qdl-wandboard.dtsi for new rev C1 board
  - Split M28EVK and M53EVK into SoM and EVK parts
  - A few correction around SDMA, SSI and SATA device nodes
  - Add eSATA support for Cubox-i board
  - Updates on edmqmx6 to enable PCIe, I2C and CAN
  - Use DT macro for clock ID for imx27 and imx6qdl
  - Add FlexCAN support for VF610 SoC
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJTyOTXAAoJEFBXWFqHsHzOnMgH/1Kjr8tbtPEx0aJ8HDAqAY7t
 L4oDPZOt5QtbkWN4PH00yvgpN/ODl5ux6u1OKXt6F/XYXcBWBngGcIpPl5Qwo8lG
 WMOt+OLh6xWSRwvzi9iXKU18PDbHvtHmSHCPLDC64T2esi8AuQIuWW8zWl+NAYhs
 yrhjxVN8VQBuc3XubxNjATXr4ybsB4uhpshuFYUvyGo+KeRNJv2aNen//KyFPVNC
 VuD/cRag46uWKymJ8gMtl5B5WzbIOqfs5wPHaULiIv8IJzItPW+PbGzyVK1XuTzl
 pRbQAIqw7BPCzKpJ1elyvz9MThYyJOhV7F36GZyZIVCvITDoH9bdR9ib1EH4Wyc=
 =q+sf
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

Merge "ARM: imx: device tree updates for 3.17" from Shawn Guo:

The i.MX device tree updates for 3.17:
 - Add device tree sources and pin function header for i.MX6SX SoC
 - Initial imx6sx-sdb board support with FEC, MMC, USB, PMIC, Audio
   and GPIO key enabled
 - New board support: mbimxsd25 and mbimxsd27 from Eukrea, aristainetos
   imx6dl boards, Rex Pro and Basic, Ka-Ro TX6
 - Restructure imx6qdl-wandboard.dtsi for new rev C1 board
 - Split M28EVK and M53EVK into SoM and EVK parts
 - A few correction around SDMA, SSI and SATA device nodes
 - Add eSATA support for Cubox-i board
 - Updates on edmqmx6 to enable PCIe, I2C and CAN
 - Use DT macro for clock ID for imx27 and imx6qdl
 - Add FlexCAN support for VF610 SoC

* tag 'imx-dt-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (125 commits)
  ARM: dts: vf610: add FlexCAN node
  ARM: dts: add initial Rex Basic board support
  ARM: dts: add initial Rex Pro board support
  ARM: dts: mx5: Split M53EVK into SoM and EVK parts
  ARM: dts: imx6: RIoTboard explicitly define pad settings
  ARM: dts: vf610: fix length of eshdc1 register property
  ARM: dts: Restructure imx6qdl-wandboard.dtsi for new rev C1 board.
  ARM: dts: imx53: correct clock-names of SATA node
  ARM: imx6: Align ssi nodes between mx6 variants
  ARM: i.MX27 clk: dts: Use clock defines in DTS files
  ARM: dts: imx: correct sdma compatbile for imx6sl and imx6sx
  ARM: dts: imx6sx-sdb: Add audio support
  ARM: dts: imx6sx: Pass the fsl,fifo-depth property
  ARM: dts: imx6sx: Fix sdma node
  ARM: dts: imx6: edmqmx6: Add can bus
  ARM: dts: imx6: edmqmx6: Add two other i2c buses
  ARM: dts: imx6: edmqmx6: Add PCIe support
  ARM: dts: imx25-pdk: Add USB OTG support
  ARM: dts: i.MX53: add aipstz nodes
  ARM: dts: mxs: Split M28EVK into SoM and EVK parts
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 12:12:57 -07:00
Olof Johansson
b40abaf07f The i.MX SoC changes for 3.17:
- Add devicetree support for i.MX1 and i.MX21 clock driver
  - Use CLOCKSOURCE_OF_DECLARE() to initialize timer for DT targets
  - Use of_clk_init() to initialize i.MX25 and i.MX27 clock driver in
    device tree boot
  - Remove i.MX1 camera support
  - Remove i.MX27 IP Camera and Lite-Kit board support
  - Add suspend and cpuidle support for i.mx6sx
  - Clean up unused clk_register_clkdev() lookups
  - Update imx-weim bus driver to support populating devices on a simple
    bus
  - Switch i.MX27 and i.MX6QDL clock driver to use macro for clock IDs
  - Make i.MX51 a DT only platform and clean up the non-DT support code
  - Support disabling supervisor protect via DT
  - Random defconfig updates
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJTyN58AAoJEFBXWFqHsHzO6WUH/2d/ZYyXS94Iw/kPm1FEweDg
 0wtHVb+Fs/Sjj961xASATNepBwOzpQ1ykI++kvZ1TQXk+FdaYEcB9idmTPycAp9j
 QcEmhvxjPmGJtjmTzc/zogL7tTf8TVKX0zGbFGhdpT5tmulY8NA6skAQpB0HAt+s
 I95O5t+adwNTl7hAcQWGxOb8E+CA2gJCPdnJ5rdPHr2nzw6B7SjjnjeC90vIbDdh
 b6jtfePLvbRUIif0kZuVMXWvebNYa+iRsXsvpoV95q3VJhoR2wPN+H4xnfNviJPb
 h+nzibRgrPTyxMWWZ3jtUjw4YIvNdrJWaulC2incOAIQTb7zxrn5w5qxxP3Uj4k=
 =RGCO
 -----END PGP SIGNATURE-----

Merge tag 'imx-soc-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc

Merge "ARM: imx: SoC changes for 3.17" from Shawn Guo:

The i.MX SoC changes for 3.17:
 - Add devicetree support for i.MX1 and i.MX21 clock driver
 - Use CLOCKSOURCE_OF_DECLARE() to initialize timer for DT targets
 - Use of_clk_init() to initialize i.MX25 and i.MX27 clock driver in
   device tree boot
 - Remove i.MX1 camera support
 - Remove i.MX27 IP Camera and Lite-Kit board support
 - Add suspend and cpuidle support for i.mx6sx
 - Clean up unused clk_register_clkdev() lookups
 - Update imx-weim bus driver to support populating devices on a simple
   bus
 - Switch i.MX27 and i.MX6QDL clock driver to use macro for clock IDs
 - Make i.MX51 a DT only platform and clean up the non-DT support code
 - Support disabling supervisor protect via DT
 - Random defconfig updates

* tag 'imx-soc-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (69 commits)
  ARM: imx: clk-vf610: fix FlexCAN clock gating
  ARM: i.MX: Use CLOCKSOURCE_OF_DECLARE() for DT targets
  ARM: i.MX53: globally disable supervisor protect
  ARM: i.MX: allow disabling supervisor protect via DT
  ARM: i.MX27 clk: Add 26 MHz oscillator circuit clock gate
  ARM: i.MX27 clk: Remove unused definitions
  ARM: i.MX27 clk: Introduce DT include for clock provider
  ARM: i.MX: Remove Freescale Logic Product Development i.MX27 Lite-Kit board support
  ARM: i.MX: Remove excess symbols ARCH_MX1, ARCH_MX25 and MACH_MX27
  ARM: i.MX: Remove i.MX1 camera support
  ARM: imx: use PTR_ERR_OR_ZERO
  bus: imx-weim: populate devices on a simple bus
  ARM: imx: build cpu_is_imx6sl function conditionally
  ARM: imx: imx6sx uses imx6q cpuidle code
  ARM: imx: drop PL310 errata 588369 and 727915
  ARM: imx_v6_v7_defconfig: add FSL_EDMA and PRINTK_TIME
  ARM: imx: clk-imx6sx: register SSI/SSI_IPG as shared gate clocks
  ARM: imx_v6_v7_defconfig: Enable flexcan driver for can support
  ARM: imx_v6_v7_defconfig: Enable STMPE gpio support
  ARM: imx: mark .dt_compat as const
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 11:56:39 -07:00
Olof Johansson
0d29db01b3 Fourth Round of Renesas ARM Based SoC Defconfig Updates for v3.17
The genmai board code is going away so remove:
 * The genmai defconfig
 * MACH_GENMAI from shmobile defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTyGCjAAoJENfPZGlqN0++G3sP/Rho5Lwofa3yD1ED2teVBSIw
 sQtEvfVsgWHy4iHib1gqVY2fdNb1lMwR3jUsSwoPBljIuonDPHcbOz9+qK1xY9iG
 SiJ4H2iFXX9oUNWKoUMHuexAIudXAzzhs8m8senDX5sPDJmhuv13b/LWA5ScjCPP
 kvEPi/7gasObuHopLIKsWQczWgpzqzz9q/l75HzcNiSPvEsMLebXXPbEBaHnCfpw
 JEgFCGTWk47qka3AGBslpBZMlkR1WviTFgg8HU2C0DBjNrrKB1cZjzgnVvRetgft
 Hcs3ZR9ko8VdUhN9co9hDAr2LIznQ7S7TwDLQF1/3/5TxMzMTHHefHM5Pxh8OZKE
 jEFd3e/Zapz30F1o/R2odQg5DcXgg65k1T42VvnTCqKq0KDR0jkhdEcm6OrH3jFf
 Q0RfcZyJA5SDxP+0zutHq5tFIXv/h8FvMOezcGL9lpUvQ9T7N+LMo1wDiQZ1t0Kr
 uGSeK5s8QA71v5M9dnWGsyxMkcS+/93F6IhCMkXsq8Ocq4n38cXArgv9SPips1jF
 tAEQm+UYRQ3q7pKyW2LjtTDXeg0XEGioGPAP2TMadMUoBQE3u87Ou6jgSQmv7O5U
 o99iW3Wog8lvIOD7hyjAMxlOKF0BWsiOahNoE8BWMcfW1F7p9kA+BCm3z+msdrt7
 pxc97pJ0/VITQpIa8+h+
 =6wuI
 -----END PGP SIGNATURE-----

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

Merge "Fourth Round of Renesas ARM Based SoC Defconfig Updates for v3.17" from
Simon Horman:

The genmai board code is going away so remove:
 - The genmai defconfig
 - MACH_GENMAI from shmobile defconfig

* tag 'renesas-defconfig4-for-v3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: defconfig: Remove MACH_GENMAI
  ARM: shmobile: genmai: remove defconfig

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 11:51:20 -07:00
Olof Johansson
f097748f39 Keystone DTS update for 3.17
- Ethernet clock tree fix.
  - MDIO device tree node. Respective driver update is already queued.
  - Ethernet phy node. Respective driver update is already queued.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTyAk8AAoJEHJsHOdBp5c/kUwQAKPPM/Qi2/GHc7mqfdXUJ5Tv
 rqDoaTvdokyHeKJ6jaq1pOglnyK2/Ghxj6p9lHJ7O+ekaFYFieGAC+CXOFDu4+Wb
 ApnlKhVVnlnvJF2Rhj4RH5VFVVbok4JKtSG1LrXLdM45rrWK/pFHLQoDnzJ/xaFE
 BGv0dGPuoaeYIWGDDLCZvEBL531oRgwa16/ddpQnU3ldvcnc2yXXcu1hMYRZ9Hqb
 5DmIOblWhBEFr9aS+hpJZUm9smriCZmoM8xhp9FlktJtfIMBI5dg1mweO9AGMSo/
 JcZDEd+pDk0IywWEa9JtDEF59ePgP1cJVw5Nwk7HbZNPZKNNwiqq6GAaWbFiW/0R
 DicmPp2+vkkg4iB5vNqr9SEx2s2sMdTceErh670Pyb2k5FSyA+mw57q9HQfiCwZv
 PQcY9QWcUyBT4LnPcopkJE1KBDgu0UrIXsgDltIdZQ/VIbS2KqVGlc6SEJBGdwp6
 v+aTGAgaaDcv/1ZpNZqP/efOjRW3egPulIOgKWVynjOj5FbuLv5jySmhelg9I9EA
 XvGEx4KD2wdOwO9yWuyiLXDu5xmb663fzdJ4jOoxVdQYfNfpEtuJyit372ywfFSu
 2KGzCFLBDjw5esd3eR1ENV2LgMT4s7IbhWK2xmZPH0eHe/DshoEEfvMlxf96hip1
 xrhABeeiGLuFBur218GC
 =x2hU
 -----END PGP SIGNATURE-----

Merge tag 'keystone-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/dt

Merge "Keystone DTS update for 3.17" from Santosh Shilimkar:

Keystone DTS update for 3.17
 - Ethernet clock tree fix.
 - MDIO device tree node. Respective driver update is already queued.
 - Ethernet phy node. Respective driver update is already queued.

* tag 'keystone-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: dts: keystone-evm: add 1g ethernet phys nodes
  ARM: dts: keystone: add mdio devices entries
  ARM: dts: keystone: fix netcp's clocks definitions

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-19 11:49:16 -07:00
Linus Torvalds
d057190925 Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking fixes from Thomas Gleixner:
 "The locking department delivers:

   - A rather large and intrusive bundle of fixes to address serious
     performance regressions introduced by the new rwsem / mcs
     technology.  Simpler solutions have been discussed, but they would
     have been ugly bandaids with more risk than doing the right thing.

   - Make the rwsem spin on owner technology opt-in for architectures
     and enable it only on the known to work ones.

   - A few fixes to the lockdep userspace library"

* 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  locking/rwsem: Add CONFIG_RWSEM_SPIN_ON_OWNER
  locking/mutex: Disable optimistic spinning on some architectures
  locking/rwsem: Reduce the size of struct rw_semaphore
  locking/rwsem: Rename 'activity' to 'count'
  locking/spinlocks/mcs: Micro-optimize osq_unlock()
  locking/spinlocks/mcs: Introduce and use init macro and function for osq locks
  locking/spinlocks/mcs: Convert osq lock to atomic_t to reduce overhead
  locking/spinlocks/mcs: Rename optimistic_spin_queue() to optimistic_spin_node()
  locking/rwsem: Allow conservative optimistic spinning when readers have lock
  tools/liblockdep: Account for bitfield changes in lockdeps lock_acquire
  tools/liblockdep: Remove debug print left over from development
  tools/liblockdep: Fix comparison of a boolean value with a value of 2
2014-07-19 06:27:55 -10:00
Linus Torvalds
d614cb0bc3 ARM: SoC fixes for 3.16-rc
A smaller set of fixes this week, and all regression fixes:
  - a handful of issues fixed on at91 with common clock conversion
  - a set of fixes for Marvell mvebu (SMP, coherency, PM)
  - a clock fix for i.MX6Q.
  - ... and a SMP/hotplug fix for Exynos
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJTygXeAAoJEIwa5zzehBx3bt0P/2ofpoOuYRV88sHjI9w+0R+F
 6t8WIFtTSFypI3zD6cSFBR38wTHI4mJ/jBb0ZnIhGXZE3Bzl/n9Moz7UElxsDD9v
 AjMWzyx6XrSJSCATczN/CDMX38QN+0NZW+hdXODGz9g7DrVGT/Z2jqugkaPAkAwy
 gVBmCqa+nkksfQCcQF3LDVmCyDUMHKILfUvyQJ217QbIavxO3kU/2wLdgEQpUCrI
 YUWAnAj+S/xoxd6OYJr9nMd+M6P9nkRdy+dD56nJtSiZdFwFoI+EgfhUkT3iezPN
 q3aYg3GbgiM/Fp8IO58tE2CbbG/xWJH+kwkJ03yl3z1Gx2KqAYeBpy2QMLBR9rUf
 F0axul3EeW9Gf7OEEFKQbCW8ETaP2AMEbm11FZkjJxMlNjbG9zkYFnl0oedLXxTA
 AcOPB7ABIWU1PsXXTqD9ZxjZmAsKL4CCck0BnWdOyQT5c9gA4ePEGEDMjeT/OiZE
 QwlujHFl4M4E1XFJRL6RiBYppNLBKTsrgl+HaoDSW/MbD350WqbOFTzngw9Xy/rO
 n7YNxUR2QFfWCNY1Zk8J8oJI/ISxla2bthhIe0+l/kk/zVUM3OMEClp0Fdw/L55X
 Md/fc7FzQKV9GPhtSz1RGDN4bjdJuGmitjMrYf+YhbWHa6iKS3XkkHBNpkKhY8Kf
 h9MsTmjd0En4BJLUqf0h
 =LOtI
 -----END PGP SIGNATURE-----

Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC fixes from Olof Johansson:
 "A smaller set of fixes this week, and all regression fixes:
   - a handful of issues fixed on at91 with common clock conversion
   - a set of fixes for Marvell mvebu (SMP, coherency, PM)
   - a clock fix for i.MX6Q.
   - ... and a SMP/hotplug fix for Exynos"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: EXYNOS: Fix core ID used by platsmp and hotplug code
  ARM: at91/dt: add missing clocks property to pwm node in sam9x5.dtsi
  ARM: at91/dt: fix usb0 clocks definition in sam9n12 dtsi
  ARM: at91: at91sam9x5: correct typo error for ohci clock
  ARM: clk-imx6q: parent lvds_sel input from upstream clock gates
  ARM: mvebu: Fix coherency bus notifiers by using separate notifiers
  ARM: mvebu: Fix the operand list in the inline asm of armada_370_xp_pmsu_idle_enter
  ARM: mvebu: fix SMP boot for Armada 38x and Armada 375 Z1 in big endian
2014-07-18 20:49:47 -10:00
Olof Johansson
412a9bbd12 First set of .dts changes for omaps for v3.17 merge
window:
 
 - Enable irqchip crossbar interrupt mapping. These changes
   are based on an immutable irqchip branch set up by Jason
   Cooper to make it easier to merge the related .dts changes.
 
 - Removal of omap2 related static clock data that now comes
   from device tree.
 
 - Enabling of PHY regulators for various omaps
 
 - Enabling of PCIe for dra7
 
 - Add support for am437x starterkit
 
 - Enable audio for for omap5
 
 - Enable display and am335x-evmsk
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTxj2LAAoJEBvUPslcq6VzQX0QALzyimJdW8GX+9hV1+LgtiPU
 eTtR+LxZt1dR5n2EeaNk9dn1DmmNqyQKN5VVB36rdaC2P7NgAfQgOwzG2RBos5mX
 Nap/DkMYs1NbNrgJCJVaND85HD2ZNyu8+Au2h1ggZC7xoAZbWlIDdR2livo454tf
 Whdjhm47dCTeIagFxBwAnuVml2Ry7P1pA7Gr8AGteAmsOrUwXdwevC4HqCEAhuG8
 2bINI71JhvpJ3tvV12VeJqAEZn7GWU5xnJYt7Kftm6RK8chuC0Ohfmo/BHO2DTVy
 BPBZDs6fYY8/2lBY/q3UCA3MSqBSLo9lxK+l8n5jaQVPse+6h7uVGijQxQZRcHqf
 7oP3tjLeTcszjoiQYSTKcQK65zpu+n7P1UAS4J3IjAoRC7Pi2Qvq5h4ABrxipQMY
 rctj2GLvNOV4ntx2GceXeyMGQBvu/p6GAFE7jmj0xLO4kBDORaY8PmQySXF81A12
 a0cCNL4g/YexeAfYXr4z6gyjGwOK4XbQocDkH9MlqAgQlSsb501tY7Xe2I/aAaYs
 IN4F5sBdvhBAuP79qFXOnlGgi2VkB3zcfu4MIIzIDxE2ZmPDRKv6oGVSGclVEzTd
 4HZsZDu6442zaAQ5XbwwST4gIeCygnqj+qrOQ6uYXAvmt3MFzjZ66bdTZjPMp7cC
 u7XduFmqLxsoGW7iuqqt
 =4svh
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.17/dt-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Merge "omap dts changes for v3.17 merge window, part1" from Tony Lindgren:

First set of .dts changes for omaps for v3.17 merge window:

- Enable irqchip crossbar interrupt mapping. These changes
  are based on an immutable irqchip branch set up by Jason
  Cooper to make it easier to merge the related .dts changes.

- Removal of omap2 related static clock data that now comes
  from device tree.

- Enabling of PHY regulators for various omaps

- Enabling of PCIe for dra7

- Add support for am437x starterkit

- Enable audio for for omap5

- Enable display and am335x-evmsk

* tag 'omap-for-v3.17/dt-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (43 commits)
  ARM: DTS: omap5-uevm: Enable basic audio (McPDM <-> twl6040)
  ARM: DTS: omap5-uevm: Add node for twl6040 audio codec
  ARM: DTS: omap5-uevm: Enable palmas clk32kgaudio clock
  ARM: dts: dra7: Add dt data for PCIe controller
  ARM: dts: dra7: Add dt data for PCIe PHY
  ARM: dts: dra7: Add dt data for PCIe PHY control module
  ARM: dts: dra7xx-clocks: Add missing clocks for second PCIe PHY instance
  ARM: dts: dra7xx-clocks: rename pcie clocks to accommodate second PHY instance
  ARM: dts: dra7xx-clocks: Add missing 32KHz clocks used for PHY
  ARM: dts: dra7xx-clocks: Change the parent of apll_pcie_in_clk_mux to dpll_pcie_ref_m2ldo_ck
  ARM: dts: dra7xx-clocks: Add divider table to optfclk_pciephy_div clock
  ARM: dts: dra7-evm: Add regulator information to USB2 PHYs
  ARM: omap2plus_defconfig: enable TPS65218 configs
  ARM: dts: AM437x: Add TPS65218 device tree nodes
  ARM: dts: AM437x: Fix i2c nodes indentation
  ARM: dts: AM43x: Add TPS65218 device tree nodes
  ARM: dts: Add devicetree for Gumstix Pepper board
  ARM: dts: dra7: add crossbar device binding
  ARM: dts: dra7: add routable-irqs property for gic node
  ARM: OMAP24xx: clock: remove legacy clock data
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 22:16:48 -07:00
Olof Johansson
25f003285b Merge branch 'spear/pcie-support-v10' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/linux into next/drivers
Merge "ARM: SPEAr13xx PCIe updates for v3.17" from Viresh Kumar:

This is another attempt to merge SPEAr PCIe updates after olof
pointed out *enough* issues with initial PULL request:

https://lkml.org/lkml/2014/7/9/641

Last version was sent here: http://patchwork.ozlabs.org/patch/368479/
and all the nits pointed out by Kishon & Bjorn are fixed in this pull
request.

Apart from ARM specific changes, this updates drivers/{pci|phy}. Bjorn
advised to get complete series via arm-soc tree earlier:

http://www.spinics.net/lists/linux-pci/msg30271.html

* 'spear/pcie-support-v10' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/linux:
  ARM: SPEAr13xx: Update defconfigs
  ARM: SPEAr13xx: Add pcie and miphy DT nodes
  ARM: SPEAr13xx: Add bindings and dt node for misc block
  ARM: SPEAr13xx: Fix static mapping table
  phy: Add drivers for PCIe and SATA phy on SPEAr13xx
  PCI: spear: Add PCIe driver for ST Microelectronics SPEAr13xx

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 21:55:04 -07:00
Olof Johansson
c6ffdc0741 Third Round of Renesas ARM Based SoC DT Updates for v3.17
* Initialise SCI using DT when booting the kzm9g, armadillo800eva,
   ape6evm and bockw boards without legacy-C code.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTxK3sAAoJENfPZGlqN0++NTgP/RWUw7B+4R8yT9B1wUZbjd+F
 1z9sQOV0g2llBS4tWEOvqC5wd2vXCCOP34CX/lB0zd4t3ygr0XYtHW4W4TWt5Bqb
 qmdLEo0brYAnMuCjtDahDKJIl5+lCjX46Tj3rDerMqsjd2gJ1r/cSCpCSzZvIrtW
 poUEWOK12TTh0jXFW8Amm4TS+bq1RSgRt34jXpCGBmzzErJNQ+U/xdI4oC8HAk0x
 TmKh/K9FrX6esXie/qA8Lj8bMrGExSboZrhirk1H/CzKw985lLzMPR5g9U5FzsdN
 SH/7N1m3sCeY04G6NH9Pd+Vnz9+46xD1Qg+deSrV4HIXV46cSV68Ti+fodsWgavb
 ta+Xa9589bNhuqJ+UEHARkwqz9kz2LPdVRciTWjPQ0XG3cQ2g38GK1AHAFMhRyQx
 Pe2Es14eDWnm9GiH1l1BAWwIBqBzWCeyjc46Q2Ri0gOqISIvktgLnez+mOjJd7Fo
 wIHgRgmXNte7ph8VdYWCFM5rU2ixDPucXIFPy80g/5QolrEt9ODfERMRNOrLyTAF
 mh4YGXB7nTv1wMygJtG9PckMryOmvBsOkc3UXAlRPAxCejiT1zMiJh/gpjs/uLG+
 zHXTzGsqOlCsJpwxdo7l7RKWFlZTqwzJX4Rhu5UqcR+N+fW+ukfltKBdUAq537jr
 i2l+AFtiwLzo/P2tFYGU
 =qbHP
 -----END PGP SIGNATURE-----

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

Merge "Third Round of Renesas ARM Based SoC DT Updates for v3.17" from Simon
Horman:

* Initialise SCI using DT when booting the kzm9g, armadillo800eva,
  ape6evm and bockw boards without legacy-C code.

* tag 'renesas-dt3-for-v3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (24 commits)
  ARM: shmobile: kzm9g-reference: Initialise SCIF device using DT
  ARM: shmobile: sh73a0: Add SCIF nodes
  ARM: shmobile: armadillo800eva-reference: Initialise SCIF device using DT
  ARM: shmobile: r8a7740: Add SCIF nodes
  ARM: shmobile: ape6evm-reference: Initialise SCIF device using DT
  ARM: shmobile: r8a73a4: Add SCIF nodes
  ARM: shmobile: bockw-reference: Initialise SCIF device using DT
  ARM: shmobile: r8a7778: Add SCIF nodes
  ARM: shmobile: sh73a0: add SCI clock support for DT
  ARM: shmobile: r8a7740: correct SCI clock support for DT
  ARM: shmobile: r8a73a4: add SCI clock support for DT
  ARM: shmobile: r8a7778: add SCI clock support for DT
  ARM: shmobile: r8a7790: lager: use iic cores instead of i2c
  ARM: shmobile: Lager: Correct I2C bus for VDD MPU regulator
  ARM: shmobile: kzm9g-reference: Remove early_printk from command line
  ARM: shmobile: armadillo800eva-reference: Remove early_printk from command line
  ARM: shmobile: r8a7779: Consistently use tabs for indentation
  ARM: shmobile: henninger: Consistently use tabs for indentation
  ARM: shmobile: henninger: enable internal PCI
  ARM: shmobile: koelsch: enable internal PCI
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 21:39:29 -07:00
Olof Johansson
9b03c6041c Second Round of Renesas ARM Based SoC Clock Updates for v3.17
* Add legacy clocks for SCI for SoCs that do not yet have CCF support.
   This is to allow SCI (serial) devices to be enabled using DT and
   will be removed after CCF support is added for each SoC.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTxKxCAAoJENfPZGlqN0++Bt4QAIr9N0wh2V77cQSMegTDlRRg
 sawwaTStkG8mbuRdUrYGS/kWJg1UvKvvB4pNG5IHm5vjycg5f4ya8a9fK5rXwXGx
 lW1G8xKxb9LSgOtZaMLXzZPI1v6C1GOVzDmouhZ19WvlFtRI7OJKrX7dvvWnU3+R
 8XxsU/XRX8o0NWa/vZg/524+pwyffZihREY30LUcJwsFbFpChwki6KETl/RuTB8J
 SqlpbXv964D9CZ9fF4UkTkN64wGODxPYTsUTfOl7QlMIkHb9ajA/OordGg5zZWvJ
 phk0tgfr0Y/Lar9LzKheR9qLPRdD1oqVsQ+7COpleIiF+Iey8ICsV13CXgsp9qA9
 FqFyUd7xneZ0Jeigw4vgCT474I84E9Q/cXLnN/ExBgStAGhf/IDB7U+CvKaDd6qB
 +UVKFRjGJgDjzXy05WYtckrH2xHMS4HYdkg+XxKgxXmTl/0NEFRvZa9B1aE3A0FK
 adzdxLckOzebgIIpN1IL7V8851h+Yo0YnigMmrf0zlv2QVwn9bjQ3XSfxVCTEhjJ
 Qp1ECqGJIluKQ2HC5KDjsxShdTZGicIQlOn2DW6gZPF1zWqTv/A7cD4tP+lwhLhg
 ThKALzIj4jPWIKCO0C9Fe73LXZXoQ8NShIGBKhGaIxVYJgz6B8KYv9dkHD+Q262X
 mdUAYDVpoKPfpFd8jRyE
 =HQjb
 -----END PGP SIGNATURE-----

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

Merge "Second Round of Renesas ARM Based SoC Clock Updates for v3.17" from
Simon Horman:

- Add legacy clocks for SCI for SoCs that do not yet have CCF support.
  This is to allow SCI (serial) devices to be enabled using DT and
  will be removed after CCF support is added for each SoC.

* tag 'renesas-clock2-for-v3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: sh73a0: add SCI clock support for DT
  ARM: shmobile: r8a7740: correct SCI clock support for DT
  ARM: shmobile: r8a73a4: add SCI clock support for DT
  ARM: shmobile: r8a7778: add SCI clock support for DT

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 21:30:26 -07:00
Tomasz Figa
9637f30e6b ARM: EXYNOS: Fix core ID used by platsmp and hotplug code
When CPU topology is specified in device tree, cpu_logical_map() does
not return core ID anymore, but rather full MPIDR value. This breaks
existing calculation of PMU register offsets on Exynos SoCs.

This patch fixes the problem by adjusting the code to use only core ID
bits of the value returned by cpu_logical_map() to allow CPU topology to
be specified in device tree on Exynos SoCs.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 17:12:57 -07:00
Olof Johansson
e5c6cac6e3 The i.MX fixes for 3.16, 2nd take:
It fixes a hard machine hang regression for boards where only pcie is
 active but no sata, as the latest imx6-pcie driver is no longer enabling
 the upstream clock directly but only lvds clk out.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJTyNTvAAoJEFBXWFqHsHzOm6kIAIQnvL429KlsyQAkZTpwHR/l
 omETpfgmjTIpGJ4hYE04Kdi8w/O7GrAVUFe0moBETPRshHBJhYGCDgVuM38fA/PB
 dd6vkCL1rS1bELaFFfTzFE07BlbZRSXy6PEs8/9wcE8vQOJ/BEKjscNY6PspKDMb
 txRnmDUf9R+YdKBAY7CWTXC465Vtfiz8vFf1v73t+URxi/YTAut7s50V1IaXZf1E
 g+W8G6SME8j1mOfPrq6hRdxijLsJ0QpKDVZay4Sb19+WMnLXXrc4M3skQsDUScp8
 3dfdJBy/fVtFwQlmcK2z78rr6netMTbIVTDJjbJiz2Eb0kIZXgsDW5Jkgr+6uqE=
 =S50Z
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-3.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into fixes

Merge "ARM: imx: fixes for 3.16, 2nd take" from Shawn Guo:

The i.MX fixes for 3.16, 2nd take:

It fixes a hard machine hang regression for boards where only pcie is
active but no sata, as the latest imx6-pcie driver is no longer enabling
the upstream clock directly but only lvds clk out.

* tag 'imx-fixes-3.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: clk-imx6q: parent lvds_sel input from upstream clock gates

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 14:40:17 -07:00
Olof Johansson
054388947c Second AT91 fixes series for 3.16
- fix clock definitions after the move to CCF for:
   - at91sam9n12 (ohci)
   - at91sam9x5 (ohci, pwm)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJTySlWAAoJEAf03oE53VmQPgUH/A51n4r01YIkuBfRcUlejKYt
 ick9f3AyWY9nGZn0B5ytkVCyFSu8ibKPiU3sLPTRFkel+mBuviK4AdiRaOc1MpIH
 VXUS8hxXo8HWxORibZNuVmiKOV1xNtVz6sRhJvN2C7tNFC3ObqmU5DM6E0M6MCN+
 lmpS/nA0fPEwuyHaCSBQGcHtfO6PRYZ1xLoCp3O8p/F+KQAWuaXAb2FXLwpFwMzj
 HHBVblBa1H1/dKivm7o74rTmq0O40RtvEfnL65tk1kpI43iuv0fNpnA8iHfhgJvd
 9P5mYRUj4tP3SMiTDGHCgMPx4qFOqcdvLmm4SbGPFdA5ecGemE8oaQB416YIRB0=
 =XoCN
 -----END PGP SIGNATURE-----

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

Merge "at91: fixes for 3.16 #2" from Nicolas Ferre:

Second AT91 fixes series for 3.16
- fix clock definitions after the move to CCF for:
  * at91sam9n12 (ohci)
  * at91sam9x5 (ohci, pwm)

* tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
  ARM: at91/dt: add missing clocks property to pwm node in sam9x5.dtsi
  ARM: at91/dt: fix usb0 clocks definition in sam9n12 dtsi
  ARM: at91: at91sam9x5: correct typo error for ohci clock

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 14:39:18 -07:00
Olof Johansson
81cca645b6 mvebu fixes for v3.16 (round 3)
- Fix SMP boot on 38x/375 in big endian
  - Fix operand list for pmsu on 370/XP
  - Fix coherency bus notifiers
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJTyZAQAAoJEP45WPkGe8Zn+DIQAIWvUhQ/7rsThFThmlsa4t01
 8l4PqWlPznHHfSAfcM5JZtGBpKvqHhf+e6Hn8wPXek4u7v1x2K6dREk2JgsGZQMP
 rsA2Ajn8jseFQb+iBnzdr1eV0AkztlGy0pJ4N+S4pogp4pzn6WPPNGz7P9UUzW/U
 U2I8NycTqzsq8siODK/AbqLfFfok2M/++QgNOdEli1cQ44NdYyAzVLeqe/C9Ou6K
 fn6RdscbvK/jWmrWi9CS4lhnhNkG8HBxxpzF4Rm06dWDU6z+B/HECq8yjHJlX9rx
 EsxiJRV6nzUiws+/o19CUsl/lsJP0pfiTDXCoiUUhOovYUukm632ySdG5QfjnYaK
 zsRw9hBnHCfHW5QEt6NaY5fVknnQPmJMM7WsW9B7PtQX4Rl38CWhLdq3LAbPVv9V
 ze1AllUSmBLTYuQHFMuA602ZzngFcw1c+ZOmfrOpX+QYlyiv1CkqUOXiVGHNb2Nn
 NPiCZaDp8d+JvWloOme0aZX+XfgfUOeXxogtYCtFBTGe9C+P6oqzPni3hqcvL7PA
 PUo6BRe1KIOaQuUm0Eh/XqWC5Nyo0gcXm1oM8JgovVTT6RQndPIQLfO9isOa5A+b
 PaLrAYtzHge+cCU4TJShYzjcVGzz1K2hsINjJ9NlW8172LbC1g5wQWrUVPFHrLuz
 WoZYmkmNzNd8EGQwXdkj
 =tq91
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-fixes-3.16-3' of git://git.infradead.org/linux-mvebu into fixes

Merge "mvebu fixes for v3.16 (round 3)" from Jason Cooper:

 - Fix SMP boot on 38x/375 in big endian
 - Fix operand list for pmsu on 370/XP
 - Fix coherency bus notifiers

* tag 'mvebu-fixes-3.16-3' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Fix coherency bus notifiers by using separate notifiers
  ARM: mvebu: Fix the operand list in the inline asm of armada_370_xp_pmsu_idle_enter
  ARM: mvebu: fix SMP boot for Armada 38x and Armada 375 Z1 in big endian

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-07-18 14:38:28 -07:00
Maxime Ripard
c220aec2bb ARM: dts: sun6i: Add Merrii A31 Hummingbird support
This adds support for the A31 Hummingbird:
http://www.merrii.com/en/pla_d.asp?id=172

The Merrii A31 Hummingbird is a development board based on the
Allwinner A31 SoC with multiple USB ports through a USB hub chip,
a uSD slot, a 10/100/1000M ethernet port, an AP6210 WiFi/BT chip,
TV-in, HDMI, VGA, audio in/out ports, and LCD/CSI headers.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
[wens@csie.org: enable usbphy, ehci0, ohci0 for on-board usb hub;
 add pcf8563 rtc node; add comments for i2c0 and mmc0 pull-ups;
 correct ethernet phy address to 0x01; drop uart2 (BT chip has
 no power) and uart3 (no device); use proper commit message]
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
2014-07-18 22:40:37 +02:00
Chen-Yu Tsai
e5073fde6b ARM: dts: sun6i: Add ethernet alias for GMAC
Alias GMAC as ethernet0 so U-boot can fill in the MAC address.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2014-07-18 22:36:54 +02:00
Chen-Yu Tsai
3dca65f8a6 ARM: dts: sun6i: Add A31 GMAC gigabit ethernet controller node
The A31 has the same GMAC found on the A20 SoC, except it has
an extra reset control.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2014-07-18 22:36:49 +02:00
Chen-Yu Tsai
ed29861ae8 ARM: dts: sun6i: Add GMAC clock node to the A31 dtsi
The GMAC uses 1 of 2 sources for its transmit clock, depending on the
PHY interface mode. Add both sources as dummy clocks, and as parents
to the GMAC clock node.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2014-07-18 22:36:29 +02:00
Chen-Yu Tsai
ee39a3e308 ARM: dts: sun6i: Add pin muxing options for GMAC
The A31 SoC has a GMAC gigabit ethernet controller supporting
MII, GMII, RGMII modes. Add pin muxing options for these modes.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2014-07-18 22:35:56 +02:00
Tomasz Figa
d78c16ccde ARM: SAMSUNG: Remove remaining legacy code
After refactoring suspend/resume, which was last part with dependencies
on legacy code, all Kconfig symbols related to Samsung ATAGS support can
be deselected and more unused code removed. This includes most of s5p-*
code as well, as s5pv210 was their last user.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:18 +09:00
Tomasz Figa
aa42587a43 ARM: S5PV210: Enable multi-platform build support
This makes it possible to enable the s5pv210 platform as part of a
multiplatform kernel. Also redundant Kconfig options are removed.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:16 +09:00
Tomasz Figa
7d6764b389 ARM: S5PV210: Register cpufreq platform device
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:14 +09:00
Tomasz Figa
7bab7d9e11 ARM: S5PV210: move debug-macro.S into the common space
Move debug-macro.S from mach/include to include/debug where
all other common debug macros are.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:12 +09:00
Tomasz Figa
0a90d4d62c ARM: S5PV210: Untie PM support from legacy code
This patch makes S5PV210 not rely on legacy suspend helpers in
plat-samsung and implements platform suspend logic locally, similarly to
Exynos.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:11 +09:00
Tomasz Figa
28c8331d38 ARM: S5PV210: Remove support for board files
Since all in-tree boards have been moved to device tree, we can now drop
legacy code and make mach-s5pv210 DT-only. This patch does it.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:32:10 +09:00
Mateusz Krawczuk
b672b27d23 ARM: dts: Add Device tree for s5pc110/s5pv210 boards
Add DTS for s5pc110 boards: goni, aquila, smdkc110
s5pv210: smdkv210, tiny210, torbreck

Signed-off-by: Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
[t.figa: Rebased, fixed merge conflicts, neatened.]
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:31:51 +09:00
Mateusz Krawczuk
94ad0f6d92 ARM: dts: Add Device tree for s5pv210 SoC
Add generic device tree for s5pv210 and s5pv210-pinctrl

Signed-off-by: Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:31:20 +09:00
Mateusz Krawczuk
adbd1ad139 ARM: S5PV210: Add board file for boot using Device Tree
This patch adds board file that will be used to boot S5PV210/S5PC110-based
boards using Device Tree.

Signed-off-by: Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
[t.figa: Rebased and cleaned-up a bit.]
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:25:09 +09:00
Tomasz Figa
32726d2d55 ARM: SAMSUNG: Remove legacy clock code
Since S5PV210 now has a complete clock driver using Common Clock
Framework, there is no reason to keep the old code. Remove it together
with the whole legacy Samsung-specific clock framework which no longer
has any users.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:24:59 +09:00
Mateusz Krawczuk
28dc7ef8cd ARM: S5PV210: Migrate clock handling to Common Clock Framework
This patch migrates the s5pv210 platform to use new clock driver
using Common Clock Framework.

Signed-off-by: Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
[t.figa: Rebased and fixed merge conflicts.]
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:24:50 +09:00
Kukjin Kim
a7a30232df Merge branch 'v3.17-next/cleanup-samsung' into v3.17-next/dt-s5pv210 2014-07-19 04:24:18 +09:00
Kees Cook
839669714f ARM: add seccomp syscall
Wires up the new seccomp syscall.

Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
2014-07-18 12:13:38 -07:00
Tomasz Figa
ccaba45271 ARM: dts: Add I2S dt node for exynos3250
This patch add I2S (Inter-IC Sound) dt node which supports 1-port
stereo (1 channels) IIS-bus for audio interface with DMA-based
operation.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Inha Song <ideal.song@samsung.com>
Tested-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:10:44 +09:00
Doug Anderson
8060098bbb ARM: dts: Add cros_ec to exynos5420-peach-pit and exynos5800-peach-pi
This adds cros_ec to exynos5420-peach-pit and exynos5800-peach-pi,
including:
* The keyboard
* The i2c tunnel
* The tps65090 under the i2c tunnel
* The battery under the i2c tunnel

To add extra motivation, it should be noted that tps65090 is one of
the things needed to get display-related FETs turned on for pit and
pi.

Signed-off-by: Doug Anderson <dianders@chromium.org>
Tested-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Tested-by: Tushar Behera <tushar.b@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 04:09:15 +09:00
Chander Kashyap
fc2cac41eb ARM: EXYNOS: populate suspend and powered_up callbacks for mcpm
In order to support cpuidle through mcpm, suspend and powered-up
callbacks are required in mcpm platform code.
Hence populate the same callbacks.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Chander Kashyap <k.chander@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 03:36:00 +09:00
Chander Kashyap
b5a296cdf4 ARM: EXYNOS: do not allow cpuidle registration for exynos5420
Exynos5420 is big.Little Soc. It uses cpuidle-big-litle generic cpuidle driver.
Hence do not allow exynos cpuidle driver registration for Exynos5420.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 03:35:58 +09:00
Chander Kashyap
6ec4f8d0d9 ARM: EXYNOS: add generic function to calculate cpu number
The address of cpu power registers in pmu is based on cpu number
offsets. This function calculate the same. This is essentially
required in case of multi-cluster SoC's e.g Exynos5420.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 03:35:55 +09:00
Chanho Park
6f4b82a356 ARM: dts: clean up arm-pmu node for exynos4
This patch cleans a arm-pmu node up for exynos4. Only exynos4412 series
boards have four pmu interrupts. Rest of exynos4 boards, except 4412, have only
two pmu interrupts. Thus, we can define two interrupts in the
exynos4.dtsi and extends the interrupts only exynos4412.dtsi.

Cc: Chanwoo Choi <cw00.choi@samsung.com>
Cc: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Tested-by: Tushar Behera <tushar.behera@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2014-07-19 03:11:48 +09:00
Boris BREZILLON
e0d69e119f ARM: at91/dt: add missing clocks property to pwm node in sam9x5.dtsi
The pwm driver requires a clocks property referencing the pwm peripheral
clk.

Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2014-07-18 15:56:35 +02:00
Boris BREZILLON
043dfc1b62 ARM: at91/dt: fix usb0 clocks definition in sam9n12 dtsi
udphs_clk (USB Device Controller clock) is referenced instead of
uhphs_clk (USB Host Controller clock).

Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2014-07-18 15:56:35 +02:00
Bo Shen
dba1fd0bff ARM: at91: at91sam9x5: correct typo error for ohci clock
Correct the typo error for the second "uhphs_clk".

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2014-07-18 15:56:34 +02:00
Sebastian Hesselbarth
8cf2389bc4 ARM: 8100/1: Fix preemption disable in iwmmxt_task_enable()
commit 431a84b1a4
 ("ARM: 8034/1: Disable preemption in iwmmxt_task_enable()")
introduced macros {inc,dec}_preempt_count to iwmmxt_task_enable
to make it run with preemption disabled.

Unfortunately, other functions in iwmmxt.S also use concan_{save,dump,load}
sections located in iwmmxt_task_enable() to deal with iWMMXt coprocessor.
This causes an unbalanced preempt_count due to excessive dec_preempt_count
and destroyed return addresses in callers of concan_ labels due to a register
collision:

Linux version 3.16.0-rc3-00062-gd92a333-dirty (jef@armhf) (gcc version 4.8.3 (Debian 4.8.3-4) ) #5 PREEMPT Thu Jul 3 19:46:39 CEST 2014
CPU: ARMv7 Processor [560f5815] revision 5 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
Machine model: SolidRun CuBox
...
PJ4 iWMMXt v2 coprocessor enabled.
...
Unable to handle kernel paging request at virtual address fffffffe
pgd = bb25c000
[fffffffe] *pgd=3bfde821, *pte=00000000, *ppte=00000000
Internal error: Oops: 80000007 [#1] PREEMPT ARM
Modules linked in:
CPU: 0 PID: 62 Comm: startpar Not tainted 3.16.0-rc3-00062-gd92a333-dirty #5
task: bb230b80 ti: bb256000 task.ti: bb256000
PC is at 0xfffffffe
LR is at iwmmxt_task_copy+0x44/0x4c
pc : [<fffffffe>]    lr : [<800130ac>]    psr: 40000033
sp : bb257de8  ip : 00000013  fp : bb257ea4
r10: bb256000  r9 : fffffdfe  r8 : 76e898e6
r7 : bb257ec8  r6 : bb256000  r5 : 7ea12760  r4 : 000000a0
r3 : ffffffff  r2 : 00000003  r1 : bb257df8  r0 : 00000000
Flags: nZcv  IRQs on  FIQs on  Mode SVC_32  ISA Thumb  Segment user
Control: 10c5387d  Table: 3b25c019  DAC: 00000015
Process startpar (pid: 62, stack limit = 0xbb256248)

This patch fixes the issue by moving concan_{save,dump,load} into separate
code sections and make iwmmxt_task_enable() call them in the same way the
other functions use concan_ symbols. The test for valid ownership is moved
to concan_save and is safe for the other user of it, iwmmxt_task_disable().
The register collision is also resolved by moving concan_ symbols as
{inc,dec}_preempt_count are now local to iwmmxt_task_enable().

Fixes: 431a84b1a4 ("ARM: 8034/1: Disable preemption in iwmmxt_task_enable()")

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reported-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:30:14 +01:00
Russell King
58171bf2af ARM: hwcap: disable HWCAP_SWP if the CPU advertises it has exclusives
When the CPU has support for the byte and word exclusive operations,
userspace should use them in preference to the SWP instructions.
Detect the presence of these instructions by reading the ISAR CPU ID
registers and adjust the ELF HWCAP mask appropriately.

Note that ARM1136 < r1p0 has no ISAR4, so this is explicitly detected
and the test disabled, leaving the current situation where HWCAP_SWP
is set.

Tested-by: Tony Lindgren <tony@atomide.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:51 +01:00
Russell King
7397aa48ff ARM: SWP emulation: only initialise on ARMv7 CPUs
Previous CPUs do not have the ability to trap SWP instructions, so
it's pointless initialising this code there.

Tested-by: Tony Lindgren <tony@atomide.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:49 +01:00
Russell King
a11dd731f5 ARM: SWP emulation: always enable when SMP is enabled
SWP is deprecated in ARMv6 and ARMv7 CPUs, but more importantly, when
running on a SMP system, SWP doesn't guarantee atomicity.  This means
it can't really be used (by userspace) for locking purposes in a SMP
environment.

Currently, many configurations leave the SWP emulation disabled, which
means we never know if userspace executes this instruction on ARMv7
hardware.  Rectify this by enabling SWP emulation for ARMv7 with SMP
(where we can trap the instruction.)

Tested-by: Tony Lindgren <tony@atomide.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:47 +01:00
Shawn Guo
ddd0c53018 ARM: 8103/1: save/restore Cortex-A9 CP15 registers on suspend/resume
The CP15 diagnostic register holds ARM errata bits on Cortex-A9, so it
needs to be saved/restored on suspend/resume.  Otherwise, the
effectiveness of errata workaround gets lost together with diagnostic
register bit across suspend/resume cycle.  And the CP15 power control
register of Cortex-A9 shares the same problem.

The patch adds a couple of Cortex-A9 specific suspend/resume functions
to save/restore these two Cortex-A9 CP15 registers across the
suspend/resume cycle.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:37 +01:00
Will Deacon
bf67fd3142 ARM: 8098/1: mcs lock: implement wfe-based polling for MCS locking
This patch introduces a wfe-based polling loop for spinning on contended
MCS locks and waking up corresponding waiters when the lock is released.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:35 +01:00
Daniel Thompson
e38361d032 ARM: 8091/2: add get_user() support for 8 byte types
Recent contributions, including to DRM and binder, introduce 64-bit
values in their interfaces. A common motivation for this is to allow
the same ABI for 32- and 64-bit userspaces (and therefore also a shared
ABI for 32/64 hybrid userspaces). Anyhow, the developers would like to
avoid gotchas like having to use copy_from_user().

This feature is already implemented on x86-32 and the majority of other
32-bit architectures. The current list of get_user_8 hold out
architectures are: arm, avr32, blackfin, m32r, metag, microblaze,
mn10300, sh.

Credit:

    My name sits rather uneasily at the top of this patch. The v1 and
    v2 versions of the patch were written by Rob Clark and to produce v4
    I mostly copied code from Russell King and H. Peter Anvin. However I
    have mangled the patch sufficiently that *blame* is rightfully mine
    even if credit should more widely shared.

Changelog:

v5: updated to use the ret macro (requested by Russell King)
v4: remove an inlined add on big endian systems (spotted by Russell King),
    used __ARMEB__ rather than BIG_ENDIAN (to match rest of file),
    cleared r3 on EFAULT during __get_user_8.
v3: fix a couple of checkpatch issues
v2: pass correct size to check_uaccess, and better handling of narrowing
    double word read with __get_user_xb() (Russell King's suggestion)
v1: original

Signed-off-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:34 +01:00
Baruch Siach
bc994c77ce ARM: 8097/1: unistd.h: relocate comments back to place
Commit cb8db5d45 (UAPI: (Scripted) Disintegrate arch/arm/include/asm) moved
these syscall comments out of their context into the UAPI headers. Fix this.

Fixes: cb8db5d457 ("UAPI: (Scripted) Disintegrate arch/arm/include/asm")

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:31 +01:00
Daniel Thompson
10508b204c ARM: 8096/1: Describe required sort order for textofs-y (TEXT_OFFSET)
The section of the makefile that determines the TEXT_OFFSET is sorted
by address so that, in multi-arch kernel builds, the architecture with the
most stringent requirements for the kernel base address gets to define
TEXT_OFFSET. The comment should reflect that.

Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:27 +01:00
Shawn Guo
80d3cb9132 ARM: 8090/1: add revision info for PL310 errata 588369 and 727915
Add revision info for PL310_ERRATA_588369 and PL310_ERRATA_727915 to
help people understand if they need to enable the errata for their
hardware.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:26 +01:00
Shawn Guo
7ca791c59d ARM: 8089/1: cpu_pj4b_suspend_size should base on cpu_v7_suspend_size
Since pj4b suspend/resume routines are implemented based on generic
ARMv7 ones, instead of hard-coding cpu_pj4b_suspend_size, we should have
it be cpu_v7_suspend_size plus pj4b specific bytes.  Otherwise, if
cpu_v7_suspend_size gets updated alone, the pj4b suspend/resume will
likely be broken.

While at it, fix the comments in cpu_pj4b_do_resume, as we're restoring
CP15 registers rather than saving in there.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Tested-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:25 +01:00
Mark Rutland
76e7d5c4fd ARM: 8088/1: vmlinux.lds.S: drop redundant .comment
Commit 78d7530ac3 ("ARM: Clean up linker script using new linker script
macros.") modified the arm kernel linker script to use the STABS_DEBUG
macro, but left a .comment section definition. As STABS_DEBUG defines
the .comment section in an identical way, the second section definition
is redundant and can be removed.

This patch removes the redundant .comment section definition.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:23 +01:00
Nikolay Borisov
e8a5dbc59e ARM: 8075/1: oprofile: Use of arm_get_current_stackframe
Use the newly introduced API so that FP is correctly referenced from
either R7/R11 based on whether we are running in THUMB2 mode or not.

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Robert Richter <rric@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:20 +01:00
Nikolay Borisov
49432d4acf ARM: 8074/1: traps: Make use of the frame_pointer macro
Use the newly-introduced frame_pointer macro to extract
the correct FP based on whether we are in THUMB2 mode or not.

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:18 +01:00
Nikolay Borisov
c8bee0ad78 ARM: 8073/1: unwind: Use arm_get_current_stackframe
Make the unwind code use the correct API so that the frame pointer
is extracted from the correct register.

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:16 +01:00
Nikolay Borisov
a3250c92aa ARM: 8072/1: time: Make use of arm_get_current_stackframe
Make use of the arm_get_current_stackframe api so that
the frame pointer is correctly referenced in THUMB2 mode

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:14 +01:00
Nikolay Borisov
6888e32a9e ARM: 8071/1: perf: Make perf use arm_get_current_stackframe
Make the perf backend use the API so that it correctly references the FP
when in THUMB2 mode

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:12 +01:00
Nikolay Borisov
9865f1d46a ARM: 8070/1: Introduce arm_get_current_stack_frame()
Currently there are numerous places where "struct pt_regs" are used to
populate "struct stackframe", however all of those location do not
consider the situation where the kernel might be compiled in THUMB2
mode, in which case the framepointer member of pt_regs become ARM_r7
instead of ARM_fp (r11). Document this idiosyncracy in the
definition of "struct stackframe"

The easiest solution is to introduce a new function (in the spirit of
https://groups.google.com/forum/#!topic/linux.kernel/dA2YuUcSpZ4)
which would hide the complexity of initializing the stackframe struct
from pt_regs.

Also implement a macro frame_pointer(regs) that would return the correct
register so that we can use it in cases where we just require the frame
pointer and not a whole struct stackframe

Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Robert Richter <rric@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:11 +01:00
Nicolas Pitre
9696fcae92 ARM: 8079/1: zImage: identify kernel endianness
With patch #8067/1 ("zImage: ensure header in LE format for BE8 kernels")
applied, it is no longer possible to determine the endianness of a compiled
kernel image.  This normally shouldn't matter to the boot environment,
except for those cases where the selection of a ramdisk or root filesystem
with a matching endianness has to be automated.

Let's add a flag to the zImage header indicating the actual endianness.
Four bytes from offset 0x30 can be interpreted as follows:

	04 03 02 01	big endian kernel

	01 02 03 04	little endian kernel

Anything else should be interpreted as "unknown", in which case it is
most likely that patch #8067/1 was not applied either and the zImage
magic number at offset 0x24 could be used instead to determine
endianness. No zImage before this patch ever produced 0x01020304 nor
0x04030201 at offset 0x30 so there is no confusion possible.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:08 +01:00
Russell King
1e7e321185 ARM: alignment: save last kernel aligned fault location
Save and report (via the procfs file) the last kernel unaligned fault
location.  This allows us to trivially inspect where the last fault
happened for cases which we don't expect to occur.

Since we expect the kernel to generate misalignment faults (due to
the networking layer), even when warnings are enabled, we don't log
them for the kernel.

Tested-by: Tony Lindgren <tony@atomide.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:06 +01:00
Russell King
6ebbf2ce43 ARM: convert all "mov.* pc, reg" to "bx reg" for ARMv6+
ARMv6 and greater introduced a new instruction ("bx") which can be used
to return from function calls.  Recent CPUs perform better when the
"bx lr" instruction is used rather than the "mov pc, lr" instruction,
and this sequence is strongly recommended to be used by the ARM
architecture manual (section A.4.1.1).

We provide a new macro "ret" with all its variants for the condition
code which will resolve to the appropriate instruction.

Rather than doing this piecemeal, and miss some instances, change all
the "mov pc" instances to use the new macro, with the exception of
the "movs" instruction and the kprobes code.  This allows us to detect
the "mov pc, lr" case and fix it up - and also gives us the possibility
of deploying this for other registers depending on the CPU selection.

Reported-by: Will Deacon <will.deacon@arm.com>
Tested-by: Stephen Warren <swarren@nvidia.com> # Tegra Jetson TK1
Tested-by: Robert Jarzmik <robert.jarzmik@free.fr> # mioa701_bootresume.S
Tested-by: Andrew Lunn <andrew@lunn.ch> # Kirkwood
Tested-by: Shawn Guo <shawn.guo@freescale.com>
Tested-by: Tony Lindgren <tony@atomide.com> # OMAPs
Tested-by: Gregory CLEMENT <gregory.clement@free-electrons.com> # Armada XP, 375, 385
Acked-by: Sekhar Nori <nsekhar@ti.com> # DaVinci
Acked-by: Christoffer Dall <christoffer.dall@linaro.org> # kvm/hyp
Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com> # PXA3xx
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> # Xen
Tested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> # ARMv7M
Tested-by: Simon Horman <horms+renesas@verge.net.au> # Shmobile
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:04 +01:00
Russell King
af040ffc9b ARM: make it easier to check the CPU part number correctly
Ensure that platform maintainers check the CPU part number in the right
manner: the CPU part number is meaningless without also checking the
CPU implement(e|o)r (choose your preferred spelling!)  Provide an
interface which returns both the implementer and part number together,
and update the definitions to include the implementer.

Mark the old function as being deprecated... indeed, using the old
function with the definitions will now always evaluate as false, so
people must update their un-merged code to the new function.  While
this could be avoided by adding new definitions, we'd also have to
create new names for them which would be awkward.

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:02 +01:00
Krzysztof Kozlowski
ee2593ef56 ARM: 8099/1: EXYNOS: Fix MCPM build with SUSPEND=n
Building of EXYNOS5420_MCPM with disabled SUSPEND fails:
arch/arm/mach-exynos/built-in.o: In function `exynos_mcpm_init':
arch/arm/mach-exynos/mcpm-exynos.c:361: undefined reference to `mcpm_loopback'

The exynos_mcpm_init() in mcp-exynos.c calls mcpm_loopback() which
depends on cpu_suspend function (ARM_CPU_SUSPEND).

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 12:29:00 +01:00
Nicolas Pitre
fbb0499091 ARM: 8083/1: exynos: activate the CCI on boot CPU/cluster using the MCPM loopback
The Chromebook firmware doesn't enable the CCI for the boot cpu, and
arguably it shouldn't have to either. Let's have the kernel handle the

CCI on its own for the boot CPU the same way it does it for secondary CPUs
by using the MCPM loopback.

This allows to boot all 8 cores on exynos5420-peach-pit,
exynos5800-peach-pi and ARM Chromebook 2.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Tested-by: Tushar Behera <tushar.b@samsung.com>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
Tested-by: Kevin Hilman <khilman@linaro.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 11:58:04 +01:00
Nicolas Pitre
3592d7e002 ARM: 8082/1: TC2: test the MCPM loopback during boot
This is not strictly needed on TC2 but still a good idea to exercise
that code.

Signed-off-by: nicolas Pitre <nico@linaro.org>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 11:58:02 +01:00
Nicolas Pitre
3721924c81 ARM: 8081/1: MCPM: provide infrastructure to allow for MCPM loopback
The kernel already has the responsibility to handle resources such as the

CCI when hotplugging CPUs, during the booting of secondary CPUs, and when
resuming from suspend/idle.  It would be more coherent and less confusing
if the CCI for the boot CPU (or cluster)  was also initialized by the
kernel rather than expecting the firmware/bootloader to do it and only in
that case. After all, the kernel has all the necessary code already and
the bootloader shouldn't have to care at all.

The CCI may be turned on only when the cache is off. Leveraging the CPU
suspend code to loop back through the low-level MCPM entry point is all
that is needed to properly turn on the CCI from the kernel by using the
same code as during secondary boot.

Let's provide a generic MCPM loopback function that can be invoked by
backend initialization code to set things (CCI or similar) on the boot
CPU just as it is done for the other CPUs.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
Tested-by: Kevin Hilman <khilman@linaro.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 11:58:00 +01:00
Arnd Bergmann
731542ef44 ARM: 8101/1: mach-iop13xx: fix possible build failure
After applying patch:
	"ARM: 8078/1: get rid of hardcoded assumptions about kernel stack size"

following build failure happens on iop13xx platform:

   In file included from include/linux/srcu.h:33:0,
                    from include/linux/notifier.h:15,
                    from include/linux/reboot.h:5,
                    from arch/arm/mach-iop13xx/include/mach/iop13xx.h:6,
                    from arch/arm/mach-iop13xx/include/mach/hardware.h:14,
                    from arch/arm/mach-iop13xx/include/mach/memory.h:4,
                    from arch/arm/include/asm/memory.h:24,
                    from arch/arm/include/asm/page.h:163,
                    from arch/arm/include/asm/thread_info.h:17,
                    from include/linux/thread_info.h:54,
                    from include/asm-generic/preempt.h:4,
                    from arch/arm/include/generated/asm/preempt.h:1,
                    from include/linux/preempt.h:18,
                    from include/linux/spinlock.h:50,
                    from include/linux/seqlock.h:35,
                    from include/linux/time.h:5,
                    from include/uapi/linux/timex.h:56,
                    from include/linux/timex.h:56,
                    from include/linux/sched.h:19,
                    from arch/arm/kernel/asm-offsets.c:13:
   include/linux/rcupdate.h: In function '__rcu_read_lock':
>> include/linux/rcupdate.h:220:2: error: implicit declaration of function 'preempt_disable' [-Werror=implicit-function-declaration]
     preempt_disable();

The problem here is recursive header inclusion which could be avoided by
removing linux/reboot.h from mach/iop13xxx.h.
linux/reboot.h in include/mach/iop13xx.h is needed only for enum reboot_mode,
so header it could be replaced with a enum declaration.

Whatever patch "ARM: 8078/1: get rid of hardcoded assumptions about kernel stack size"
does, I think it's good to avoid unnecessary header inclusion here in any case.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-07-18 11:57:59 +01:00
Soren Brinkmann
8fe9346b94 ARM: zynq: DT: Migrate UART to Cadence binding
The Zynq UART is Cadence IP and the driver has been renamed accordingly.
Migrate the DT to use the new binding for the UART driver.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Acked-by: Rob Herring <robh@kernel.org>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2014-07-18 11:54:24 +02:00
Thierry Reding
122ee17dc2 ARM: tegra: Remove legacy PCIe power supply properties
These properties are deprecated and no longer of any use.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2014-07-18 11:20:10 +02:00
Stefan Agner
69603fbbc4 ARM: dts: vf610: add FlexCAN node
Add FlexCAN node for the two FlexCAN IP instances in Vybrid.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:47 +08:00
Robert Nelson
417d65f65f ARM: dts: add initial Rex Basic board support
Add initial Rex Pro i.mx6dl board support. Ethernet, UART, USB, I2C, SPI, HDMI,
Audio, and SDHC cards are working.  Currently no mainline u-boot, so boot with
cat zImage imx6dl-rex-basic.dtb > zImage.dtb, then using mkimage create uImage

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:47 +08:00
Robert Nelson
e2047e33f2 ARM: dts: add initial Rex Pro board support
Add initial Rex Pro i.mx6q board support. Ethernet, UART, USB, I2C, SPI, HDMI,
Audio, and SDHC cards are working.  Currently no mainline u-boot, so boot with
cat zImage imx6q-rex-pro.dtb > zImage.dtb, then using mkimage create uImage

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:46 +08:00
Marek Vasut
18e8499b22 ARM: dts: mx5: Split M53EVK into SoM and EVK parts
This patch splits the M53EVK device tree file into a common SoM
part and an EVK part. This is needed to make it easier for users
of the SoM to put it into different, non-reference baseboard.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:46 +08:00
Iain Paton
cb9456b538 ARM: dts: imx6: RIoTboard explicitly define pad settings
Instead of relying on defaults or bootloader settings, explicitly define
all pad settings.

This resolves reported issues of no analogue audio output.

Signed-off-by: Iain Paton <ipaton0@gmail.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:46 +08:00
Stefan Agner
e7779620d0 ARM: dts: vf610: fix length of eshdc1 register property
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:45 +08:00
George Joseph
8536239e37 ARM: dts: Restructure imx6qdl-wandboard.dtsi for new rev C1 board.
The rev C1 Wandboard uses the Broadcom 4330 for WiFi and Bluetooth instead of
the 4329.  This changes the PADS assigned for the control lines.  Another
side effect of the change is that on the rev C1 board, usdhc driver can't
detect the chip presence correctly so usdhc2 now needs its 'non-removeable'
property removed.

So that rev B1 and earlier can continue to work, this patch splits the
board-specific definitions from imx6qdl-wandboard.dtsi into
imx6qdl-wandboard-revb1.dtsi and imx6qdl-wandboard-revc1.dtsi.  The new files
include the original base imx6qdl-wandboard.dtsi which retains the common
definitions.

The existing imx6dl-wandboard.dts includes imx6qdl-wandboard-revc1.dtsi and
imx6dl-wandboard-revb1.dts (new) includes imx6qdl-wandboard-revb1.dtsi.
This makes the rev C1 board the new default.  The same pattern is used for
imx6q-wandboard.dts.

So, from U-Boot on a WB-Quad you use imxq-wandboard-revb1.dtb for the older B1
board and imxq-wandboard.dtb for the current rev C1 board.

Signed-off-by: George Joseph <george.joseph@fairview5.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:45 +08:00
Shawn Guo
025781539a ARM: dts: imx53: correct clock-names of SATA node
Per the binding doc imx-sata.txt, the first entry of clock-names should
be "sata" than anything else.  Correct it for imx53 SATA node.

It works for now only because SATA driver gets clock by index so far.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:45 +08:00
Fabio Estevam
4c03527eb7 ARM: imx6: Align ssi nodes between mx6 variants
Since commit 98ea6ad2ed (ARM: dts: imx6: use imx51-ssi) the mx6 ssi is
compatible with imx51, so align all the mx6 variant ssi compatible strings as:

compatible = "fsl,<imx6-soc>-ssi", "fsl,imx51-ssi";

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:44 +08:00
Alexander Shiyan
ea336fa8ee ARM: i.MX27 clk: dts: Use clock defines in DTS files
Use clock definitions in i.MX27 DTS files.
Additional changes included in this patch (imx27.dtsi):
- Fix IPG clock for UART6.
- Use EMI_AHB_GATE clock for WEIM.
- Added GPIO_IPG_GATE clock for GPIO nodes. Currently this clock is
  not used by the driver, but it can be added in the future.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:44 +08:00
Shawn Guo
811e76856a ARM: dts: imx: correct sdma compatbile for imx6sl and imx6sx
The SDMA on imx6sl and imx6sx is more compatible with imx6q one than
imx35.  Let's use "fsl,imx6q-sdma" instead of "fsl,imx35-sdma", so that
SDMA ROM script on imx6sl and imx6sx can work for audio driver just like
the case of imx6q.

Reported-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Robin Gong <yibin.gong@freescale.com>
2014-07-18 16:49:44 +08:00
Fabio Estevam
9c86ae8c70 ARM: dts: imx6sx-sdb: Add audio support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:44 +08:00
Fabio Estevam
3a462a624b ARM: dts: imx6sx: Pass the fsl,fifo-depth property
Like the other mx6 variants, we need to pass fsl,fifo-depth property in dtsi.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
2014-07-18 16:49:43 +08:00