platform/kernel/linux-stable.git
9 years agoARM: shmobile: genmai: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:57:24 +0000 (16:57 -0800)]
ARM: shmobile: genmai: enable CONFIG_DEVTMPFS in defconfig

DEVTMPFS is needed for udev

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 2304de6ef7479b12fa4529c12a53cac631a2c67b)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: kzm9d: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:57:04 +0000 (16:57 -0800)]
ARM: shmobile: kzm9d: enable CONFIG_DEVTMPFS in defconfig

DEVTMPFS is needed for udev

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit c5aa40f8485b9b6aaeae14e5bddd5e569829ac2f)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: kzm9g: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:56:55 +0000 (16:56 -0800)]
ARM: shmobile: kzm9g: enable CONFIG_DEVTMPFS in defconfig

DEVTMPFS is needed for udev

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 19bc39274b42052a198ae836c059652b65e2a21e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:56:33 +0000 (16:56 -0800)]
ARM: shmobile: lager: enable CONFIG_DEVTMPFS in defconfig

DEVTMPFS is needed for udev

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
[horms+renesas@verge.net.au: resolved trivial conflict]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 6ea8b5ff7ca2d200875ddd774faa8ca40d990d86)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: mackerel: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:56:17 +0000 (16:56 -0800)]
ARM: shmobile: mackerel: enable CONFIG_DEVTMPFS in defconfig

DEVTMPFS is needed for udev

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 97b3fbccfae2d1fee679073f1690e2428868754c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: marzen: enable CONFIG_DEVTMPFS in defconfig
Kuninori Morimoto [Thu, 30 Jan 2014 00:56:01 +0000 (16:56 -0800)]
ARM: shmobile: marzen: enable CONFIG_DEVTMPFS in defconfig

This reverts commit 41307133da4b6f242ecbb45950b9d043c0b21b96
("ARM: shmobile: marzen: Do not enable CONFIG_DEVTMPFS defconfig").

DEVTMPFS is needed for udev.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
[horms+renesas@verge.net.au: Added subject of reverted patch to changelog]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit edcde600a0bf778d98d945bd27f51c941e35bb8c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Enable SATA in defconfig
Valentine Barshak [Thu, 9 Jan 2014 14:24:37 +0000 (18:24 +0400)]
ARM: shmobile: lager: Enable SATA in defconfig

This enables R-Car SATA and SCSI disk in lager_defconfig.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 0e02971e4047e61edc913c997ba9124df33d5112)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: Enable DEVTMPFS_MOUNT in defconfig
Geert Uytterhoeven [Sun, 12 Jan 2014 11:15:49 +0000 (12:15 +0100)]
ARM: shmobile: koelsch: Enable DEVTMPFS_MOUNT in defconfig

Without this, a Debian jessie nfsroot hangs early in the boot process.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
[horms+renesas@verge.net.au: resolved trivial conflict]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 9a4e2a5a11efb7734dabef77a6e1515cbfdd9f42)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: Enable SATA in defconfig
Valentine Barshak [Thu, 9 Jan 2014 15:23:23 +0000 (19:23 +0400)]
ARM: shmobile: koelsch: Enable SATA in defconfig

This enables block layer, R-Car SATA and SCSI disk in koelsch_defconfig.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 7f03e3bf2bca488e1471e00b6b8b74242b065020)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Enable VIN along with ADV7180 decoder in defconfig
Valentine Barshak [Mon, 6 Jan 2014 14:55:41 +0000 (18:55 +0400)]
ARM: shmobile: lager: Enable VIN along with ADV7180 decoder in defconfig

This enables R-Car VIN SoC camera along with ADV7180 decoder,
which can be found on Lager board, to lager_defconfig.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 5d738332973d1b33cd9fb77062d3959d6c7e7a74)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add PCI USB host clock support
Valentine Barshak [Fri, 24 Jan 2014 22:28:48 +0000 (02:28 +0400)]
ARM: shmobile: r8a7790: Add PCI USB host clock support

This adds internal PCI USB host clock support.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 012a7069b5a10a0851584d71a1facdc40a972319)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r7s72100: really add i2c clocks
Wolfram Sang [Fri, 27 Dec 2013 04:15:24 +0000 (05:15 +0100)]
ARM: shmobile: r7s72100: really add i2c clocks

Due to a merge conflict, addition of the clocks was lost. Tested with
RIIC2 on a genmai board. Others untested but hopefully trivial enough to
be added.

Signed-off-by: Wolfram Sang <wsa@sang-engineering.com>
[horms+renesas@verge.net.au: Capitalised "ARM" in subject]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 3440cb28627d7fbaf25c0d60cb9c6cf6d66d61ad)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add SATA clocks
Valentine Barshak [Thu, 9 Jan 2014 15:23:21 +0000 (19:23 +0400)]
ARM: shmobile: r8a7791: Add SATA clocks

This adds SATA[01] clock support to R8A7791 SoC.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 373ababd4896d6012871f03a3f6d96083dc50610)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add ZS clock
Valentine Barshak [Thu, 9 Jan 2014 15:23:20 +0000 (19:23 +0400)]
ARM: shmobile: r8a7791: Add ZS clock

This adds fixed ratio zs_clk to R8A7791 clocks.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 5a6f994abbfde8e17671541db04399dfc4aebe62)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add SATA clocks
Valentine Barshak [Wed, 8 Jan 2014 16:31:25 +0000 (20:31 +0400)]
ARM: shmobile: r8a7790: Add SATA clocks

This adds SATA[01] clock support to R8A7790 SoC.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
[horms+renesas@verge.net.au: resolved trivial conflicts]
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 64b7f9aca549db8a8bbcf68c911e9bd24efe76f7)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add VIN clock support
Valentine Barshak [Wed, 8 Jan 2014 16:31:23 +0000 (20:31 +0400)]
ARM: shmobile: r8a7790: Add VIN clock support

This adds VIN[0-3] clock support to R8A7790 SoC.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
[horms+renesas@verge.net.au: manually applied]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit b89dfdfad949798e1624dd2ff494bdb7ac943b04)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: add Audio DMAC support
Kuninori Morimoto [Mon, 6 Jan 2014 08:32:54 +0000 (00:32 -0800)]
ARM: shmobile: r8a7790: add Audio DMAC support

R-Car H2 has many DMACs
(ex SYS-DMAC, 2D-DMAC, Audio-DMAC, USB-DMAC etc)
and, these DMAEngine needs DMA slave IDs to use it.

This patch adds new DMA slave ID list for r8a7790.
There, common part has RCAR_DMA_xxx prefix,
and Audio DMAC part has AUDIO_DMAC_SLAVE_xxx prefix.

Audio DMAC can be controlled via sh-dma-engine

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 2c578a1be846bde49cb0a916c20f526f27b59e89)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: add Audio DMAC clock
Kuninori Morimoto [Wed, 8 Jan 2014 06:08:40 +0000 (22:08 -0800)]
ARM: shmobile: r8a7790: add Audio DMAC clock

Audio DMAC can be controlled via sh-dma-engine

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit f5b2947e4a6589f07d485ca149d606283294979f)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Wait for status on all MSTP clocks
Shinya Kuribayashi [Wed, 8 Jan 2014 07:54:46 +0000 (08:54 +0100)]
ARM: shmobile: r8a7791: Wait for status on all MSTP clocks

When enabling a module clock by clearing its bit in the MSTP control
register, the CPG requires waiting for the status register to signal
that the clock has started. Failure to do so will result in returning
from the clk_enable() call with the clock potentially still disabled,
leading to various race conditions and difficult to debug errors.

Enable status wait for all MSTP clocks on the r8a7791.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit dd6fc76d2f61e732a14f3592bdd83c2c0b7d2dcc)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: emev2: Use __initconst for const init definition
Simon Horman [Fri, 27 Dec 2013 03:14:08 +0000 (12:14 +0900)]
ARM: shmobile: emev2: Use __initconst for const init definition

__initconst must be used instead of __initdata for
const init definitions.

This problem was introduced by 3d5de27174955702 ("mach-shmobile: Emma
Mobile EV2 DT support V3") in v3.4-rc7.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit d24d1780c340777942061ef3445edcf228e8d35b)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7779: Remove unused clock constants
Simon Horman [Wed, 8 Jan 2014 04:34:39 +0000 (13:34 +0900)]
ARM: shmobile: r8a7779: Remove unused clock constants

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
(cherry picked from commit d690f4681ceddeb3f077c661a19af0b8e0411ae7)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: Remove duplicate shmobile_invalidate_start() declaration
Geert Uytterhoeven [Fri, 3 Jan 2014 15:48:47 +0000 (16:48 +0100)]
ARM: shmobile: Remove duplicate shmobile_invalidate_start() declaration

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 891fa525dc29cbed3ef0b74d5e0ab2fb5233f9a6)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add VIN clocks
Valentine Barshak [Fri, 27 Dec 2013 11:57:50 +0000 (15:57 +0400)]
ARM: shmobile: r8a7791: Add VIN clocks

This adds VIN[0-2] clock support to R8A7791 SoC.

Changes in V2:
* none.

Changes in V3:
* capitalized ARM in the subject.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 5f3fbe63b39923294cfd4bce84ab16948467d30f)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add I2C clocks
Valentine Barshak [Fri, 27 Dec 2013 11:27:38 +0000 (15:27 +0400)]
ARM: shmobile: r8a7791: Add I2C clocks

This adds I2C[0-5] clock support to R8A7791 SoC.

Changes in V2:
* Capitalized ARM in the subject.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 106c0e8fa3a2f7a40d25583e193e34af3861564d)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Wait for status on all MSTP clocks
Shinya Kuribayashi [Sat, 14 Dec 2013 15:23:53 +0000 (16:23 +0100)]
ARM: shmobile: r8a7790: Wait for status on all MSTP clocks

When enabling a module clock by clearing its bit in the MSTP control
register, the CPG requires waiting for the status register to signal
that the clock has started. Failure to do so will result in returning
from the clk_enable() call with the clock potentially still disabled,
leading to various race conditions and difficult to debug errors.

Enable status wait for all MSTP clocks on the r8a7790.

Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi.px@renesas.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit cb9ec3adf882688831cdc9e7b84bb388f215f8ce)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7779: Wait for status on selected MSTP clocks
Laurent Pinchart [Sat, 14 Dec 2013 15:23:52 +0000 (16:23 +0100)]
ARM: shmobile: r8a7779: Wait for status on selected MSTP clocks

When enabling some of the module clocks by clearing stop bits in the
MSTP control registers, the CPG requires waiting for the status
registers to signal that the clocks have started. Failure to do so will
result in returning from the clk_enable() call with the clock
potentially still disabled, leading to various race conditions and
difficult to debug errors.

Enable status wait for all the r8a7779 MSTP clocks that report their
status.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 017410f686b8d9928ce30e4eb146175ea672f4c9)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: bockw: Sort Kconfig node's selections
Simon Horman [Tue, 7 Jan 2014 07:40:32 +0000 (16:40 +0900)]
ARM: shmobile: bockw: Sort Kconfig node's selections

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 2b2fd2755182d43e149259330c7b1fe0aa3243d6)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: armadillo800eva: Conditionally select SMSC_PHY
Simon Horman [Tue, 7 Jan 2014 06:55:49 +0000 (15:55 +0900)]
ARM: shmobile: armadillo800eva: Conditionally select SMSC_PHY

The armadillo800eva board uses has an SH ethernet controller which uses an
SMSC phy. Select SMSC_PHY for koelsch if SH_ETH is enabled to make use of the
SMSC-specific phy driver rather than relying on the generic phy driver.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 6a517b114d007a35fc264ef16b09db35548f0290)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: ape6evm: Conditionally select SMSC_PHY
Simon Horman [Tue, 7 Jan 2014 06:23:47 +0000 (15:23 +0900)]
ARM: shmobile: ape6evm: Conditionally select SMSC_PHY

The ape6evm board uses has an SMSC911X ethernet controller which uses an
SMSC phy. Select SMSC_PHY for ape6evm if SMSC911X is enabled to make use of the
SMSC-specific phy driver rather than relying on the generic phy driver.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 9edaca863ea6807aca7bb8aa5c7791f7387f6022)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: Add SATA0 support
Valentine Barshak [Thu, 9 Jan 2014 15:23:22 +0000 (19:23 +0400)]
ARM: shmobile: koelsch: Add SATA0 support

This adds SATA0 support to Koelsch board.
SATA1 is not available since its pinmux
configuration is fixed to PCIe.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 4fc0a0b93f178c0b077201ab70a53e1be6a69054)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Add SATA support
Valentine Barshak [Thu, 19 Dec 2013 17:57:23 +0000 (21:57 +0400)]
ARM: shmobile: lager: Add SATA support

This adds SATA support to Lager board. Only SATA1 port is available.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
[horms+renesas@verge.net.au: resolved trivial conflicts]
[horms+renesas@verge.net.au: capitalised "ARM" in subject]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 1e0d2c495316862fa3da73150ee86ba30c9faf0c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Make spi_flash_data const
Geert Uytterhoeven [Fri, 3 Jan 2014 15:48:48 +0000 (16:48 +0100)]
ARM: shmobile: lager: Make spi_flash_data const

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit d422c451a9795c7a10c3ae1ab7ca87ce7518546b)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: kzm9d: Use common clock framework
Takashi Yoshii [Tue, 8 Oct 2013 05:34:03 +0000 (14:34 +0900)]
ARM: shmobile: kzm9d: Use common clock framework

Use common clock framework version of clock
 drivers/clk/shmobile/clk-emev2.c
instead of sh-clkfwk version
 arch/arm/mach-shmobile/clock-emev2.c
when it is configured as a part of multi-platform.

Signed-off-by: Takashi Yoshii <takasi-y@ops.dti.ne.jp>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit ef5ecd1f20de2d1919714f029f5016bf6d061e66)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Add VIN1 SoC camera support
Valentine Barshak [Fri, 27 Dec 2013 11:44:04 +0000 (15:44 +0400)]
ARM: shmobile: lager: Add VIN1 SoC camera support

This adds VIN1 SoC camera along with ADV7180 subdevice support to Lager.
VIN0 camera is not registered because it has ADV7612 I2C subdevice
which is not supported yet.

Changes in V2:
* made lager_add_vin_device function static.

Changes in V3:
* capitalized ARM in the subject.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 094a804aa6943de0e9939e1c48341e87be93b3d2)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: mach-shmobile: kzm9g: add zboot support
Ulrich Hecht [Tue, 26 Nov 2013 20:53:20 +0000 (21:53 +0100)]
ARM: mach-shmobile: kzm9g: add zboot support

Adds support to run the kernel on the uninitialized KZM9G board, using for
instance the mask ROM boot loader or JTAG. This patch tries to emulate the
style of the corresponding "mackerel" implementation. The DRAM controller
setup code has been adapted from u-boot.

Signed-off-by: Ulrich Hecht <ulrich.hecht@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit a56585d12cbe8903dcc71332579b9e2e0807fe44)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: Conditionally select MICREL_PHY for Multiplatform
Simon Horman [Thu, 26 Dec 2013 05:30:38 +0000 (14:30 +0900)]
ARM: shmobile: koelsch: Conditionally select MICREL_PHY for Multiplatform

The koelsch board uses has an SH ethernet controller which uses a Micrel
phy. Select MICREL_PHY for koelsch if SH_ETH is enabled to make use of the
Micrel-specific phy driver rather than relying on the generic phy driver.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit aefe88ba044bdcd91bc0cd1e75ab2dc524ed5107)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: bockw: add USB Func DMAEngine support
Kuninori Morimoto [Tue, 24 Dec 2013 04:44:30 +0000 (20:44 -0800)]
ARM: shmobile: bockw: add USB Func DMAEngine support

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit f3ffa47c8d563d8ea3e378fa59aca5dde9624a01)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: bockw: use HPBIF DMAEngine for sound
Kuninori Morimoto [Tue, 24 Dec 2013 04:44:23 +0000 (20:44 -0800)]
ARM: shmobile: bockw: use HPBIF DMAEngine for sound

R-Car sound driver is supporting Mem <-> SRU <-> SSI
transfer via DMAEngine.
The sound will be less noise if it uses SRU path
since it has FIFO.
This patch supports it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 88bf7f6846dea22bd50f8abf4c30530bbe2b6424)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: bockw: use SSI DMAEngine for sound
Kuninori Morimoto [Tue, 24 Dec 2013 04:44:15 +0000 (20:44 -0800)]
ARM: shmobile: bockw: use SSI DMAEngine for sound

R-Car sound driver is supporting Mem <-> SSI
direct transfer via DMAEngine.
Current HPB-DMA is using double plane transfer,
but the sound may have noise since SSI doesn't have FIFO.
This patch supports it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 6d0ef79743abd39c1867a7fb9eaccdda0b2136db)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: Lager: conditionally select CONFIG_MICREL_PHY
Sergei Shtylyov [Thu, 19 Dec 2013 23:20:54 +0000 (02:20 +0300)]
ARM: shmobile: Lager: conditionally select CONFIG_MICREL_PHY

Now that support for KSZ8041RNLI is added to the Micrel PHY driver and we intend
to support PHY IRQs on the Lager board, we have to enable the Micrel driver.
Do this by selecting CONFIG_MICREL_PHY for Lager if CONFIG_SH_ETH is enabled.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit a2a4759b5262979cbe4bc1f681ec5a6ab064fce3)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Replace IRQ type numerical values with macros
Laurent Pinchart [Tue, 21 Jan 2014 12:48:39 +0000 (13:48 +0100)]
ARM: shmobile: r8a7790: Replace IRQ type numerical values with macros

Replace the hardcoded value 4 with IRQ_TYPE_LEVEL_HIGH.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 1f4c745b2c5a083c49dc11d2f0827d9a381f1ee1)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Fix serial ports DT compatible strings
Laurent Pinchart [Tue, 21 Jan 2014 12:48:38 +0000 (13:48 +0100)]
ARM: shmobile: r8a7790: Fix serial ports DT compatible strings

Remove the -generic suffix that has been added by mistake from the
serial port compatible strings.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 59d2b5173bbe8dbc324e34263ceae4d6131058f2)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: lager: Enable SATA1 in r8a7790-lager.dts
Valentine Barshak [Tue, 14 Jan 2014 17:05:31 +0000 (21:05 +0400)]
ARM: shmobile: lager: Enable SATA1 in r8a7790-lager.dts

This enables SATA1 in Lager device tree.
SATA0 is not available on Lager since its
pinmux is fixed to USB3.0.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit c6181b9f06b0821e8d34e47174e044801f03edce)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add SATA nodes to r8a7790.dtsi
Valentine Barshak [Tue, 14 Jan 2014 17:05:30 +0000 (21:05 +0400)]
ARM: shmobile: r8a7790: Add SATA nodes to r8a7790.dtsi

This adds SATA[01] device nodes to r8a7790.dtsi

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit cde630f763b07ff5d8ff7d34969f9dd05a2a4001)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: Enable SATA0 in r8a7791-koelsch.dts
Valentine Barshak [Tue, 14 Jan 2014 17:05:41 +0000 (21:05 +0400)]
ARM: shmobile: koelsch: Enable SATA0 in r8a7791-koelsch.dts

This enables SATA0 in Koelsch device tree.
SATA1 is not available on Koelsch since
its pinmux configuration is fixed to PCIe.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 760c277b23973a3db181b2ae98d9a87f6e8f843e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add SATA nodes to r8a7791.dtsi
Valentine Barshak [Tue, 14 Jan 2014 17:05:40 +0000 (21:05 +0400)]
ARM: shmobile: r8a7791: Add SATA nodes to r8a7791.dtsi

This adds SATA[01] device nodes to r8a7791.dtsi.

Signed-off-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit b8532c699a163702bfcadaaa4c23c4ff71b67eec)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add SATA clocks to device tree
Laurent Pinchart [Tue, 7 Jan 2014 08:22:56 +0000 (09:22 +0100)]
ARM: shmobile: r8a7791: Add SATA clocks to device tree

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 65f05c38749f393f775c360b9b247fa4d63b72de)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add SATA clocks to device tree
Laurent Pinchart [Tue, 7 Jan 2014 08:22:55 +0000 (09:22 +0100)]
ARM: shmobile: r8a7790: Add SATA clocks to device tree

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Valentine Barshak <valentine.barshak@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit bccccc3d861567876a87441bc92f2e3b46cb38a9)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add VIN clocks to device tree
Laurent Pinchart [Tue, 7 Jan 2014 08:22:54 +0000 (09:22 +0100)]
ARM: shmobile: r8a7791: Add VIN clocks to device tree

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 09c983463dd576d005c95dfdc0997f064629d321)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add VIN clocks to device tree
Laurent Pinchart [Tue, 7 Jan 2014 08:22:53 +0000 (09:22 +0100)]
ARM: shmobile: r8a7790: Add VIN clocks to device tree

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 3f2beaa9f2d7229c041975e40868dee2e3c4a598)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add serial ports to the device tree
Laurent Pinchart [Tue, 29 Oct 2013 15:23:12 +0000 (16:23 +0100)]
ARM: shmobile: r8a7790: Add serial ports to the device tree

The platform code serial port instantiation mechanism is kept for the
non-DT platforms only.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 597af20fa8f810a26c84179a8ac58cb3fce6c102)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add serial ports to the device tree
Laurent Pinchart [Wed, 11 Dec 2013 13:14:22 +0000 (14:14 +0100)]
ARM: shmobile: r8a7791: Add serial ports to the device tree

Add all serial ports marked as disabled.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 9640cf259c9496d56bf44df8ae86f00f7b417ecc)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7790: Add thermal clock in device tree
Geert Uytterhoeven [Tue, 7 Jan 2014 18:57:14 +0000 (19:57 +0100)]
ARM: shmobile: r8a7790: Add thermal clock in device tree

Add the missing thermal MSTP clock to the thermal device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit d3a439dbe3ff1610156c39cdffcc2c3257fadd62)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: r8a7791: Add thermal clock in device tree
Geert Uytterhoeven [Tue, 7 Jan 2014 18:57:13 +0000 (19:57 +0100)]
ARM: shmobile: r8a7791: Add thermal clock in device tree

Add the missing thermal MSTP clock to the thermal device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 563bc8eb0243783afd7a71204ad696e8bdf44391)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: koelsch: (1+1)GiB memory in DT
Takashi Yoshii [Sun, 22 Dec 2013 09:27:23 +0000 (18:27 +0900)]
ARM: shmobile: koelsch: (1+1)GiB memory in DT

Fix dts to have memory 1GiB @ 0_4000_0000 + 1GiB @ 2_0000_0000
according to Koelsch's hardware manual.

Signed-off-by: Takashi Yoshii <takasi-y@ops.dti.ne.jp>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 4cd1bad45182c7f1426353d73a481e0260d236b1)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: Add GPIO keys to Koelsch DTS
Laurent Pinchart [Thu, 19 Dec 2013 15:28:42 +0000 (16:28 +0100)]
ARM: shmobile: Add GPIO keys to Koelsch DTS

The Koelsh reference device tree is going away, copy the missing GPIO
keys device node to the Koeslch device tree file.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit aff5274fdc5b53a44d906c39a834efa6ba9c30ef)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoARM: shmobile: dts: Remove r8a7791-koelsch-reference.dts
Laurent Pinchart [Sun, 29 Dec 2013 21:41:56 +0000 (22:41 +0100)]
ARM: shmobile: dts: Remove r8a7791-koelsch-reference.dts

The dts file has been superseded by r8a7791-koelsch.dts and been removed
from the ARCH_SHMOBILE_LEGACY dtb target. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 52e62f7f4b25d4f087395f805768e985e9d91bd0)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Convert to spi core auto_runtime_pm framework
Geert Uytterhoeven [Tue, 11 Mar 2014 09:59:11 +0000 (10:59 +0100)]
spi: sh-msiof: Convert to spi core auto_runtime_pm framework

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit e2a0ba547ba31cd7b217cc948d93e4edc78cbcb1)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Remove "renesas,msiof-sh7724" from bindings
Geert Uytterhoeven [Tue, 11 Mar 2014 09:43:26 +0000 (10:43 +0100)]
spi: sh-msiof: Remove "renesas,msiof-sh7724" from bindings

It's not implemented in the driver, so it's a bad example.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit f9ee821ebc5e58ff5da08d625ea4e2d74b221317)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Kill sh_msiof_spi_bits and sh_msiof_spi_hz functions
Axel Lin [Sun, 2 Mar 2014 14:30:32 +0000 (22:30 +0800)]
spi: sh-msiof: Kill sh_msiof_spi_bits and sh_msiof_spi_hz functions

In the implementation of __spi_validate(), spi core will set transfer
bits_per_word and max speed as spi device default if it is not set for
this transfer. So we can remove the same implementation in this driver.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit b14158603288b9d898716b41f2f0acb7d49dad2c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Use core message handling instead of spi-bitbang
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:13 +0000 (11:21 +0100)]
spi: sh-msiof: Use core message handling instead of spi-bitbang

The only remaining feature of spi-bitbang used by this driver is the
chipselect() callback, which just does conditional GPIO.
This is handled fine by the SPI core's spi_set_cs(), hence switch the
driver to use the core message handling through our own transfer_one()
method.

As the (optional) GPIO CS is no longer deasserted at spi_master.setup()
time (through spi_bitbang_setup() and the spi_bitbang.chipselect()
callback), we now have to take care of that ourselves.

Remove the call to spi_master_put() in sh_msiof_spi_remove(), as our SPI
master is now registered using devm_spi_register_master()
(spi_bitbang_start() uses the non-managed version).

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 1bd6363bc0c69ff6120b53daa35cf9459c3628ad)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Convert to let spi core validate xfer->bits_per_word
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:12 +0000 (11:21 +0100)]
spi: sh-msiof: Convert to let spi core validate xfer->bits_per_word

Set bits_per_word_mask so the spi core will reject transfers that attempt
to use an unsupported bits_per_word value.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 2416289c714343ea855e725d59d42668a9ab3cf6)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Move clock management to (un)prepare_message()
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:11 +0000 (11:21 +0100)]
spi: sh-msiof: Move clock management to (un)prepare_message()

Move clock management and pin configuration from the bitbang chipselect()
method to the SPI core prepare_message() and unprepare_message() methods.

As spi_master.{,un}prepare_message() is guaranteed to be called in
matching pairs, the clock management synchronization is no longer needed.

As sh_msiof_spi_set_pin_regs() is no longer called at spi_master.setup()
time (through spi_bitbang_setup() and the spi_bitbang.chipselect()
callback), we now have to take care of that ourselves.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit c833ff7304511805ce5a3378d1637e39e00e00ea)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Add support for R-Car H2 and M2
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:10 +0000 (11:21 +0100)]
spi: sh-msiof: Add support for R-Car H2 and M2

Add support for the MSIOF variant in the R-Car H2 (r8a7790) and M2
(r8a7791) SoCs.

Binding documentation:
  - Add future-proof "renesas,msiof-<soctype>" compatible values,
  - The default for "renesas,rx-fifo-size" is 256 on R-Car H2 and M2,
  - "renesas,tx-fifo-size" and "renesas,rx-fifo-size" are deprecated for
    soctype-specific bindings,
  - Add example bindings.

Implementation:
  - MSIOF on R-Car H2 and M2 requires the transmission of dummy data if
    data is being received only (cfr. "Set SICTR.TSCKE to 1" and "Write
    dummy transmission data to SITFDR" in paragraph "Transmit and Receive
    Procedures" of the Hardware User's Manual).
  - As RX depends on TX, MSIOF on R-Car H2 and M2 also lacks the RSCR
    register (Receive Clock Select Register), and some bits in the RMDR1
    (Receive Mode Register 1) and TMDR2 (Transmit Mode Register 2)
    registers.
  - Use the recently introduced SPI_MASTER_MUST_TX flag to enable support
    for dummy transmission in the SPI core, and to differentiate from other
    MSIOF implementations in code paths that need this.
  - New DT compatible values ("renesas,msiof-r8a7790" and
    "renesas,msiof-r8a7791") are added, as well as new platform device
    names ("spi_r8a7790_msiof" and "spi_r8a7791_msiof").
  - The default RX FIFO size is 256 words on R-Car H2 and M2.

This is loosely based on a set of patches from Takashi Yoshii
<takasi-y@ops.dti.ne.jp>.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit beb74bb0875579c409778d853b8a050c124b3c79)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Move default FIFO sizes to device ID data
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:09 +0000 (11:21 +0100)]
spi: sh-msiof: Move default FIFO sizes to device ID data

As different variants of MSIOF have different FIFO sizes, move the default
FIFO sizes to a new struct sh_msiof_chipdata, pointed to from the device
ID data.

[Moved ifdef to fix build -- broonie]

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 50a7e23f53677918bf521b09ce9bb20fb87cd175)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Improve bindings
Geert Uytterhoeven [Tue, 25 Feb 2014 10:21:08 +0000 (11:21 +0100)]
spi: sh-msiof: Improve bindings

Documentation:
  - Add missing "interrupt-parent", "#address-cells", "#size-cells", and
    "clocks" properties,
  - Add missing default values for "num-cs", "renesas,tx-fifo-size" and
    "renesas,rx-fifo-size",
  - Add a reference to the pinctrl documentation.

Implementation:
  - As "num-cs" is marked optional, provide a sensible default.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 32d3b2d1ddeafe105ab6f738fba427242141194e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Use the core cs_gpio field, and make it optional
Geert Uytterhoeven [Thu, 20 Feb 2014 14:43:04 +0000 (15:43 +0100)]
spi: sh-msiof: Use the core cs_gpio field, and make it optional

In current implementation, CS is controlled by GPIO, which is passed
through spi->controller_data.  However, the MSIOF HW module has a function
to output CS by itself, which is already enabled and actual switch will be
done by pinmux.

Store the GPIO number in the core cs_gpio field, and ignore it if it is
an invalid (negative) GPIO number.

Loosely based on a patch from Takashi Yoshii <takasi-y@ops.dti.ne.jp>.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 8d19534a8d539bb2e598e56e017a423f205e909e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Add more register documentation
Geert Uytterhoeven [Thu, 20 Feb 2014 14:43:03 +0000 (15:43 +0100)]
spi: sh-msiof: Add more register documentation

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 01cfef57efe9c8ef445d4a5ad3bf26770fd5942a)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Change hz from unsigned long to u32
Geert Uytterhoeven [Thu, 20 Feb 2014 14:43:02 +0000 (15:43 +0100)]
spi: sh-msiof: Change hz from unsigned long to u32

Both spi_transfer.speed_hz and spi_master.max_speed_hz are u32

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 6a85fc5af1f09982e50abe56efc70eda9ad24632)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Typo in comment s/tx/rx/
Geert Uytterhoeven [Thu, 20 Feb 2014 14:43:01 +0000 (15:43 +0100)]
spi: sh-msiof: Typo in comment s/tx/rx/

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit a669c11a0df07477afbfeb53bc9d8fc989d1ed59)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: sh-msiof: Fix SPI bus population from DT
Geert Uytterhoeven [Thu, 20 Feb 2014 14:43:00 +0000 (15:43 +0100)]
spi: sh-msiof: Fix SPI bus population from DT

DT doesn't instantiate SPI children if spi_master.dev.of_node is not set up
properly.

Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit f7c05e837df794d2aaf19174269a270c93a52eca)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agospi: delete non-required instances of include <linux/init.h>
Paul Gortmaker [Tue, 21 Jan 2014 21:22:47 +0000 (16:22 -0500)]
spi: delete non-required instances of include <linux/init.h>

None of these files are actually using any __init type directives
and hence don't need to include <linux/init.h>.  Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 3a44623d5e1404b29786f1afd225d1aa04a4ae90)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: Handle many DAI links
Jean-Francois Moine [Thu, 20 Mar 2014 10:49:55 +0000 (11:49 +0100)]
ASoC: simple-card: Handle many DAI links

Some simple audio cards may have many DAI links.
This patch extends the simple-card driver for handling such cards.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 6a91a17bd7b92b2d2aa9ece85457f52a62fd7708)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: Add DT documentation for multi-DAI links
Jean-Francois Moine [Thu, 20 Mar 2014 10:04:16 +0000 (11:04 +0100)]
ASoC: simple-card: Add DT documentation for multi-DAI links

Many couples of CPU/CODEC DAI links may be described in the DT
thanks to 'simple-audio-card,dai-link' containers.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 015f630de86c8a79df45c475c34087d3e96b882a)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: dynamically allocate the DAI link and properties
Jean-Francois Moine [Thu, 20 Mar 2014 09:52:41 +0000 (10:52 +0100)]
ASoC: simple-card: dynamically allocate the DAI link and properties

The DAI link array and the properties (fmt, sysclk slots) are
hard-coded for a single CPU / CODEC link.

This patch dynamically allocates the DAI link array and the
properties with the aim of supporting many DAI links.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit cf7dc23cbfd5c4c5ab2136f19522d9b3b41acf99)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: overwrite cpu_dai->fmt with codec_dai->fmt
Nicolin Chen [Wed, 12 Mar 2014 03:02:11 +0000 (11:02 +0800)]
ASoC: simple-card: overwrite cpu_dai->fmt with codec_dai->fmt

The current simple-card driver separates the daimft for cpu_dai and codec_dai.
So we might get different values for them (0x4003 and 0x1003 for example):

asoc-simple-card sound-cs42888.12: cpu : 2024000.esai / 4003 / 132000000
asoc-simple-card sound-cs42888.12: codec : cs42888 / 1003 / 24576000
asoc-simple-card sound-cs42888.12: cs42888 <-> 2024000.esai mapping ok

This is not allowed at all as we need to keep the DAIFMT settings identical
for both the ends of the link.

Thus this patch fixes it by overwriting the cpu_dai->fmt with codec_dai->fmt
since we defined the DAIFMT_MASTER basing on CODEC at the first place while
the other bits are same.

Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 46c39cae292fd691f32e573e6c2c854e36614c93)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: Simplify code
Jean-Francois Moine [Sat, 15 Mar 2014 10:32:42 +0000 (11:32 +0100)]
ASoC: simple-card: Simplify code

The global DAI format is used only in the function
asoc_simple_card_parse_of(). So, move it from the private data
to the stack.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Reviewed-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit c56c4d74c6f96d0ff605d8948e127099cf5e6681)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: Fix the reference count of device nodes
Jean-Francois Moine [Tue, 11 Mar 2014 09:03:40 +0000 (10:03 +0100)]
ASoC: simple-card: Fix the reference count of device nodes

The reference count of some device nodes is not correctly reset
at end of card probe.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit e512e001dafa54e5ac7244416e340750a4356b41)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: card name can be option
Kuninori Morimoto [Mon, 10 Mar 2014 02:37:56 +0000 (19:37 -0700)]
ASoC: simple-card: card name can be option

snd_card.name is now option on DT case.
non-DT case can follow same style,
and it is understandable from platform point of view.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 12ffa6fc1958879a81b6af1624c1a2edd83ec04a)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: tidyup cpu/codec dai_fmt settings for non-DT
Kuninori Morimoto [Mon, 3 Mar 2014 04:32:43 +0000 (20:32 -0800)]
ASoC: simple-card: tidyup cpu/codec dai_fmt settings for non-DT

30d0341e7da0c012f64fb290dd1153360fb49a8d
(ASoC: simple-card: simplify the daifmt code)
simplify cpu/codec dai_fmt which consists from
dai specific format + common format.
But, it didn't care about non-DT case.
This patch fixes it

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 81985bd63f6f1711035aa8d97caf2fb203250a95)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: cpu_dai_name creates confusion when DT case
Kuninori Morimoto [Fri, 28 Feb 2014 02:25:24 +0000 (18:25 -0800)]
ASoC: simple-card: cpu_dai_name creates confusion when DT case

Basically, soc_bind_dai_link() checks
cpu_dai->dev->of_node and dai_link->cpu_of_node in DT case.
But after that it will check
cpu_dai->name and dai_link->cpu_dai_name too.

On the other hand, snd_soc_dai :: name is created by
fmt_single_name() or fmt_multiple_name().

There is no confusion if dai name is created by fmt_multiple_name(),
since cpu_dai->name is same as dai_link->cpu_dai_name.
but, if dai name is created by fmt_single_name(), CPU DAI never match.

Thus, simple-card not set dai_link->cpu_dai_name if DT case
to skip naming match on soc_bind_dai_link()

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit f687d900d30a61dda38db2a99239f5284a86a309)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: add slot information parsing supports
Xiubo Li [Fri, 14 Feb 2014 01:34:36 +0000 (09:34 +0800)]
ASoC: simple-card: add slot information parsing supports

For some CPU/CODEC DAI devices the slot information maybe needed. This
patch adds the slot information parsing for simple-card driver.

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 6ff62eedce4f7756b092d276165d8e11edab9f28)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: for new properties documenting and usage
Xiubo Li [Sat, 8 Feb 2014 07:59:55 +0000 (15:59 +0800)]
ASoC: simple-card: for new properties documenting and usage

This add the following three new properties documenting and usage
for simple card:

"simple-audio-card,name",
"simple-audio-card,widgets",

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 66841345073b049c0c194486bac4d7f07266a57e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: add off-codec widgets supports.
Xiubo Li [Sat, 8 Feb 2014 07:59:53 +0000 (15:59 +0800)]
ASoC: simple-card: add off-codec widgets supports.

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 9d681f5bfc85515a7b4a4af09337ed5e74f39ad9)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: Add snd_card's name parsing from DT node support
Xiubo Li [Fri, 24 Jan 2014 07:43:02 +0000 (15:43 +0800)]
ASoC: simple-card: Add snd_card's name parsing from DT node support

If the DT is used and the CPU DAI device has only one DAI, the card
name will be like :

ALSA device list:
0: 40031000.sai-sgtl5000

And this name maybe a little ugly to some customers, so here the
card name parsing from DT node is supported.

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 2772555b6c5ba79783c04ea6c60549530d737e2e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify the daifmt code
Xiubo Li [Fri, 24 Jan 2014 07:43:01 +0000 (15:43 +0800)]
ASoC: simple-card: simplify the daifmt code

In the asoc_simple_card_parse_of() will parse the device node's CPU/CODEC
DAI commone fmts, and then in asoc_simple_card_sub_parse_of() will parse
the CPU/CODEC DAI's sub-node fmts, so we can combine the info->daifmt and
info->set.fmt in asoc_simple_card_sub_parse_of() not while just before
_set_fmt().

And this will be more easy to add new functions, such as supporting
_set_tdm_slot(), etc.

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 30d0341e7da0c012f64fb290dd1153360fb49a8d)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: fix __asoc_simple_card_dai_init
Xiubo Li [Fri, 24 Jan 2014 07:43:00 +0000 (15:43 +0800)]
ASoC: simple-card: fix __asoc_simple_card_dai_init

If the CPU/CODEC DAI set_sysclk() is not support, the -ENOTSUPP will returnd.
Here do the check like set_fmt().

Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 4763ebe226156db985fe75bfe930c4069d1f4207)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:52:00 +0000 (16:52 +0100)]
ASoC: simple-card: simplify code

Rename the pointer to the private data structure to 'priv' to avoid confusion with the platform data pointer.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit b367a3252b365fd545fc589a40cad3976e73d7d7)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:56 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

The platform data structure contains information which is used only by
the driver, and the driver allocates platform information fields which
are of no use.
Move the driver specific data to a new private structure and cleanup
the platform data structure.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 45fce59496cbabd46761e6980c05c82d94d08eaa)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:52 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

In the non-DT sequence, the platform data is copied as a whole to the
dynamic card info and the same pointer 'cinfo' is used to copy the
platform information to the card.

Use 'priv' as the pointer to the dynamic card info and copy only the
useful information from the platform data.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit ca65b492c7a265b220f763fd68bf87391213248f)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:48 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

The CPU and CODEC DAI names are still copied to the user info structure.
Put them directly in the DAI links.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 520084729267ac8df1651ad2f118a1d4a631a10a)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:45 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

Have a cleaner code using a DAI link pointer.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 5ca8ba4180a6f629d51dba699b4a6428cc5eeba7)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:41 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

The OF pointers are put in the stack and then copied to the card
descriptor.
Put them directly at their right place.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 201a0eac7fe5e7a8fa33f0742304f885bc344d0d)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:37 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

The DT values are copied to the non-DT structure before being moved to
the card structure.
Set directly the DT values in the card and move the non-DT copy to the
non-DT sequence.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 2bee991460a838ee3c8064a6d880c4e7bc41717a)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoASoC: simple-card: simplify code
Jean-Francois Moine [Wed, 15 Jan 2014 15:51:33 +0000 (16:51 +0100)]
ASoC: simple-card: simplify code

The check of the mandatory fields is done for DT in its specific sequence.
Move the global check to the non-DT sequence.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 7722f830a45f7fbb8f2f7b23265793980bdf3397)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoregulator: gpio-regulator: fix forgotten gpios-states reading
Heiko Stuebner [Thu, 13 Feb 2014 15:34:32 +0000 (16:34 +0100)]
regulator: gpio-regulator: fix forgotten gpios-states reading

Commit 934624d6e9f0 ("regulator: gpio-regulator: do not open-code counting
and access of dt array elements") forgot to convert the recently added
gpios-states property using the same pattern.

Convert this instance to use the of-helpers too, resolving the build error.

Signed-off-by: Heiko Stuebner <heiko.stuebner@bqreaders.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 1f5a9623eb4300a722eab2f6c6a31a194c804cec)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoregulator: gpio-regulator: do not open-code counting and access of dt array elements
Heiko Stuebner [Wed, 12 Feb 2014 00:01:08 +0000 (01:01 +0100)]
regulator: gpio-regulator: do not open-code counting and access of dt array elements

Open coding the counting of elements in a dt-property is abstracted by the newly
introduced of_property_count_uXX_elems functions. Additionally the raw iteration
over the states element exposes the endian conversion and dtb-format details,
which according to Mark Rutland "would be nice to limit [...] to of_ helper
functions".

Thus change gpio-regulator to use the helper for element counting and
of_property_read_u32_index for retrieval of individual values.

This makes it possible to remove the raw access to the states property entirely.

Signed-off-by: Heiko Stuebner <heiko.stuebner@bqreaders.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 934624d6e9f0b3d41557c4105c286e8daeaadb4e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoregulator: gpio: explain detail of gpios-states
Kuninori Morimoto [Wed, 12 Feb 2014 01:27:27 +0000 (17:27 -0800)]
regulator: gpio: explain detail of gpios-states

gpios-states is array, and default is 0

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 907339818ecd66c20f57bbf53d1160c3dc9d34a8)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoregulator: gpio: print warning if gpios <-> gpios-states mismatch on DT
Kuninori Morimoto [Wed, 12 Feb 2014 01:27:08 +0000 (17:27 -0800)]
regulator: gpio: print warning if gpios <-> gpios-states mismatch on DT

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 5676ddc5c62861467582b10b88aadb25ea9c3b52)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
9 years agoregulator: gpio: Document regulator-type property
Mark Brown [Thu, 5 Dec 2013 19:08:55 +0000 (19:08 +0000)]
regulator: gpio: Document regulator-type property

Reported-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit 7f196ec938967af7c3aa2506b8edcd7da5f5ebc6)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>