DeviceTree updates for 4.16:
- Convert to use memblock_virt_alloc in DT code which supports bootmem arches. With this we can remove the arch specific early_init_dt_alloc_memory_arch() functions. - Enable running the DT unittests on UML - Use SPDX license tags on DT files - Fix early FDT kconfig ifdef logic - Clean-up unittest Makefile - Fix function comment for of_irq_parse_raw - Add missing documentation for linux,initrd-{start,end} properties - Clean-up of binding examples using uppercase hex - Add trivial devices W83773G and Infineon TLV493D-A1B6 - Add missing STM32 SoC bindings - Various small binding doc fixes -----BEGIN PGP SIGNATURE----- iQItBAABCAAXBQJac0m3EBxyb2JoQGtlcm5lbC5vcmcACgkQ+vtdtY28YcOmXA/9 G/ZySEtV2RnW/z8bckNnG98F9M/yxFwKARYb4HPDGr4C6fYy9IO3sQ25Gjn9GgQm RzcOk40P+3YQvkb5eyha6zYYxrBwKNHjRoJJWpCpNAolJrYRgPn7gB9GLxs15mc8 F1EdSrdJDsNxxrc44T6hJ2xfU/sY5Q7E9xVAKD9pStmENUhzyLnPuyT4UrqAnCVC 1tqBjYgmHWsQxzgO9tSM629xKxgBVLPjoOULN8vWTcN+5RFQSgB/MFv611SKXo2h cIDH7Hm61MBMvblGTtEkz1pi+mF62BOvaHJdYKdAF0i1HrjIyIEysHC6rKrlYsF1 B39HY8D+kIPr39OCdn6dONDtrWkmPSc/MYfqLjFDPIwgNtgDRkv9kugEi39/LTKP htpcD9zctRQLuDJtW+1TyQvNtEHEPY2QhRjKb1SdD4xK/phMcEhc8+sW88jFygtP xlNb12FCCjw83k801oX1QHgWR8mQg0cj2hrJxrMIJ+Hrb23TvBdN+wtPc6WkKjol zqHZ9vFK4z8LIPR6jPLsz9vAIBHcXKVWgSGSf41MhTSZYTOznR7HG1wgTcq4XMld VpKdWKbRa3B/ZqP01eCHmBLIt/f0pcieoa7b20uIf2PjWQmzRkaX9A0yfWrYsV/V JQogXMCSe7zfZBxrLRx37UP7hqMEIgWeTN+Ek0a4dOI= =v6gj -----END PGP SIGNATURE----- Merge tag 'devicetree-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux Pull DeviceTree updates from Rob Herring: - Convert to use memblock_virt_alloc in DT code which supports bootmem arches. With this we can remove the arch specific early_init_dt_alloc_memory_arch() functions. - Enable running the DT unittests on UML - Use SPDX license tags on DT files - Fix early FDT kconfig ifdef logic - Clean-up unittest Makefile - Fix function comment for of_irq_parse_raw - Add missing documentation for linux,initrd-{start,end} properties - Clean-up of binding examples using uppercase hex - Add trivial devices W83773G and Infineon TLV493D-A1B6 - Add missing STM32 SoC bindings - Various small binding doc fixes * tag 'devicetree-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (23 commits) xtensa: remove arch specific early DT functions x86: remove arch specific early_init_dt_alloc_memory_arch nios2: remove arch specific early_init_dt_alloc_memory_arch mips: remove arch specific early_init_dt_alloc_memory_arch metag: remove arch specific early DT functions cris: remove arch specific early DT functions libfdt: remove unnecessary include directive from <linux/libfdt.h> of: unittest: refactor Makefile of/fdt: use memblock_virt_alloc for early alloc of: Use SPDX license tag for DT files of/fdt: Fix #ifdef dependency of early flattree declarations dt-bindings: h8300 clocksource: correct spelling of pulse dt-bindings: imx6q-pcie: Add required property for i.MX6SX mmc: Don't reference Linux-specific OF_GPIO_ACTIVE_LOW flag in DT binding dt-bindings: Use lower case hex in unit-addresses dt-bindings: display: panel: Fix compatible string for Toshiba LT089AC29000 dt-bindings: Add Infineon TLV493D-A1B6 dt-bindings: mailbox: ti,message-manager: Fix interrupt name error dt-bindings: chosen: Document linux,initrd-{start,end} dt-bindings: arm: document supported STM32 SoC family ...
This commit is contained in:
commit
2bed26606b
|
@ -55,7 +55,7 @@ Note: child nodes can be added for auto probing from device tree.
|
|||
|
||||
Example: adding device info in dtsi file
|
||||
|
||||
adc: adc@12D10000 {
|
||||
adc: adc@12d10000 {
|
||||
compatible = "samsung,exynos-adc-v1";
|
||||
reg = <0x12D10000 0x100>;
|
||||
interrupts = <0 106 0>;
|
||||
|
@ -71,7 +71,7 @@ adc: adc@12D10000 {
|
|||
|
||||
Example: adding device info in dtsi file for Exynos3250 with additional sclk
|
||||
|
||||
adc: adc@126C0000 {
|
||||
adc: adc@126c0000 {
|
||||
compatible = "samsung,exynos3250-adc", "samsung,exynos-adc-v2;
|
||||
reg = <0x126C0000 0x100>;
|
||||
interrupts = <0 137 0>;
|
||||
|
@ -87,7 +87,7 @@ adc: adc@126C0000 {
|
|||
|
||||
Example: Adding child nodes in dts file
|
||||
|
||||
adc@12D10000 {
|
||||
adc@12d10000 {
|
||||
|
||||
/* NTC thermistor is a hwmon device */
|
||||
ncp15wb473@0 {
|
||||
|
|
|
@ -72,7 +72,7 @@ Optional nodes:
|
|||
- compatible: only "samsung,secure-firmware" is currently supported
|
||||
- reg: address of non-secure SYSRAM used for communication with firmware
|
||||
|
||||
firmware@203F000 {
|
||||
firmware@203f000 {
|
||||
compatible = "samsung,secure-firmware";
|
||||
reg = <0x0203F000 0x1000>;
|
||||
};
|
||||
|
|
9
Documentation/devicetree/bindings/arm/stm32.txt
Normal file
9
Documentation/devicetree/bindings/arm/stm32.txt
Normal file
|
@ -0,0 +1,9 @@
|
|||
STMicroelectronics STM32 Platforms Device Tree Bindings
|
||||
|
||||
Each device tree must specify which STM32 SoC it uses,
|
||||
using one of the following compatible strings:
|
||||
|
||||
st,stm32f429
|
||||
st,stm32f469
|
||||
st,stm32f746
|
||||
st,stm32h743
|
|
@ -120,3 +120,18 @@ e.g.
|
|||
While this property does not represent a real hardware, the address
|
||||
and the size are expressed in #address-cells and #size-cells,
|
||||
respectively, of the root node.
|
||||
|
||||
linux,initrd-start and linux,initrd-end
|
||||
---------------------------------------
|
||||
|
||||
These properties hold the physical start and end address of an initrd that's
|
||||
loaded by the bootloader. Note that linux,initrd-start is inclusive, but
|
||||
linux,initrd-end is exclusive.
|
||||
e.g.
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
linux,initrd-start = <0x82000000>;
|
||||
linux,initrd-end = <0x82800000>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -32,7 +32,7 @@ Example 1: Examples of clock controller nodes are listed below.
|
|||
#clock-cells = <1>;
|
||||
};
|
||||
|
||||
cmu_dmc: clock-controller@105C0000 {
|
||||
cmu_dmc: clock-controller@105c0000 {
|
||||
compatible = "samsung,exynos3250-cmu-dmc";
|
||||
reg = <0x105C0000 0x2000>;
|
||||
#clock-cells = <1>;
|
||||
|
|
|
@ -180,7 +180,7 @@ Example 2: UART controller node that consumes the clock generated by the
|
|||
peri clock controller. Refer to the standard clock bindings for
|
||||
information about 'clocks' and 'clock-names' property.
|
||||
|
||||
serial@12C00000 {
|
||||
serial@12c00000 {
|
||||
compatible = "samsung,exynos4210-uart";
|
||||
reg = <0x12C00000 0x100>;
|
||||
interrupts = <0 146 0>;
|
||||
|
|
|
@ -41,7 +41,7 @@ Example 2: UART controller node that consumes the clock generated by the clock
|
|||
controller. Refer to the standard clock bindings for information
|
||||
about 'clocks' and 'clock-names' property.
|
||||
|
||||
serial@12C20000 {
|
||||
serial@12c20000 {
|
||||
compatible = "samsung,exynos4210-uart";
|
||||
reg = <0x12C00000 0x100>;
|
||||
interrupts = <0 51 0>;
|
||||
|
|
|
@ -472,7 +472,7 @@ Example 2: Examples of clock controller nodes are listed below.
|
|||
Example 3: UART controller node that consumes the clock generated by the clock
|
||||
controller.
|
||||
|
||||
serial_0: serial@14C10000 {
|
||||
serial_0: serial@14c10000 {
|
||||
compatible = "samsung,exynos5433-uart";
|
||||
reg = <0x14C10000 0x100>;
|
||||
interrupts = <0 421 0>;
|
||||
|
|
|
@ -75,7 +75,7 @@ Required properties:
|
|||
- clock-frequency: must be present in the i2c controller node.
|
||||
|
||||
Example:
|
||||
atecc508a@C0 {
|
||||
atecc508a@c0 {
|
||||
compatible = "atmel,atecc508a";
|
||||
reg = <0xC0>;
|
||||
};
|
||||
|
|
|
@ -20,7 +20,7 @@ Optional properties:
|
|||
|
||||
Example : NoC Probe nodes in Device Tree are listed below.
|
||||
|
||||
nocp_mem0_0: nocp@10CA1000 {
|
||||
nocp_mem0_0: nocp@10ca1000 {
|
||||
compatible = "samsung,exynos5420-nocp";
|
||||
reg = <0x10CA1000 0x200>;
|
||||
};
|
||||
|
|
|
@ -54,7 +54,7 @@ Video interfaces:
|
|||
|
||||
Example:
|
||||
|
||||
dsi@11C80000 {
|
||||
dsi@11c80000 {
|
||||
compatible = "samsung,exynos4210-mipi-dsi";
|
||||
reg = <0x11C80000 0x10000>;
|
||||
interrupts = <0 79 0>;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Toshiba 8.9" WXGA (1280x768) TFT LCD panel
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "toshiba,lt089ac29000.txt"
|
||||
- compatible: should be "toshiba,lt089ac29000"
|
||||
- power-supply: as specified in the base binding
|
||||
|
||||
This binding is compatible with the simple-panel binding, which is specified
|
||||
|
|
|
@ -119,7 +119,7 @@ Example:
|
|||
/ {
|
||||
...
|
||||
|
||||
vtg_main_slave: sti-vtg-main-slave@fe85A800 {
|
||||
vtg_main_slave: sti-vtg-main-slave@fe85a800 {
|
||||
compatible = "st,vtg";
|
||||
reg = <0xfe85A800 0x300>;
|
||||
interrupts = <GIC_SPI 175 IRQ_TYPE_NONE>;
|
||||
|
|
|
@ -15,7 +15,7 @@ Optional properties:
|
|||
|
||||
Example:
|
||||
|
||||
dma: dma-controller@801C0000 {
|
||||
dma: dma-controller@801c0000 {
|
||||
compatible = "stericsson,db8500-dma40", "stericsson,dma40";
|
||||
reg = <0x801C0000 0x1000 0x40010000 0x800>;
|
||||
reg-names = "base", "lcpa";
|
||||
|
|
|
@ -21,7 +21,7 @@ Documentation/devicetree/bindings/gpio/gpio.txt
|
|||
|
||||
Example:
|
||||
|
||||
gpioa: gpio@FF140000 {
|
||||
gpioa: gpio@ff140000 {
|
||||
compatible = "abilis,tb10x-gpio";
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
|
|
|
@ -27,7 +27,7 @@ Optional properties:
|
|||
|
||||
Example:
|
||||
|
||||
gpio1: stp@E100BB0 {
|
||||
gpio1: stp@e100bb0 {
|
||||
compatible = "lantiq,gpio-stp-xway";
|
||||
reg = <0xE100BB0 0x40>;
|
||||
#gpio-cells = <2>;
|
||||
|
|
|
@ -290,7 +290,7 @@ pins 50..69.
|
|||
|
||||
Example 2:
|
||||
|
||||
gpio_pio_i: gpio-controller@14B0 {
|
||||
gpio_pio_i: gpio-controller@14b0 {
|
||||
#gpio-cells = <2>;
|
||||
compatible = "fsl,qe-pario-bank-e", "fsl,qe-pario-bank";
|
||||
reg = <0x1480 0x18>;
|
||||
|
|
|
@ -54,7 +54,7 @@ Optional properties:
|
|||
|
||||
|
||||
Example:
|
||||
i2c@12CA0000 {
|
||||
i2c@12ca0000 {
|
||||
compatible = "acme,some-i2c-device";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
|
|
@ -11,7 +11,7 @@ Required properties:
|
|||
|
||||
Examples:
|
||||
|
||||
lpi2c7: lpi2c7@40A50000 {
|
||||
lpi2c7: lpi2c7@40a50000 {
|
||||
compatible = "fsl,imx8dv-lpi2c";
|
||||
reg = <0x40A50000 0x10000>;
|
||||
interrupt-parent = <&intc>;
|
||||
|
|
|
@ -45,7 +45,7 @@ Optional Properties specific to linux:
|
|||
|
||||
|
||||
Example:
|
||||
keypad@100A0000 {
|
||||
keypad@100a0000 {
|
||||
compatible = "samsung,s5pv210-keypad";
|
||||
reg = <0x100A0000 0x100>;
|
||||
interrupts = <173>;
|
||||
|
|
|
@ -66,7 +66,7 @@ Example: An example of touchscreen node
|
|||
reg = <0x180a6000 0xc30>;
|
||||
};
|
||||
|
||||
touchscreen: touchscreen@180A6000 {
|
||||
touchscreen: touchscreen@180a6000 {
|
||||
compatible = "brcm,iproc-touchscreen";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
|
|
@ -56,7 +56,7 @@ Examples:
|
|||
iommus = <&sysmmu_gsc0>;
|
||||
};
|
||||
|
||||
sysmmu_gsc0: sysmmu@13E80000 {
|
||||
sysmmu_gsc0: sysmmu@13e80000 {
|
||||
compatible = "samsung,exynos-sysmmu";
|
||||
reg = <0x13E80000 0x1000>;
|
||||
interrupt-parent = <&combiner>;
|
||||
|
|
|
@ -124,7 +124,7 @@ dsp {
|
|||
};
|
||||
|
||||
/* AM33xx */
|
||||
mailbox: mailbox@480C8000 {
|
||||
mailbox: mailbox@480c8000 {
|
||||
compatible = "ti,omap4-mailbox";
|
||||
reg = <0x480C8000 0x200>;
|
||||
interrupts = <77>;
|
||||
|
|
|
@ -20,9 +20,9 @@ Required properties:
|
|||
order referring to the transfer path.
|
||||
- interrupt-names: Contains interrupt names matching the rx transfer path
|
||||
for a given SoC. Receive interrupts shall be of the
|
||||
format: "rx_<QID>_<PID>".
|
||||
format: "rx_<QID>".
|
||||
For ti,k2g-message-manager, this shall contain:
|
||||
"rx_005_002", "rx_057_002"
|
||||
"rx_005", "rx_057"
|
||||
- interrupts: Contains the interrupt information corresponding to
|
||||
interrupt-names property.
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ Optional:
|
|||
|
||||
Example:
|
||||
|
||||
hdmicec: cec@100B0000 {
|
||||
hdmicec: cec@100b0000 {
|
||||
compatible = "samsung,s5p-cec";
|
||||
reg = <0x100B0000 0x200>;
|
||||
interrupts = <0 114 0>;
|
||||
|
|
|
@ -62,7 +62,7 @@ For more details see description of the SPI busses bindings
|
|||
|
||||
Example:
|
||||
|
||||
i2c@138A000000 {
|
||||
i2c@138a000000 {
|
||||
...
|
||||
s5c73m3@3c {
|
||||
compatible = "samsung,s5c73m3";
|
||||
|
|
|
@ -138,7 +138,7 @@ from the corresponding HW reg.
|
|||
|
||||
Example for aemif, davinci nand and nor flash chip select shown below.
|
||||
|
||||
memory-controller@21000A00 {
|
||||
memory-controller@21000a00 {
|
||||
compatible = "ti,davinci-aemif";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <1>;
|
||||
|
|
|
@ -41,7 +41,7 @@ Optional properties (all):
|
|||
|
||||
Example for I2C:
|
||||
|
||||
i2c@12CA0000 {
|
||||
i2c@12ca0000 {
|
||||
cros-ec@1e {
|
||||
reg = <0x1e>;
|
||||
compatible = "google,cros-ec-i2c";
|
||||
|
|
|
@ -67,10 +67,10 @@ logic applies to the "wp-inverted" property.
|
|||
CD and WP lines can be implemented on the hardware in one of two ways: as GPIOs,
|
||||
specified in cd-gpios and wp-gpios properties, or as dedicated pins. Polarity of
|
||||
dedicated pins can be specified, using *-inverted properties. GPIO polarity can
|
||||
also be specified using the OF_GPIO_ACTIVE_LOW flag. This creates an ambiguity
|
||||
also be specified using the GPIO_ACTIVE_LOW flag. This creates an ambiguity
|
||||
in the latter case. We choose to use the XOR logic for GPIO CD and WP lines.
|
||||
This means, the two properties are "superimposed," for example leaving the
|
||||
OF_GPIO_ACTIVE_LOW flag clear and specifying the respective *-inverted
|
||||
GPIO_ACTIVE_LOW flag clear and specifying the respective *-inverted property
|
||||
property results in a double-inversion and actually means the "normal" line
|
||||
polarity is in effect.
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ Optional subnodes:
|
|||
|
||||
Example:
|
||||
|
||||
mlc: flash@200A8000 {
|
||||
mlc: flash@200a8000 {
|
||||
compatible = "nxp,lpc3220-mlc";
|
||||
reg = <0x200A8000 0x11000>;
|
||||
interrupts = <11 0>;
|
||||
|
|
|
@ -61,7 +61,7 @@ file.
|
|||
|
||||
Examples:
|
||||
|
||||
mac: ethernet@4A100000 {
|
||||
mac: ethernet@4a100000 {
|
||||
compatible = "ti,cpsw";
|
||||
reg = <0x4A100000 0x1000>;
|
||||
interrupts = <55 0x4>;
|
||||
|
@ -91,7 +91,7 @@ Examples:
|
|||
};
|
||||
|
||||
(or)
|
||||
mac: ethernet@4A100000 {
|
||||
mac: ethernet@4a100000 {
|
||||
compatible = "ti,cpsw";
|
||||
ti,hwmods = "cpgmac0";
|
||||
cpdma_channels = <8>;
|
||||
|
|
|
@ -21,7 +21,7 @@ file.
|
|||
|
||||
Examples:
|
||||
|
||||
mdio: davinci_mdio@4A101000 {
|
||||
mdio: davinci_mdio@4a101000 {
|
||||
compatible = "ti,davinci_mdio";
|
||||
reg = <0x4A101000 0x1000>;
|
||||
bus_freq = <1000000>;
|
||||
|
@ -29,7 +29,7 @@ Examples:
|
|||
|
||||
(or)
|
||||
|
||||
mdio: davinci_mdio@4A101000 {
|
||||
mdio: davinci_mdio@4a101000 {
|
||||
compatible = "ti,davinci_mdio";
|
||||
ti,hwmods = "davinci_mdio";
|
||||
bus_freq = <1000000>;
|
||||
|
|
|
@ -136,7 +136,7 @@ Clock Properties:
|
|||
|
||||
Example:
|
||||
|
||||
ptp_clock@24E00 {
|
||||
ptp_clock@24e00 {
|
||||
compatible = "fsl,etsec-ptp";
|
||||
reg = <0x24E00 0xB0>;
|
||||
interrupts = <12 0x8 13 0x8>;
|
||||
|
|
|
@ -41,6 +41,7 @@ Optional properties:
|
|||
Additional required properties for imx6sx-pcie:
|
||||
- clock names: Must include the following additional entries:
|
||||
- "pcie_inbound_axi"
|
||||
- power-domains: Must be set to a phandle pointing to the PCIE_PHY power domain
|
||||
|
||||
Additional required properties for imx7d-pcie:
|
||||
- power-domains: Must be set to a phandle pointing to PCIE_PHY power domain
|
||||
|
|
|
@ -120,7 +120,7 @@ usb3phy@4a084400 {
|
|||
"refclk";
|
||||
};
|
||||
|
||||
sata_phy: phy@4A096000 {
|
||||
sata_phy: phy@4a096000 {
|
||||
compatible = "ti,phy-pipe3-sata";
|
||||
reg = <0x4A096000 0x80>, /* phy_rx */
|
||||
<0x4A096400 0x64>, /* phy_tx */
|
||||
|
|
|
@ -49,7 +49,7 @@ explained in Documentation/devicetree/bindings/gpio/gpio.txt.
|
|||
Example
|
||||
-------
|
||||
|
||||
iomux: iomux@FF10601c {
|
||||
iomux: iomux@ff10601c {
|
||||
compatible = "abilis,tb10x-iomux";
|
||||
reg = <0xFF10601c 0x4>;
|
||||
pctl_gpio_a: pctl-gpio-a {
|
||||
|
@ -59,7 +59,7 @@ iomux: iomux@FF10601c {
|
|||
abilis,function = "uart0";
|
||||
};
|
||||
};
|
||||
uart@FF100000 {
|
||||
uart@ff100000 {
|
||||
compatible = "snps,dw-apb-uart";
|
||||
reg = <0xFF100000 0x100>;
|
||||
clock-frequency = <166666666>;
|
||||
|
@ -69,7 +69,7 @@ uart@FF100000 {
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pctl_uart0>;
|
||||
};
|
||||
gpioa: gpio@FF140000 {
|
||||
gpioa: gpio@ff140000 {
|
||||
compatible = "abilis,tb10x-gpio";
|
||||
reg = <0xFF140000 0x1000>;
|
||||
gpio-controller;
|
||||
|
|
|
@ -152,7 +152,7 @@ resetn
|
|||
|
||||
Example:
|
||||
--------
|
||||
pinctrl@18101C00 {
|
||||
pinctrl@18101c00 {
|
||||
compatible = "img,pistachio-system-pinctrl";
|
||||
reg = <0x18101C00 0x400>;
|
||||
|
||||
|
|
|
@ -163,7 +163,7 @@ Valid values for xRX300 pin names:
|
|||
io42-io43,io48-io61.
|
||||
|
||||
Example:
|
||||
gpio: pinmux@E100B10 {
|
||||
gpio: pinmux@e100b10 {
|
||||
compatible = "lantiq,danube-pinctrl";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&state_default>;
|
||||
|
|
|
@ -81,7 +81,7 @@ Examples:
|
|||
reg = <0 0x10005000 0 0x1000>;
|
||||
};
|
||||
|
||||
syscfg_pctl_b: syscfg_pctl_b@1020C020 {
|
||||
syscfg_pctl_b: syscfg_pctl_b@1020c020 {
|
||||
compatible = "mediatek,mt8135-pctl-b-syscfg", "syscon";
|
||||
reg = <0 0x1020C020 0 0x1000>;
|
||||
};
|
||||
|
|
|
@ -223,37 +223,37 @@ lac-portals {
|
|||
reg = <0x9000 0x1000>;
|
||||
};
|
||||
|
||||
lportal10: lac-portal@A000 {
|
||||
lportal10: lac-portal@a000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x20E>;
|
||||
reg = <0xA000 0x1000>;
|
||||
};
|
||||
|
||||
lportal11: lac-portal@B000 {
|
||||
lportal11: lac-portal@b000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x20F>;
|
||||
reg = <0xB000 0x1000>;
|
||||
};
|
||||
|
||||
lportal12: lac-portal@C000 {
|
||||
lportal12: lac-portal@c000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x210>;
|
||||
reg = <0xC000 0x1000>;
|
||||
};
|
||||
|
||||
lportal13: lac-portal@D000 {
|
||||
lportal13: lac-portal@d000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x211>;
|
||||
reg = <0xD000 0x1000>;
|
||||
};
|
||||
|
||||
lportal14: lac-portal@E000 {
|
||||
lportal14: lac-portal@e000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x212>;
|
||||
reg = <0xE000 0x1000>;
|
||||
};
|
||||
|
||||
lportal15: lac-portal@F000 {
|
||||
lportal15: lac-portal@f000 {
|
||||
compatible = "fsl,interlaken-lac-portal-v1.0";
|
||||
fsl,liodn = <0x213>;
|
||||
reg = <0xF000 0x1000>;
|
||||
|
|
|
@ -10,7 +10,7 @@ Required properties:
|
|||
- clocks: Must contain an entry for peripheral clock.
|
||||
|
||||
Example:
|
||||
vrefbuf: regulator@58003C00 {
|
||||
vrefbuf: regulator@58003c00 {
|
||||
compatible = "st,stm32-vrefbuf";
|
||||
reg = <0x58003C00 0x8>;
|
||||
clocks = <&rcc VREF_CK>;
|
||||
|
|
|
@ -8,7 +8,7 @@ Required properties:
|
|||
|
||||
Example:
|
||||
|
||||
asc1: serial@E100C00 {
|
||||
asc1: serial@e100c00 {
|
||||
compatible = "lantiq,asc";
|
||||
reg = <0xE100C00 0x400>;
|
||||
interrupt-parent = <&icu0>;
|
||||
|
|
|
@ -35,7 +35,7 @@ Optional Properties:
|
|||
|
||||
Example:
|
||||
|
||||
i2s_out: i2s-out@18100A00 {
|
||||
i2s_out: i2s-out@18100a00 {
|
||||
compatible = "img,i2s-out";
|
||||
reg = <0x18100A00 0x200>;
|
||||
interrupts = <GIC_SHARED 13 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -29,7 +29,7 @@ Optional Properties:
|
|||
|
||||
Example:
|
||||
|
||||
parallel_out: parallel-out@18100C00 {
|
||||
parallel_out: parallel-out@18100c00 {
|
||||
compatible = "img,parallel-out";
|
||||
reg = <0x18100C00 0x100>;
|
||||
interrupts = <GIC_SHARED 19 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -29,7 +29,7 @@ Optional Properties:
|
|||
|
||||
Example:
|
||||
|
||||
spdif_in: spdif-in@18100E00 {
|
||||
spdif_in: spdif-in@18100e00 {
|
||||
compatible = "img,spdif-in";
|
||||
reg = <0x18100E00 0x100>;
|
||||
interrupts = <GIC_SHARED 20 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -29,7 +29,7 @@ Optional Properties:
|
|||
|
||||
Example:
|
||||
|
||||
spdif_out: spdif-out@18100D00 {
|
||||
spdif_out: spdif-out@18100d00 {
|
||||
compatible = "img,spdif-out";
|
||||
reg = <0x18100D00 0x100>;
|
||||
interrupts = <GIC_SHARED 21 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -51,7 +51,7 @@ Optional properties:
|
|||
|
||||
Example:
|
||||
|
||||
sti_uni_player1: sti-uni-player@8D81000 {
|
||||
sti_uni_player1: sti-uni-player@8d81000 {
|
||||
compatible = "st,stih407-uni-player-hdmi";
|
||||
#sound-dai-cells = <0>;
|
||||
st,syscfg = <&syscfg_core>;
|
||||
|
@ -63,7 +63,7 @@ Example:
|
|||
st,tdm-mode = <1>;
|
||||
};
|
||||
|
||||
sti_uni_player2: sti-uni-player@8D82000 {
|
||||
sti_uni_player2: sti-uni-player@8d82000 {
|
||||
compatible = "st,stih407-uni-player-pcm-out";
|
||||
#sound-dai-cells = <0>;
|
||||
st,syscfg = <&syscfg_core>;
|
||||
|
@ -74,7 +74,7 @@ Example:
|
|||
dma-names = "tx";
|
||||
};
|
||||
|
||||
sti_uni_player3: sti-uni-player@8D85000 {
|
||||
sti_uni_player3: sti-uni-player@8d85000 {
|
||||
compatible = "st,stih407-uni-player-spdif";
|
||||
#sound-dai-cells = <0>;
|
||||
st,syscfg = <&syscfg_core>;
|
||||
|
@ -85,7 +85,7 @@ Example:
|
|||
dma-names = "tx";
|
||||
};
|
||||
|
||||
sti_uni_reader1: sti-uni-reader@8D84000 {
|
||||
sti_uni_reader1: sti-uni-reader@8d84000 {
|
||||
compatible = "st,stih407-uni-reader-hdmi";
|
||||
#sound-dai-cells = <0>;
|
||||
st,syscfg = <&syscfg_core>;
|
||||
|
|
|
@ -68,7 +68,7 @@ SPI_SOMI/SIMO+-----------------+ +-----------
|
|||
Example of a NOR flash slave device (n25q032) connected to DaVinci
|
||||
SPI controller device over the SPI bus.
|
||||
|
||||
spi0:spi@20BF0000 {
|
||||
spi0:spi@20bf0000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "ti,dm6446-spi";
|
||||
|
|
|
@ -16,7 +16,7 @@ Optional properties:
|
|||
Example:
|
||||
|
||||
|
||||
spi: spi@E100800 {
|
||||
spi: spi@e100800 {
|
||||
compatible = "lantiq,xrx200-spi", "lantiq,xrx100-spi";
|
||||
reg = <0xE100800 0x100>;
|
||||
interrupt-parent = <&icu0>;
|
||||
|
|
|
@ -70,7 +70,7 @@ Following properties are mandatory (depending on SoC):
|
|||
|
||||
Example 1):
|
||||
|
||||
tmu@100C0000 {
|
||||
tmu@100c0000 {
|
||||
compatible = "samsung,exynos4412-tmu";
|
||||
interrupt-parent = <&combiner>;
|
||||
reg = <0x100C0000 0x100>;
|
||||
|
|
|
@ -252,7 +252,7 @@ ocp {
|
|||
/*
|
||||
* A simple IC with a single bandgap temperature sensor.
|
||||
*/
|
||||
bandgap0: bandgap@0000ED00 {
|
||||
bandgap0: bandgap@0000ed00 {
|
||||
...
|
||||
#thermal-sensor-cells = <0>;
|
||||
};
|
||||
|
@ -330,7 +330,7 @@ ocp {
|
|||
/*
|
||||
* A simple IC with several bandgap temperature sensors.
|
||||
*/
|
||||
bandgap0: bandgap@0000ED00 {
|
||||
bandgap0: bandgap@0000ed00 {
|
||||
...
|
||||
#thermal-sensor-cells = <1>;
|
||||
};
|
||||
|
@ -458,7 +458,7 @@ ocp {
|
|||
/*
|
||||
* A simple IC with a single bandgap temperature sensor.
|
||||
*/
|
||||
bandgap0: bandgap@0000ED00 {
|
||||
bandgap0: bandgap@0000ed00 {
|
||||
...
|
||||
#thermal-sensor-cells = <0>;
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
* Renesas H8/300 Timer Pluse Unit
|
||||
* Renesas H8/300 Timer Pulse Unit
|
||||
|
||||
The TPU is a 16bit timer/counter with configurable clock inputs and
|
||||
programmable compare match.
|
||||
|
|
|
@ -51,7 +51,7 @@ Example 2: In this example, the timer interrupts are connected to two separate
|
|||
interrupt controllers. Hence, an interrupt-map is created to map
|
||||
the interrupts to the respective interrupt controllers.
|
||||
|
||||
mct@101C0000 {
|
||||
mct@101c0000 {
|
||||
compatible = "samsung,exynos4210-mct";
|
||||
reg = <0x101C0000 0x800>;
|
||||
interrupt-parent = <&mct_map>;
|
||||
|
|
|
@ -63,6 +63,7 @@ fsl,sgtl5000 SGTL5000: Ultra Low-Power Audio Codec
|
|||
gmt,g751 G751: Digital Temperature Sensor and Thermal Watchdog with Two-Wire Interface
|
||||
infineon,slb9635tt Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz)
|
||||
infineon,slb9645tt Infineon SLB9645 I2C TPM (new protocol, max 400khz)
|
||||
infineon,tlv493d-a1b6 Infineon TLV493D-A1B6 I2C 3D Magnetic Sensor
|
||||
isil,isl1208 Intersil ISL1208 Low Power RTC with Battery Backed SRAM
|
||||
isil,isl1218 Intersil ISL1218 Low Power RTC with Battery Backed SRAM
|
||||
isil,isl12022 Intersil ISL12022 Real-time Clock
|
||||
|
@ -151,6 +152,7 @@ national,lm85 Temperature sensor with integrated fan control
|
|||
national,lm92 ±0.33°C Accurate, 12-Bit + Sign Temperature Sensor and Thermal Window Comparator with Two-Wire Interface
|
||||
nuvoton,npct501 i2c trusted platform module (TPM)
|
||||
nuvoton,npct601 i2c trusted platform module (TPM2)
|
||||
nuvoton,w83773g Nuvoton Temperature Sensor
|
||||
nxp,pca9556 Octal SMBus and I2C registered interface
|
||||
nxp,pca9557 8-bit I2C-bus and SMBus I/O port with reset
|
||||
nxp,pcf2127 Real-time clock
|
||||
|
|
|
@ -10,7 +10,7 @@ Optional properties:
|
|||
|
||||
Example:
|
||||
|
||||
watchdog@4003C000 {
|
||||
watchdog@4003c000 {
|
||||
compatible = "nxp,pnx4008-wdt";
|
||||
reg = <0x4003C000 0x1000>;
|
||||
timeout-sec = <10>;
|
||||
|
|
|
@ -25,7 +25,7 @@ Optional properties:
|
|||
|
||||
Example:
|
||||
|
||||
watchdog@101D0000 {
|
||||
watchdog@101d0000 {
|
||||
compatible = "samsung,exynos5250-wdt";
|
||||
reg = <0x101D0000 0x100>;
|
||||
interrupts = <0 42 0>;
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
# $Id: Makefile,v 1.12 2004/10/19 13:07:43 starvik Exp $
|
||||
#
|
||||
# Makefile for the linux kernel.
|
||||
#
|
||||
|
||||
CPPFLAGS_vmlinux.lds := -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
|
||||
extra-y := vmlinux.lds
|
||||
|
||||
obj-y := process.o traps.o irq.o ptrace.o setup.o time.o sys_cris.o
|
||||
obj-y += devicetree.o
|
||||
obj-y += stacktrace.o
|
||||
|
||||
obj-$(CONFIG_MODULES) += crisksyms.o
|
||||
obj-$(CONFIG_MODULES) += module.o
|
||||
obj-$(CONFIG_SYSTEM_PROFILER) += profile.o
|
||||
|
||||
clean:
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <linux/init.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/printk.h>
|
||||
|
||||
void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
{
|
||||
pr_err("%s(%llx, %llx)\n",
|
||||
__func__, base, size);
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return alloc_bootmem_align(size, align);
|
||||
}
|
|
@ -14,26 +14,12 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_fdt.h>
|
||||
|
||||
#include <asm/setup.h>
|
||||
#include <asm/page.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
{
|
||||
pr_err("%s(%llx, %llx)\n",
|
||||
__func__, base, size);
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return alloc_bootmem_align(size, align);
|
||||
}
|
||||
|
||||
static const void * __init arch_get_next_mach(const char *const **match)
|
||||
{
|
||||
static const struct machine_desc *mdesc = __arch_info_begin;
|
||||
|
|
|
@ -44,11 +44,6 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
|||
return add_memory_region(base, size, BOOT_MEM_RAM);
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return __alloc_bootmem(size, align, __pa(MAX_DMA_ADDRESS));
|
||||
}
|
||||
|
||||
int __init early_init_dt_reserve_memory_arch(phys_addr_t base,
|
||||
phys_addr_t size, bool nomap)
|
||||
{
|
||||
|
|
|
@ -42,11 +42,6 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
|||
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return alloc_bootmem_align(size, align);
|
||||
}
|
||||
|
||||
int __init early_init_dt_reserve_memory_arch(phys_addr_t base, phys_addr_t size,
|
||||
bool nomap)
|
||||
{
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
/*
|
||||
* Architecture specific OF callbacks.
|
||||
*/
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/interrupt.h>
|
||||
|
@ -39,11 +38,6 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
|||
BUG();
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return __alloc_bootmem(size, align, __pa(MAX_DMA_ADDRESS));
|
||||
}
|
||||
|
||||
void __init add_dtb(u64 data)
|
||||
{
|
||||
initial_dtb = data + offsetof(struct setup_data, data);
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#include <linux/mm.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/screen_info.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/percpu.h>
|
||||
#include <linux/cpu.h>
|
||||
|
@ -220,17 +219,6 @@ static int __init xtensa_dt_io_area(unsigned long node, const char *uname,
|
|||
}
|
||||
#endif
|
||||
|
||||
void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
{
|
||||
size &= PAGE_MASK;
|
||||
memblock_add(base, size);
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return __alloc_bootmem(size, align, 0);
|
||||
}
|
||||
|
||||
void __init early_init_devtree(void *params)
|
||||
{
|
||||
early_init_dt_scan(params);
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
config DTC
|
||||
bool
|
||||
|
||||
|
@ -13,7 +14,8 @@ if OF
|
|||
|
||||
config OF_UNITTEST
|
||||
bool "Device Tree runtime unit tests"
|
||||
depends on OF_IRQ
|
||||
depends on !SPARC
|
||||
select IRQ_DOMAIN
|
||||
select OF_EARLY_FLATTREE
|
||||
select OF_RESOLVE
|
||||
help
|
||||
|
@ -61,7 +63,7 @@ config OF_DYNAMIC
|
|||
|
||||
config OF_ADDRESS
|
||||
def_bool y
|
||||
depends on !SPARC && HAS_IOMEM
|
||||
depends on !SPARC && (HAS_IOMEM || UML)
|
||||
select OF_ADDRESS_PCI if PCI
|
||||
|
||||
config OF_ADDRESS_PCI
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#define pr_fmt(fmt) "OF: " fmt
|
||||
|
||||
#include <linux/device.h>
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Procedures for creating, accessing and interpreting the device tree.
|
||||
*
|
||||
|
@ -11,11 +12,6 @@
|
|||
*
|
||||
* Reconsolidated from arch/x/kernel/prom.c by Stephen Rothwell and
|
||||
* Grant Likely.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: " fmt
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <linux/string.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/of.h>
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Support for dynamic device trees.
|
||||
*
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Functions for working with the Flattened Device Tree data format
|
||||
*
|
||||
* Copyright 2009 Benjamin Herrenschmidt, IBM Corp
|
||||
* benh@kernel.crashing.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: fdt: " fmt
|
||||
|
@ -14,6 +11,7 @@
|
|||
#include <linux/crc32.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/of.h>
|
||||
|
@ -1183,14 +1181,6 @@ int __init __weak early_init_dt_reserve_memory_arch(phys_addr_t base,
|
|||
return memblock_reserve(base, size);
|
||||
}
|
||||
|
||||
/*
|
||||
* called from unflatten_device_tree() to bootstrap devicetree itself
|
||||
* Architectures can override this definition if memblock isn't used
|
||||
*/
|
||||
void * __init __weak early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return __va(memblock_alloc(size, align));
|
||||
}
|
||||
#else
|
||||
void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
{
|
||||
|
@ -1209,14 +1199,13 @@ int __init __weak early_init_dt_reserve_memory_arch(phys_addr_t base,
|
|||
&base, &size, nomap ? " (nomap)" : "");
|
||||
return -ENOSYS;
|
||||
}
|
||||
|
||||
void * __init __weak early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
WARN_ON(1);
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return memblock_virt_alloc(size, align);
|
||||
}
|
||||
|
||||
bool __init early_init_dt_verify(void *params)
|
||||
{
|
||||
if (!params)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* FDT Address translation based on u-boot fdt_support.c which in turn was
|
||||
* based on the kernel unflattened DT address translation code.
|
||||
|
@ -6,11 +7,6 @@
|
|||
* Gerald Van Baren, Custom IDEAS, vanbaren@cideas.com
|
||||
*
|
||||
* Copyright 2010-2011 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: fdt: " fmt
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Derived from arch/i386/kernel/irq.c
|
||||
* Copyright (C) 1992 Linus Torvalds
|
||||
|
@ -8,11 +9,6 @@
|
|||
* Adapted for Power Macintosh by Paul Mackerras
|
||||
* Copyright (C) 1996 Paul Mackerras (paulus@cs.anu.edu.au)
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This file contains the code used to make IRQ descriptions in the
|
||||
* device tree to actual irq numbers on an interrupt controller
|
||||
* driver.
|
||||
|
@ -83,9 +79,8 @@ EXPORT_SYMBOL_GPL(of_irq_find_parent);
|
|||
|
||||
/**
|
||||
* of_irq_parse_raw - Low level interrupt tree parsing
|
||||
* @parent: the device interrupt parent
|
||||
* @addr: address specifier (start of "reg" property of the device) in be32 format
|
||||
* @out_irq: structure of_irq updated by this function
|
||||
* @out_irq: structure of_phandle_args updated by this function
|
||||
*
|
||||
* Returns 0 on success and a negative number on error
|
||||
*
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <linux/of.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
|
@ -161,4 +162,3 @@ void __of_detach_node_sysfs(struct device_node *np)
|
|||
/* finally remove the kobj_init ref */
|
||||
of_node_put(np);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,19 +1,8 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* OF NUMA Parsing support.
|
||||
*
|
||||
* Copyright (C) 2015 - 2016 Cavium Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: NUMA: " fmt
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
#ifndef _LINUX_OF_PRIVATE_H
|
||||
#define _LINUX_OF_PRIVATE_H
|
||||
/*
|
||||
|
@ -5,11 +6,6 @@
|
|||
*
|
||||
* Paul Mackerras August 1996.
|
||||
* Copyright (C) 1996-2005 Paul Mackerras.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Device tree based initialization code for reserved memory.
|
||||
*
|
||||
|
@ -6,11 +7,6 @@
|
|||
* http://www.samsung.com
|
||||
* Author: Marek Szyprowski <m.szyprowski@samsung.com>
|
||||
* Author: Josh Cartwright <joshc@codeaurora.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License or (at your optional) any later version of the license.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: reserved mem: " fmt
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Functions for working with device tree overlays
|
||||
*
|
||||
* Copyright (C) 2012 Pantelis Antoniou <panto@antoniou-consulting.com>
|
||||
* Copyright (C) 2012 Texas Instruments Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: overlay: " fmt
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/* pdt.c: OF PROM device tree support code.
|
||||
*
|
||||
* Paul Mackerras August 1996.
|
||||
|
@ -8,11 +9,6 @@
|
|||
*
|
||||
* Adapted for sparc by David S. Miller davem@davemloft.net
|
||||
* Adapted for multiple architectures by Andres Salomon <dilinger@queued.net>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
|
|
|
@ -1,15 +1,10 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2006 Benjamin Herrenschmidt, IBM Corp.
|
||||
* <benh@kernel.crashing.org>
|
||||
* and Arnd Bergmann, IBM Corp.
|
||||
* Merged from powerpc/kernel/of_platform.c and
|
||||
* sparc{,64}/kernel/of_device.c by Stephen Rothwell
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: " fmt
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* drivers/of/property.c - Procedures for accessing and interpreting
|
||||
* Devicetree properties and graphs.
|
||||
|
@ -16,11 +17,6 @@
|
|||
*
|
||||
* Reconsolidated from arch/x/kernel/prom.c by Stephen Rothwell and
|
||||
* Grant Likely.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: " fmt
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Functions for dealing with DT resolution
|
||||
*
|
||||
* Copyright (C) 2012 Pantelis Antoniou <panto@antoniou-consulting.com>
|
||||
* Copyright (C) 2012 Texas Instruments Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "OF: resolver: " fmt
|
||||
|
|
|
@ -2,19 +2,12 @@
|
|||
DTC_FLAGS_testcases := -Wno-interrupts_property
|
||||
obj-y += testcases.dtb.o
|
||||
|
||||
targets += testcases.dtb testcases.dtb.S
|
||||
obj-$(CONFIG_OF_OVERLAY) += overlay.dtb.o \
|
||||
overlay_bad_phandle.dtb.o \
|
||||
overlay_bad_symbol.dtb.o \
|
||||
overlay_base.dtb.o
|
||||
|
||||
ifdef CONFIG_OF_OVERLAY
|
||||
|
||||
obj-y += overlay.dtb.o
|
||||
obj-y += overlay_bad_phandle.dtb.o
|
||||
obj-y += overlay_bad_symbol.dtb.o
|
||||
obj-y += overlay_base.dtb.o
|
||||
|
||||
targets += overlay.dtb overlay.dtb.S
|
||||
targets += overlay_bad_phandle.dtb overlay_bad_phandle.dtb.S
|
||||
targets += overlay_bad_symbol.dtb overlay_bad_symbol.dtb.S
|
||||
targets += overlay_base.dtb overlay_base.dtb.S
|
||||
targets += $(foreach suffix, dtb dtb.S, $(patsubst %.dtb.o,%.$(suffix),$(obj-y)))
|
||||
|
||||
# enable creation of __symbols__ node
|
||||
DTC_FLAGS_overlay := -@
|
||||
|
@ -22,8 +15,6 @@ DTC_FLAGS_overlay_bad_phandle := -@
|
|||
DTC_FLAGS_overlay_bad_symbol := -@
|
||||
DTC_FLAGS_overlay_base := -@
|
||||
|
||||
endif
|
||||
|
||||
.PRECIOUS: \
|
||||
$(obj)/%.dtb.S \
|
||||
$(obj)/%.dtb
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
/plugin/;
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
#define pr_fmt(fmt) "### dt-test ### " fmt
|
||||
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/err.h>
|
||||
#include <linux/errno.h>
|
||||
|
@ -2053,6 +2054,11 @@ static struct overlay_info overlays[] = {
|
|||
|
||||
static struct device_node *overlay_base_root;
|
||||
|
||||
static void * __init dt_alloc_memory(u64 size, u64 align)
|
||||
{
|
||||
return memblock_virt_alloc(size, align);
|
||||
}
|
||||
|
||||
/*
|
||||
* Create base device tree for the overlay unittest.
|
||||
*
|
||||
|
@ -2092,8 +2098,7 @@ void __init unittest_unflatten_overlay_base(void)
|
|||
return;
|
||||
}
|
||||
|
||||
info->data = early_init_dt_alloc_memory_arch(size,
|
||||
roundup_pow_of_two(FDT_V17_SIZE));
|
||||
info->data = dt_alloc_memory(size, roundup_pow_of_two(FDT_V17_SIZE));
|
||||
if (!info->data) {
|
||||
pr_err("alloc for dtb 'overlay_base' failed");
|
||||
return;
|
||||
|
@ -2102,7 +2107,7 @@ void __init unittest_unflatten_overlay_base(void)
|
|||
memcpy(info->data, info->dtb_begin, size);
|
||||
|
||||
__unflatten_device_tree(info->data, NULL, &info->np_overlay,
|
||||
early_init_dt_alloc_memory_arch, true);
|
||||
dt_alloc_memory, true);
|
||||
overlay_base_root = info->np_overlay;
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
#define _INCLUDE_LIBFDT_H_
|
||||
|
||||
#include <linux/libfdt_env.h>
|
||||
#include "../../scripts/dtc/libfdt/fdt.h"
|
||||
#include "../../scripts/dtc/libfdt/libfdt.h"
|
||||
|
||||
#endif /* _INCLUDE_LIBFDT_H_ */
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
#ifndef _LINUX_OF_H
|
||||
#define _LINUX_OF_H
|
||||
/*
|
||||
|
@ -9,11 +10,6 @@
|
|||
* Updates for PPC64 by Peter Bergner & David Engebretsen, IBM Corp.
|
||||
* Updates for SPARC64 by David S. Miller
|
||||
* Derived from PowerPC and Sparc prom.h files by Stephen Rothwell, IBM Corp.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
#include <linux/types.h>
|
||||
#include <linux/bitops.h>
|
||||
|
|
|
@ -1,13 +1,10 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/*
|
||||
* OF helpers for DMA request / controller
|
||||
*
|
||||
* Based on of_gpio.h
|
||||
*
|
||||
* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_OF_DMA_H
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/*
|
||||
* Definitions for working with the Flattened Device Tree data format
|
||||
*
|
||||
* Copyright 2009 Benjamin Herrenschmidt, IBM Corp
|
||||
* benh@kernel.crashing.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_OF_FDT_H
|
||||
|
@ -47,6 +44,12 @@ extern void *initial_boot_params;
|
|||
extern char __dtb_start[];
|
||||
extern char __dtb_end[];
|
||||
|
||||
/* Other Prototypes */
|
||||
extern u64 of_flat_dt_translate_address(unsigned long node);
|
||||
extern void of_fdt_limit_memory(int limit);
|
||||
#endif /* CONFIG_OF_FLATTREE */
|
||||
|
||||
#ifdef CONFIG_OF_EARLY_FLATTREE
|
||||
/* For scanning the flat device-tree at boot time */
|
||||
extern int of_scan_flat_dt(int (*it)(unsigned long node, const char *uname,
|
||||
int depth, void *data),
|
||||
|
@ -77,7 +80,6 @@ extern void early_init_dt_add_memory_arch(u64 base, u64 size);
|
|||
extern int early_init_dt_mark_hotplug_memory_arch(u64 base, u64 size);
|
||||
extern int early_init_dt_reserve_memory_arch(phys_addr_t base, phys_addr_t size,
|
||||
bool no_map);
|
||||
extern void * early_init_dt_alloc_memory_arch(u64 size, u64 align);
|
||||
extern u64 dt_mem_next_cell(int s, const __be32 **cellp);
|
||||
|
||||
/* Early flat tree scan hooks */
|
||||
|
@ -97,16 +99,14 @@ extern void unflatten_device_tree(void);
|
|||
extern void unflatten_and_copy_device_tree(void);
|
||||
extern void early_init_devtree(void *);
|
||||
extern void early_get_first_memblock_info(void *, phys_addr_t *);
|
||||
extern u64 of_flat_dt_translate_address(unsigned long node);
|
||||
extern void of_fdt_limit_memory(int limit);
|
||||
#else /* CONFIG_OF_FLATTREE */
|
||||
#else /* CONFIG_OF_EARLY_FLATTREE */
|
||||
static inline int early_init_dt_scan_chosen_stdout(void) { return -ENODEV; }
|
||||
static inline void early_init_fdt_scan_reserved_mem(void) {}
|
||||
static inline void early_init_fdt_reserve_self(void) {}
|
||||
static inline const char *of_flat_dt_get_machine_name(void) { return NULL; }
|
||||
static inline void unflatten_device_tree(void) {}
|
||||
static inline void unflatten_and_copy_device_tree(void) {}
|
||||
#endif /* CONFIG_OF_FLATTREE */
|
||||
#endif /* CONFIG_OF_EARLY_FLATTREE */
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
#endif /* _LINUX_OF_FDT_H */
|
||||
|
|
|
@ -1,14 +1,10 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* OF helpers for the GPIO API
|
||||
*
|
||||
* Copyright (c) 2007-2008 MontaVista Software, Inc.
|
||||
*
|
||||
* Author: Anton Vorontsov <avorontsov@ru.mvista.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_OF_GPIO_H
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/*
|
||||
* OF graph binding parsing helpers
|
||||
*
|
||||
|
@ -6,10 +7,6 @@
|
|||
*
|
||||
* Copyright (C) 2012 Renesas Electronics Corp.
|
||||
* Author: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of version 2 of the GNU General Public License as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
#ifndef __LINUX_OF_GRAPH_H
|
||||
#define __LINUX_OF_GRAPH_H
|
||||
|
|
|
@ -1,13 +1,9 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Definitions for building a device tree by calling into the
|
||||
* Open Firmware PROM.
|
||||
*
|
||||
* Copyright (C) 2010 Andres Salomon <dilinger@queued.net>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_OF_PDT_H
|
||||
|
|
|
@ -1,14 +1,9 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
#ifndef _LINUX_OF_PLATFORM_H
|
||||
#define _LINUX_OF_PLATFORM_H
|
||||
/*
|
||||
* Copyright (C) 2006 Benjamin Herrenschmidt, IBM Corp.
|
||||
* <benh@kernel.crashing.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version
|
||||
* 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <linux/device.h>
|
||||
|
|
Loading…
Reference in a new issue