Commit graph

506,942 commits

Author SHA1 Message Date
Jaegeuk Kim
5887d291d7 f2fs: avoid unnecessary checkpoints
During the f2fs_put_super procedure, we don't need to conduct checkpoint all
the time, since we don't need to do that if superblock is clean.

Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
2013-10-08 09:32:43 +09:00
Simon Horman
63862f14bd Merge branch 'heads/soc2' into boards2-base 2013-10-08 09:31:20 +09:00
Magnus Damm
2349199db5 ARM: shmobile: r8a7791 SMP support
Tie in the APMU SMP code on r8a7791. When used together
with the secondary CPU device node and smp_ops in the
board specific code then this will allow use of the
two Cortex-A15 cores in the r8a7791 SoC.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Kuninori Morimoto
90e27a05f6 ARM: shmobile: r8a7779: split r8a7779_init_irq_extpin() for DT
r8a7779 INTC needs IRL pin mode settings to determine
behavior of IRQ0 - IRQ3, and r8a7779_init_irq_extpin()
is controlling it via irlm parameter.
But this function registers renesas_intc_irqpin driver
if irlm was set, and this value depends on platform.
This is not good for DT.
This patch splits r8a7779_init_irq_extpin() function
into "mode settings" and "funtion register" parts

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Kuninori Morimoto
f564244fb1 ARM: shmobile: r8a7778: split r8a7778_init_irq_extpin() for DT
r8a7778 INTC needs IRL pin mode settings to determine
behavior of IRQ0 - IRQ3, and r8a7778_init_irq_extpin()
is controlling it via irlm parameter.
But this function registers renesas_intc_irqpin driver
if irlm was set, and this value depends on platform.
This is not good for DT.
This patch splits r8a7778_init_irq_extpin() function
into "mode settings" and "funtion register" parts.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Magnus Damm
77df55c66d ARM: shmobile: r7s72100 SCIF support
Add SCIF serial port support to the r7s72100 SoC by
adding platform devices for SCIF0 -> SCIF7 together with
clock bindings. DT device description is excluded at
this point since such bindings are still under
development.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Magnus Damm
0086df273c ARM: shmobile: Initial r7s72100 SoC support
Add initial support for the r7272100 SoC including:
 - Single Cortex-A9 CPU Core
 - GIC

No static virtual mappings are used, all the components
make use of ioremap(). DT_MACHINE_START is still wrapped
in CONFIG_USE_OF to match other mach-shmobile code.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Magnus Damm
ca1e6f22a0 ARM: shmobile: r8a7791 Arch timer workaround
Make use of the R-Car Gen2 arch timer workaround on r8a7791.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:16 +09:00
Magnus Damm
1e4953d817 ARM: shmobile: r8a7791 IRQC platform device support
Add a platform device for the r8a7791 IRQC hardware
driving IRQ pins IRQ0 to IRQ9. The Linux interrupt
number is statically assigned to allow board code
written in C to make use of static interrupt numbers.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:15 +09:00
Magnus Damm
44a268e2a6 ARM: shmobile: Introduce r8a7791_add_standard_devices()
Introduce the function r8a7791_add_standard_devices() that
follows the same style as other mach-shmobile SoC code and
allows C version of board code to add on-chip devices.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:15 +09:00
Magnus Damm
629cc70dda ARM: shmobile: Break out R-Car Gen2 setup code
Move arch timer workaround code and boot mode pin
handling from setup-r8a7790.c to setup-rcar-gen2.c.

With this in place the same code can be used on
other R-Car Generation 2 devices such as r8a7791.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:29:15 +09:00
Guennadi Liakhovetski
8ceea7bd97 ARM: shmobile: r8a73a4: add a clock alias for the DMAC in DT mode
Devices, initialised from the Device Tree and from platform code usually
have different names. This patch adds a clock alias for DMAC on r8a73a4
in DT mode.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:27:21 +09:00
Guennadi Liakhovetski
159600807c ARM: shmobile: r8a7790: add I2C clocks and aliases for the DT mode
This patch adds clock definitions for the 4 I2C interfaces on r8a7790 and
clock aliases, suitable for the DT mode.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:27:21 +09:00
Max Filippov
a43e5bd76a ARM: shmobile: r8a7779: add HPB-DMAC support
Add HPB-DMAC platform device on R8A7779 SoC along with its slave and channel
configurations (only for SDHI0 so far).

Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
[Sergei: moved *enum* declaring HPB-DMAC slave IDs from now removed <mach/dma.h>
to <mach/r8a7779.h>, removed #include <mach/dma.h> from setup-r8a7779.c, removed
SSI-related *enum* values and SSI-related data from hpb_dmae_slaves[] and
hpb_dmae_channels[], added ASYNCMDR.ASBTMD{20|24|43} and ASYNCMDR.ASMD{20|24|43}
fields/values, fixed comments to ASYNCMDR.ASBTMD2[123] and ASYNCMDR.ASMD2[123]
fields/values, renamed all the bit/field/value #define's to include 'HBP_DMAE_'
prefix to match the driver, moved comments after the element initializers of
hpb_dmae_channels[].]
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:27:21 +09:00
Max Filippov
1eb6b5a0e5 ARM: shmobile: r8a7778: add HPB-DMAC support
Add HPB-DMAC platform device on R8A7778 SoC along with its slave and channel
configurations (only for SDHI0 so far).

Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
[Sergei: moved *enum* declaring HPB-DMAC slave IDs from now removed <mach/dma.h>
to <mach/r8a7778.h>, removed #include <mach/dma.h> from setup-r8a7778.c, removed
SSI-related *enum* values and SSI-related data from hpb_dmae_slaves[] and
hpb_dmae_channels[], moved the comments after the element initializers of
hpb_dmae_channels[].]
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:27:21 +09:00
Guennadi Liakhovetski
3794c16634 ARM: shmobile: r8a73a4: add a DMAC platform device and clock for it
Add a DMAC platform device and clock definitions for it on r8a73a4.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:27:21 +09:00
Simon Horman
8843c9d430 Renesas ARM based SoC SMP updates for v3.13
* Add CPU notifier based SCU boot vector code
   - Use on emev2, r8a7779 and sh73a0 SoCs
   - Remove now unused shmobile_smp_scu_boot_secondary()
 * Add shared APMU SMP support code
   - Use to add SMP support for r8a7790 SoC
 * Introduce shmobile_boot_size
 * Expose shmobile_invalidate_start()
 * Introduce shmobile_smp_cpu_disable()
   - Use on sh73a0 SoC
   - Remove now unused shmobile_smp_init_cpus()
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSST7gAAoJENfPZGlqN0++XFoP/0RsM7u+sD0gzoNDQzhK0GHp
 BKi46te3Wo5A0uuYKW+QxMNXKvIvRFtc/IAmIGEtm+WpNA4W/n6r0WVQWcsl9W1V
 f83qXVUFkdQ6B+UOy8jass+cNPYG34AjPuUkbEyY8pakvMEu81NfkIrJTdN4Yooz
 Al9nHRQxGz7G7zjYxPvUalu5fHnPw+gTN4gh5xkSyFup6MBq8LNbJh7xY+YGezuy
 xr+8EJYIlFXNO7regCp2fhRj8yRgmEjvf1At8iUl9f3HoIfYGNc2gUsPIqYdHTpX
 0EppCVtiMUMl2M0ujI9p+yN7m6qMLkT6vGfPvUHwly3A+L5hYGJCKowS6Y9EMgKB
 1NMco0azKzcoEnZOmgAHbi1ubJsEzLY7Bpbj3W6J+1khTdP1qOu7u2Db1MwZ08Gx
 ofwtNvFgE9EmiDaAeqMoyani8qJjvVu/+s/vickcZ1EzhcYY1qPi4IpBjBymlGnI
 oTioQ20czOvU11WT90mw/jlTTdO9FqNOv9owyTCQveWH5n2PVI+hj26oNgUWLaB8
 w6YYMzHiTPwjGfIIub10MZRdMSp1nb3+HtWZW+Wd523CuzQsk5akOgrs9iqYE3rW
 4PBrniBwHX+7pJnlC47RQJoh6QI4RhML/xthQfIoze/I3eDZi0x5p2LiG59u7opA
 kusLdSS609D4iYrBkBxt
 =Tn0W
 -----END PGP SIGNATURE-----

Merge tag 'renesas-smp-for-v3.13' into soc2-base

Renesas ARM based SoC SMP updates for v3.13

* Add CPU notifier based SCU boot vector code
  - Use on emev2, r8a7779 and sh73a0 SoCs
  - Remove now unused shmobile_smp_scu_boot_secondary()
* Add shared APMU SMP support code
  - Use to add SMP support for r8a7790 SoC
* Introduce shmobile_boot_size
* Expose shmobile_invalidate_start()
* Introduce shmobile_smp_cpu_disable()
  - Use on sh73a0 SoC
  - Remove now unused shmobile_smp_init_cpus()
2013-10-08 09:26:53 +09:00
Kuninori Morimoto
84b47dfc1b ARM: shmobile: r8a7779: add irqpin default status on DTSI
r8a7779 INTC needs IRL pin mode settings to determine
behavior of IRQ0 - IRQ3. But it depends on platform.
This patch adds status = "disabled" on r8a7779.dtsi as default

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Kuninori Morimoto
bffdd7d1a4 ARM: shmobile: marzen: fixup SMSC IRQ number on DTS
This patch fixup miss-setting of SMSC IRQ number.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Kuninori Morimoto
1e918e00ea ARM: shmobile: bockw: add SMSC support on DTS
This patch enables INTC IRQ and SMSC on BockW board via DT.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Kuninori Morimoto
87f1ba8017 ARM: shmobile: r8a7778: add renesas_intc_irqpin support on DTSI
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Magnus Damm
15ab426c0f ARM: shmobile: r8a7791 SMP device tree node
Add a device node for the r8a7791 secondary CPU core.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Magnus Damm
03586acf78 ARM: shmobile: r8a7791 Arch timer device tree node
Add r8a7791 arch timer device tree information.

This needs to be used together with r8a7791 support
code that ties in the R-Car Gen2 arch timer workarounds.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:22 +09:00
Magnus Damm
d77db73e26 ARM: shmobile: r8a7791 IRQC device tree node
Enable a r8a7791 IRQC block by adding a device tree
node for the IRQC hardware and pins IRQ0 to IRQ9.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:21 +09:00
Guennadi Liakhovetski
e99d7963e0 ARM: shmobile: armadillo800eva-reference: add SDHI and MMCIF interfaces
Add SDHI0 and MMCIF interfaces to armadillo800eva-reference with
regulators and pin configurations. SDHI1 is not added yet, because the
switch, that connects the interface either to an SD slot or to a WiFi
SDIO card cannot be described in DT yet.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:14 +09:00
Laurent Pinchart
87b73d8872 ARM: shmobile: armadillo-reference: Add PWM backlight node to DT
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:14 +09:00
Guennadi Liakhovetski
734e2ce38c ARM: shmobile: r8a73a4: add a DT node for the DMAC
Add a DT node for the only system DMAC instance on r8a73a4. The RT DMAC
can be added later under the same multiplexer, because they can serve the
same slaves and use the same MID-RID values. Configuration data is
supplied to the driver, using a compatibility match string.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:14 +09:00
Guennadi Liakhovetski
edd2b9f4e6 ARM: shmobile: r8a7790: add I2C DT nodes
Add DT nodes for the four I2C interfacces on r8a7790.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:14 +09:00
Guennadi Liakhovetski
eda3a4fa95 ARM: shmobile: only enable used I2C interfaces in DT on all Renesas boards
Currently all I2C interfaces in all *.dtsi files for various Renesas SoCs
are enabled by default. Switch them all off and only enable populated I2C
interfaces in board-specific *.dts files.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-10-08 09:25:13 +09:00
Simon Horman
50128df2c0 Renesas ARM based SoC updates for v3.13
* Add support for r8a7791 SoC
 * Rename DU device in clock lookups list of r8a7779 SoC
 * USB and SSI/SRU clock support for r8a7778 SoC
 * USB phy power control function support for r8a7778 SoC
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSSSgvAAoJENfPZGlqN0++QqkP/2qVDvTbeSNq0KpG6nLekj9J
 lNl5A5H78q1KxNWMXjxuxU/sTTnEHug0dFXpXTawk4AuunD4hELSaFcqDQc/UKTx
 yeSX296yhDDTQo/ZlwwSTLTXI696rYX+WliQ4GgaYEY+Ssl2WtzjML9YI4G+BuO2
 DwuBIvbo8V0JLxdoMLFqHAkQiqHFVJlWrnYa4Yp+re5IUzUIbUheHHn2Wu5XjwoJ
 BzN+Scsm1uGxSvMXzQ1AwJNBGJpjUQFK353Hp7g54L1kZ/0d9yP9oO5+/7b8r3ev
 O2diXHzfwdE9/rTONeLs/B/KpEB6KhIMTqwsdDWijfhIbofRJ8mLj074Abh4zqra
 NQTMRX4HfI9qmQrVZFRatKvcR/PgRofSNNaoiIz2Flp0uh8bAgDxTjGegDQUSkyo
 l6vTA+Bfrw2LNlvhZLPB8VrlHNJAoP5XgdObUjswFMtwP0E1upx1YW50naVp3Ear
 otz700svMBRXqAs6mPsXkgLk/ueqbuPANc26+AHr2q8psOFpcZQKROrHRrxyPxVl
 4ZqgEssDB9534A6nct1B0u0eB9pCb95ZcZjuOtdEApXH7hkwp+N40u2orWkSvjhO
 cQBdclyk1f9SDVlRVbl5p/iXSUxa3za6dObDKKHSb8OWAOKINIKRcmHEaXtWJycs
 yobGmXG8yyAyImBTKxHg
 =GB2b
 -----END PGP SIGNATURE-----

Merge tag 'renesas-soc-for-v3.13' into dt2-base

Renesas ARM based SoC updates for v3.13

* Add support for r8a7791 SoC
* Rename DU device in clock lookups list of r8a7779 SoC
* USB and SSI/SRU clock support for r8a7778 SoC
* USB phy power control function support for r8a7778 SoC
2013-10-08 09:24:24 +09:00
Mark Brown
6f0589c8fe MAINTAINERS: Add DTS files to patterns for Samsung platform
Help ensure that updates to the Samsung device trees get sent to the
Samsung maintainers for review by adding file patterns to MAINTAINERS.

Signed-off-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 07:18:21 +09:00
Mark Brown
7e09a97940 regmap: Cache async work structures
Rather than allocating and deallocating the structures used to manage async
transfers each time we do one keep the structures around as long as the
regmap is around. This should provide a small performance improvement.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-10-07 23:04:41 +01:00
Jingoo Han
cbee750e19 ARM: EXYNOS: remove unnecessary header inclusions from exynos4/5 dt machine file
mach-exynos{4,5}-dt.c include several header files that are not
really used.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:59:38 +09:00
Sachin Kamat
93457b9cb9 ARM: dts: Add HDMI related I2C nodes for Arndale board
Updated I2C nodes for HDMI-DDC and HDMI-PHY for Arndale board.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:53:12 +09:00
Rahul Sharma
29f8666109 ARM: dts: enable hdmi subsystem for exynos5420 smdk board
Add pinctrl node for hdmi hpd gpio pin to exynos5420 smdk board
file. hpd Gpio property is added to the hdmi node. This patch also
adds hdmi ddc node.

Both hdmi device and ddc i2c channel are enabled in
exynos5420-smdk5420.dts

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:46 +09:00
Rahul Sharma
b0e505ceea ARM: dts: add dt nodes for hdmi subsystem for exynos5420
Add hdmi and mixer device tree nodes for Exynos 5420 SoC.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:46 +09:00
Andrew Bresticker
f49e347b5a ARM: dts: add i2c device nodes for Exynos5420
This adds device-tree nodes for the i2c busses on Exynos
5420 platforms.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:46 +09:00
Rahul Sharma
27c16d19e2 ARM: dts: add clocks to hdmi dt node for exynos5250
Fix wrong clock numbers in hdmi dt node. Removed hdmiphy
clock which was a dummy clock earlier and not required now.
Also added mux clock to change the clock parent.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:46 +09:00
Sean Paul
18fe6ef0b1 ARM: dts: add mixer clocks to mixer node for Exynos5250
This patch adds the mixer clocks to the mixer node in the
exynos 5250 dts file.

Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:45 +09:00
Rahul Sharma
6edf22a429 of/documentation: update with clock information for exynos hdmi subsystem
Adding information about clocks to the binding documentation
for exynos mixer and hdmi.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:49:45 +09:00
Heiko Stuebner
7f99ef2284 ARM: SAMSUNG: set s3c24xx_dma_filter for s3c64xx-spi0 device
The spi-s3c64xx device is also used on the s3c2416 and s3c2443 SoCs.
The driver also already uses only generic dma-engine operations.

Therefore add another elif to set the s3c24xx filter.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:42:11 +09:00
Heiko Stuebner
f2dda07db6 ARM: S3C24XX: add platform-devices for new dma driver for s3c2412 and s3c2443
This includes defining the mapping for the request sources.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:42:10 +09:00
Heiko Stuebner
ddeccb8d6b dmaengine: add driver for Samsung s3c24xx SoCs
This adds a new driver to support the s3c24xx dma using the dmaengine
and makes the old one in mach-s3c24xx obsolete in the long run.

Conceptually the s3c24xx-dma feels like a distant relative of the pl08x
with numerous virtual channels being mapped to a lot less physical ones.
The driver therefore borrows a lot from the amba-pl08x driver in this
regard. Functionality-wise the driver gains a memcpy ability in addition
to the slave_sg one.

The driver supports both the method for requesting the peripheral used
by SoCs before the S3C2443 and the different method for S3C2443 and later.

On earlier SoCs the hardware channels usable for specific peripherals is
constrainted while on later SoCs all channels can be used for any peripheral.

Tested on a s3c2416-based board, memcpy using the dmatest module and
slave_sg partially using the spi-s3c64xx driver.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:42:10 +09:00
Heiko Stuebner
0fa93b914d ARM: S3C24XX: number the dma clocks
Each dma channel has its own clock. The upcoming dma driver wants to
handle these itself and therefore needs to be able to get the correct
clock for a channel.

Therefore rename the dma clocks to "dma.X" for s3c2412, s3c2416 and
s3c2443. This does not change the behaviour for the old dma driver at
all, as all dma clocks are still always on and not handled by the old
dma driver at all.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-08 06:42:10 +09:00
Liu Chuansheng
84822b158f PCI/PM: Remove pci_pm_complete()
88d26136 ("PM: Prevent runtime suspend during system resume") removed the
pm_runtime_put_sync() from pci_pm_complete() to PM core code
device_complete().

Here the pci_pm_complete() is doing the same work which can be done in
device_complete(), so we can remove it directly.

Signed-off-by: Liu Chuansheng <chuansheng.liu@intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-10-07 15:29:27 -06:00
Benjamin Herrenschmidt
8b5ede69d2 powerpc/irq: Don't switch to irq stack from softirq stack
irq_exit() is now called on the irq stack, which can trigger a switch to
the softirq stack from the irq stack.  If an interrupt happens at that
point, we will not properly detect the re-entrancy and clobber the
original return context on the irq stack.

This fixes it.  The side effect is to prevent all nesting from softirq
stack to irq stack even in the "safe" case but it's simpler that way and
matches what x86_64 does.

Reported-by: Cédric Le Goater <clg@fr.ibm.com>
Tested-by: Cédric Le Goater <clg@fr.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-10-07 14:19:39 -07:00
Yijing Wang
c489f5fbb1 PCI: Add pci_dev_show_local_cpu() to simplify code
local_cpus_show() and local_cpulist_show() are almost the same.
This adds a new helper function, pci_dev_show_local_cpu(), to simplify
code.

The same strategy is already used by cpuaffinity_show() and
cpulistaffinity_show().

Signed-off-by: Yijing Wang <wangyijing@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2013-10-07 15:12:46 -06:00
Myron Stowe
135530d584 mn10300/PCI: Remove unused pci_mem_start
Remove unused 'pci_mem_start' variable.

Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: David Howells <dhowells@redhat.com>
CC: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
2013-10-07 15:12:45 -06:00
Myron Stowe
fa9e962190 cris/PCI: Remove unused pci_mem_start
Remove unused 'pci_mem_start' variable.

Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Mikael Starvik <starvik@axis.com>
CC: Jesper Nilsson <jesper.nilsson@axis.com>
2013-10-07 15:12:45 -06:00
Sachin Kamat
f91da04d0a PCI: Make pci_dev_pm_ops static
pci_dev_pm_ops is local to pci-driver.c.  Make it static.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2013-10-07 15:12:45 -06:00