mirror of
https://github.com/torvalds/linux.git
synced 2024-12-19 09:32:32 +00:00
787b0c1f8e
With the new OF DMA binding, it is possible to completely avoid the need for platform_data for configuring a DMA channel. In cases where the platform has already been converted, calling dma_request_slave_channel should get all the necessary information from the device tree. This also adds a binding document specific to the pl011 controller, and extends the generic primecell binding to mention "dmas" and other common properties. Like the patch that converts the dw_dma controller, this is completely untested and is looking for someone to try it out. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Russell King <linux@arm.linux.org.uk> Cc: Jiri Slaby <jslaby@suse.cz> Cc: Viresh Kumar <viresh.kumar@linaro.org> Cc: devicetree-discuss@lists.ozlabs.org Cc: linux-arm-kernel@lists.infradead.org
47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
* ARM Primecell Peripherals
|
|
|
|
ARM, Ltd. Primecell peripherals have a standard id register that can be used to
|
|
identify the peripheral type, vendor, and revision. This value can be used for
|
|
driver matching.
|
|
|
|
Required properties:
|
|
|
|
- compatible : should be a specific name for the peripheral and
|
|
"arm,primecell". The specific name will match the ARM
|
|
engineering name for the logic block in the form: "arm,pl???"
|
|
|
|
Optional properties:
|
|
|
|
- arm,primecell-periphid : Value to override the h/w value with
|
|
- 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>;
|
|
};
|
|
|