mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
Devicetree updates for 3.7
- Import of latest upstream device tree compiler (dtc) - New function of_get_child_by_name - Support for #size-cells of 0 and #addr-cells of >2 - Couple of DT binding documentation updates -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAABAgAGBQJQbF9eAAoJEMhvYp4jgsXiMVAH/3AsqH/ksWFO48L2342WhPzv JLP2YJQ+X2E3fi4sIXWDOAHXgSsKcKYiUqRJNpebdAzfK+/HCdtV594GXP9MfUdq 05ByUBa728wNPHiQitbtwLu+MN0ot1icXeHB+Gx8LuVrJnW/iJv/FHa6QU+cc9ct jxnDu8Lfp4ja4rFWq56c5vda6ecP5nVIyAPZ40z9Q6QioL0BxJ4axQ8mW6lxG0SH BxOzCppxxShU3O52typ29UORfTDfFPFmskLuJPxGThI4HWaIfpBc55wKKw8P2SR0 2/uK+TJw/UTsDwB/IIzbane4AIScj7ZdRjN1T132DcX9e/aDaZhDMNoG3TSE6kQ= =CZiW -----END PGP SIGNATURE----- Merge tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux Pull devicetree updates from Rob Herring: - Import of latest upstream device tree compiler (dtc) - New function of_get_child_by_name - Support for #size-cells of 0 and #addr-cells of >2 - Couple of DT binding documentation updates Fix up trivial conflicts due to of_get_child_by_name() having been added next to the new of_get_next_available_child(). * tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux: MAINTAINERS: add scripts/dtc under Devicetree maintainers dtc: import latest upstream dtc dt: Document general interrupt controller bindings dt/s3c64xx/spi: Use of_get_child_by_name to get a named child dt: introduce of_get_child_by_name to get child node by name of: i2c: add support for wakeup-source property of/address: Handle #address-cells > 2 specially DT: export of_irq_to_resource_table() devicetree: serial: Add documentation for imx serial devicetree: pwm: mxs-pwm.txt: Fix reg field annotation of: Allow busses with #size-cells=0
This commit is contained in:
commit
a54dfb1a84
42 changed files with 4057 additions and 712 deletions
|
|
@ -0,0 +1,95 @@
|
|||
Specifying interrupt information for devices
|
||||
============================================
|
||||
|
||||
1) Interrupt client nodes
|
||||
-------------------------
|
||||
|
||||
Nodes that describe devices which generate interrupts must contain an
|
||||
"interrupts" property. This property must contain a list of interrupt
|
||||
specifiers, one per output interrupt. The format of the interrupt specifier is
|
||||
determined by the interrupt controller to which the interrupts are routed; see
|
||||
section 2 below for details.
|
||||
|
||||
The "interrupt-parent" property is used to specify the controller to which
|
||||
interrupts are routed and contains a single phandle referring to the interrupt
|
||||
controller node. This property is inherited, so it may be specified in an
|
||||
interrupt client node or in any of its parent nodes.
|
||||
|
||||
2) Interrupt controller nodes
|
||||
-----------------------------
|
||||
|
||||
A device is marked as an interrupt controller with the "interrupt-controller"
|
||||
property. This is a empty, boolean property. An additional "#interrupt-cells"
|
||||
property defines the number of cells needed to specify a single interrupt.
|
||||
|
||||
It is the responsibility of the interrupt controller's binding to define the
|
||||
length and format of the interrupt specifier. The following two variants are
|
||||
commonly used:
|
||||
|
||||
a) one cell
|
||||
-----------
|
||||
The #interrupt-cells property is set to 1 and the single cell defines the
|
||||
index of the interrupt within the controller.
|
||||
|
||||
Example:
|
||||
|
||||
vic: intc@10140000 {
|
||||
compatible = "arm,versatile-vic";
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
reg = <0x10140000 0x1000>;
|
||||
};
|
||||
|
||||
sic: intc@10003000 {
|
||||
compatible = "arm,versatile-sic";
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
reg = <0x10003000 0x1000>;
|
||||
interrupt-parent = <&vic>;
|
||||
interrupts = <31>; /* Cascaded to vic */
|
||||
};
|
||||
|
||||
b) two cells
|
||||
------------
|
||||
The #interrupt-cells property is set to 2 and the first cell defines the
|
||||
index of the interrupt within the controller, while the second cell is used
|
||||
to specify any of the following 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
|
||||
|
||||
Example:
|
||||
|
||||
i2c@7000c000 {
|
||||
gpioext: gpio-adnp@41 {
|
||||
compatible = "ad,gpio-adnp";
|
||||
reg = <0x41>;
|
||||
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <160 1>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <1>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
nr-gpios = <64>;
|
||||
};
|
||||
|
||||
sx8634@2b {
|
||||
compatible = "smtc,sx8634";
|
||||
reg = <0x2b>;
|
||||
|
||||
interrupt-parent = <&gpioext>;
|
||||
interrupts = <3 0x8>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
threshold = <0x40>;
|
||||
sensitivity = <7>;
|
||||
};
|
||||
};
|
||||
|
|
@ -11,7 +11,7 @@ Example:
|
|||
|
||||
pwm: pwm@80064000 {
|
||||
compatible = "fsl,imx28-pwm", "fsl,imx23-pwm";
|
||||
reg = <0x80064000 2000>;
|
||||
reg = <0x80064000 0x2000>;
|
||||
#pwm-cells = <2>;
|
||||
fsl,pwm-number = <8>;
|
||||
};
|
||||
|
|
|
|||
35
Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
Normal file
35
Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
* Freescale i.MX UART controller
|
||||
|
||||
Required properties:
|
||||
- compatible : should be "fsl,imx21-uart"
|
||||
- reg : Address and length of the register set for the device
|
||||
- interrupts : Should contain UART interrupt number
|
||||
|
||||
Optional properties:
|
||||
- fsl,uart-has-rtscts: indicate that RTS/CTS signals are used
|
||||
|
||||
Note: Each uart controller should have an alias correctly numbered
|
||||
in "aliases" node.
|
||||
|
||||
Example:
|
||||
|
||||
- From imx51.dtsi:
|
||||
aliases {
|
||||
serial0 = &uart1;
|
||||
serial1 = &uart2;
|
||||
serial2 = &uart3;
|
||||
};
|
||||
|
||||
uart1: serial@73fbc000 {
|
||||
compatible = "fsl,imx51-uart", "fsl,imx21-uart";
|
||||
reg = <0x73fbc000 0x4000>;
|
||||
interrupts = <31>;
|
||||
status = "disabled";
|
||||
}
|
||||
|
||||
- From imx51-babbage.dts:
|
||||
uart1: serial@73fbc000 {
|
||||
fsl,uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
Loading…
Reference in a new issue