Skip to content
Snippets Groups Projects
Commit 78d9b048 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'devicetree-fixes-for-4.15-part2' of...

Merge tag 'devicetree-fixes-for-4.15-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

Pull DeviceTree fixes from Rob Herring:
 "Another set of DT fixes:

   - Fixes from overlay code rework. A trifecta of fixes to the locking,
     an out of bounds access, and a memory leak in of_overlay_apply()

   - Clean-up at25 eeprom binding document

   - Remove leading '0x' in unit-addresses from binding docs"

* tag 'devicetree-fixes-for-4.15-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
  of: overlay: Make node skipping in init_overlay_changeset() clearer
  of: overlay: Fix out-of-bounds write in init_overlay_changeset()
  of: overlay: Fix (un)locking in of_overlay_apply()
  of: overlay: Fix memory leak in of_overlay_apply() error path
  dt-bindings: eeprom: at25: Document device-specific compatible values
  dt-bindings: eeprom: at25: Grammar s/are can/can/
  dt-bindings: Remove leading 0x from bindings notation
  of: overlay: Remove else after goto
  of: Spelling s/changset/changeset/
  of: unittest: Remove bogus overlay mutex release from overlay_data_add()
parents 900add27 589b754d
No related branches found
No related tags found
No related merge requests found
Showing
with 32 additions and 27 deletions
...@@ -15,7 +15,7 @@ Required properties: ...@@ -15,7 +15,7 @@ Required properties:
Example: Example:
ccn@0x2000000000 { ccn@2000000000 {
compatible = "arm,ccn-504"; compatible = "arm,ccn-504";
reg = <0x20 0x00000000 0 0x1000000>; reg = <0x20 0x00000000 0 0x1000000>;
interrupts = <0 181 4>; interrupts = <0 181 4>;
......
...@@ -49,7 +49,7 @@ An interrupt consumer on an SoC using crossbar will use: ...@@ -49,7 +49,7 @@ An interrupt consumer on an SoC using crossbar will use:
interrupts = <GIC_SPI request_number interrupt_level> interrupts = <GIC_SPI request_number interrupt_level>
Example: Example:
device_x@0x4a023000 { device_x@4a023000 {
/* Crossbar 8 used */ /* Crossbar 8 used */
interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
... ...
......
...@@ -8,7 +8,7 @@ Required properties: ...@@ -8,7 +8,7 @@ Required properties:
- interrupts : Should contain MC General interrupt. - interrupts : Should contain MC General interrupt.
Example: Example:
memory-controller@0x7000f000 { memory-controller@7000f000 {
compatible = "nvidia,tegra20-mc"; compatible = "nvidia,tegra20-mc";
reg = <0x7000f000 0x024 reg = <0x7000f000 0x024
0x7000f03c 0x3c4>; 0x7000f03c 0x3c4>;
......
...@@ -17,7 +17,7 @@ Optional properties: ...@@ -17,7 +17,7 @@ Optional properties:
- clock-output-names : From common clock binding. - clock-output-names : From common clock binding.
Example: Example:
clock@0xff000000 { clock@ff000000 {
compatible = "adi,axi-clkgen"; compatible = "adi,axi-clkgen";
#clock-cells = <0>; #clock-cells = <0>;
reg = <0xff000000 0x1000>; reg = <0xff000000 0x1000>;
......
...@@ -23,7 +23,7 @@ Example: ...@@ -23,7 +23,7 @@ Example:
clocks = <&clk_osc>; clocks = <&clk_osc>;
}; };
aux: aux@0x7e215004 { aux: aux@7e215004 {
compatible = "brcm,bcm2835-aux"; compatible = "brcm,bcm2835-aux";
#clock-cells = <1>; #clock-cells = <1>;
reg = <0x7e215000 0x8>; reg = <0x7e215000 0x8>;
......
...@@ -24,7 +24,7 @@ tree sources. ...@@ -24,7 +24,7 @@ tree sources.
Example 1: An example of a clock controller node is listed below. Example 1: An example of a clock controller node is listed below.
clock: clock-controller@0x10030000 { clock: clock-controller@10030000 {
compatible = "samsung,exynos4210-clock"; compatible = "samsung,exynos4210-clock";
reg = <0x10030000 0x20000>; reg = <0x10030000 0x20000>;
#clock-cells = <1>; #clock-cells = <1>;
......
...@@ -22,7 +22,7 @@ tree sources. ...@@ -22,7 +22,7 @@ tree sources.
Example 1: An example of a clock controller node is listed below. Example 1: An example of a clock controller node is listed below.
clock: clock-controller@0x10010000 { clock: clock-controller@10010000 {
compatible = "samsung,exynos5250-clock"; compatible = "samsung,exynos5250-clock";
reg = <0x10010000 0x30000>; reg = <0x10010000 0x30000>;
#clock-cells = <1>; #clock-cells = <1>;
......
...@@ -30,7 +30,7 @@ Example 1: An example of a clock controller node is listed below. ...@@ -30,7 +30,7 @@ Example 1: An example of a clock controller node is listed below.
#clock-cells = <0>; #clock-cells = <0>;
}; };
clock: clock-controller@0x10010000 { clock: clock-controller@10010000 {
compatible = "samsung,exynos5410-clock"; compatible = "samsung,exynos5410-clock";
reg = <0x10010000 0x30000>; reg = <0x10010000 0x30000>;
#clock-cells = <1>; #clock-cells = <1>;
......
...@@ -23,7 +23,7 @@ tree sources. ...@@ -23,7 +23,7 @@ tree sources.
Example 1: An example of a clock controller node is listed below. Example 1: An example of a clock controller node is listed below.
clock: clock-controller@0x10010000 { clock: clock-controller@10010000 {
compatible = "samsung,exynos5420-clock"; compatible = "samsung,exynos5420-clock";
reg = <0x10010000 0x30000>; reg = <0x10010000 0x30000>;
#clock-cells = <1>; #clock-cells = <1>;
......
...@@ -21,7 +21,7 @@ tree sources. ...@@ -21,7 +21,7 @@ tree sources.
Example: An example of a clock controller node is listed below. Example: An example of a clock controller node is listed below.
clock: clock-controller@0x10010000 { clock: clock-controller@10010000 {
compatible = "samsung,exynos5440-clock"; compatible = "samsung,exynos5440-clock";
reg = <0x160000 0x10000>; reg = <0x160000 0x10000>;
#clock-cells = <1>; #clock-cells = <1>;
......
...@@ -14,7 +14,7 @@ Required properties: ...@@ -14,7 +14,7 @@ Required properties:
Example: Example:
pllctrl: pll-controller@0x02310000 { pllctrl: pll-controller@02310000 {
compatible = "ti,keystone-pllctrl", "syscon"; compatible = "ti,keystone-pllctrl", "syscon";
reg = <0x02310000 0x200>; reg = <0x02310000 0x200>;
}; };
...@@ -20,13 +20,13 @@ ID in its "clocks" phandle cell. See include/dt-bindings/clock/zx296702-clock.h ...@@ -20,13 +20,13 @@ ID in its "clocks" phandle cell. See include/dt-bindings/clock/zx296702-clock.h
for the full list of zx296702 clock IDs. for the full list of zx296702 clock IDs.
topclk: topcrm@0x09800000 { topclk: topcrm@09800000 {
compatible = "zte,zx296702-topcrm-clk"; compatible = "zte,zx296702-topcrm-clk";
reg = <0x09800000 0x1000>; reg = <0x09800000 0x1000>;
#clock-cells = <1>; #clock-cells = <1>;
}; };
uart0: serial@0x09405000 { uart0: serial@09405000 {
compatible = "zte,zx296702-uart"; compatible = "zte,zx296702-uart";
reg = <0x09405000 0x1000>; reg = <0x09405000 0x1000>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -456,7 +456,7 @@ System ON/OFF key driver ...@@ -456,7 +456,7 @@ System ON/OFF key driver
Definition: this is phandle to the register map node. Definition: this is phandle to the register map node.
EXAMPLE: EXAMPLE:
snvs-pwrkey@0x020cc000 { snvs-pwrkey@020cc000 {
compatible = "fsl,sec-v4.0-pwrkey"; compatible = "fsl,sec-v4.0-pwrkey";
regmap = <&snvs>; regmap = <&snvs>;
interrupts = <0 4 0x4> interrupts = <0 4 0x4>
...@@ -545,7 +545,7 @@ FULL EXAMPLE ...@@ -545,7 +545,7 @@ FULL EXAMPLE
interrupts = <93 2>; interrupts = <93 2>;
}; };
snvs-pwrkey@0x020cc000 { snvs-pwrkey@020cc000 {
compatible = "fsl,sec-v4.0-pwrkey"; compatible = "fsl,sec-v4.0-pwrkey";
regmap = <&sec_mon>; regmap = <&sec_mon>;
interrupts = <0 4 0x4>; interrupts = <0 4 0x4>;
......
...@@ -9,7 +9,7 @@ Required properties: ...@@ -9,7 +9,7 @@ Required properties:
- clock-names : the name of clock used by the DFI, must be "pclk_ddr_mon"; - clock-names : the name of clock used by the DFI, must be "pclk_ddr_mon";
Example: Example:
dfi: dfi@0xff630000 { dfi: dfi@ff630000 {
compatible = "rockchip,rk3399-dfi"; compatible = "rockchip,rk3399-dfi";
reg = <0x00 0xff630000 0x00 0x4000>; reg = <0x00 0xff630000 0x00 0x4000>;
rockchip,pmu = <&pmugrf>; rockchip,pmu = <&pmugrf>;
......
...@@ -27,7 +27,7 @@ Optional properties: ...@@ -27,7 +27,7 @@ Optional properties:
Example: Example:
fb0: fb@0x00500000 { fb0: fb@00500000 {
compatible = "atmel,at91sam9g45-lcdc"; compatible = "atmel,at91sam9g45-lcdc";
reg = <0x00500000 0x1000>; reg = <0x00500000 0x1000>;
interrupts = <23 3 0>; interrupts = <23 3 0>;
...@@ -41,7 +41,7 @@ Example: ...@@ -41,7 +41,7 @@ Example:
Example for fixed framebuffer memory: Example for fixed framebuffer memory:
fb0: fb@0x00500000 { fb0: fb@00500000 {
compatible = "atmel,at91sam9263-lcdc"; compatible = "atmel,at91sam9263-lcdc";
reg = <0x00700000 0x1000 0x70000000 0x200000>; reg = <0x00700000 0x1000 0x70000000 0x200000>;
[...] [...]
......
...@@ -73,7 +73,7 @@ Hypervisor OS configuration: ...@@ -73,7 +73,7 @@ Hypervisor OS configuration:
max-read-transactions = <31>; max-read-transactions = <31>;
channel-reset-timeout-cycles = <0x500>; channel-reset-timeout-cycles = <0x500>;
hidma_24: dma-controller@0x5c050000 { hidma_24: dma-controller@5c050000 {
compatible = "qcom,hidma-1.0"; compatible = "qcom,hidma-1.0";
reg = <0 0x5c050000 0x0 0x1000>, reg = <0 0x5c050000 0x0 0x1000>,
<0 0x5c0b0000 0x0 0x1000>; <0 0x5c0b0000 0x0 0x1000>;
...@@ -85,7 +85,7 @@ Hypervisor OS configuration: ...@@ -85,7 +85,7 @@ Hypervisor OS configuration:
Guest OS configuration: Guest OS configuration:
hidma_24: dma-controller@0x5c050000 { hidma_24: dma-controller@5c050000 {
compatible = "qcom,hidma-1.0"; compatible = "qcom,hidma-1.0";
reg = <0 0x5c050000 0x0 0x1000>, reg = <0 0x5c050000 0x0 0x1000>,
<0 0x5c0b0000 0x0 0x1000>; <0 0x5c0b0000 0x0 0x1000>;
......
...@@ -13,7 +13,7 @@ Required properties: ...@@ -13,7 +13,7 @@ Required properties:
Example: Example:
Controller: Controller:
dma: dma-controller@0x09c00000{ dma: dma-controller@09c00000{
compatible = "zte,zx296702-dma"; compatible = "zte,zx296702-dma";
reg = <0x09c00000 0x1000>; reg = <0x09c00000 0x1000>;
clocks = <&topclk ZX296702_DMA_ACLK>; clocks = <&topclk ZX296702_DMA_ACLK>;
......
EEPROMs (SPI) compatible with Atmel at25. EEPROMs (SPI) compatible with Atmel at25.
Required properties: Required properties:
- compatible : "atmel,at25". - compatible : Should be "<vendor>,<type>", and generic value "atmel,at25".
Example "<vendor>,<type>" values:
"microchip,25lc040"
"st,m95m02"
"st,m95256"
- reg : chip select number - reg : chip select number
- spi-max-frequency : max spi frequency to use - spi-max-frequency : max spi frequency to use
- pagesize : size of the eeprom page - pagesize : size of the eeprom page
...@@ -13,7 +18,7 @@ Optional properties: ...@@ -13,7 +18,7 @@ Optional properties:
- spi-cpol : SPI inverse clock polarity, as per spi-bus bindings. - spi-cpol : SPI inverse clock polarity, as per spi-bus bindings.
- read-only : this parameter-less property disables writes to the eeprom - read-only : this parameter-less property disables writes to the eeprom
Obsolete legacy properties are can be used in place of "size", "pagesize", Obsolete legacy properties can be used in place of "size", "pagesize",
"address-width", and "read-only": "address-width", and "read-only":
- at25,byte-len : total eeprom size in bytes - at25,byte-len : total eeprom size in bytes
- at25,addr-mode : addr-mode flags, as defined in include/linux/spi/eeprom.h - at25,addr-mode : addr-mode flags, as defined in include/linux/spi/eeprom.h
...@@ -22,8 +27,8 @@ Obsolete legacy properties are can be used in place of "size", "pagesize", ...@@ -22,8 +27,8 @@ Obsolete legacy properties are can be used in place of "size", "pagesize",
Additional compatible properties are also allowed. Additional compatible properties are also allowed.
Example: Example:
at25@0 { eeprom@0 {
compatible = "atmel,at25", "st,m95256"; compatible = "st,m95256", "atmel,at25";
reg = <0> reg = <0>
spi-max-frequency = <5000000>; spi-max-frequency = <5000000>;
spi-cpha; spi-cpha;
......
...@@ -30,7 +30,7 @@ Optional properties: ...@@ -30,7 +30,7 @@ Optional properties:
Example: Example:
gpio_altr: gpio@0xff200000 { gpio_altr: gpio@ff200000 {
compatible = "altr,pio-1.0"; compatible = "altr,pio-1.0";
reg = <0xff200000 0x10>; reg = <0xff200000 0x10>;
interrupts = <0 45 4>; interrupts = <0 45 4>;
......
...@@ -18,7 +18,7 @@ Optional properties: ...@@ -18,7 +18,7 @@ Optional properties:
Example Example
/ { / {
i2c4: i2c4@0x10054000 { i2c4: i2c4@10054000 {
compatible = "ingenic,jz4780-i2c"; compatible = "ingenic,jz4780-i2c";
reg = <0x10054000 0x1000>; reg = <0x10054000 0x1000>;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment