Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 66f03c61 authored by Linus Torvalds's avatar Linus Torvalds
Browse files


Pull "ARM: device tree work" from Arnd Bergmann:
 "Most of these patches convert code from using static platform data to
  describing the hardware in the device tree.  This is only the first
  half of the changes for v3.4 because a lot of patches for this topic
  came in the last week before the merge window.

  Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de&gt;">

Fix up trivial conflicts in arch/arm/mach-vexpress/{Kconfig,core.h}

* tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (86 commits)
  Document: devicetree: add OF documents for arch-mmp
  ARM: dts: append DTS file of pxa168
  ARM: mmp: append OF support on pxa168
  ARM: mmp: enable rtc clk in pxa168
  i2c: pxa: add OF support
  serial: pxa: add OF support
  arm/dts: mt_ventoux: very basic support for TeeJet Mt.Ventoux board
  ARM: OMAP2+: Remove extra ifdefs for board-generic
  ARM: OMAP2+: Fix build error when only ARCH_OMAP2/3 or 4 is selected
  ASoC: DT: Add digital microphone binding to PAZ00 board.
  ARM: dt: Add ARM PMU to tegra*.dtsi
  ARM: at91: at91sam9x5cm/dt: add leds support
  ARM: at91: usb_a9g20/dt: add gpio-keys support
  ARM: at91: at91sam9m10g45ek/dt: add gpio-keys support
  ARM: at91: at91sam9m10g45ek/dt: add leds support
  ARM: at91: usb_a9g20/dt: add leds support
  ARM: at91/pio: add new PIO3 features
  ARM: at91: add sam9_smc.o to at91sam9x5 build
  ARM: at91/tc/clocksource: Add 32 bit variant to Timer Counter
  ARM: at91/tc: add device tree support to atmel_tclib
  ...
parents 34800598 cdc3df6f
Loading
Loading
Loading
Loading
+38 −0
Original line number Diff line number Diff line
* Advanced Interrupt Controller (AIC)

Required properties:
- compatible: Should be "atmel,<chip>-aic"
- interrupt-controller: Identifies the node as an interrupt controller.
- interrupt-parent: For single AIC system, it is an empty property.
- #interrupt-cells: The number of cells to define the interrupts. It sould be 2.
  The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
  The second cell is used to specify flags:
    bits[3:0] trigger type and level flags:
      1 = low-to-high edge triggered.
      2 = high-to-low edge triggered.
      4 = active high level-sensitive.
      8 = active low level-sensitive.
      Valid combinations are 1, 2, 3, 4, 8.
      Default flag for internal sources should be set to 4 (active high).
- reg: Should contain AIC registers location and length

Examples:
	/*
	 * AIC
	 */
	aic: interrupt-controller@fffff000 {
		compatible = "atmel,at91rm9200-aic";
		interrupt-controller;
		interrupt-parent;
		#interrupt-cells = <2>;
		reg = <0xfffff000 0x200>;
	};

	/*
	 * An interrupt generating device that is wired to an AIC.
	 */
	dma: dma-controller@ffffec00 {
		compatible = "atmel,at91sam9g45-dma";
		reg = <0xffffec00 0x200>;
		interrupts = <21 4>;
	};
+32 −0
Original line number Diff line number Diff line
Atmel AT91 device tree bindings.
================================

PIT Timer required properties:
- compatible: Should be "atmel,at91sam9260-pit"
- reg: Should contain registers location and length
- interrupts: Should contain interrupt for the PIT which is the IRQ line
  shared across all System Controller members.

TC/TCLIB Timer required properties:
- compatible: Should be "atmel,<chip>-pit".
  <chip> can be "at91rm9200" or "at91sam9x5"
- reg: Should contain registers location and length
- interrupts: Should contain all interrupts for the TC block
  Note that you can specify several interrupt cells if the TC
  block has one interrupt per channel.

Examples:

One interrupt per TC block:
	tcb0: timer@fff7c000 {
		compatible = "atmel,at91rm9200-tcb";
		reg = <0xfff7c000 0x100>;
		interrupts = <18 4>;
	};

One interrupt per TC channel in a TC block:
	tcb1: timer@fffdc000 {
		compatible = "atmel,at91rm9200-tcb";
		reg = <0xfffdc000 0x100>;
		interrupts = <26 4 27 4 28 4>;
	};
+22 −0
Original line number Diff line number Diff line
@@ -28,3 +28,25 @@ Required root node properties:
i.MX6 Quad SABRE Lite Board
Required root node properties:
    - compatible = "fsl,imx6q-sabrelite", "fsl,imx6q";

Generic i.MX boards
-------------------

No iomux setup is done for these boards, so this must have been configured
by the bootloader for boards to work with the generic bindings.

i.MX27 generic board
Required root node properties:
    - compatible = "fsl,imx27";

i.MX51 generic board
Required root node properties:
    - compatible = "fsl,imx51";

i.MX53 generic board
Required root node properties:
    - compatible = "fsl,imx53";

i.MX6q generic board
Required root node properties:
    - compatible = "fsl,imx6q";
+6 −0
Original line number Diff line number Diff line
Marvell Platforms Device Tree Bindings
----------------------------------------------------

PXA168 Aspenite Board
Required root node properties:
	- compatible = "mrvl,pxa168-aspenite", "mrvl,pxa168";
+27 −0
Original line number Diff line number Diff line
* OMAP Interrupt Controller

OMAP2/3 are using a TI interrupt controller that can support several
configurable number of interrupts.

Main node required properties:

- compatible : should be:
	"ti,omap2-intc"
- interrupt-controller : Identifies the node as an interrupt controller
- #interrupt-cells : Specifies the number of cells needed to encode an
  interrupt source. The type shall be a <u32> and the value shall be 1.

  The cell contains the interrupt number in the range [0-128].
- ti,intc-size: Number of interrupts handled by the interrupt controller.
- reg: physical base address and size of the intc registers map.

Example:

	intc: interrupt-controller@1 {
		compatible = "ti,omap2-intc";
		interrupt-controller;
		#interrupt-cells = <1>;
		ti,intc-size = <96>;
		reg = <0x48200000 0x1000>;
	};
Loading