ARM: dts: exynos: Only build DTS files for subarches which are enabled

Currently we build all Exynos dtb files if CONFIG_ARCH_EXYNOS is enabled, even
if the corresponding CONFIG_ARCH_EXYNOS[345] subarch is not enabled, meaning we
may build dtbs for things which can't actually run in a particular
configuration.

Switch instead to using the subarch option, based purely on the filename which
I assume matches. Note that there doesn't apear to be any Exynos3 board files
right now (or I have somehow missed them).

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
usb: ehci/ohci-exynos: Fix of_node_put() for child when getting PHYs

On enabling CONFIG_OF_SELFTEST which enables CONFIG_OF_DYNAMIC,
we found out that while getting PHYs for the controller we were
doing an extra of_node_put on the child node in our routines -
exynos_e/ohci_get_phy().
This child is however already put by of_get_next_available_child()
which does a of_node_put() on the "prev" node. So there's no point
in putting the same node again in our routine.

Reported-by: Daniel Drake <drake@endlessm.com>
Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
usb3503: Add 'usb3503-gpio-waittime' property to device tree
usb3503: add more register defines
usb3503: write to PDS and CFG1 register instead of updating
usb3503: set some more bits in the CFG1 register
usb3503: add optional ext-regulator property

On some developer boards where the USB3503 is used, additional blocks
are connected to it. E.g. on the Hardkernel ODROID-U2 a LAN97xx
(ethernet with USB hub combo) is connected to it. The LAN97xx needs
its regulator enabled, but in particular this regulator also needs
to be switched off again on shutdown, otherwise it the LAN97xx is no
longer detected after a reboot.

This patch adds a new DT property 'ext-supply' so that one can
specify which regulator has to be enabled on probe / disabled on
shutdown.
clk: exynos4: add APLL values for exynos4412 prime frequencies
drm/exynos: remove unused/deprecated DT binding documentation
ARM: dts: exynos4x12: Add TMU node
clk: samsung: exynos4: Add gate clock for SSS module
ARM: dts: exynos4: add crypt-sss node
clocksource: exynos_mct: fix exynos4_mct_write

EXYNOS4_MCT_L_MASK is defined as 0xffffff00, so applying this bitmask
produces a number outside the range 0x00 to 0xff, which always results
in execution of the default switch statement.

Obviously this is wrong and git history shows that the bitmask inversion
was incorrectly set during a refactoring of the MCT code.

Fix this by putting the inversion at the correct position again.

Reported-by: GP Orcullo <kinsamanka@gmail.com>
HACK: mmc: dw_mmc-exynos: implementing hwreset on shutdown for eMMC

Use GPIO to issue a hwreset of the eMMC on system shutdown/reboot, so
that the eMMC stays useable once the systems comes up again.
Needed for the Hardkernel ODROID-X2/U2/U3.