Sergei Shtylyov [Tue, 4 Feb 2014 15:53:50 +0000 (18:53 +0300)]
ARM: shmobile: Lager: pass Ether PHY IRQ
Pass Ether's PHY IRQ (which is IRQC's IRQ0) to the 'sh_eth' driver. Set the IRQ
trigger type to be low-level as per the Micrel PHY driver's setup.
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Magnus Damm <magnus.damm@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
5812b8b2bcc35e7928c0e5616bbe35a0e97c7749)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Magnus Damm [Wed, 29 Jan 2014 23:10:09 +0000 (08:10 +0900)]
ARM: shmobile: Remove Lager USBHS UDC ifdefs
Remove ifdefs to make the Lager USBHS device always present.
This makes it more like other devices, no need to be special.
Also, these ifdefs by themselves do not hurt much, but combined
with USB Host device ifdefs that were proposed earlier we could
basically end up with a kernel that drives VBUS incorrectly
depending on the kernel configuration - lets not do that.
Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
235cda29e4d5047622ff9b82b1f0b4cb6cf95f6c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Valentine Barshak [Fri, 24 Jan 2014 22:28:47 +0000 (02:28 +0400)]
ARM: shmobile: lager: Add USBHS support
This adds USBHS PHY and registers USBHS device if the driver is enabled.
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
1eabe028f8aacd7367fbdda9596cd3d64659a49f)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Ben Dooks [Tue, 14 Jan 2014 18:43:27 +0000 (18:43 +0000)]
ARM: shmobile: koelsch: fix error return code check from clk_get()
The koelsch_add_standard_devices() function calls clk_get() but then fails
to check that it returns an error pointer instead of NULL on failure.
This was added by
f31239ef ("ARM: shmobile: koelsch-reference:
Instantiate clkdevs for SCIF and CMT") in Simon Horman's
renesas-boards2-for-v3.14 tag.
The issue is not serious as it does not cause a crash and seems to not be
actually causing any issues now the other clock bugs have been fixed.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
[horms+renesas@verge.net.au: tweaked changelog]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
ca1187521b78ce4f980cd1b457f8c634dd401021)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Ben Dooks [Tue, 14 Jan 2014 18:43:26 +0000 (18:43 +0000)]
ARM: shmobile: lager: fix error return code check from clk_get()
The lager_add_standard_devices() function calls clk_get() but then fails
to check that it returns an error pointer instead of NULL on failure.
This was added by
4a606af2 ("ARM: shmobile: lager-reference: Instantiate
clkdevs for SCIF and CMT") patch in Simon Horman's renesas-boards2-for-v3.14
tag.
The issue is not serious as it does not cause a crash and seems to not be
actually causing any issues now the other clock bugs have been fixed.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
[horms+renesas@verge.net.au: tweaked changelog]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
7a543d8124e7e23190d36e7c57d3b9c394c4e4c1)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Simon Horman [Tue, 7 Jan 2014 06:23:47 +0000 (15:23 +0900)]
ARM: shmobile: marzen: Conditionally select SMSC_PHY
The marzen board uses has an SMSC911X ethernet controller which uses an
SMSC phy. Select SMSC_PHY for marzen 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
317af6612ee29dfcb5ae04df9c58e9f79fc8d4ff)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Simon Horman [Tue, 7 Jan 2014 06:23:47 +0000 (15:23 +0900)]
ARM: shmobile: mackerel: Conditionally select SMSC_PHY
The mackerel board uses has an SMSC911X ethernet controller which uses an
SMSC phy. Select SMSC_PHY for mackerel 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
c5c2a294a4b24778cd3cab880bf05becee471edb)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Simon Horman [Tue, 7 Jan 2014 06:23:47 +0000 (15:23 +0900)]
ARM: shmobile: kzm9d: Conditionally select SMSC_PHY
The kzm9d board uses has an SMSC911X ethernet controller which uses an
SMSC phy. Select SMSC_PHY for kzm9d if SMSC911X is enabled to make use of the
SMSC-specific phy driver rather than relying on the generic phy driver.
This only covers the case of multiplatform kzm9d
as there is currently no Kconfig node for non-multiplatform kzm9d.
One could be added if desired.
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
682100f59c0051e2b6f5af294da79df2419db157)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Kuninori Morimoto [Thu, 30 Jan 2014 00:57:59 +0000 (16:57 -0800)]
ARM: shmobile: ape6evm: 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
0771ddff31186836f62a20c42e7958bd37f7b4ed)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Kuninori Morimoto [Thu, 30 Jan 2014 00:57:49 +0000 (16:57 -0800)]
ARM: shmobile: armadillo: 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
a3b74d3e45f2e28e7c57d5c16a94b59c1a68dd09)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Kuninori Morimoto [Thu, 30 Jan 2014 00:57:39 +0000 (16:57 -0800)]
ARM: shmobile: bockw: enable CONFIG_DEVTMPFS in defconfig
This reverts commit
e14ee5deab24200e4b70fe31a8c806f0acd3d37c
("ARM: shmobile: bockw: Do not enable CONFIG_DEVTMPFS defconfig").
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 commit to changelog]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit
f921163add46d0dd8321f9d59496bbc17fb38850)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>