Merge "the second part of the Broadcom ARM-based SoC changes" from Florian Fainelli:
- Florian updates the DEBUG_UART_BCM5301X entry to cover both NS and NSP SoCs
since they both have the same location
* tag 'arm-soc/for-4.8/soc-part2' of http://github.com/Broadcom/stblinux:
ARM: debug: Enable DEBUG_BCM_5301X for Northstar Plus SoCs
- Fix a make randconfig build error for recent SMP kexec changes
- A series of clock related fixes to prepare things for moving
device clkctrl register handling to drivers/clk
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJXe11sAAoJEBvUPslcq6Vz/XwQAItR9F4G/DibYl6CgIgvxdZF
heCFfhg/TjNnAlOdqSszAmCDxrL0cSj9/Djm7PBmcZz6T0XQWp2xviTsW/08N9LI
Hcugi179a10IjOan6EASQlITRDC6S9Elkq2arMDTxkRMH8jRBGCG3Wk7H3N4084O
x7XCZH2zDGDsYJp12L1iZ6DZ+aYneSmcK3WmUmAiKQTZw1fK0AfMtc95fHh2iCTJ
hK0+LCbg2gUL1+GKZTIa+caLDdU+48XDpxagAnnIDiWJH+TC1DOve14I0OqzZiCB
YZC/W14ulIwkTMpUNHZufcG9ZVg0G3gtvnfKISxLI8gf/X/CrbcGsVnqRmsA3P2g
r3rIVpdoZ4UbHfKZnE36jR6EggX71pQ+h8M3iazb9aoraWQKOL6NanqPbf3WZO3i
PGXDOwrnXqK2mjfkMWr+ERLKcLFJSnYQaeZuZF84s1TqLIvzm7ouvGfD0fcbvW9N
RA/imL/FqLeuu3X6PtE0mReS+aGJ+Ov2ZpmPpemdOryys3LotYHoC8fJyD9l5GKp
M5sHHEVZicFHPesYaBnjThVbM5zVHYnmb1o+Yyjizwnh52kOKJO8SrJ9+qBvJ9Bo
JitY8Y2+52IVDPtpeST2METORIP2HDZF4GnQdx8EakJBok4EPfVgXUzT7M1XB7Bw
RnGWoAxSVQzrzr7kSMHS
=qmem
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v4.8/soc-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc
Merge "Few more omap SoC changes for v4.8 merge window" from Tony Lindgren:
- Fix a make randconfig build error for recent SMP kexec changes
- A series of clock related fixes to prepare things for moving
device clkctrl register handling to drivers/clk
* tag 'omap-for-v4.8/soc-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: AM33xx: fix module_wait_ready without clkctrl register
ARM: OMAP2+: clockdomain: add usecounting support to autoidle APIs
ARM: OMAP2+: timer: change order of hwmod data handling
ARM: OMAP2+: hwmod: fetch main_clk based on hwmod name
ARM: OMAP2+: omap_device: create clock alias purely from DT data
ARM: OMAP2+: Fix build with CONFIG_SMP and CONFIG_PM is not set
The original patch was to add compatible string for Hi3519 soc
and do some cleanup.
Since the generic machine entry could meet most of the cases,
so I did a further cleanup to reuse it and just keep one machine
entry that needs map_io here.
Signed-off-by: Jiancheng Xue <xuejiancheng@huawei.com>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
* Add DT support to the APMU driver and prioritise DT APMU support
* Obtain extal frequency from DT
* Add support for r8a7792
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJXdR2IAAoJENfPZGlqN0++PFsP+QG1N24uc3pc1+kDFvgnPzqH
Hs3SzPdSLTjx72K4gybaxLp6N6IMLWwHZUSfWDa1WoUDw8j4yVieJ+bTqPQ52SAS
+9bRbUb5P1kowQ643xIxOoNPKN+XERJtFMUgt9NW/auzxGJFtVuxkDkxzovwWtgm
f4+wQSgf0zgl/JabbD1qZtf8zhm8gPGsG92CFJqPmkGYoXjVNkiGwsAF4W1WCKfJ
oXGUAwuVCpoZluLTg7sY2drqIb/L2mZ0QunjdY3dEJO7YxDF7cYTCE0BgGhN/oGH
nFme3l9WPi2cPMfEl6Ucfvj4lXPeReXhTIGq8XzKCyJy75WlZsCCPgNJ0nuBvriC
i0V4q2wfpfubzxjcVGdGfP/05QOY2ZZbvBvqaLyxorjw7atTGhn0QPgQtIfL4P1T
nlf1fMMtlG5m8CjM7J3nAR6BKcEEF1plUL0c1ZG6UeZCAENX9MyB0J47B7+umI1a
xuNugqKJg2Z8OsFKJ40MwdvlQuw6QRNw8am4erEou0pt3tzY2+O9pgw7yV2ElNkX
OVskuk+ove0uK5XAmOdClZHtTl5+wNp+XKCKTcUGHY7L4RaC9zax0YujrrBoe/wz
QvqwZF5As7pXk8ckzDS4Zvxsc2AuKQBRKfIp9JMcM9urEwRdlWvhb/OgKUjlqsve
BSj+hDjpO4V4VZCSQv8r
=+RmG
-----END PGP SIGNATURE-----
Merge tag 'renesas-soc2-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Second Round of Renesas ARM Based SoC Updates for v4.8
* Add DT support to the APMU driver and prioritise DT APMU support
* Obtain extal frequency from DT
* Add support for r8a7792
* tag 'renesas-soc2-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: r8a7791: Prioritize DT APMU support
ARM: shmobile: r8a7790: Prioritize DT APMU support
ARM: shmobile: smp: Add function to prioritize DT SMP
ARM: shmobile: apmu: Add APMU DT support via Enable method
ARM: shmobile: apmu: Move #ifdef CONFIG_SMP to cover more functions
ARM: shmobile: rcar-gen2: Correct arch timer frequency on R-Car V2H
ARM: shmobile: rcar-gen2: Obtain extal frequency from DT
ARM: shmobile: r8a7792: basic SoC support
soc: renesas: rcar-sysc: Improve SYSC interrupt config in legacy wrapper
soc: renesas: rcar-sysc: Move SYSC interrupt config to rcar-sysc driver
soc: renesas: rcar-sysc: Make rcar_sysc_init() init the PM domains
soc: renesas: rcar-sysc: Fix uninitialized error code in rcar_sysc_pd_init()
soc: renesas: rcar-sysc: add R8A7792 support
soc: renesas: rcar-sysc: Add support for R-Car M3-W power areas
soc: renesas: Add r8a7796 SYSC PM Domain Binding Definitions
soc: renesas: rcar-sysc: Document r8a7796 support
Signed-off-by: Olof Johansson <olof@lixom.net>
Building with CONFIG_HOTPLUG_CPU disabled fails for mach-tango:
include/linux/stddef.h:7:14: error: excess elements in struct initializer [-Werror]
#define NULL ((void *)0)
arch/arm/mach-tango/platsmp.c:48:15: note: in expansion of macro 'tango_cpu_kill'
.cpu_kill = tango_cpu_kill,
the problem as that the .cpu_kill and .cpu_die struct members are
unavailable and we must not try to assign them in this configuration.
Hiding the two (as all other platforms do too) lets us get rid of
the #else clause as well.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Olof Johansson <olof@lixom.net>
Northstar Plus SoCs (ARCH_BCM_NSP) have the exact same UART location and
properties like the register shift of 0, so make it usable.
Acked-by: Jon Mason <jon.mason@broadcom.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* commit '5c34a4e89c743339f78cafb2f2a826a010f0746a':
ARM: do away with ARCH_[WANT_OPTIONAL|REQUIRE]_GPIOLIB
ARM: uniphier: drop code for old DT binding
These cause a harmless conflict with the clps711x multiplatform
support, and it's easy to resolve.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Any CLPS711X-based board can be replaced with devicetree equivalent.
Remove the board files.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This patch adds basic support to run Cirrus Logic ARMv4T CPUs
with device-tree support.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Last CLPS711X CPU register is PLLR has 0xa5a8 address, so we can reduce
the map to 48k and align the end of the static at VMALLOC_START.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- A series of DSS platform_data fixes to prepare for DSS driver changes
- Add tblck clck aliases for PWM
- A series of trivial spelling corrections
- Remove bogus eQEP, ePWM and eCAP hwmod entries
- A series of McBSP sidetone fixes
- Remove QSPI and DSS addresses from hwmod, these come from dts
- Fix RSTST register offset for pruss
- Make ti81xx_rtc_hwmod static
- Remove wrongly defined RSTST offset for PER Domain, note
that the subject for this one wrongly has "dts" in the
subject
- Add support for omap5 and dra7 workaround for 801819
- A series of patches to make kexec work for SMP omaps
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJXdMXwAAoJEBvUPslcq6VzL9oQAKfitWelEieWYINsm475xHUL
DDckxrFtbVzrkI7rsY1wCi8v3i1DKEKBps47pnapy+AoD+js1C+vTKaQA2IXouFi
CWlwgCuwJpLc4VoYGrbszXSJQeJowFHIH/zVk3CJrqBIwYKqnjH6sGCHRN23KNdN
U2SPA7qV8XwwCrFR4e2+KWe5ulb7QsxvkCKqLyDrAwyu0wUQml1/4UjX5NYOkr1Y
G5CyvGy7WBZ/t5MOFMPAR7rhxKQazUdNlgC7rGfVr+JUuYWtsyET6FBZ1kUBVFpa
xc+usR78C+7gaQps8bbuIr2ymcOYamVlpjVwsvpTCWyFcnseK0hXsrf8KihRHfYh
5p1yyDlqGg5qS6B16cyNgUqi/jVNa7NuRJWavgS+oWIm1j2WkUe9gdVyqP7WQGUZ
UGF4OAXoo7aykvSsYEug/5U1d4T5aShESyoukTGsLbtRGhyiSxP3OqsoHzBwyfCM
bA6OZzVxR/MRinpc/udvOsi/C7erm1iA6C+Fg4Gggk59Xt0yU+e4Scg40khQQ6X9
1ND/HTG0rQ+ygLttUXPCK0kBg1u+SU/zh0+j9EV3I6CA624JQ2Gm2Bb/6xHk3vkL
dmQosa5U2wLiXY6EKS2VcjAv7+yuaLdj/MMoOBh7TXz181/SnciNzAb6kEEXRNak
vA0yKATY6AftMYBMwhPn
=d4B3
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v4.8/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc
SoC related changes for omaps for v4.8 merge window:
- A series of DSS platform_data fixes to prepare for DSS driver changes
- Add tblck clck aliases for PWM
- A series of trivial spelling corrections
- Remove bogus eQEP, ePWM and eCAP hwmod entries
- A series of McBSP sidetone fixes
- Remove QSPI and DSS addresses from hwmod, these come from dts
- Fix RSTST register offset for pruss
- Make ti81xx_rtc_hwmod static
- Remove wrongly defined RSTST offset for PER Domain, note
that the subject for this one wrongly has "dts" in the
subject
- Add support for omap5 and dra7 workaround for 801819
- A series of patches to make kexec work for SMP omaps
* tag 'omap-for-v4.8/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (30 commits)
ARM: OMAP2+: Fix build if CONFIG_SMP is not set
ARM: OMAP4+: Allow kexec on SMP variants
ARM: OMAP4+: Reset CPU1 properly for kexec
ARM: OMAP4+: Prevent CPU1 related hang with kexec
ARM: OMAP4+: Initialize SAR RAM base early for proper CPU1 reset for kexec
ARM: dts: am43xx: Remove wrongly defined RSTST offset for PER Domain
ARM: OMAP: make ti81xx_rtc_hwmod static
ARM: AM43XX: hwmod: Fix RSTST register offset for pruss
ARM: DRA7: hwmod: remove DSS addresses from hwmod
ARM: DRA7: hwmod: Remove QSPI address space entry from hwmod
ARM: OMAP2+: McBSP: Remove the old iclk allow/deny idle code
ASoC: omap-mcbsp: sidetone: Use the new callback for iclk handling
ASoC: omap-mcbsp: Rename omap_mcbsp_sysfs_remove() to omap_mcbsp_cleanup()
ARM: OMAP3: pdata-quirks: Add support for McBSP2/3 sidetone handling
ARM: OMAP3: McBSP: New callback for McBSP2/3 ICLK idle configuration
ARM: OMAP3: hwmod data: Fix McBSP2/3 sidetone data
ARM: AM335x/AM437x: hwmod: Remove eQEP, ePWM and eCAP hwmod entries
ARM: OMAP2+: Fix typo in sdrc.h
ARM: OMAP2+: Fix typo in omap_device.c
ARM: OMAP2+: Fix typo in omap4-common.c
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Since the SP804 timer changes will not been merged upstream, switch the
default OX810SE config to the OXNAS RPS Timer driver configuration.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
- A patch series including both cpuidle and FEC driver changes to
disable deeper idle states when FEC is active while board level
workaround for ERR006687 is not available
- A number patches to fix sparse warnings and spell errors
- A fix for TZIC FIQ translation from VIRQ to HWIRQ
- Support compatible of i.MX7 Solo SoC which has a subset of i.MX7 Dual
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJXcmFTAAoJEFBXWFqHsHzOxXoH/A5B4yRv82dM9L6KcCYqxc8B
UL8Rt11mMsezj/mSoikPjdDV7rKRcbSyY7ujUs0g9jhdKzl2sCCu9rXtYN+oeDpH
iJrndyQ8+Y0UDitmvZGwyW5HImUKuoMvFjJpg7D3WGs/2wACj9TVrrNl+AWawZXR
B+mNO6vT3MEnflzFKkcZmYhwtMXPmaGDc732pS6sgqBLjAJp8X37wWoWJ2lVG9zf
8fjEfUcB3jqWFr6YYJk/adWEjFwRBQ1QayY994Cxeym9kSo3BXfDJ3wcnG1sdOvF
jsM0fsV75gMQNCy8VqiHTNhLk5DGM5PYKQLrQ8r0yoAwvXLLAbu+gPXJSWrACig=
=yWZX
-----END PGP SIGNATURE-----
Merge tag 'imx-soc-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc
The i.MX SoC changes for 4.8:
- A patch series including both cpuidle and FEC driver changes to
disable deeper idle states when FEC is active while board level
workaround for ERR006687 is not available
- A number patches to fix sparse warnings and spell errors
- A fix for TZIC FIQ translation from VIRQ to HWIRQ
- Support compatible of i.MX7 Solo SoC which has a subset of i.MX7 Dual
* tag 'imx-soc-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
ARM: imx: add support for i.MX 7Solo
ARM: i.MX: Disable supervisor protect for i.MX51
ARM: imx6: fix missing <soc/imx/cpuidle.h> in cpuidle-imx6q.c
ARM: i.MX: Fix FIQ interrupt handling for TZIC
ARM: imx6: fix static declaration in include/soc/imx/cpuidle.h
ARM: imx6q: export cpuidle functions needed by fec driver
ARM: imx: fix missing include of common.h
ARM: imx: fix missing includes
ARM: imx6: disable deeper idle states when FEC is active w/o HW workaround
ARM: mach-imx6q: fix spelling mistake in error message
Signed-off-by: Olof Johansson <olof@lixom.net>
Use regex pattern to match tango-specific files.
Signed-off-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
cpu_die() and cpu_kill() are implemented in firmware.
Signed-off-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Since the initial support of mach-uniphier, this has always been
just empty.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
* Add MSM9615 support
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJXcaPsAAoJEFKiBbHx2RXVrFQP/Ap4sa0tZhp/5sp9tuOMdZUy
Xvtrb1pv+6Bpb2bMjpA7mO0FMX6ly9iOOU+fgVxwVMUlx5z8Bou83WFy6OphwaN/
HpCK6/sthvZvAVGPmYv8h+OMAo3HrikJIZ86aEIwESNdLHEV4+c+MvZQMRyJws76
OdM85EWquc+kbFvusTpsjMXeu+nKYFr9e1VtkC/sWbI6vOSuVq1nsuiCz6Oje7Wg
gElppda57W9n/BZKyeHyCfuY9nEIyCqFPztfrTJUmCujAkDsHtKVdEM2hrGzbXj9
qBK3p71ClcOQr2U+w+P01v7nxh1kNGK3+zcLCdjYNB+kVUvnin7SOfVCMDeax6hH
dZEQ97xCzOvcBj3Lk+e7mAKxHqCCiB0sozDOPX3949fkhP1AWvrmc+42eM48ywCB
hus30EZlR3Ofpz/KQusNxs5DoGD4t4ljCpqabv0v9/2F7WvxN2ai/tCXsLCzxSmW
tOgPoLsk4Rjj1gmj/Mk6lkL6Ty7EQ0KDd7rE8k1GRhovm8mArxFyNbPJm4DI81Zc
II+fZKpLPB49JnqZhEmknBeLDeyj6CbWOsCrjxICJrPJXW5JWcfj4b+469ZqnyH2
5SOzJYpU7yC4jPyEGU3SR+Hvc/AXqNHSqEZV4ArBCpi71X0U4hJJm/JluS1Y/Cqw
qwwXUnYw1agSICZEIDra
=clyf
-----END PGP SIGNATURE-----
Merge tag 'qcom-soc-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/soc
Qualcomm ARM Based SoC Updates for v4.8
* Add MSM9615 support
* tag 'qcom-soc-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
ARM: qcom: Add support for MDM9615
Signed-off-by: Olof Johansson <olof@lixom.net>
- Add final documentation for sama5d2
- Fix some compilation warnings
-----BEGIN PGP SIGNATURE-----
iQIcBAABCgAGBQJXaW9lAAoJENiigzvaE+LCYmIP+welOH1GNuP+8kfGoA5x5jHw
AJFSVMMNtuxmwLT+9gzhYG2SnCeA7eAkwnXtwWHPO2Wuok9GhrEASXC+lq35ZyOF
RlJ9OTrnzMjIiVaPdeL3c5631ceK8FCzdPeiaQnbr2vE9oMLJMZscbD2+rnrX4i2
qK0e9q6GSdadnhtHMDtTiZvyN2ko43gj6Pok0oRH7R4gOAM1UUvMkTEJp4BzHV2m
q4Fok4GNI+mgZwsQhKMh4vIN5kKg5ginWMEmwMemqmch7O3jCcsGSj2RnxJzOMG+
/sglhASPEq419o7iDfonT3XHvgul+GXB/za7FfehghUuZH1TKQzohmO6HSDhqA1Q
zGw+1L14NG8QrROIH3kQkIoBOKLxtU8d3QKZ0aEKdIL3vGU27w/qzgjXbYxqWVq4
rg92nbkWn+GtN1BjDJ4qfChzeMy9DeHQcCdOUYNU66jtStETMqw/CU2lonWPRnwj
2putuXVlYLU+iwYnB2dcV6z9G78OLZWpQbBKpSgJgLkpmR5OXhts3ta4nKZdNp6b
uPtlbWF89NdjDtBR4GjuI5WCCsyzJRM8c8j+ujhquWcbxLA0JKWypdVmEo95U3zk
EY/GlYWVYGqW7ApD2o2pllIj4Wi44DmmUwVGERSWTO0bWQixcQMJ/siB+FZ2R1Hz
mCrF+o6Ikj4/+6ANP2wZ
=dIzO
-----END PGP SIGNATURE-----
Merge tag 'at91-ab-4.8-soc2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/soc
SoC changes for 4.8 #2:
- Add final documentation for sama5d2
- Fix some compilation warnings
* tag 'at91-ab-4.8-soc2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
ARM: at91: fix warnings in pm.c
ARM: at91: Documentation: update the sama5d2 entry
Signed-off-by: Olof Johansson <olof@lixom.net>
If the module has no clkctrl register defined, module_wait_ready should
not try to access this. This can potentially cause an illegal register
access, and result in bad idle reporting also.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
The previous implementation was racy in many locations, where the current
status of the clockdomain was read out, some operations were executed,
and the previous status info was used afterwards to decide next state
for the clockdomain. Instead, fix the implementation of the allow_idle /
deny_idle APIs to properly have usecounting support. This allows clean
handling internally within the clockdomain core, and simplifies the
usage also within hwmod.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
With the introduction of hwmod module clocks, the name of the hwmod
main clk may not be available before hwmod setup, as hwmod setup
may lookup the main clock dynamically based on the hwmod name.
Thus, change the order of hwmod setup and main clock handling for
the timer code, to make sure the main clock is going to be
available.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
With the transition to hwmod module clocks, all hwmods will have
their main clocks named <hwmod_name>_mod_ck. Use this info to
fetch main_clk, and use it if found.
Also, if a main_clk is found based on the hwmod name, disable
the direct PRCM modulemode access from hwmod.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
This avoids the need to add most of the clock aliases under
drivers/clk/ti/clk-xyz.c files.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
I found one more make randconfig build error with the recent
SMP kexec changes. We need the mpuss now always available early.
Fixes: 0573b957fc ("ARM: OMAP4+: Prevent CPU1 related hang
with kexec")
Signed-off-by: Tony Lindgren <tony@atomide.com>
Adjust the r8a7791 SoC support code to not configure any non-DT SMP code
in case the DT-based enable-method has been installed already.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Adjust the r8a7790 SoC support code to not configure any non-DT SMP code
in case the DT-based enable-method has been installed already.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Add a function to check if other DT based method is available, and
if so return false to not hook up smp_ops from the machine vector.
This results in that DT-based SMP support has priority over older
C-based smp_ops code, and in case DT-based SMP support code does not
exist in the DTB then the old smp_ops code will still work as-is.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Allow DT configuration of the APMU hardware in the case when the APMU is
pointed out in the DTB via the enable-method. The ability to configure
the APMU via C code is still kept intact to prevent DTB breakage for older
SoCs that do not rely on the enable-method for SMP support.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
[geert: Fix CONFIG_SMP=n build]
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
shmobile_smp_apmu_prepare_cpus() is used only if CONFIG_SMP=y.
Hence move the #ifdef to cover shmobile_smp_apmu_prepare_cpus() and all
functions only called by it (apmu_init_cpu() and apmu_parse_cfg()).
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
According to the datasheet, the frequency of the ARM architecture timer
on R-Car V2H depends on the frequency of the ZS clock, just like on
R-Car E2.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
On some R-Car Gen2 SoCs, the frequency of the ARM architecture timer
depends on the frequency of the external clock crystal. Currently the
latter is determined indirectly from the state of the mode pins, which
is a relic predating DT.
Obtain the external clock crystal frequency from DT instead, removing
the dependency on the mode pins.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Add minimal support for the R-Car V2H (R8A7792) SoC.
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Align SYSC interrupt configuration in the legacy wrapper with the DT
version:
- Mask SYSC interrupt sources before enabling them (doesn't matter
much as they're disabled at the GIC level anyway),
- Make sure not to clear reserved SYSCIMR bits that were set before.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
On R-Car H1 and Gen2, the SYSC interrupt registers are always configured
using hardcoded values in platform code. For R-Car Gen2, values are
provided for H2 and M2-W only, other SoCs are not yet supported, and
never will be.
Move this configuration from SoC-specific platform code to the
rcar_sysc_init() wrapper, so it can be skipped if the SYSC is configured
from DT. This would be the case not only for H1, H2, and M2-W using a
modern DTS, but also for other R-Car Gen2 SoCs not supported by the
platform code, relying purely on DT.
There is no longer a need to return the mapped register block, hence
make the function return void.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Let rcar_sysc_init() trigger initialization of the SYSC PM domains from
DT if called before the early_initcall.
On failure, it falls back to mapping the passed register block, as
before.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
On success, rcar_sysc_pd_init() returns an uninitialized error code.
Use the return value of of_genpd_add_provider_onecell() to fix this.
This went unnoticed, as early_initcall() doesn't care about the return
value.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
The two functions hix5hd2_set_scu_boot_addr() and
hip01_set_boot_addr() are not declared or exported
outside arch/arm/mach-hisi/platsmp.c file. Avoid
the following warnings by making them static:
arch/arm/mach-hisi/platsmp.c:142:6: warning: symbol 'hip01_set_boot_addr' was not declared. Should it be static?
arch/arm/mach-hisi/platsmp.c:106:6: warning: symbol 'hix5hd2_set_scu_boot_addr' was not declared. Should it be static?
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
Looks like I only partially fixed up things if CONFIG_SMP
is not set for the recent kexec changes. We don't have
boot_secondary available without SMP as reported by Arnd.
Fixes: 0573b957fc ("ARM: OMAP4+: Prevent CPU1 related hang with kexec")
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Most peripherals on the i.MX51 have an Off-Platform Peripheral Access
Control Register (OPACR) in which the access rights (together with the
MPROT registers) can be declared.
However, this does not seem to work for example for SSI1+SDMA, because the
supervisor bit is not set for the SDMA unit.
A similar problem was described in the patch for i.MX53 CPU
(ARM: i.MX53: globally disable supervisor protect), and the same solution
is applicable for i.MX51 CPU.
Patch has tested on custom board based on Digi CCMX-51 module (i.MX51).
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Add support for Qualcomm MDM9615 in Kconfig and in DT match list.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
The davinci-i2s driver ("davinci-mcbsp") does not use platform
data any longer. Remove the dummy pdata provided by the board
drivers dm355, dm365, dm644x and neuros-osd2.
Signed-off-by: Petr Kulhavy <petr@barix.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Some of the drivers for S3C and S5P families of Samsung SoCs go in
through Samsung SoC tree. Extend the entry so proper maintainers would
be displayed in such cases, most notably the cpufreq drivers. This does
not change the work-flow for other drivers which have sub-maintainers
(like Samsung clocks).
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-pm@vger.kernel.org
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>