mmc: omap_hsmmc: add DT power properties

Allow passing MMC_CAP_POWER_OFF_CARD and MMC_PM_KEEP_POWER capabilities
from DT.

Signed-off-by: Ido Yariv <ido@wizery.com>
mmc: omap_hsmmc: Power down capable mmc slots

Even with DT, some slots can (and should) be powered off, as not all
slots rely on pbias cell programming.

Use the POWER_OFF_CARD capability to signal that it's OK to power down
the card. Cards which rely on pbias should not have this capability set.

Signed-off-by: Ido Yariv <ido@wizery.com>
ARM: omap5-uevm: Add wilink/wlan support

The wilink module is a combo wireless connectivity sdio card based on
Texas Instrument's wl18xx solution.
It is a 4-wire, 1.8V, embedded sdio wlan device with an external irq
line and is power-controlled by a gpio-based fixed regulator.

Add support for the wlan capabilities of this module by muxing the
relevant mmc and gpio lines, and setting the required platform data.

Signed-off-by: Ido Yariv <ido@wizery.com>
Build a zImage or uImage with dtb already appended

Add new targets to build zImage and uImage with DTB appended (i.e. make
'uImage-dtb.am335x-bone' or 'make zImage-dtb.omap3-evm').

Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Domenico Andreoli <domenico.andreoli@linux.com>
mmc: provide a standard MMC device-tree binding parser centrally

MMC defines a number of standard DT bindings. Having each driver parse
them individually adds code redundancy and is error prone. Provide a
standard function to unify the parsing. After all drivers are converted
to using it instead of their own parsers, this function can be integrated
into mmc_alloc_host().

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
mmc: add DT bindings for more MMC capability flags

Many MMC capability flags are platform-dependent and are traditionally set
in platform data. With DT often each such capability requires a special
binding. Add bindings for MMC_CAP_SD_HIGHSPEED, MMC_CAP_MMC_HIGHSPEED,
MMC_CAP_POWER_OFF_CARD and MMC_CAP_SDIO_IRQ capabilities. Also add code to
DT parser to look up "keep-power-in-suspend" and "enable-sdio-wakeup"
bindings and set MMC_PM_KEEP_POWER and MMC_PM_WAKE_SDIO_IRQ respectively,
if found.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
arm: edma: fix dt array parsing

edma_of_read_u32_to_s16_array() parsed dt arrays wrong -
it used incorrect size (parsed the array as u16 instead
of u32) and always overrode the first elemts with
termination values, resulting in empty array.

Fix it by using an intermediate u32 array.

NOTE: the same should be done for edma_of_read_u32_to_s8_array.

Signed-off-by: Ido Yariv <ido@wizery.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>
am335xx-evm: add mmc3+wlan definitions to dts

This includes the WLAN regulator, pinmux, DMA and wlcore bindings.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>