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

Commit 1bf25e78 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARM SoC late cleanups from Arnd Bergmann:
 "These are cleanups and smaller changes that either depend on earlier
  feature branches or came in late during the development cycle.  We
  normally try to get all cleanups early, so these are the exceptions:

   - A follow-up on the clocksource reworks, hopefully the last time we
     need to merge clocksource subsystem changes through arm-soc.

     A first set of patches was part of the original 3.10 arm-soc
     cleanup series because of interdependencies with timer drivers now
     moved out of arch/arm.

   - Migrating the SPEAr13xx platform away from using auxdata for DMA
     channel descriptions towards using information in device tree,
     based on the earlier SPEAr multiplatform series

   - A few follow-ups on the Atmel SAMA5 support and other changes for
     Atmel at91 based on the larger at91 reworks.

   - Moving the armada irqchip implementation to drivers/irqchip

   - Several OMAP cleanups following up on the larger series already
     merged in 3.10."

* tag 'cleanup-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (50 commits)
  ARM: OMAP4: change the device names in usb_bind_phy
  ARM: OMAP2+: Fix mismerge for timer.c between ff931c82 and da4a686a
  ARM: SPEAr: conditionalize SMP code
  ARM: arch_timer: Silence debug preempt warnings
  ARM: OMAP: remove unused variable
  serial: amba-pl011: fix !CONFIG_DMA_ENGINE case
  ata: arasan: remove the need for platform_data
  ARM: at91/sama5d34ek.dts: remove not needed compatibility string
  ARM: at91: dts: add MCI DMA support
  ARM: at91: dts: add i2c dma support
  ARM: at91: dts: set #dma-cells to the correct value
  ARM: at91: suspend both memory controllers on at91sam9263
  irqchip: armada-370-xp: slightly cleanup irq controller driver
  irqchip: armada-370-xp: move IRQ handler to avoid forward declaration
  irqchip: move IRQ driver for Armada 370/XP
  ARM: mvebu: move L2 cache initialization in init_early()
  devtree: add binding documentation for sp804
  ARM: integrator-cp: convert use CLKSRC_OF for timer init
  ARM: versatile: use OF init for sp804 timer
  ARM: versatile: add versatile dtbs to dtbs target
  ...
parents 38f56f33 0592c218
Loading
Loading
Loading
Loading
+18 −1
Original line number Diff line number Diff line
@@ -16,14 +16,31 @@ Optional properties:
- clocks : From common clock binding. First clock is phandle to clock for apb
	pclk. Additional clocks are optional and specific to those peripherals.
- clock-names : From common clock binding. Shall be "apb_pclk" for first clock.
- dmas : From common DMA binding. If present, refers to one or more dma channels.
- dma-names : From common DMA binding, needs to match the 'dmas' property.
              Devices with exactly one receive and transmit channel shall name
              these "rx" and "tx", respectively.
- pinctrl-<n> : Pinctrl states as described in bindings/pinctrl/pinctrl-bindings.txt
- pinctrl-names : Names corresponding to the numbered pinctrl states
- interrupts : one or more interrupt specifiers
- interrupt-names : names corresponding to the interrupts properties

Example:

serial@fff36000 {
	compatible = "arm,pl011", "arm,primecell";
	arm,primecell-periphid = <0x00341011>;

	clocks = <&pclk>;
	clock-names = "apb_pclk";

	dmas = <&dma-controller 4>, <&dma-controller 5>;
	dma-names = "rx", "tx";	

	pinctrl-0 = <&uart0_default_mux>, <&uart0_default_mode>;
	pinctrl-1 = <&uart0_sleep_mode>;
	pinctrl-names = "default","sleep";

	interrupts = <0 11 0x4>;
};
+22 −0
Original line number Diff line number Diff line
@@ -6,6 +6,26 @@ Required properties:
- interrupt-parent: Should be the phandle for the interrupt controller
  that services interrupts for this device
- interrupt: Should contain the CF interrupt number
- clock-frequency: Interface clock rate, in Hz, one of
       25000000
       33000000
       40000000
       50000000
       66000000
       75000000
      100000000
      125000000
      150000000
      166000000
      200000000

Optional properties:
- arasan,broken-udma: if present, UDMA mode is unusable
- arasan,broken-mwdma: if present, MWDMA mode is unusable
- arasan,broken-pio: if present, PIO mode is unusable
- dmas: one DMA channel, as described in bindings/dma/dma.txt
  required unless both UDMA and MWDMA mode are broken
- dma-names: the corresponding channel name, must be "data"

Example:

@@ -14,4 +34,6 @@ Example:
		reg = <0xfc000000 0x1000>;
		interrupt-parent = <&vic1>;
		interrupts = <12>;
		dmas = <&dma-controller 23>;
		dma-names = "data";
	};
+17 −0
Original line number Diff line number Diff line
* ARM AMBA Primecell PL011 serial UART

Required properties:
- compatible: must be "arm,primecell", "arm,pl011"
- reg: exactly one register range with length 0x1000
- interrupts: exactly one interrupt specifier

Optional properties:
- pinctrl: When present, must have one state named "sleep"
	   and one state named "default"
- clocks:  When present, must refer to exactly one clock named
	   "apb_pclk"
- dmas:	   When present, may have one or two dma channels.
	   The first one must be named "rx", the second one
	   must be named "tx".

See also bindings/arm/primecell.txt
+36 −0
Original line number Diff line number Diff line
@@ -16,6 +16,11 @@ Optional properties:
                            device will be suspended immediately
- pl022,rt : indicates the controller should run the message pump with realtime
             priority to minimise the transfer latency on the bus (boolean)
- dmas : Two or more DMA channel specifiers following the convention outlined
         in bindings/dma/dma.txt
- dma-names: Names for the dma channels, if present. There must be at
	     least one channel named "tx" for transmit and named "rx" for
             receive.


SPI slave nodes must be children of the SPI master node and can
@@ -32,3 +37,34 @@ contain the following properties.
- pl022,wait-state : Microwire interface: Wait state
- pl022,duplex : Microwire interface: Full/Half duplex


Example:

	spi@e0100000 {
		compatible = "arm,pl022", "arm,primecell";
		reg = <0xe0100000 0x1000>;
		#address-cells = <1>;
		#size-cells = <0>;
		interrupts = <0 31 0x4>;
		dmas = <&dma-controller 23 1>,
			<&dma-controller 24 0>;
		dma-names = "rx", "tx";

		m25p80@1 {
			compatible = "st,m25p80";
			reg = <1>;
			spi-max-frequency = <12000000>;
			spi-cpol;
			spi-cpha;
			pl022,hierarchy = <0>;
			pl022,interface = <0>;
			pl022,slave-tx-disable;
			pl022,com-mode = <0x2>;
			pl022,rx-level-trig = <0>;
			pl022,tx-level-trig = <0>;
			pl022,ctrl-len = <0x11>;
			pl022,wait-state = <0>;
			pl022,duplex = <0>;
		};
	};
	
+29 −0
Original line number Diff line number Diff line
ARM sp804 Dual Timers
---------------------------------------

Required properties:
- compatible: Should be "arm,sp804" & "arm,primecell"
- interrupts: Should contain the list of Dual Timer interrupts. This is the
	interrupt for timer 1 and timer 2. In the case of a single entry, it is
	the combined interrupt or if "arm,sp804-has-irq" is present that
	specifies which timer interrupt is connected.
- reg: Should contain location and length for dual timer register.
- clocks: clocks driving the dual timer hardware. This list should be 1 or 3
	clocks.	With 3 clocks, the order is timer0 clock, timer1 clock,
	apb_pclk. A single clock can also be specified if the same clock is
	used for all clock inputs.

Optional properties:
- arm,sp804-has-irq = <#>: In the case of only 1 timer irq line connected, this
	specifies if the irq connection is for timer 1 or timer 2. A value of 1
	or 2 should be used.

Example:

	timer0: timer@fc800000 {
		compatible = "arm,sp804", "arm,primecell";
		reg = <0xfc800000 0x1000>;
		interrupts = <0 0 4>, <0 1 4>;
		clocks = <&timclk1 &timclk2 &pclk>;
		clock-names = "timer1", "timer2", "apb_pclk";
	};
Loading