Commit Graph

119 Commits

Author SHA1 Message Date
Krzysztof Kozlowski
e39fc20f1e ARM: dts: exynos: Rename power domain nodes to "power-domain" in Exynos4
The device node name should reflect generic class of a device so rename
power domain nodes to "power-domain".  No functional change.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-10-06 17:46:36 +02:00
Marek Szyprowski
314de2f6b5 ARM: dts: exynos: Use standard arrays of generic PHYs for EHCI/OHCI devices
Move USB PHYs to a standard arrays for Exynos EHCI/OHCI devices. This
resolves the conflict between Exynos EHCI/OHCI sub-nodes and generic USB
device bindings. Once the Exynos EHCI/OHCI sub-nodes are removed, the
boards can finally provide sub-nodes for the USB devices using generic USB
device bindings.

Suggested-by: Måns Rullgård <mans@mansr.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20190726081453.9456-4-m.szyprowski@samsung.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-07-30 13:00:37 +02:00
Marek Szyprowski
8386e6a7b0 ARM: dts: exynos: Move Mali400 GPU node to "/soc"
Mali400 GPU hardware module is a standard hardware module integrated to
Exynos3210/4210/4412 SoCs, so it should reside under the "/soc" node.
The only SoC components which are placed in the DT root, are those, which
are a part of CPUs: like ARM architected timers and ARM performance
measurement units.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-07-01 20:27:37 +02:00
Marek Szyprowski
47f28b41df ARM: dts: exynos: Fix imprecise abort on Mali GPU probe on Exynos4210
The PMU module of Mali400 GPU is optional and it looks that it is not
present on Exynos4210, because any access to its registers causes external
abort. This patch removes "pmu" interrupt for Exynos4210 SoCs, so the
driver will skip the PMU module. This fixes following fault during kernel
boot:

    Unhandled fault: imprecise external abort (0x1406) at 0x00000000
    (lima_pmu_init) from [<c059e6f8>] (lima_device_init+0x244/0x5a0)
    (lima_device_init) from [<c059e40c>] (lima_pdev_probe+0x7c/0xd8)
    (lima_pdev_probe) from [<c05afcb8>] (platform_drv_probe+0x48/0x9c)
    (platform_drv_probe) from [<c05ad594>] (really_probe+0x1c4/0x400)
    (really_probe) from [<c05ad988>] (driver_probe_device+0x78/0x1b8)
    (driver_probe_device) from [<c05add30>] (device_driver_attach+0x58/0x60)
    (device_driver_attach) from [<c05ade34>] (__driver_attach+0xfc/0x160)
    (__driver_attach) from [<c05ab650>] (bus_for_each_dev+0x68/0xb4)
    (bus_for_each_dev) from [<c05ac734>] (bus_add_driver+0x104/0x20c)
    (bus_add_driver) from [<c05aece0>] (driver_register+0x78/0x10c)
    (driver_register) from [<c0103214>] (do_one_initcall+0x8c/0x430)
    (do_one_initcall) from [<c0f01328>] (kernel_init_freeable+0x3c8/0x4d0)
    (kernel_init_freeable) from [<c0ac3aa0>] (kernel_init+0x8/0x10c)
    (kernel_init) from [<c01010b4>] (ret_from_fork+0x14/0x20)

The PMU module seems to work fine on Exynos4412 SoCs, so the patch also
moves the interrupt definitions to exynos4210.dtsi and exynos4412.dtsi
respectively, to keep only the common part in exynos4.dtsi.

Fixes: 13efd80aca ("ARM: dts: exynos: Add GPU/Mali 400 node to Exynos4")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-07-01 20:25:57 +02:00
Krzysztof Kozlowski
13efd80aca ARM: dts: exynos: Add GPU/Mali 400 node to Exynos4
Add nodes for GPU (Mali 400) to Exynos4210 and Exynos4412.  Describe the
GPU as much as possible however still few elements are missing:
1. Exynos4210 bus clock is not described in hardware manual therefore
   the IP gate clock was provided,
2. Exynos4412: Not sure what to do with CLK_G3D clock responsible for
   gating entire IP block (it is now being disabled as unused),
3. Regulator supplies on Trats board.

Limited testing on Odroid U3 (Exynos4412).

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-06-24 20:03:42 +02:00
Krzysztof Kozlowski
6da4e11cc7 ARM: dts: exynos: Add PMU interrupt affinity to Exynos4 boards
Move SoC-specific PMU properties from exynos4.dtsi to respective SoC
(4210 or 4412) so common DTSI would have only common properties.

Define there also interrupt affinity to remove the boot warning message:

    hw perfevents: no interrupt-affinity property for /pmu, guessing.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-06-19 19:17:18 +02:00
Krzysztof Kozlowski
0fd5ff9e4c ARM: dts: exynos: Properly override node to use MDMA0 on Universal C210
The Universal C210 (Exynos4210) uses the secure interface of MDMA0,
instead of regular one - non-secure MDMA1.  DTS was overriding MDMA1
node address which caused DTC W=1 warning:

    arch/arm/boot/dts/exynos4.dtsi:707.25-716.6:
        Warning (simple_bus_reg): /soc/amba/mdma@12850000: simple-bus unit address format error, expected "12840000"

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-04-24 19:53:49 +02:00
Krzysztof Kozlowski
be00300147 ARM: dts: exynos: Move pmu and timer nodes out of soc
The ARM PMU and ARM architected timer nodes are part of ARM CPU design
therefore they should not be inside the soc node.  This also fixes DTC
W=1 warnings like:

    arch/arm/boot/dts/exynos3250.dtsi:106.21-135.5:
        Warning (simple_bus_reg): /soc/fixed-rate-clocks: missing or empty reg/ranges property
    arch/arm/boot/dts/exynos3250.dtsi:676.7-680.5:
        Warning (simple_bus_reg): /soc/pmu: missing or empty reg/ranges property

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
2019-04-24 19:52:30 +02:00
Bartlomiej Zolnierkiewicz
c05b799ecc ARM: dts: exynos: remove no longer needed samsung thermal properties
Remove no longer needed samsung thermal properties.

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-06-25 18:37:58 +02:00
Krzysztof Kozlowski
a03e9dacb9 ARM: dts: exynos: Move syscon poweroff and restart nodes under the PMU
The PMU node is the actual block responsible for power management,
including typical Exynos on/off/restart procedures.  Therefore the
syscon poweroff and restart nodes logically belong to it.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
2018-04-21 18:51:45 +02:00
Krzysztof Kozlowski
12ec7b34f1 ARM: dts: exynos: Fix address of PPMU ACP on Exynos4210
Typo in unit address of PPMU ACP caused DTC warnings:

    arch/arm/boot/dts/exynos4412-odroidu3.dtb:
        Warning (simple_bus_reg): Node /soc/ppmu_acp@10ae0000 simple-bus unit address format error, expected "106e0000"

PPMU ACP (under 0x10ae0000 address) is present only in Exynos4210 so
move this node to exynos4210.dtsi with fixing the reg address to proper
one.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
2018-02-26 17:58:29 +01:00
Maciej Purski
73a901d09a ARM: dts: exynos: Add soc node to exynos4
Soc nodes are used in other exynos DTS. Exynos4 boards should use them
as well.

Signed-off-by: Maciej Purski <m.purski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-02-13 19:04:40 +01:00
Maciej Purski
9097b4bd9f ARM: dts: exynos: Use pmu label in exynos4412
In order to use soc node, we need to reference soc child nodes by label
in exynos4412. Define pmu label in exynos4.dtsi. Use it in exynos4412
instead of redefining the node by full path.

Signed-off-by: Maciej Purski <m.purski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-02-13 19:02:00 +01:00
Maciej Purski
e030be47ac ARM: dts: exynos: Use labels instead of full paths in exynos4210
Extend camera, mixer and tmu nodes by labels, not by full path in Exynos
4210 DTSI.  This avoids error-prone redefinition of nodes.

Signed-off-by: Maciej Purski <m.purski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-02-13 18:41:01 +01:00
Krzysztof Kozlowski
cc4637f7c9 ARM: dts: exynos: Add SPDX license identifiers
Replace GPL v2.0 license statements with SPDX license identifiers.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-01-03 18:27:26 +01:00
Krzysztof Kozlowski
3be1ecf291 ARM: dts: exynos: Use lower case hex addresses in node unit addresses
Convert all hex addresses in node unit addresses to lower case to fix warnings
like:
    arch/arm/boot/dts/exynos5422-odroidhc1.dtb: Warning (simple_bus_reg):
      Node /soc/nocp@10CA1000 simple-bus unit address format error, expected "10ca1000"

Conversion was done using sed:

    $ sed -e 's/@\([a-zA-Z0-9_-]*\) {/@\L\1 {/' -i arch/arm/boot/dts/exynos*.dts*

Suggested-by: Rob Herring <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-12-18 18:15:51 +01:00
Sylwester Nawrocki
78a68acf3d ARM: dts: exynos: Switch to dedicated Odroid XU3 sound card binding
The new sound card DT binding is used for Odroid XU3 in order
to properly support the HDMI audio path.  Clocks configuration is
changed so the I2S controller is now the bit clock and the frame clock
master.  The EPLL output clock is now the audio root clock adjusted to
each audio sample rate.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-11-27 18:58:05 +01:00
Rob Herring
8dccafaa28 arm: dts: fix unit-address leading 0s
Fix dtc warnings for 'simple_bus_reg' due to leading 0s. Converted using
the following command:

perl -p -i -e 's/\@0+([0-9a-f])/\@$1/g' `find arch/arm/boot/dts -type -f -name '*.dts*'

Dropped changes to ARM, Ltd. boards LED nodes and manually fixed up some
occurrences of uppercase hex.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-10-20 00:37:54 +02:00
Krzysztof Kozlowski
a3c0d2fb08 ARM: dts: exynos: Add clocks to audss block to fix silent hang on Exynos4412
Add necessary parent clocks for audss (Audio SubSystem, MAUDIO) clock
controller block.

This allows driver to keep EPLL enabled before accessing any MAUDIO
registers thus fixing silent hang.  This silent hang appeared with
commit 6edfa11cb3 ("clk: samsung: Add enable/disable operation for
PLL36XX clocks"), e.g. on Odroid U3 usually with last (but unrelated)
messages:

	[    2.382741] input: gpio_keys as /devices/platform/gpio_keys/input/input0
	[    2.405686] usb 1-3: new high-speed USB device number 3 using exynos-ehci
	[    2.419843] max77686-rtc max77686-rtc: setting system clock to 2017-06-21 17:04:13 UTC (1498064653)

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-07-27 12:53:15 +02:00
Krzysztof Kozlowski
a1146328ec Add to hdmi-cec node a phandle to hdmi node for new hdmi-cec notifier.
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY3XeWAAoJEME3ZuaGi4PXidMP/0InGSAaFgXPHcw8J+TRw+jn
 rltCF+AqP84xESfOsf0SpdnNIi/Iflb7arARmmmdbwywzCtYtxVZVk1ysTOfu7At
 8awJAnkWYHD9olhe/Ga8UgdhRwv2uZarmEVNWBo9nj7A7J63jseGEDdPcTWPgOMP
 DZKGrfsBfo1HDCnzrV4w4yoydSbOgKA1onXjHna5p7n8XRPv2a2taUId1VypGAyZ
 NYsRJGn/WD5jYmyvzW6wZrijv+8qxKnuCl24HoWSprJRCrYscMSpVA+cJK71sYqB
 Gm3Ji2AgDpZNpKhyhm08IL9ChvWHKGtIY3+eAtcdZ18JEP7Yh7ejPhlA5+DCyhMP
 JzL5qBoS38rDaeXr/H6r7U3ytcyuolt9ZO2DwcFBg8PNC8uZllNqPaz8HzX+sf7n
 wKQVDlqnhSmytkCvBIO8V6Zh6lOff3sfHQ55JOmnRfn3P2DVHZDyEbZyc3dN/Zpf
 NtEjd2UXI3phmslSHROWEzBa0lkffXwZvCpArJeIQikkWO3Jhmm9zWvZmrSFVCDb
 zTPiKL8nQXZDcjgaYpwej8B9HO9DndvyLLRwhCHg0Tw0Hb7pr/tu7xhcrfHRLA9d
 AwcmjvLkANMs6pwzIrx7DQ5euua4vOE9VtCXuUKGg1wbOD3GA7hoq3N3S5hVV/JZ
 M/osnbiBLvzJVCRoYDaP
 =0SuK
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-hdmi-cec-4.12' into next/dt

Add to hdmi-cec node a phandle to hdmi node for new hdmi-cec notifier.
2017-03-31 00:27:18 +03:00
Hans Verkuil
192c1df4a7 ARM: dts: exynos: add HDMI controller phandle to exynos4.dtsi
Add the new hdmi phandle to exynos4.dtsi. This phandle is needed by the
s5p-cec driver to initialize the CEC notifier framework.

Tested with my Odroid U3.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-03-31 00:21:18 +03:00
Krzysztof Kozlowski
bdc42353ba ARM: dts: exynos: Fix watchdog reset on Exynos4412
The Exynos4412 has the same watchdog as newer SoCs (e.g. Exynos5250).
Just like the others, for working it requires additional steps in Power
Management Unit: unmasking the reset request and enabling the system
reset.  Without these additional steps in PMU, the watchdog will not be
able to reset the system on expiration event.

Change the compatible of Exynos4412 watchdog device node to
samsung,exynos5250-wdt which includes the additional PMU steps.

This will also fix infinite watchdog interrupt in soft mode (lack of
interrupt clear) because it is also included in samsung,exynos5250-wdt.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
2017-03-13 19:32:06 +02:00
Marek Szyprowski
55d74adfa9 ARM: dts: exynos: Add labels to all existing power domains
Provide human readable names for all power domains defined in Exynos SoCs.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-01-31 21:30:48 +02:00
Krzysztof Kozlowski
dfaf06baad ARM: dts: exynos: Fix indentation of EHCI and OHCI ports
Replace spaces with tabs in EHCI and OHCI ports indentation.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
2017-01-29 21:03:46 +02:00
Marek Szyprowski
087ce39cdf ARM: dts: exynos: Correct clocks for Exynos4 I2S module
"iis", "i2s_opclk0" and "i2s_opclk1" are standard clocks for Exynos4 I2S
hardware module, so they should be defined in .dtsi file not in the random
board .dts file.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2016-12-28 19:25:13 +02:00
Olof Johansson
b4cf33e96a Topic branch with DT changes for v4.10.
Fix invalid GIC interrupt flags - type IRQ_TYPE_NONE is not allowed for GIC
 interrupts.  Although this was working but with error messages like:
 	genirq: Setting trigger mode 0 for irq 16 failed
 
 Use level high interrupt instead of type none.  The choice of level high was
 rather an arbitrary decision hoping it will work on each platform.  Tests shown
 no issues so far.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJYLvYLAAoJEME3ZuaGi4PX7FYP/RUWX+IGk5xZg9xsi/VBN5wg
 IDOseVLPTiz5VxgU1CvCMAxAbdshlPrrn6jgfmj0IRmF5g+9RfjpS6y3X+YIELUA
 hD7altzN75JzY9rV4BhnHeFaRBK53gTeno+4O2hDarew6dRN4A2UtMTFpgGav9S/
 T3vgIrsAXq7vrtnT9dePja0WISzl7l0JgzByTKEtu3egoy6wl20hrslGSJI+sWmt
 Mu969g50RJsbrinzhv2qAYqN9AYuDSHUo8KVUJ2mg0ow9zkeJ/AeHlB4zuUK8dUf
 dPW9tVtQDrcl6sA4wqG4Tno2JjJHqnJNBvE3KOnxqWd/ed7Mz7Pddrc4AaqB5o5l
 GDZxzAx2xb+rX+dWwURVXAtS54RUnD8e1S7Jp8X2+eCL8OUKXvfO6p/XA45/8V/S
 9VJNP/gUL594Zyyj5LuAhqyOfbtcrW2VaZntts68NVjhtYfRcHF8UrxGtj6RxZnH
 mOZC5HNBNIxrpzI+YfSiTCk0ec1CRFtbqC0sMIJoC2DJ+IGint2UPz8VOFMJrZlw
 0zVXCr0NKHCgvJqPIV24udyzPq79REfdsElZQYyl6GDYGXAqTJLR+OP6/Sc/MNv5
 c1uObjQLd/Yi7e9BhqHF60t9s+y3whmqnvOibTEsnRX145VaPBnfwomc1XU9PVIn
 YdK2ml1FgIGdZNZ5dPxy
 =lyeE
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-gic-flags-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/dt

Topic branch with DT changes for v4.10.

Fix invalid GIC interrupt flags - type IRQ_TYPE_NONE is not allowed for GIC
interrupts.  Although this was working but with error messages like:
	genirq: Setting trigger mode 0 for irq 16 failed

Use level high interrupt instead of type none.  The choice of level high was
rather an arbitrary decision hoping it will work on each platform.  Tests shown
no issues so far.

* tag 'samsung-dt-gic-flags-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos5440
  ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos5260
  ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos5
  ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos4
  ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos3250
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos5440
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos5260
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos5410/exynos542x
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos5250
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos5
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos3250
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos4x12
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos4210
  ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos4

Signed-off-by: Olof Johansson <olof@lixom.net>
2016-11-18 18:01:09 -08:00
Pankaj Dubey
05a3589f46 ARM: dts: exynos: Add SCU device node to exynos4.dtsi
Exynos4 like other Cortex-A9 SoC's has a Snoop Control Unit(SCU)
and its SFR are used during SMP boot and S2R. Add SCU node to the device tree.

Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2016-11-05 17:39:50 +02:00
Krzysztof Kozlowski
74e2c9586b ARM: dts: exynos: Use human-friendly symbols for interrupt properties in exynos4
Replace hard-coded values of type of GIC interrupt and its flags with
respective macros from header to increase code readability.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2016-11-03 22:44:55 +02:00
Krzysztof Kozlowski
63aee4fa75 ARM: dts: exynos: Fix invalid GIC interrupt flags in exynos4
Interrupt of type IRQ_TYPE_NONE is not allowed for GIC interrupts and
generates an error:
	genirq: Setting trigger mode 0 for irq 16 failed (gic_set_type+0x0/0x68)

The GIC requires shared interrupts to be edge rising or level high.
Platform declares support for both.  Arbitrarily choose level high
everywhere hoping it will work on each platform.

Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reported-by: Alban Browaeys <alban.browaeys@gmail.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
2016-11-03 22:39:38 +02:00
Javier Martinez Canillas
1354835a89 ARM: dts: exynos: Remove skeleton.dtsi usage for Exynos4
The skeleton.dtsi file was removed in ARM64 for different reasons as
explained in commit ("3ebee5a2e141 arm64: dts: kill skeleton.dtsi").

These also applies to ARM and it will also allow to get rid of the
following DTC warnings in the future:

"Node /memory has a reg or ranges property, but no unit name"

The disassembled DTB are almost the same besides an empty chosen
node being removed and nodes reordered, so it should not have
functional changes.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2016-09-01 18:28:23 +02:00
Marek Szyprowski
9f7d27fa1b ARM: dts: exynos: enable MFC device for all boards
MFC device can be used without any external hardware dependencies (when
IOMMU is enabled), so it can be enabled by default (like it has been
already done for Exynos 542x platforms). This unifies handling of this
device for Exynos3250, Exynos4 and Exynos542x platforms. Board can still
include exynos-mfc-reserved-memory.dtsi to enable using this device
without IOMMU being enabled.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-06-08 09:46:00 +02:00
Arnd Bergmann
2c69599867 DeviceTree changes for new SROM controller driver reached mainline
some time ago, before the driver was accepted (due to very late
 comments). However, after these late comments, the driver expects
 different bindings so we need to fix the DTS.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXFNHtAAoJEME3ZuaGi4PX2LQP/3qB213z+yw60SbP9rzHYdkS
 Gh5oiuJygf6KUo2lK0uWfROiLRQ4hYpbqf41TmCCLsKuXxGppofDuXAYghXDSMh8
 GhKVhNW7/zsJrXOUwl30l9irp5Ai4+5dTzhe2MVyuZ/mnhC8hz+74v/KnQclpUpc
 Fh3w++8Tf/hXUYThhqpo5gguEcJpWIafP1xzJ5xa9yK1MaTVuYlPt2nqba6xSjir
 Ti9mahQ713T0F3FYmJlZO47C3Qn4SKiZRlkCTzzs9h7czhIkTDbbGvmyddrDJHN6
 sloDE6pKTCN0Hse9f+O1erP9FdmT9k/0R9r4idL/RDLRbJvi+OL/UhCP2m1FdJNr
 XgiYIwwrf9shVT/UfmMlFu4yU2KYeD1ELXtDdW0UAAMClIZ5TaHsNhGQpG7yslVb
 E0lMazmBFkCBuq1W2DZPliXd9dCDbK9kcZU0bJacZKUtjXm+AEwIkJmaxrRYp7DG
 hFo+EHprn/dm+9skU+oxHX3yuK+A0i17XeYeNgDRWt4JFb4CNwnX0cTRhwHOJbjq
 4RQqB8ouAIdZkzCsgAZ80nior7dA5B/3WZiX5aNZfAFO4KJxNbeHTLp8+Vdujir1
 H+IC7OC/1Xww8hzfIHIzvi9uV5/q9rfBBb04FMOhRdNN15pnpQ4JvJFkKMom0j/u
 St/R4Tj0FEQDoSj7ViCk
 =5P6R
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-exynos-srom-fixup-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/dt

Merge "ARM: dts: exynos: Fixup for SROM controller (v4.7)" from Krzysztof Kozlowski:

DeviceTree changes for new SROM controller driver reached mainline
some time ago, before the driver was accepted (due to very late
comments). However, after these late comments, the driver expects
different bindings so we need to fix the DTS.

* tag 'samsung-dt-exynos-srom-fixup-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: change SROM node compatible from generic to model specific
2016-04-28 17:40:37 +02:00
Krzysztof Kozlowski
8691f91b5f ARM: dts: exynos: Enable PRNG and SSS for all Exynos4 devices
There is no external dependency for Security SubSystem (SSS) block so
the nodes for Pseudo Random Number Generator and AES hardware
acceleration can be enabled always for all Exynos4 devices.

Suggested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-04-27 10:14:12 +02:00
Pankaj Dubey
4d7820b046 ARM: dts: change SROM node compatible from generic to model specific
This patch changes SROM nodes compatible from generic to model specific
to match with binding documentation. Also updating property
"samsung,srom-page-mode" as it is not defined as bool instead of int

Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-04-18 14:18:31 +02:00
Krzysztof Kozlowski
72c4b2b6be ARM: dts: exynos: Fix DTC unit name warnings in Exynos4
Fix following DTC warnings in all Exynos4 boards:

Warning (unit_address_vs_reg): Node /soc/video-phy@10020710 has a unit name, but no reg property

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
2016-04-13 11:14:49 +02:00
Kamil Debski
c795c88d98 ARM: dts: exynos: Add node for the HDMI CEC device to exynos4
This patch adds HDMI CEC node specific to the Exynos4210/4x12 SoC series.

Signed-off-by: Kamil Debski <kamil@wypas.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-03-29 15:18:19 +09:00
Krzysztof Kozlowski
6c5eb1db1e ARM: dts: exynos: Add Security SubSystem node to Exynos4
Add Security SubSystem (SSS) node to Exynos4 which provides hardware
acceleration of AES operations.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
2016-03-29 10:36:29 +09:00
Masahiro Yamada
2ef7d5f342 ARM, ARM64: dts: drop "arm,amba-bus" in favor of "simple-bus"
The compatible string "simple-bus" is well defined in ePAPR, while
I see no documentation for the "arm,amba-bus" arnywhere in ePAPR or
Documentation/devicetree/.

DT is also used by other projects than Linux kernel.  It is not a
good idea to rely on such an unofficial binding.

This commit
  - replaces "arm,amba-bus" with "simple-bus"
  - drops "arm,amba-bus" where it is used along with "simple-bus"

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2016-03-12 17:40:34 -08:00
Javier Martinez Canillas
1462b1373d ARM: dts: exynos: Move syscon reboot/poweroff to common dtsi
All Exynos SoCs have the same syscon reboot and poweroff device nodes so
there is no need to duplicate the same on each SoC dtsi and can be moved
to a common dtsi that can be included by all the SoCs dtsi files.

Suggested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Reviewed-by: Alim Akhtar <alim.akhtar@samsung,com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-02-25 09:23:07 +09:00
Pankaj Dubey
df4400acde ARM: dts: Add SROM device node for exynos4
Add device node of SROM controller for exynos4.

CC: Rob Herring <robh+dt@kernel.org>
CC: Mark Rutland <mark.rutland@arm.com>
CC: Ian Campbell <ijc+devicetree@hellion.org.uk>
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
[k.kozlowski: fixed size of mapped SROMC memory region]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2016-01-25 10:32:06 +09:00
Arnd Bergmann
d731afa460 Samsung DeviceTree updates and improvements for 4.5
1. eMMC/SDIO minor fixes usage of bindings on Snow and Peach
    Chromebooks.
 2. Remove FIMD from Odroid XU3-family because on XU3 it cannot be used
    yet and on XU3-Lite and XU4 it is not supported.
 3. Remove deprecated since June 2013 samsung,exynos5-hdmi.
 4. Add support for Pseudo Random Generator on Exynos4 (Trats2 for now).
    This depends on new SSS clock.
 5. Add rotator nodes for Exynos4 and Exynos5.
 6. Switch DWC3_1 on Odroid XU3 and XU3-Lite to peripheral mode because
    now it cannot be used as OTG.
 7. Cleanup the G2D usage on Exynos4 and add it to a proper domain
    in case of Exynos4210.
 8. Put MDMA1 in proper domain on Exynos4210 as well.
 9. Minor cleanups.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJWgc9VAAoJEME3ZuaGi4PXv+QP/iegxXdOr6Ta0usArPqzzkg3
 G1r6gcK/izjtEmGVqQDZjAN8HH9NeEpQnmirAttH7saqLW3+2GxQJkyekgUNruBN
 KT9igUtZpUAYD9JWBc2Q9OX6NTFBBn1zOt4d1Ea16u7uHllvvJl4jI4j3GAa8a5+
 OBA1nHP0Vg3ODWXhck67V/WojmH5XyTSBDspMimjAc9YShjM3vRc4rIfkGWieVCW
 /Hvu+dRJl2DKxrrQ8rHRnOUImQqVLN4V/1lUChhhZrecpFFn+2znKMgzmIVZDKNk
 oCW/uAHDR/i9O7GcLRbgzSfDRSwm1zM7DQKsffJmjdun6+46A04R8gPoF94uKKAk
 THG0yIsAqPn8wqHGAzNEPQPlCQ1u8iMBesNyrzZ6UqXbTBWXW/z9ueWQFb2TOQ7c
 gkr1trbfAjOxeeZ+fbOX7zOy+ghDyphSf6NytH147RIAPtVotNfEzPUFda+k7KyU
 CXGiSPVHaKntFhrr25PDk7iHXbMFUfMiGFGzz3sHaYD1FKHMJN0Simp+H1uK1sgA
 I5HXwtzkORLaM2HMR5+vfJlptks9PO9oEOioVxZbe9/VLo1/Iuylf09h6xgzJ2W6
 jE0rRWogBD6mntcGd+HpBN/4p09IIfHC1KocrryltzIJKvebeaoDvcnZKfBy3Hzd
 GDaBtsyg+BNb6LZiRRS6
 =LMzD
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-4.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/dt

Merge "Samsung DeviceTree updates and improvements for 4.5" from Krzysztof Kozlowski:

1. eMMC/SDIO minor fixes usage of bindings on Snow and Peach
   Chromebooks.
2. Remove FIMD from Odroid XU3-family because on XU3 it cannot be used
   yet and on XU3-Lite and XU4 it is not supported.
3. Remove deprecated since June 2013 samsung,exynos5-hdmi.
4. Add support for Pseudo Random Generator on Exynos4 (Trats2 for now).
   This depends on new SSS clock.
5. Add rotator nodes for Exynos4 and Exynos5.
6. Switch DWC3_1 on Odroid XU3 and XU3-Lite to peripheral mode because
   now it cannot be used as OTG.
7. Cleanup the G2D usage on Exynos4 and add it to a proper domain
   in case of Exynos4210.
8. Put MDMA1 in proper domain on Exynos4210 as well.
9. Minor cleanups.

* tag 'samsung-dt-4.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (21 commits)
  ARM: dts: Unify G2D device node with other devices on exynos4
  ARM: dts: Add power domain to G2D device on exynos4210
  ARM: dts: MDMA1 device belongs to LCD0 power domain on exynos4210
  ARM: dts: Remove unneeded GPIO include in exynos4412-odroidu3
  ARM: dts: exynos4210-universal_c210: Disable DMA for UARTs
  ARM: dts: Use peripheral mode for dwc3_1 on exynos5422-odroidxu3
  ARM: dts: Add rotator node on exynos5420
  ARM: dts: Add rotator node on exynos5250
  ARM: dts: Fix power domain for sysmmu-rotator device on exynos4
  ARM: dts: Add rotator nodes on exynos4
  ARM: dts: Enable PRNG module on exynos4412-trats2
  ARM: dts: Add PRNG module for exynos4
  dt-bindings: remove deprecated compatible string from exynos-hdmi
  ARM: dts: Remove fimd node from exynos5422-odroidxu3-common
  ARM: dts: Mark eMMC as non-removable in exynos5250-snow-common
  ARM: dts: Remove broken-cd from eMMC node in exynos5420-peach-pi
  ARM: dts: Remove broken-cd from eMMC node in exynos5800-peach-pi
  ARM: dts: Mark SDIO as non-removable in exynos5250-snow-common
  ARM: dts: Mark SDIO as non-removable in exynos5420-peach-pit
  ARM: dts: Mark SDIO as non-removable in exynos5800-peach-pi
  ...
2015-12-31 17:31:56 +01:00
Marek Szyprowski
3398a187f0 ARM: dts: Fix power domain for sysmmu-rotator device on exynos4
Rotator device and it's SYSMMU belongs to different power domains
on various Exynos4 SoC revisions: LCD0 for 4210 and TOP for 4x12. This
patch fixes this by moving power-domains property to exynos4210.dtsi. TOP
power domain is always enabled and it is not represented in DTS.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-12-29 09:07:42 +09:00
Marek Szyprowski
0c7e90b539 ARM: dts: Add rotator nodes on exynos4
This patch adds device node for Rotator device to Exynos 4210 and 4x12
device tree files.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-12-29 09:07:41 +09:00
Krzysztof Kozlowski
a452977c43 ARM: dts: Add PRNG module for exynos4
Add Pseudo Random Number Generator (PRNG) node of Security Sub System
(SSS) to Exynos 4 DTSI.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-12-29 09:07:33 +09:00
Alim Akhtar
6d19e1a12a ARM: dts: Add syscon-{reboot, poweroff} nodes for exynos4
This patch adds syscon-{reboot, poweroff} nodes to allow the
generic syscon-{reboot, poweroff} driver to reset/poweroff exynos4 SoC.

Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com>
Reviewed-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Tested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Tested-by: Tobias Jakobi <tjakobi@math.uni-bielefeld.de>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Acked-by: Moritz Fischer <moritz.fischer@ettus.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-11-20 15:55:46 +09:00
Robert Baldyga
22374fbedb ARM: dts: Add DMA support for serial ports in exynos4
Enable DMA transfers for serial ports.

Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-09-13 10:30:19 +09:00
Marek Szyprowski
ba03279546 ARM: dts: add iommu property to JPEG device for exynos4
JPEG codec node has been added in parallel to the patch, which
added support for IOMMU to Exynos platform, so JPEG device for
Exynos4 SoCs lacked IOMMU property. This patch fixes this issue.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-08-14 02:30:58 +09:00
Linus Torvalds
099bfbfc7f Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie:
 "This is the main drm pull request for v4.2.

  I've one other new driver from freescale on my radar, it's been posted
  and reviewed, I'd just like to get someone to give it a last look, so
  maybe I'll send it or maybe I'll leave it.

  There is no major nouveau changes in here, Ben was working on
  something big, and we agreed it was a bit late, there wasn't anything
  else he considered urgent to merge.

  There might be another msm pull for some bits that are waiting on
  arm-soc, I'll see how we time it.

  This touches some "of" stuff, acks are in place except for the fixes
  to the build in various configs,t hat I just applied.

  Summary:

  New drivers:
      - virtio-gpu:
                KMS only pieces of driver for virtio-gpu in qemu.
                This is just the first part of this driver, enough to run
                unaccelerated userspace on. As qemu merges more we'll start
                adding the 3D features for the virgl 3d work.
      - amdgpu:
                a new driver from AMD to driver their newer GPUs. (VI+)
                It contains a new cleaner userspace API, and is a clean
                break from radeon moving forward, that AMD are going to
                concentrate on. It also contains a set of register headers
                auto generated from AMD internal database.

  core:
      - atomic modesetting API completed, enabled by default now.
      - Add support for mode_id blob to atomic ioctl to complete interface.
      - bunch of Displayport MST fixes
      - lots of misc fixes.

  panel:
      - new simple panels
      - fix some long-standing build issues with bridge drivers

  radeon:
      - VCE1 support
      - add a GPU reset counter for userspace
      - lots of fixes.

  amdkfd:
      - H/W debugger support module
      - static user-mode queues
      - support killing all the waves when a process terminates
      - use standard DECLARE_BITMAP

  i915:
      - Add Broxton support
      - S3, rotation support for Skylake
      - RPS booting tuning
      - CPT modeset sequence fixes
      - ns2501 dither support
      - enable cmd parser on haswell
      - cdclk handling fixes
      - gen8 dynamic pte allocation
      - lots of atomic conversion work

  exynos:
      - Add atomic modesetting support
      - Add iommu support
      - Consolidate drm driver initialization
      - and MIC, DECON and MIPI-DSI support for exynos5433

  omapdrm:
      - atomic modesetting support (fixes lots of things in rewrite)

  tegra:
      - DP aux transaction fixes
      - iommu support fix

  msm:
      - adreno a306 support
      - various dsi bits
      - various 64-bit fixes
      - NV12MT support

  rcar-du:
      - atomic and misc fixes

  sti:
      - fix HDMI timing complaince

  tilcdc:
      - use drm component API to access tda998x driver
      - fix module unloading

  qxl:
      - stability fixes"

* 'drm-next' of git://people.freedesktop.org/~airlied/linux: (872 commits)
  drm/nouveau: Pause between setting gpu to D3hot and cutting the power
  drm/dp/mst: close deadlock in connector destruction.
  drm: Always enable atomic API
  drm/vgem: Set unique to "vgem"
  of: fix a build error to of_graph_get_endpoint_by_regs function
  drm/dp/mst: take lock around looking up the branch device on hpd irq
  drm/dp/mst: make sure mst_primary mstb is valid in work function
  of: add EXPORT_SYMBOL for of_graph_get_endpoint_by_regs
  ARM: dts: rename the clock of MIPI DSI 'pll_clk' to 'sclk_mipi'
  drm/atomic: Don't set crtc_state->enable manually
  drm/exynos: dsi: do not set TE GPIO direction by input
  drm/exynos: dsi: add support for MIC driver as a bridge
  drm/exynos: dsi: add support for Exynos5433
  drm/exynos: dsi: make use of array for clock access
  drm/exynos: dsi: make use of driver data for static values
  drm/exynos: dsi: add macros for register access
  drm/exynos: dsi: rename pll_clk to sclk_clk
  drm/exynos: mic: add MIC driver
  of: add helper for getting endpoint node of specific identifiers
  drm/exynos: add Exynos5433 decon driver
  ...
2015-06-26 13:18:51 -07:00
Hyungwon Hwang
4f01e65037 ARM: dts: rename the clock of MIPI DSI 'pll_clk' to 'sclk_mipi'
The clock which was named as 'pll_clk' is actually not the clock source
of PLL in MIPI DSI. This patch fixes this disagreement.

Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
2015-06-22 21:40:13 +09:00
Marek Szyprowski
71d3a9fbb2 ARM: dts: add sysmmu nodes for exynos4
This patch adds System MMU nodes that are specific to Exynos4210/4x12
series.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-06-04 08:09:41 +09:00