Commit graph

506,942 commits

Author SHA1 Message Date
Barry Song
de39f5fa09 spi: sirf: use DMA if both buffer address and length are aligned
this patch enables DMA support for SiRFSoC SPI driver, if both
buffers and length are aligned with DMA controller's hardware
limitation, use generic SiRF generic dmaengine driver.

for PIO, SiRF SPI controller actually is using rx to trigger rx,
that means if we write any word to tx fifo, we will get a word
from rx fifo. for DMA, we use two different channel for tx and
rx, and issue them both for every transfer.

Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-06 11:10:01 +01:00
Mark Brown
ed6a277239 ASoC: wm8994: Fix class W controls
Commit 6e0650 (ASoC: wm8994: Use SOC_SINGLE_EXT() instead of open-coding
it) went too far and converted a DAPM control to use SOC_SINGLE_EXT()
which crashes.  Revert that portion of the patch.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-06 10:52:01 +01:00
Simon Horman
4901e136aa ARM: shmobile: lager: enable Ether
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:18:53 +09:00
Simon Horman
9adad78858 ARM: shmobile: ape6evm: Add GPIO LEDs
The board has 6 LEDs connected to GPIOs. Add a led-gpio device to
support them.

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:18:52 +09:00
Simon Horman
5c6db1a421 ARM: shmobile: ape6evm: support GPIO switches
The ape6evm board has switches S16 - S23 wired up to GPIO pins.
This patch allows access to those pins as gpio-keys.

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:18:52 +09:00
Magnus Damm
1d33a354bb ARM: shmobile: Per-CPU SMP boot / sleep code for SCU SoCs
Hook in the per-CPU boot and sleep code in the shared
mach-shmobile SCU code. CPUs may be kept in the asm
routine until ->boot_secondary() when the per-CPU
boot vector is installed. At the end of ->die() the
asm sleep routine is invoked.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:26 +09:00
Magnus Damm
cc61591e45 ARM: shmobile: Introduce per-CPU SMP boot / sleep code
Add per-CPU SMP boot / sleep code that can be used by all
SoCs included in mach-shmobile.

The boot code reads out the per-CPU MPIDR id value and
matches it with the value stored for any CPU number, and
if there is a match and the boot function is set as well
then the boot function will be executed.

The sleep code simply uses WFI and then jumps back to the
boot code to see if anyone has asked to wake up that CPU,
if not it will sleep again.

Signed-off-by: Magnus Damm <damm@opensource.se>
[horms+renesas@verge.net.au: Remove trailing whitespace]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
e9e7c4fbf4 ARM: shmobile: Use shared SCU CPU Hotplug code on r8a7779
Update the r8a7779 specific CPU Hotplug code to make use of
the recently introduced shared SCU functions. The r8a7779
power domain hardware requires special power down handling
at ->kill() time.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
352e57a3af ARM: shmobile: Use shared SCU CPU Hotplug code on sh73a0
Update the sh73a0 specific CPU Hotplug code to make use of
the recently introduced shared SCU functions. The sh73a0
power control hardware relies on SCU_PM_POWEROFF with WFI
so the shared SCU code will as-is power down the hardware
as expected.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
e7b1c96384 ARM: shmobile: Add shared SCU CPU Hotplug code
Add CPU Hotplug functions for SCU equipped mach-shmobile SoCs.

The functions shmobile_smp_scu_cpu_die() together with
shmobile_smp_scu_cpu_kill() perform basic shutdown and
allows checking of shutdown status. These are written
to work together with SMP boot code in  headsmp-scu.S.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
0da60225de ARM: shmobile: Use shared SCU SMP boot code on emev2
Use shared SCU code on emev2 for SMP boot.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
0ca2894b5a ARM: shmobile: Use shared SCU SMP boot code on r8a7779
Use shared SCU code on r8a7779 for SMP boot.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:25 +09:00
Magnus Damm
12eb847438 ARM: shmobile: Use shared SCU SMP boot code on sh73a0
Use shared SCU code on sh73a0 for SMP boot.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:24 +09:00
Magnus Damm
c970d4ef3a ARM: shmobile: Introduce shared SCU SMP boot code
Add SMP boot functions for SCU equipped mach-shmobile SoCs.

At this point shmobile_smp_scu_prepare_cpus() controls the SCU and
installs boot fn and arg, while shmobile_smp_scu_boot_secondary()
currently does nothing. In the future the boot function and arg
install code will be reworked, so the empty function is ground
work for that.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:24 +09:00
Laurent Pinchart
282b583f75 ARM: shmobile: sh73a0: Remove global GPIO_NR definition
The total number of SoC GPIOs is only used to compute the base GPIO
number of th PCF8575 GPIO extender on the KZM9G board. As GPIO
allocation became fully dynamic with DT, no other SH73A0 board will use
the GPIO_NR macro. Move it to the KZM9G board file.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
6de6913185 ARM: shmobile: kzm9d: remove nfsroot settings from bootargs
NFS detail settings like "nfsroot=,rsize=4096,wsize=4096" are no longer needed

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
3d814499ad ARM: shmobile: armadillo800eva: remove nfsroot settings from bootargs
NFS detail settings like "nfsroot=,rsize=4096,wsize=4096" are no longer needed

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
5b3859d7b2 ARM: shmobile: r8a7779: move r8a7779_init_irq_xxx() to setup
This patch moves r8a7779_init_irq_xxx() to setup code,
and remove intc-r8a7779.

Now, r8a7779_init_irq_extpin() uses
platform_device_register_resndata() instead of
platform_device_register()

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
70e3f3d4f4 ARM: shmobile: r8a7740: move r8a7740_init_irq_of() to setup
This patch moves r8a7740_init_irq_of() to setup code,
and remove intc-r8a7740

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
8c23c7caeb ARM: shmobile: bockw: add missing __initdata
This patch adds missing __initdata to driver data/resource
which are used from platform_device_register_xxx()

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:13 +09:00
Kuninori Morimoto
163a2a6cf1 ARM: shmobile: r8a7790: add missing __initdata
This patch adds missing __initdata to driver data/resource
which are used from platform_device_register_xxx()

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:12 +09:00
Kuninori Morimoto
c7537655c6 ARM: shmobile: r8a7779: add missing __initdata
This patch adds missing __initdata to driver data/resource
which are used from platform_device_register_xxx()

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:12 +09:00
Magnus Damm
13eb604665 ARM: shmobile: Remove unused shmobile_init_time()
Remove shmobile_timer_init() since it now is unused.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:12 +09:00
Magnus Damm
c4a62a5f79 ARM: shmobile: Use clocksource_of_init() on r8a7790
Replace the call to shmobile_timer_init() with
clocksource_of_init(). This will allow us to
get rid of shmobile_timer_init().

Signed-off-by: Magnus Damm <damm@opensource.se>
[horms+renesas@verge.net.au: include linux/clocksource.h]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:12 +09:00
Magnus Damm
f611021034 ARM: shmobile: Use default ->init_time() on KZM9G DT ref
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:12 +09:00
Magnus Damm
3b2e2aa319 ARM: shmobile: Use default ->init_time() on Marzen DT ref
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:11 +09:00
Magnus Damm
364185f3ce ARM: shmobile: Use default ->init_time() on APE6EVM DT ref
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:11 +09:00
Magnus Damm
fb185bcb89 ARM: shmobile: Use default ->init_time() on APE6EVM
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:11 +09:00
Magnus Damm
70ce77f77e ARM: shmobile: Use default ->init_time() on Armadillo DT ref
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:11 +09:00
Magnus Damm
3bdbd1c9db ARM: shmobile: Use default ->init_time() on Bockw DT ref
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:11 +09:00
Magnus Damm
9808f79327 ARM: shmobile: Use default ->init_time() on Bockw
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:10 +09:00
Magnus Damm
67ac21f65f ARM: shmobile: Use default ->init_time() on r8a7779
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:10 +09:00
Magnus Damm
0765f48a21 ARM: shmobile: Use default ->init_time() on r8a7778
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:10 +09:00
Magnus Damm
8adacad26f ARM: shmobile: Use default ->init_time() on r8a7740
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:10 +09:00
Magnus Damm
58909ae593 ARM: shmobile: Use default ->init_time() on r8a73a4
Leave ->init_time() set to NULL to use the default ARM behaviour.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:10 +09:00
Kuninori Morimoto
3c7b536232 ARM: shmobile: r8a7778: cleanup registration of hspi
sh-hspi driver which doesn't need platform data at the time of
registration can be registerd on SoC.
And, registering these drivers in the SoC code can avoid
unwanted device numbering issue.
(ex. the hspi2 device number will be spi.0 if hspi2 only registered)
This patch registers it on SoC code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Kuninori Morimoto
1fd4eecd48 ARM: shmobile: r8a7778: cleanup registration of i2c
i2c-rcar driver which doesn't need platform data at the time of
registration can be registerd on SoC.
And, registering these drivers in the SoC code can avoid
unwanted device numbering issue.
(ex. the i2c3 device number will be i2c.0 if i2c3 only registered)
This patch registers it on SoC code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Kuninori Morimoto
fc55190835 ARM: shmobile: r8a7778: cleanup registration of sdhi
sdhi driver which needs platform data at the time of
registration is used from BockW only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Kuninori Morimoto
044e212146 ARM: shmobile: r8a7778: cleanup registration of usb phy
usb phy driver which needs platform data at the time of
registration is used from BockW only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Kuninori Morimoto
a66c974457 ARM: shmobile: r8a7778: cleanup registration of mmcif
sh_mmcif driver which needs platform data at the time of
registration is used from BockW only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Simon Horman
4e0f3fcfe2 Merge branch 'dt2' into cleanup3-base
Conflicts:
	arch/arm/mach-shmobile/Makefile.boot
2013-08-06 18:06:53 +09:00
Laurent Pinchart
8b3e32c1fe ARM: shmobile: r8a7740: Add TPU node to the device tree
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:06:23 +09:00
Simon Horman
dcbbbaf2ca ARM: shmobile: lager: enable nfsroot in DTS
Now that Ether support has been added to the lager board
it is possible to use nfsroot. This configuration is
in line with that of other shmobile boards.

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:06:20 +09:00
Johannes Berg
e7f1935c11 wireless: make TU conversion macros available
A few places in the code (mac80211 and iwlmvm) use the same
TU_TO_JIFFIES() macro and could use TU_TO_EXP_TIME() that
mac80211 has. Make these available to everyone and use them.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2013-08-06 11:00:59 +02:00
Laurent Pinchart
d687f4d199 ARM: shmobile: r8a7740: Add TPU clock entry for DT platforms
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 17:57:09 +09:00
Simon Horman
9b0b9c0151 ARM: shmobile: r8a7790: clocks for Ether support
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 17:57:01 +09:00
Simon Horman
21c7a13405 Renesas ARM based SoC fixes for v3.12
* Fix TPU clock name for r8a7740 SoC
 * Update romImage to relocate appended DTB
 * Thumb fixes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJR7N/rAAoJENfPZGlqN0++x3kP/AyNLjvA5l1i3dJgqOLKWl0h
 4r4YctfjLIMzyGQRKph7MhxmRGQqebcVLOSY1YkQzLrgl0HRE8xDb/Vs+DD61JoW
 SXRpU3dryMu8XJJQ1A8+HfGwemRgujzBdgt29siWo/K/E6X6KANQprRa245yga4H
 ntzNrGcnjT+BI39Eywsk6NQTfJE8i028qA3CC2wTegnoBtw6nExb80rNwoMds2pS
 43fhbU0CxsOm0YyiUCsP8iGbUOesYLjOvVKhgj+c5uLwEoU8oOKhT5IytMtuJIu3
 fbMOJNZT24Vkt9nkqaoZ06kcNiQaXoeeKShp/FeDe5+YQVw0ScNFCXFRldrSjhCT
 +dlYoSPGNkdV+cgl1UCRNZAQvTXUJurIA6waLALSlExEfwBNsErM7tVjs5gy/dKO
 lIY8mdeRVJB88FHhwv2f9gA00xzgZJiP9w12u2CHeFRvNa2gDd04UQRhQPo8U4qk
 TUudoIq6pASknJ75xJffklAlbU/rKqdLOeoGFxzFZ7L1sRIr6y6qxeHGWIEcF7NV
 tXrj1K/robcQNHcwqxd/qIbvXRhHebJx4gRf+K0g94Q00aaLKB3ncB6TUdwejyhe
 qe66SIP9D/Zp/DXMUelRjChc3vtGKnIZhSDRrvPnNmKe4G0sSWRvl/p/6qqBY44p
 3bUujC0uxXxdZntjEPUi
 =nXZN
 -----END PGP SIGNATURE-----

Merge tag 'renesas-fixes-for-v3.12' into soc2-base

Renesas ARM based SoC fixes for v3.12

* Fix TPU clock name for r8a7740 SoC
* Update romImage to relocate appended DTB
* Thumb fixes
2013-08-06 17:56:43 +09:00
Eldad Zack
e7e58df8ef ALSA: usb-audio: WARN_ON when alts is passed as NULL
Prevent NULL dereference in snd_usb_add_endpoints(), when
alts is passed as NULL. In this case, WARN (since this is
a non-fatal bug) and return NULL ep. Call sites treat a NULL
return value as an error.

Signed-off-by: Eldad Zack <eldad@fogrefinery.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-08-06 10:52:27 +02:00
Eldad Zack
88abb8eff4 ALSA: usb-audio: remove implicit_fb from quirk
Since the quirks all apply to implicit feedback (the source endpoint
is always a data endpoint), there's no need to set and check
a flag for it.

Signed-off-by: Eldad Zack <eldad@fogrefinery.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-08-06 10:52:14 +02:00
Eldad Zack
914273c714 ALSA: usb-audio: remove is_playback from implicit feedback quirks
An implicit feedback endpoint can only be a capture source. The
consumer (sink) of the implicit feedback endpoint is therefore limited
to playback EPs.
Check if the target endpoint is a playback first and remove redundant
checks.

Signed-off-by: Eldad Zack <eldad@fogrefinery.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-08-06 10:51:48 +02:00