提交 cb1f34dd 编写于 作者: I Ingo Molnar

Merge branch 'sched/urgent' into sched/core, to pick up fixes

Signed-off-by: NIngo Molnar <mingo@kernel.org>

要显示的变更太多。

To preserve performance only 1000 of 1000+ files are displayed.
...@@ -107,6 +107,7 @@ Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@ascom.ch> ...@@ -107,6 +107,7 @@ Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@ascom.ch>
Maciej W. Rozycki <macro@mips.com> <macro@imgtec.com> Maciej W. Rozycki <macro@mips.com> <macro@imgtec.com>
Marcin Nowakowski <marcin.nowakowski@mips.com> <marcin.nowakowski@imgtec.com> Marcin Nowakowski <marcin.nowakowski@mips.com> <marcin.nowakowski@imgtec.com>
Mark Brown <broonie@sirena.org.uk> Mark Brown <broonie@sirena.org.uk>
Mark Yao <markyao0591@gmail.com> <mark.yao@rock-chips.com>
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@theobroma-systems.com> Martin Kepplinger <martink@posteo.de> <martin.kepplinger@theobroma-systems.com>
Martin Kepplinger <martink@posteo.de> <martin.kepplinger@ginzinger.com> Martin Kepplinger <martink@posteo.de> <martin.kepplinger@ginzinger.com>
Matthieu CASTET <castet.matthieu@free.fr> Matthieu CASTET <castet.matthieu@free.fr>
......
...@@ -109,6 +109,7 @@ parameter is applicable:: ...@@ -109,6 +109,7 @@ parameter is applicable::
IPV6 IPv6 support is enabled. IPV6 IPv6 support is enabled.
ISAPNP ISA PnP code is enabled. ISAPNP ISA PnP code is enabled.
ISDN Appropriate ISDN support is enabled. ISDN Appropriate ISDN support is enabled.
ISOL CPU Isolation is enabled.
JOY Appropriate joystick support is enabled. JOY Appropriate joystick support is enabled.
KGDB Kernel debugger support is enabled. KGDB Kernel debugger support is enabled.
KVM Kernel Virtual Machine support is enabled. KVM Kernel Virtual Machine support is enabled.
......
...@@ -328,11 +328,15 @@ ...@@ -328,11 +328,15 @@
not play well with APC CPU idle - disable it if you have not play well with APC CPU idle - disable it if you have
APC and your system crashes randomly. APC and your system crashes randomly.
apic= [APIC,X86-32] Advanced Programmable Interrupt Controller apic= [APIC,X86] Advanced Programmable Interrupt Controller
Change the output verbosity whilst booting Change the output verbosity whilst booting
Format: { quiet (default) | verbose | debug } Format: { quiet (default) | verbose | debug }
Change the amount of debugging information output Change the amount of debugging information output
when initialising the APIC and IO-APIC components. when initialising the APIC and IO-APIC components.
For X86-32, this can also be used to specify an APIC
driver name.
Format: apic=driver_name
Examples: apic=bigsmp
apic_extnmi= [APIC,X86] External NMI delivery setting apic_extnmi= [APIC,X86] External NMI delivery setting
Format: { bsp (default) | all | none } Format: { bsp (default) | all | none }
...@@ -1737,7 +1741,7 @@ ...@@ -1737,7 +1741,7 @@
isapnp= [ISAPNP] isapnp= [ISAPNP]
Format: <RDP>,<reset>,<pci_scan>,<verbosity> Format: <RDP>,<reset>,<pci_scan>,<verbosity>
isolcpus= [KNL,SMP] Isolate a given set of CPUs from disturbance. isolcpus= [KNL,SMP,ISOL] Isolate a given set of CPUs from disturbance.
[Deprecated - use cpusets instead] [Deprecated - use cpusets instead]
Format: [flag-list,]<cpu-list> Format: [flag-list,]<cpu-list>
...@@ -2662,7 +2666,7 @@ ...@@ -2662,7 +2666,7 @@
Valid arguments: on, off Valid arguments: on, off
Default: on Default: on
nohz_full= [KNL,BOOT] nohz_full= [KNL,BOOT,SMP,ISOL]
The argument is a cpu list, as described above. The argument is a cpu list, as described above.
In kernels built with CONFIG_NO_HZ_FULL=y, set In kernels built with CONFIG_NO_HZ_FULL=y, set
the specified list of CPUs whose tick will be stopped the specified list of CPUs whose tick will be stopped
...@@ -2708,6 +2712,8 @@ ...@@ -2708,6 +2712,8 @@
steal time is computed, but won't influence scheduler steal time is computed, but won't influence scheduler
behaviour behaviour
nopti [X86-64] Disable kernel page table isolation
nolapic [X86-32,APIC] Do not enable or use the local APIC. nolapic [X86-32,APIC] Do not enable or use the local APIC.
nolapic_timer [X86-32,APIC] Do not use the local APIC timer. nolapic_timer [X86-32,APIC] Do not use the local APIC timer.
...@@ -3282,6 +3288,12 @@ ...@@ -3282,6 +3288,12 @@
pt. [PARIDE] pt. [PARIDE]
See Documentation/blockdev/paride.txt. See Documentation/blockdev/paride.txt.
pti= [X86_64]
Control user/kernel address space isolation:
on - enable
off - disable
auto - default setting
pty.legacy_count= pty.legacy_count=
[KNL] Number of legacy pty's. Overwrites compiled-in [KNL] Number of legacy pty's. Overwrites compiled-in
default number. default number.
......
...@@ -230,7 +230,7 @@ If supported by your machine this will be exposed by the WMI bus with ...@@ -230,7 +230,7 @@ If supported by your machine this will be exposed by the WMI bus with
a sysfs attribute called "force_power". a sysfs attribute called "force_power".
For example the intel-wmi-thunderbolt driver exposes this attribute in: For example the intel-wmi-thunderbolt driver exposes this attribute in:
/sys/devices/platform/PNP0C14:00/wmi_bus/wmi_bus-PNP0C14:00/86CCFD48-205E-4A77-9C48-2021CBEDE341/force_power /sys/bus/wmi/devices/86CCFD48-205E-4A77-9C48-2021CBEDE341/force_power
To force the power to on, write 1 to this attribute file. To force the power to on, write 1 to this attribute file.
To disable force power, write 0 to this attribute file. To disable force power, write 0 to this attribute file.
......
...@@ -75,3 +75,4 @@ stable kernels. ...@@ -75,3 +75,4 @@ stable kernels.
| Qualcomm Tech. | Falkor v1 | E1003 | QCOM_FALKOR_ERRATUM_1003 | | Qualcomm Tech. | Falkor v1 | E1003 | QCOM_FALKOR_ERRATUM_1003 |
| Qualcomm Tech. | Falkor v1 | E1009 | QCOM_FALKOR_ERRATUM_1009 | | Qualcomm Tech. | Falkor v1 | E1009 | QCOM_FALKOR_ERRATUM_1009 |
| Qualcomm Tech. | QDF2400 ITS | E0065 | QCOM_QDF2400_ERRATUM_0065 | | Qualcomm Tech. | QDF2400 ITS | E0065 | QCOM_QDF2400_ERRATUM_0065 |
| Qualcomm Tech. | Falkor v{1,2} | E1041 | QCOM_FALKOR_ERRATUM_1041 |
...@@ -898,6 +898,13 @@ controller implements weight and absolute bandwidth limit models for ...@@ -898,6 +898,13 @@ controller implements weight and absolute bandwidth limit models for
normal scheduling policy and absolute bandwidth allocation model for normal scheduling policy and absolute bandwidth allocation model for
realtime scheduling policy. realtime scheduling policy.
WARNING: cgroup2 doesn't yet support control of realtime processes and
the cpu controller can only be enabled when all RT processes are in
the root cgroup. Be aware that system management software may already
have placed RT processes into nonroot cgroups during the system boot
process, and these processes may need to be moved to the root cgroup
before the cpu controller can be enabled.
CPU Interface Files CPU Interface Files
~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~
......
...@@ -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>;
......
...@@ -10,7 +10,7 @@ Required properties: ...@@ -10,7 +10,7 @@ Required properties:
Example: Example:
hp03@0x77 { hp03@77 {
compatible = "hoperf,hp03"; compatible = "hoperf,hp03";
reg = <0x77>; reg = <0x77>;
xclr-gpio = <&portc 0 0x0>; xclr-gpio = <&portc 0 0x0>;
......
...@@ -15,7 +15,7 @@ Optional properties: ...@@ -15,7 +15,7 @@ Optional properties:
Example: Example:
i2c@80110000 { i2c@80110000 {
bu21013_tp@0x5c { bu21013_tp@5c {
compatible = "rohm,bu21013_tp"; compatible = "rohm,bu21013_tp";
reg = <0x5c>; reg = <0x5c>;
touch-gpio = <&gpio2 20 0x4>; touch-gpio = <&gpio2 20 0x4>;
......
...@@ -155,7 +155,7 @@ Example: ...@@ -155,7 +155,7 @@ Example:
<0x0 0xe112f000 0 0x02000>, <0x0 0xe112f000 0 0x02000>,
<0x0 0xe1140000 0 0x10000>, <0x0 0xe1140000 0 0x10000>,
<0x0 0xe1160000 0 0x10000>; <0x0 0xe1160000 0 0x10000>;
v2m0: v2m@0x8000 { v2m0: v2m@8000 {
compatible = "arm,gic-v2m-frame"; compatible = "arm,gic-v2m-frame";
msi-controller; msi-controller;
reg = <0x0 0x80000 0 0x1000>; reg = <0x0 0x80000 0 0x1000>;
...@@ -163,7 +163,7 @@ Example: ...@@ -163,7 +163,7 @@ Example:
.... ....
v2mN: v2m@0x9000 { v2mN: v2m@9000 {
compatible = "arm,gic-v2m-frame"; compatible = "arm,gic-v2m-frame";
msi-controller; msi-controller;
reg = <0x0 0x90000 0 0x1000>; reg = <0x0 0x90000 0 0x1000>;
......
...@@ -71,7 +71,7 @@ Example 2: ...@@ -71,7 +71,7 @@ Example 2:
* An interrupt generating device that is wired to a Meta external * An interrupt generating device that is wired to a Meta external
* trigger block. * trigger block.
*/ */
uart1: uart@0x02004c00 { uart1: uart@02004c00 {
// Interrupt source '5' that is level-sensitive. // Interrupt source '5' that is level-sensitive.
// Note that there are only two cells as specified in the // Note that there are only two cells as specified in the
// interrupt parent's '#interrupt-cells' property. // interrupt parent's '#interrupt-cells' property.
......
...@@ -51,7 +51,7 @@ Example 1: ...@@ -51,7 +51,7 @@ Example 1:
/* /*
* TZ1090 PDC block * TZ1090 PDC block
*/ */
pdc: pdc@0x02006000 { pdc: pdc@02006000 {
// This is an interrupt controller node. // This is an interrupt controller node.
interrupt-controller; interrupt-controller;
......
...@@ -39,7 +39,7 @@ Example: ...@@ -39,7 +39,7 @@ Example:
The following is an example from the SPEAr320 SoC dtsi file. The following is an example from the SPEAr320 SoC dtsi file.
shirq: interrupt-controller@0xb3000000 { shirq: interrupt-controller@b3000000 {
compatible = "st,spear320-shirq"; compatible = "st,spear320-shirq";
reg = <0xb3000000 0x1000>; reg = <0xb3000000 0x1000>;
interrupts = <28 29 30 1>; interrupts = <28 29 30 1>;
......
...@@ -14,7 +14,7 @@ Optional properties: ...@@ -14,7 +14,7 @@ Optional properties:
depends on the interrupt controller parent. depends on the interrupt controller parent.
Example: Example:
mbox_tx: mailbox@0x100 { mbox_tx: mailbox@100 {
compatible = "altr,mailbox-1.0"; compatible = "altr,mailbox-1.0";
reg = <0x100 0x8>; reg = <0x100 0x8>;
interrupt-parent = < &gic_0 >; interrupt-parent = < &gic_0 >;
...@@ -22,7 +22,7 @@ Example: ...@@ -22,7 +22,7 @@ Example:
#mbox-cells = <1>; #mbox-cells = <1>;
}; };
mbox_rx: mailbox@0x200 { mbox_rx: mailbox@200 {
compatible = "altr,mailbox-1.0"; compatible = "altr,mailbox-1.0";
reg = <0x200 0x8>; reg = <0x200 0x8>;
interrupt-parent = < &gic_0 >; interrupt-parent = < &gic_0 >;
...@@ -40,7 +40,7 @@ support only one channel).The equivalent "mbox-names" property value can be ...@@ -40,7 +40,7 @@ support only one channel).The equivalent "mbox-names" property value can be
used to give a name to the communication channel to be used by the client user. used to give a name to the communication channel to be used by the client user.
Example: Example:
mclient0: mclient0@0x400 { mclient0: mclient0@400 {
compatible = "client-1.0"; compatible = "client-1.0";
reg = <0x400 0x10>; reg = <0x400 0x10>;
mbox-names = "mbox-tx", "mbox-rx"; mbox-names = "mbox-tx", "mbox-rx";
......
...@@ -15,7 +15,7 @@ Optional properties: ...@@ -15,7 +15,7 @@ Optional properties:
- brcm,use-bcm-hdr: present if a BCM header precedes each frame. - brcm,use-bcm-hdr: present if a BCM header precedes each frame.
Example: Example:
pdc0: iproc-pdc0@0x612c0000 { pdc0: iproc-pdc0@612c0000 {
compatible = "brcm,iproc-pdc-mbox"; compatible = "brcm,iproc-pdc-mbox";
reg = <0 0x612c0000 0 0x445>; /* PDC FS0 regs */ reg = <0 0x612c0000 0 0x445>; /* PDC FS0 regs */
interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -17,7 +17,7 @@ Optional properties: ...@@ -17,7 +17,7 @@ Optional properties:
Example: Example:
gsc_0: gsc@0x13e00000 { gsc_0: gsc@13e00000 {
compatible = "samsung,exynos5250-gsc"; compatible = "samsung,exynos5250-gsc";
reg = <0x13e00000 0x1000>; reg = <0x13e00000 0x1000>;
interrupts = <0 85 0>; interrupts = <0 85 0>;
......
...@@ -68,7 +68,7 @@ vcodec_dec: vcodec@16000000 { ...@@ -68,7 +68,7 @@ vcodec_dec: vcodec@16000000 {
"vdec_bus_clk_src"; "vdec_bus_clk_src";
}; };
vcodec_enc: vcodec@0x18002000 { vcodec_enc: vcodec@18002000 {
compatible = "mediatek,mt8173-vcodec-enc"; compatible = "mediatek,mt8173-vcodec-enc";
reg = <0 0x18002000 0 0x1000>, /*VENC_SYS*/ reg = <0 0x18002000 0 0x1000>, /*VENC_SYS*/
<0 0x19002000 0 0x1000>; /*VENC_LT_SYS*/ <0 0x19002000 0 0x1000>; /*VENC_LT_SYS*/
......
...@@ -44,7 +44,7 @@ Device node example ...@@ -44,7 +44,7 @@ Device node example
vin0 = &vin0; vin0 = &vin0;
}; };
vin0: vin@0xe6ef0000 { vin0: vin@e6ef0000 {
compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin"; compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin";
clocks = <&mstp8_clks R8A7790_CLK_VIN0>; clocks = <&mstp8_clks R8A7790_CLK_VIN0>;
reg = <0 0xe6ef0000 0 0x1000>; reg = <0 0xe6ef0000 0 0x1000>;
......
...@@ -138,7 +138,7 @@ Example: ...@@ -138,7 +138,7 @@ Example:
}; };
/* MIPI CSI-2 bus IF sensor */ /* MIPI CSI-2 bus IF sensor */
s5c73m3: sensor@0x1a { s5c73m3: sensor@1a {
compatible = "samsung,s5c73m3"; compatible = "samsung,s5c73m3";
reg = <0x1a>; reg = <0x1a>;
vddio-supply = <...>; vddio-supply = <...>;
......
...@@ -8,7 +8,7 @@ Bindings, specific for the sh_mobile_ceu_camera.c driver: ...@@ -8,7 +8,7 @@ Bindings, specific for the sh_mobile_ceu_camera.c driver:
Example: Example:
ceu0: ceu@0xfe910000 { ceu0: ceu@fe910000 {
compatible = "renesas,sh-mobile-ceu"; compatible = "renesas,sh-mobile-ceu";
reg = <0xfe910000 0xa0>; reg = <0xfe910000 0xa0>;
interrupt-parent = <&intcs>; interrupt-parent = <&intcs>;
......
...@@ -154,7 +154,7 @@ imx074 is linked to ceu0 through the MIPI CSI-2 receiver (csi2). ceu0 has a ...@@ -154,7 +154,7 @@ imx074 is linked to ceu0 through the MIPI CSI-2 receiver (csi2). ceu0 has a
'port' node which may indicate that at any time only one of the following data 'port' node which may indicate that at any time only one of the following data
pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0. pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0.
ceu0: ceu@0xfe910000 { ceu0: ceu@fe910000 {
compatible = "renesas,sh-mobile-ceu"; compatible = "renesas,sh-mobile-ceu";
reg = <0xfe910000 0xa0>; reg = <0xfe910000 0xa0>;
interrupts = <0x880>; interrupts = <0x880>;
...@@ -193,9 +193,9 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0. ...@@ -193,9 +193,9 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0.
}; };
}; };
i2c0: i2c@0xfff20000 { i2c0: i2c@fff20000 {
... ...
ov772x_1: camera@0x21 { ov772x_1: camera@21 {
compatible = "ovti,ov772x"; compatible = "ovti,ov772x";
reg = <0x21>; reg = <0x21>;
vddio-supply = <&regulator1>; vddio-supply = <&regulator1>;
...@@ -219,7 +219,7 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0. ...@@ -219,7 +219,7 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0.
}; };
}; };
imx074: camera@0x1a { imx074: camera@1a {
compatible = "sony,imx074"; compatible = "sony,imx074";
reg = <0x1a>; reg = <0x1a>;
vddio-supply = <&regulator1>; vddio-supply = <&regulator1>;
...@@ -239,7 +239,7 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0. ...@@ -239,7 +239,7 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0.
}; };
}; };
csi2: csi2@0xffc90000 { csi2: csi2@ffc90000 {
compatible = "renesas,sh-mobile-csi2"; compatible = "renesas,sh-mobile-csi2";
reg = <0xffc90000 0x1000>; reg = <0xffc90000 0x1000>;
interrupts = <0x17a0>; interrupts = <0x17a0>;
......
...@@ -46,7 +46,7 @@ Optional properties: ...@@ -46,7 +46,7 @@ Optional properties:
Example: Example:
emif1: emif@0x4c000000 { emif1: emif@4c000000 {
compatible = "ti,emif-4d"; compatible = "ti,emif-4d";
ti,hwmods = "emif2"; ti,hwmods = "emif2";
phy-type = <1>; phy-type = <1>;
......
...@@ -13,7 +13,7 @@ Required properties: ...@@ -13,7 +13,7 @@ Required properties:
Example: Example:
devctrl: device-state-control@0x02620000 { devctrl: device-state-control@02620000 {
compatible = "ti,keystone-devctrl", "syscon"; compatible = "ti,keystone-devctrl", "syscon";
reg = <0x02620000 0x1000>; reg = <0x02620000 0x1000>;
}; };
...@@ -9,7 +9,7 @@ Required properties: ...@@ -9,7 +9,7 @@ Required properties:
- reg : Location and size of bounce buffer - reg : Location and size of bounce buffer
Example: Example:
smc@0x3404c000 { smc@3404c000 {
compatible = "brcm,bcm11351-smc", "brcm,kona-smc"; compatible = "brcm,bcm11351-smc", "brcm,kona-smc";
reg = <0x3404c000 0x400>; //1 KiB in SRAM reg = <0x3404c000 0x400>; //1 KiB in SRAM
}; };
...@@ -12,7 +12,7 @@ Refer to clocks/clock-bindings.txt for generic clock consumer properties. ...@@ -12,7 +12,7 @@ Refer to clocks/clock-bindings.txt for generic clock consumer properties.
Example: Example:
sdio2: sdio@0x3f1a0000 { sdio2: sdio@3f1a0000 {
compatible = "brcm,kona-sdhci"; compatible = "brcm,kona-sdhci";
reg = <0x3f1a0000 0x10000>; reg = <0x3f1a0000 0x10000>;
clocks = <&sdio3_clk>; clocks = <&sdio3_clk>;
......
...@@ -24,7 +24,7 @@ Optional properties: ...@@ -24,7 +24,7 @@ Optional properties:
Example: Example:
sdhci0: sdhci@0x18041000 { sdhci0: sdhci@18041000 {
compatible = "brcm,sdhci-iproc-cygnus"; compatible = "brcm,sdhci-iproc-cygnus";
reg = <0x18041000 0x100>; reg = <0x18041000 0x100>;
interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -55,7 +55,7 @@ Examples: ...@@ -55,7 +55,7 @@ Examples:
[hwmod populated DMA resources] [hwmod populated DMA resources]
mmc1: mmc@0x4809c000 { mmc1: mmc@4809c000 {
compatible = "ti,omap4-hsmmc"; compatible = "ti,omap4-hsmmc";
reg = <0x4809c000 0x400>; reg = <0x4809c000 0x400>;
ti,hwmods = "mmc1"; ti,hwmods = "mmc1";
...@@ -67,7 +67,7 @@ Examples: ...@@ -67,7 +67,7 @@ Examples:
[generic DMA request binding] [generic DMA request binding]
mmc1: mmc@0x4809c000 { mmc1: mmc@4809c000 {
compatible = "ti,omap4-hsmmc"; compatible = "ti,omap4-hsmmc";
reg = <0x4809c000 0x400>; reg = <0x4809c000 0x400>;
ti,hwmods = "mmc1"; ti,hwmods = "mmc1";
......
...@@ -82,15 +82,15 @@ gpmc: gpmc@6e000000 { ...@@ -82,15 +82,15 @@ gpmc: gpmc@6e000000 {
label = "bootloader-nor"; label = "bootloader-nor";
reg = <0 0x40000>; reg = <0 0x40000>;
}; };
partition@0x40000 { partition@40000 {
label = "params-nor"; label = "params-nor";
reg = <0x40000 0x40000>; reg = <0x40000 0x40000>;
}; };
partition@0x80000 { partition@80000 {
label = "kernel-nor"; label = "kernel-nor";
reg = <0x80000 0x200000>; reg = <0x80000 0x200000>;
}; };
partition@0x280000 { partition@280000 {
label = "filesystem-nor"; label = "filesystem-nor";
reg = <0x240000 0x7d80000>; reg = <0x240000 0x7d80000>;
}; };
......
...@@ -13,7 +13,6 @@ Required properties: ...@@ -13,7 +13,6 @@ Required properties:
at25df321a at25df321a
at25df641 at25df641
at26df081a at26df081a
en25s64
mr25h128 mr25h128
mr25h256 mr25h256
mr25h10 mr25h10
...@@ -33,7 +32,6 @@ Required properties: ...@@ -33,7 +32,6 @@ Required properties:
s25fl008k s25fl008k
s25fl064k s25fl064k
sst25vf040b sst25vf040b
sst25wf040b
m25p40 m25p40
m25p80 m25p80
m25p16 m25p16
......
...@@ -131,7 +131,7 @@ Example: ...@@ -131,7 +131,7 @@ Example:
read-only; read-only;
reg = <0x00000000 0x00400000>; reg = <0x00000000 0x00400000>;
}; };
android@0x00400000 { android@00400000 {
label = "android"; label = "android";
reg = <0x00400000 0x12c00000>; reg = <0x00400000 0x12c00000>;
}; };
......
...@@ -52,7 +52,7 @@ Optional properties: ...@@ -52,7 +52,7 @@ Optional properties:
Example: Example:
tse_sub_0_eth_tse_0: ethernet@0x1,00000000 { tse_sub_0_eth_tse_0: ethernet@1,00000000 {
compatible = "altr,tse-msgdma-1.0"; compatible = "altr,tse-msgdma-1.0";
reg = <0x00000001 0x00000000 0x00000400>, reg = <0x00000001 0x00000000 0x00000400>,
<0x00000001 0x00000460 0x00000020>, <0x00000001 0x00000460 0x00000020>,
...@@ -90,7 +90,7 @@ Example: ...@@ -90,7 +90,7 @@ Example:
}; };
}; };
tse_sub_1_eth_tse_0: ethernet@0x1,00001000 { tse_sub_1_eth_tse_0: ethernet@1,00001000 {
compatible = "altr,tse-msgdma-1.0"; compatible = "altr,tse-msgdma-1.0";
reg = <0x00000001 0x00001000 0x00000400>, reg = <0x00000001 0x00001000 0x00000400>,
<0x00000001 0x00001460 0x00000020>, <0x00000001 0x00001460 0x00000020>,
......
...@@ -18,7 +18,7 @@ Example : ...@@ -18,7 +18,7 @@ Example :
This example shows these optional properties, plus other properties This example shows these optional properties, plus other properties
required for the TI Davinci MDIO driver. required for the TI Davinci MDIO driver.
davinci_mdio: ethernet@0x5c030000 { davinci_mdio: ethernet@5c030000 {
compatible = "ti,davinci_mdio"; compatible = "ti,davinci_mdio";
reg = <0x5c030000 0x1000>; reg = <0x5c030000 0x1000>;
#address-cells = <1>; #address-cells = <1>;
......
...@@ -28,7 +28,7 @@ Required properties: ...@@ -28,7 +28,7 @@ Required properties:
Example: Example:
gmii_to_sgmii_converter: phy@0x100000240 { gmii_to_sgmii_converter: phy@100000240 {
compatible = "altr,gmii-to-sgmii-2.0"; compatible = "altr,gmii-to-sgmii-2.0";
reg = <0x00000001 0x00000240 0x00000008>, reg = <0x00000001 0x00000240 0x00000008>,
<0x00000001 0x00000200 0x00000040>; <0x00000001 0x00000200 0x00000040>;
......
...@@ -36,7 +36,7 @@ Optional properties: ...@@ -36,7 +36,7 @@ Optional properties:
Example: Example:
cpu@0x0 { cpu@0 {
device_type = "cpu"; device_type = "cpu";
compatible = "altr,nios2-1.0"; compatible = "altr,nios2-1.0";
reg = <0>; reg = <0>;
......
...@@ -25,7 +25,7 @@ Optional properties: ...@@ -25,7 +25,7 @@ Optional properties:
- bus-range: PCI bus numbers covered - bus-range: PCI bus numbers covered
Example Example
pcie_0: pcie@0xc00000000 { pcie_0: pcie@c00000000 {
compatible = "altr,pcie-root-port-1.0"; compatible = "altr,pcie-root-port-1.0";
reg = <0xc0000000 0x20000000>, reg = <0xc0000000 0x20000000>,
<0xff220000 0x00004000>; <0xff220000 0x00004000>;
......
...@@ -52,7 +52,7 @@ Additional required properties for imx7d-pcie: ...@@ -52,7 +52,7 @@ Additional required properties for imx7d-pcie:
Example: Example:
pcie@0x01000000 { pcie@01000000 {
compatible = "fsl,imx6q-pcie", "snps,dw-pcie"; compatible = "fsl,imx6q-pcie", "snps,dw-pcie";
reg = <0x01ffc000 0x04000>, reg = <0x01ffc000 0x04000>,
<0x01f00000 0x80000>; <0x01f00000 0x80000>;
......
...@@ -21,7 +21,7 @@ Optional properties: ...@@ -21,7 +21,7 @@ Optional properties:
- dma-coherent: Present if DMA operations are coherent. - dma-coherent: Present if DMA operations are coherent.
Hip05 Example (note that Hip06 is the same except compatible): Hip05 Example (note that Hip06 is the same except compatible):
pcie@0xb0080000 { pcie@b0080000 {
compatible = "hisilicon,hip05-pcie", "snps,dw-pcie"; compatible = "hisilicon,hip05-pcie", "snps,dw-pcie";
reg = <0 0xb0080000 0 0x10000>, <0x220 0x00000000 0 0x2000>; reg = <0 0xb0080000 0 0x10000>, <0x220 0x00000000 0 0x2000>;
reg-names = "rc_dbi", "config"; reg-names = "rc_dbi", "config";
......
...@@ -45,7 +45,7 @@ Optional properties: ...@@ -45,7 +45,7 @@ Optional properties:
- usb3_vbus-supply : regulator phandle for controller usb3 vbus - usb3_vbus-supply : regulator phandle for controller usb3 vbus
Example: Example:
usbphy: phy@0x01c13400 { usbphy: phy@01c13400 {
#phy-cells = <1>; #phy-cells = <1>;
compatible = "allwinner,sun4i-a10-usb-phy"; compatible = "allwinner,sun4i-a10-usb-phy";
/* phy base regs, phy1 pmu reg, phy2 pmu reg */ /* phy base regs, phy1 pmu reg, phy2 pmu reg */
......
...@@ -25,7 +25,7 @@ Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt ...@@ -25,7 +25,7 @@ Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
For example: For example:
pinmux: pinmux@0x0301d0c8 { pinmux: pinmux@0301d0c8 {
compatible = "brcm,cygnus-pinmux"; compatible = "brcm,cygnus-pinmux";
reg = <0x0301d0c8 0x1b0>; reg = <0x0301d0c8 0x1b0>;
......
...@@ -96,14 +96,14 @@ For example, pinctrl might have subnodes like the following: ...@@ -96,14 +96,14 @@ For example, pinctrl might have subnodes like the following:
For a specific board, if it wants to use sd1, For a specific board, if it wants to use sd1,
it can add the following to its board-specific .dts file. it can add the following to its board-specific .dts file.
sd1: sd@0x12340000 { sd1: sd@12340000 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sd1_pmx0>; pinctrl-0 = <&sd1_pmx0>;
} }
or or
sd1: sd@0x12340000 { sd1: sd@12340000 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sd1_pmx1>; pinctrl-0 = <&sd1_pmx1>;
} }
...@@ -41,7 +41,7 @@ For example, pinctrl might have subnodes like the following: ...@@ -41,7 +41,7 @@ For example, pinctrl might have subnodes like the following:
For a specific board, if it wants to use uart2 without hardware flow control, For a specific board, if it wants to use uart2 without hardware flow control,
it can add the following to its board-specific .dts file. it can add the following to its board-specific .dts file.
uart2: uart@0xb0070000 { uart2: uart@b0070000 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart2_noflow_pins_a>; pinctrl-0 = <&uart2_noflow_pins_a>;
} }
...@@ -136,7 +136,7 @@ Example for rk3188: ...@@ -136,7 +136,7 @@ Example for rk3188:
#size-cells = <1>; #size-cells = <1>;
ranges; ranges;
gpio0: gpio0@0x2000a000 { gpio0: gpio0@2000a000 {
compatible = "rockchip,rk3188-gpio-bank0"; compatible = "rockchip,rk3188-gpio-bank0";
reg = <0x2000a000 0x100>; reg = <0x2000a000 0x100>;
interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
...@@ -149,7 +149,7 @@ Example for rk3188: ...@@ -149,7 +149,7 @@ Example for rk3188:
#interrupt-cells = <2>; #interrupt-cells = <2>;
}; };
gpio1: gpio1@0x2003c000 { gpio1: gpio1@2003c000 {
compatible = "rockchip,gpio-bank"; compatible = "rockchip,gpio-bank";
reg = <0x2003c000 0x100>; reg = <0x2003c000 0x100>;
interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -107,7 +107,7 @@ regulators (twl_reg1 and twl_reg2), ...@@ -107,7 +107,7 @@ regulators (twl_reg1 and twl_reg2),
... ...
}; };
mmc: mmc@0x0 { mmc: mmc@0 {
... ...
... ...
vmmc-supply = <&twl_reg1>; vmmc-supply = <&twl_reg1>;
......
...@@ -12,7 +12,7 @@ Optional properties: ...@@ -12,7 +12,7 @@ Optional properties:
Example: Example:
uart@0x4000c400 { uart@4000c400 {
compatible = "energymicro,efm32-uart"; compatible = "energymicro,efm32-uart";
reg = <0x4000c400 0x400>; reg = <0x4000c400 0x400>;
interrupts = <15>; interrupts = <15>;
......
...@@ -14,7 +14,7 @@ Required properties: ...@@ -14,7 +14,7 @@ Required properties:
Example: Example:
ps20: ps2@0x01c2a000 { ps20: ps2@01c2a000 {
compatible = "allwinner,sun4i-a10-ps2"; compatible = "allwinner,sun4i-a10-ps2";
reg = <0x01c2a000 0x400>; reg = <0x01c2a000 0x400>;
interrupts = <0 62 4>; interrupts = <0 62 4>;
......
...@@ -220,7 +220,7 @@ qmss: qmss@2a40000 { ...@@ -220,7 +220,7 @@ qmss: qmss@2a40000 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
ranges; ranges;
pdsp0@0x2a10000 { pdsp0@2a10000 {
reg = <0x2a10000 0x1000>, reg = <0x2a10000 0x1000>,
<0x2a0f000 0x100>, <0x2a0f000 0x100>,
<0x2a0c000 0x3c8>, <0x2a0c000 0x3c8>,
......
...@@ -21,7 +21,7 @@ please check: ...@@ -21,7 +21,7 @@ please check:
Example: Example:
i2s: i2s@0x77600000 { i2s: i2s@77600000 {
compatible = "adi,axi-i2s-1.00.a"; compatible = "adi,axi-i2s-1.00.a";
reg = <0x77600000 0x1000>; reg = <0x77600000 0x1000>;
clocks = <&clk 15>, <&audio_clock>; clocks = <&clk 15>, <&audio_clock>;
......
...@@ -20,7 +20,7 @@ please check: ...@@ -20,7 +20,7 @@ please check:
Example: Example:
spdif: spdif@0x77400000 { spdif: spdif@77400000 {
compatible = "adi,axi-spdif-tx-1.00.a"; compatible = "adi,axi-spdif-tx-1.00.a";
reg = <0x77600000 0x1000>; reg = <0x77600000 0x1000>;
clocks = <&clk 15>, <&audio_clock>; clocks = <&clk 15>, <&audio_clock>;
......
...@@ -20,7 +20,7 @@ Optional properties: ...@@ -20,7 +20,7 @@ Optional properties:
Example: Example:
&i2c { &i2c {
ak4613: ak4613@0x10 { ak4613: ak4613@10 {
compatible = "asahi-kasei,ak4613"; compatible = "asahi-kasei,ak4613";
reg = <0x10>; reg = <0x10>;
}; };
......
...@@ -17,7 +17,7 @@ Optional properties: ...@@ -17,7 +17,7 @@ Optional properties:
Example 1: Example 1:
&i2c { &i2c {
ak4648: ak4648@0x12 { ak4648: ak4648@12 {
compatible = "asahi-kasei,ak4642"; compatible = "asahi-kasei,ak4642";
reg = <0x12>; reg = <0x12>;
}; };
......
...@@ -73,7 +73,7 @@ Example: ...@@ -73,7 +73,7 @@ Example:
compatible = "dlg,da7218"; compatible = "dlg,da7218";
reg = <0x1a>; reg = <0x1a>;
interrupt-parent = <&gpio6>; interrupt-parent = <&gpio6>;
interrupts = <11 IRQ_TYPE_LEVEL_HIGH>; interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
wakeup-source; wakeup-source;
VDD-supply = <&reg_audio>; VDD-supply = <&reg_audio>;
......
...@@ -77,7 +77,7 @@ Example: ...@@ -77,7 +77,7 @@ Example:
reg = <0x1a>; reg = <0x1a>;
interrupt-parent = <&gpio6>; interrupt-parent = <&gpio6>;
interrupts = <11 IRQ_TYPE_LEVEL_HIGH>; interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
VDD-supply = <&reg_audio>; VDD-supply = <&reg_audio>;
VDDMIC-supply = <&reg_audio>; VDDMIC-supply = <&reg_audio>;
......
...@@ -10,7 +10,7 @@ Required properties: ...@@ -10,7 +10,7 @@ Required properties:
Example: Example:
&i2c { &i2c {
max98371: max98371@0x31 { max98371: max98371@31 {
compatible = "maxim,max98371"; compatible = "maxim,max98371";
reg = <0x31>; reg = <0x31>;
}; };
......
...@@ -10,7 +10,7 @@ Required properties: ...@@ -10,7 +10,7 @@ Required properties:
Example: Example:
&i2c { &i2c {
max9867: max9867@0x18 { max9867: max9867@18 {
compatible = "maxim,max9867"; compatible = "maxim,max9867";
reg = <0x18>; reg = <0x18>;
}; };
......
...@@ -20,7 +20,7 @@ Required properties: ...@@ -20,7 +20,7 @@ Required properties:
Example: Example:
sh_fsi2: sh_fsi2@0xec230000 { sh_fsi2: sh_fsi2@ec230000 {
compatible = "renesas,sh_fsi2"; compatible = "renesas,sh_fsi2";
reg = <0xec230000 0x400>; reg = <0xec230000 0x400>;
interrupts = <0 146 0x4>; interrupts = <0 146 0x4>;
......
...@@ -33,7 +33,7 @@ Required properties on RK3288: ...@@ -33,7 +33,7 @@ Required properties on RK3288:
Example for the rk3188 SPDIF controller: Example for the rk3188 SPDIF controller:
spdif: spdif@0x1011e000 { spdif: spdif@1011e000 {
compatible = "rockchip,rk3188-spdif", "rockchip,rk3066-spdif"; compatible = "rockchip,rk3188-spdif", "rockchip,rk3066-spdif";
reg = <0x1011e000 0x2000>; reg = <0x1011e000 0x2000>;
interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -51,7 +51,7 @@ Optional properties: ...@@ -51,7 +51,7 @@ Optional properties:
Example: Example:
sti_uni_player1: sti-uni-player@0x8D81000 { sti_uni_player1: sti-uni-player@8D81000 {
compatible = "st,stih407-uni-player-hdmi"; compatible = "st,stih407-uni-player-hdmi";
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
st,syscfg = <&syscfg_core>; st,syscfg = <&syscfg_core>;
...@@ -63,7 +63,7 @@ Example: ...@@ -63,7 +63,7 @@ Example:
st,tdm-mode = <1>; st,tdm-mode = <1>;
}; };
sti_uni_player2: sti-uni-player@0x8D82000 { sti_uni_player2: sti-uni-player@8D82000 {
compatible = "st,stih407-uni-player-pcm-out"; compatible = "st,stih407-uni-player-pcm-out";
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
st,syscfg = <&syscfg_core>; st,syscfg = <&syscfg_core>;
...@@ -74,7 +74,7 @@ Example: ...@@ -74,7 +74,7 @@ Example:
dma-names = "tx"; dma-names = "tx";
}; };
sti_uni_player3: sti-uni-player@0x8D85000 { sti_uni_player3: sti-uni-player@8D85000 {
compatible = "st,stih407-uni-player-spdif"; compatible = "st,stih407-uni-player-spdif";
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
st,syscfg = <&syscfg_core>; st,syscfg = <&syscfg_core>;
...@@ -85,7 +85,7 @@ Example: ...@@ -85,7 +85,7 @@ Example:
dma-names = "tx"; dma-names = "tx";
}; };
sti_uni_reader1: sti-uni-reader@0x8D84000 { sti_uni_reader1: sti-uni-reader@8D84000 {
compatible = "st,stih407-uni-reader-hdmi"; compatible = "st,stih407-uni-reader-hdmi";
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
st,syscfg = <&syscfg_core>; st,syscfg = <&syscfg_core>;
......
...@@ -19,7 +19,7 @@ Recommended properties : ...@@ -19,7 +19,7 @@ Recommended properties :
Example: Example:
spi1: spi@0x4000c400 { /* USART1 */ spi1: spi@4000c400 { /* USART1 */
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
compatible = "energymicro,efm32-spi"; compatible = "energymicro,efm32-spi";
......
...@@ -12,24 +12,30 @@ Required properties: ...@@ -12,24 +12,30 @@ Required properties:
- "fsl,imx53-ecspi" for SPI compatible with the one integrated on i.MX53 and later Soc - "fsl,imx53-ecspi" for SPI compatible with the one integrated on i.MX53 and later Soc
- reg : Offset and length of the register set for the device - reg : Offset and length of the register set for the device
- interrupts : Should contain CSPI/eCSPI interrupt - interrupts : Should contain CSPI/eCSPI interrupt
- cs-gpios : Specifies the gpio pins to be used for chipselects.
- clocks : Clock specifiers for both ipg and per clocks. - clocks : Clock specifiers for both ipg and per clocks.
- clock-names : Clock names should include both "ipg" and "per" - clock-names : Clock names should include both "ipg" and "per"
See the clock consumer binding, See the clock consumer binding,
Documentation/devicetree/bindings/clock/clock-bindings.txt Documentation/devicetree/bindings/clock/clock-bindings.txt
- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
Documentation/devicetree/bindings/dma/dma.txt
- dma-names: DMA request names should include "tx" and "rx" if present.
Obsolete properties: Recommended properties:
- fsl,spi-num-chipselects : Contains the number of the chipselect - cs-gpios : GPIOs to use as chip selects, see spi-bus.txt. While the native chip
select lines can be used, they appear to always generate a pulse between each
word of a transfer. Most use cases will require GPIO based chip selects to
generate a valid transaction.
Optional properties: Optional properties:
- num-cs : Number of total chip selects, see spi-bus.txt.
- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
Documentation/devicetree/bindings/dma/dma.txt.
- dma-names: DMA request names, if present, should include "tx" and "rx".
- fsl,spi-rdy-drctl: Integer, representing the value of DRCTL, the register - fsl,spi-rdy-drctl: Integer, representing the value of DRCTL, the register
controlling the SPI_READY handling. Note that to enable the DRCTL consideration, controlling the SPI_READY handling. Note that to enable the DRCTL consideration,
the SPI_READY mode-flag needs to be set too. the SPI_READY mode-flag needs to be set too.
Valid values are: 0 (disabled), 1 (edge-triggered burst) and 2 (level-triggered burst). Valid values are: 0 (disabled), 1 (edge-triggered burst) and 2 (level-triggered burst).
Obsolete properties:
- fsl,spi-num-chipselects : Contains the number of the chipselect
Example: Example:
ecspi@70010000 { ecspi@70010000 {
......
...@@ -239,7 +239,7 @@ cpus { ...@@ -239,7 +239,7 @@ cpus {
* A simple fan controller which supports 10 speeds of operation * A simple fan controller which supports 10 speeds of operation
* (represented as 0-9). * (represented as 0-9).
*/ */
fan0: fan@0x48 { fan0: fan@48 {
... ...
cooling-min-level = <0>; cooling-min-level = <0>;
cooling-max-level = <9>; cooling-max-level = <9>;
...@@ -252,7 +252,7 @@ ocp { ...@@ -252,7 +252,7 @@ ocp {
/* /*
* A simple IC with a single bandgap temperature sensor. * A simple IC with a single bandgap temperature sensor.
*/ */
bandgap0: bandgap@0x0000ED00 { bandgap0: bandgap@0000ED00 {
... ...
#thermal-sensor-cells = <0>; #thermal-sensor-cells = <0>;
}; };
...@@ -330,7 +330,7 @@ ocp { ...@@ -330,7 +330,7 @@ ocp {
/* /*
* A simple IC with several bandgap temperature sensors. * A simple IC with several bandgap temperature sensors.
*/ */
bandgap0: bandgap@0x0000ED00 { bandgap0: bandgap@0000ED00 {
... ...
#thermal-sensor-cells = <1>; #thermal-sensor-cells = <1>;
}; };
...@@ -447,7 +447,7 @@ one thermal zone. ...@@ -447,7 +447,7 @@ one thermal zone.
/* /*
* A simple IC with a single temperature sensor. * A simple IC with a single temperature sensor.
*/ */
adc: sensor@0x49 { adc: sensor@49 {
... ...
#thermal-sensor-cells = <0>; #thermal-sensor-cells = <0>;
}; };
...@@ -458,7 +458,7 @@ ocp { ...@@ -458,7 +458,7 @@ ocp {
/* /*
* A simple IC with a single bandgap temperature sensor. * A simple IC with a single bandgap temperature sensor.
*/ */
bandgap0: bandgap@0x0000ED00 { bandgap0: bandgap@0000ED00 {
... ...
#thermal-sensor-cells = <0>; #thermal-sensor-cells = <0>;
}; };
...@@ -516,7 +516,7 @@ with many sensors and many cooling devices. ...@@ -516,7 +516,7 @@ with many sensors and many cooling devices.
/* /*
* An IC with several temperature sensor. * An IC with several temperature sensor.
*/ */
adc_dummy: sensor@0x50 { adc_dummy: sensor@50 {
... ...
#thermal-sensor-cells = <1>; /* sensor internal ID */ #thermal-sensor-cells = <1>; /* sensor internal ID */
}; };
......
...@@ -32,7 +32,7 @@ Optional properties: ...@@ -32,7 +32,7 @@ Optional properties:
Example: Example:
ufsphy1: ufsphy@0xfc597000 { ufsphy1: ufsphy@fc597000 {
compatible = "qcom,ufs-phy-qmp-20nm"; compatible = "qcom,ufs-phy-qmp-20nm";
reg = <0xfc597000 0x800>; reg = <0xfc597000 0x800>;
reg-names = "phy_mem"; reg-names = "phy_mem";
...@@ -53,7 +53,7 @@ Example: ...@@ -53,7 +53,7 @@ Example:
<&clock_gcc clk_gcc_ufs_rx_cfg_clk>; <&clock_gcc clk_gcc_ufs_rx_cfg_clk>;
}; };
ufshc@0xfc598000 { ufshc@fc598000 {
... ...
phys = <&ufsphy1>; phys = <&ufsphy1>;
phy-names = "ufsphy"; phy-names = "ufsphy";
......
...@@ -46,7 +46,7 @@ Note: If above properties are not defined it can be assumed that the supply ...@@ -46,7 +46,7 @@ Note: If above properties are not defined it can be assumed that the supply
regulators or clocks are always on. regulators or clocks are always on.
Example: Example:
ufshc@0xfc598000 { ufshc@fc598000 {
compatible = "jedec,ufs-1.1"; compatible = "jedec,ufs-1.1";
reg = <0xfc598000 0x800>; reg = <0xfc598000 0x800>;
interrupts = <0 28 0>; interrupts = <0 28 0>;
......
...@@ -95,6 +95,7 @@ usb: usb@47400000 { ...@@ -95,6 +95,7 @@ usb: usb@47400000 {
reg = <0x47401300 0x100>; reg = <0x47401300 0x100>;
reg-names = "phy"; reg-names = "phy";
ti,ctrl_mod = <&ctrl_mod>; ti,ctrl_mod = <&ctrl_mod>;
#phy-cells = <0>;
}; };
usb0: usb@47401000 { usb0: usb@47401000 {
...@@ -141,6 +142,7 @@ usb: usb@47400000 { ...@@ -141,6 +142,7 @@ usb: usb@47400000 {
reg = <0x47401b00 0x100>; reg = <0x47401b00 0x100>;
reg-names = "phy"; reg-names = "phy";
ti,ctrl_mod = <&ctrl_mod>; ti,ctrl_mod = <&ctrl_mod>;
#phy-cells = <0>;
}; };
usb1: usb@47401800 { usb1: usb@47401800 {
......
...@@ -22,7 +22,7 @@ See: Documentation/devicetree/bindings/reset/reset.txt ...@@ -22,7 +22,7 @@ See: Documentation/devicetree/bindings/reset/reset.txt
Example: Example:
ehci1: usb@0xfe203e00 { ehci1: usb@fe203e00 {
compatible = "st,st-ehci-300x"; compatible = "st,st-ehci-300x";
reg = <0xfe203e00 0x100>; reg = <0xfe203e00 0x100>;
interrupts = <GIC_SPI 148 IRQ_TYPE_NONE>; interrupts = <GIC_SPI 148 IRQ_TYPE_NONE>;
......
...@@ -20,7 +20,7 @@ See: Documentation/devicetree/bindings/reset/reset.txt ...@@ -20,7 +20,7 @@ See: Documentation/devicetree/bindings/reset/reset.txt
Example: Example:
ohci0: usb@0xfe1ffc00 { ohci0: usb@fe1ffc00 {
compatible = "st,st-ohci-300x"; compatible = "st,st-ohci-300x";
reg = <0xfe1ffc00 0x100>; reg = <0xfe1ffc00 0x100>;
interrupts = <GIC_SPI 149 IRQ_TYPE_NONE>; interrupts = <GIC_SPI 149 IRQ_TYPE_NONE>;
......
...@@ -6,7 +6,7 @@ reg: Register address and length for watchdog registers ...@@ -6,7 +6,7 @@ reg: Register address and length for watchdog registers
Example: Example:
watchdog: jz4740-watchdog@0x10002000 { watchdog: jz4740-watchdog@10002000 {
compatible = "ingenic,jz4740-watchdog"; compatible = "ingenic,jz4740-watchdog";
reg = <0x10002000 0x100>; reg = <0x10002000 0x100>;
}; };
...@@ -156,6 +156,40 @@ handle it in two different ways: ...@@ -156,6 +156,40 @@ handle it in two different ways:
root of the overlay. Finally the directory is moved to the new root of the overlay. Finally the directory is moved to the new
location. location.
There are several ways to tune the "redirect_dir" feature.
Kernel config options:
- OVERLAY_FS_REDIRECT_DIR:
If this is enabled, then redirect_dir is turned on by default.
- OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW:
If this is enabled, then redirects are always followed by default. Enabling
this results in a less secure configuration. Enable this option only when
worried about backward compatibility with kernels that have the redirect_dir
feature and follow redirects even if turned off.
Module options (can also be changed through /sys/module/overlay/parameters/*):
- "redirect_dir=BOOL":
See OVERLAY_FS_REDIRECT_DIR kernel config option above.
- "redirect_always_follow=BOOL":
See OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW kernel config option above.
- "redirect_max=NUM":
The maximum number of bytes in an absolute redirect (default is 256).
Mount options:
- "redirect_dir=on":
Redirects are enabled.
- "redirect_dir=follow":
Redirects are not created, but followed.
- "redirect_dir=off":
Redirects are not created and only followed if "redirect_always_follow"
feature is enabled in the kernel/module config.
- "redirect_dir=nofollow":
Redirects are not created and not followed (equivalent to "redirect_dir=off"
if "redirect_always_follow" feature is not enabled).
Non-directories Non-directories
--------------- ---------------
......
...@@ -341,10 +341,7 @@ GuC ...@@ -341,10 +341,7 @@ GuC
GuC-specific firmware loader GuC-specific firmware loader
---------------------------- ----------------------------
.. kernel-doc:: drivers/gpu/drm/i915/intel_guc_loader.c .. kernel-doc:: drivers/gpu/drm/i915/intel_guc_fw.c
:doc: GuC-specific firmware loader
.. kernel-doc:: drivers/gpu/drm/i915/intel_guc_loader.c
:internal: :internal:
GuC-based command submission GuC-based command submission
......
此差异已折叠。
****************
Frontend drivers
****************
Frontend attach headers
***********************
.. Keep it on alphabetic order
.. kernel-doc:: drivers/media/dvb-frontends/a8293.h
.. kernel-doc:: drivers/media/dvb-frontends/af9013.h
.. kernel-doc:: drivers/media/dvb-frontends/ascot2e.h
.. kernel-doc:: drivers/media/dvb-frontends/cxd2820r.h
.. kernel-doc:: drivers/media/dvb-frontends/drxk.h
.. kernel-doc:: drivers/media/dvb-frontends/dvb-pll.h
.. kernel-doc:: drivers/media/dvb-frontends/helene.h
.. kernel-doc:: drivers/media/dvb-frontends/horus3a.h
.. kernel-doc:: drivers/media/dvb-frontends/ix2505v.h
.. kernel-doc:: drivers/media/dvb-frontends/m88ds3103.h
.. kernel-doc:: drivers/media/dvb-frontends/mb86a20s.h
.. kernel-doc:: drivers/media/dvb-frontends/mn88472.h
.. kernel-doc:: drivers/media/dvb-frontends/rtl2830.h
.. kernel-doc:: drivers/media/dvb-frontends/rtl2832.h
.. kernel-doc:: drivers/media/dvb-frontends/rtl2832_sdr.h
.. kernel-doc:: drivers/media/dvb-frontends/stb6000.h
.. kernel-doc:: drivers/media/dvb-frontends/tda10071.h
.. kernel-doc:: drivers/media/dvb-frontends/tda826x.h
.. kernel-doc:: drivers/media/dvb-frontends/zd1301_demod.h
.. kernel-doc:: drivers/media/dvb-frontends/zl10036.h
...@@ -41,4 +41,5 @@ For more details see the file COPYING in the source distribution of Linux. ...@@ -41,4 +41,5 @@ For more details see the file COPYING in the source distribution of Linux.
technisat technisat
ttusb-dec ttusb-dec
udev udev
frontends
contributors contributors
...@@ -2901,14 +2901,19 @@ userspace buffer and its length: ...@@ -2901,14 +2901,19 @@ userspace buffer and its length:
struct kvm_s390_irq_state { struct kvm_s390_irq_state {
__u64 buf; __u64 buf;
__u32 flags; __u32 flags; /* will stay unused for compatibility reasons */
__u32 len; __u32 len;
__u32 reserved[4]; __u32 reserved[4]; /* will stay unused for compatibility reasons */
}; };
Userspace passes in the above struct and for each pending interrupt a Userspace passes in the above struct and for each pending interrupt a
struct kvm_s390_irq is copied to the provided buffer. struct kvm_s390_irq is copied to the provided buffer.
The structure contains a flags and a reserved field for future extensions. As
the kernel never checked for flags == 0 and QEMU never pre-zeroed flags and
reserved, these fields can not be used in the future without breaking
compatibility.
If -ENOBUFS is returned the buffer provided was too small and userspace If -ENOBUFS is returned the buffer provided was too small and userspace
may retry with a bigger buffer. may retry with a bigger buffer.
...@@ -2932,10 +2937,14 @@ containing a struct kvm_s390_irq_state: ...@@ -2932,10 +2937,14 @@ containing a struct kvm_s390_irq_state:
struct kvm_s390_irq_state { struct kvm_s390_irq_state {
__u64 buf; __u64 buf;
__u32 flags; /* will stay unused for compatibility reasons */
__u32 len; __u32 len;
__u32 pad; __u32 reserved[4]; /* will stay unused for compatibility reasons */
}; };
The restrictions for flags and reserved apply as well.
(see KVM_S390_GET_IRQ_STATE)
The userspace memory referenced by buf contains a struct kvm_s390_irq The userspace memory referenced by buf contains a struct kvm_s390_irq
for each interrupt to be injected into the guest. for each interrupt to be injected into the guest.
If one of the interrupts could not be injected for some reason the If one of the interrupts could not be injected for some reason the
......
...@@ -98,5 +98,25 @@ request is made for a page in an old zpool, it is uncompressed using its ...@@ -98,5 +98,25 @@ request is made for a page in an old zpool, it is uncompressed using its
original compressor. Once all pages are removed from an old zpool, the zpool original compressor. Once all pages are removed from an old zpool, the zpool
and its compressor are freed. and its compressor are freed.
Some of the pages in zswap are same-value filled pages (i.e. contents of the
page have same value or repetitive pattern). These pages include zero-filled
pages and they are handled differently. During store operation, a page is
checked if it is a same-value filled page before compressing it. If true, the
compressed length of the page is set to zero and the pattern or same-filled
value is stored.
Same-value filled pages identification feature is enabled by default and can be
disabled at boot time by setting the "same_filled_pages_enabled" attribute to 0,
e.g. zswap.same_filled_pages_enabled=0. It can also be enabled and disabled at
runtime using the sysfs "same_filled_pages_enabled" attribute, e.g.
echo 1 > /sys/module/zswap/parameters/same_filled_pages_enabled
When zswap same-filled page identification is disabled at runtime, it will stop
checking for the same-value filled pages during store operation. However, the
existing pages which are marked as same-value filled pages remain stored
unchanged in zswap until they are either loaded or invalidated.
A debugfs interface is provided for various statistic about pool size, number A debugfs interface is provided for various statistic about pool size, number
of pages stored, and various counters for the reasons pages are rejected. of pages stored, same-value filled pages and various counters for the reasons
pages are rejected.
<previous description obsolete, deleted>
Virtual memory map with 4 level page tables: Virtual memory map with 4 level page tables:
0000000000000000 - 00007fffffffffff (=47 bits) user space, different per mm 0000000000000000 - 00007fffffffffff (=47 bits) user space, different per mm
...@@ -14,13 +12,17 @@ ffffea0000000000 - ffffeaffffffffff (=40 bits) virtual memory map (1TB) ...@@ -14,13 +12,17 @@ ffffea0000000000 - ffffeaffffffffff (=40 bits) virtual memory map (1TB)
... unused hole ... ... unused hole ...
ffffec0000000000 - fffffbffffffffff (=44 bits) kasan shadow memory (16TB) ffffec0000000000 - fffffbffffffffff (=44 bits) kasan shadow memory (16TB)
... unused hole ... ... unused hole ...
vaddr_end for KASLR
fffffe0000000000 - fffffe7fffffffff (=39 bits) cpu_entry_area mapping
fffffe8000000000 - fffffeffffffffff (=39 bits) LDT remap for PTI
ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks
... unused hole ... ... unused hole ...
ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space
... unused hole ... ... unused hole ...
ffffffff80000000 - ffffffff9fffffff (=512 MB) kernel text mapping, from phys 0 ffffffff80000000 - ffffffff9fffffff (=512 MB) kernel text mapping, from phys 0
ffffffffa0000000 - ffffffffff5fffff (=1526 MB) module mapping space (variable) ffffffffa0000000 - [fixmap start] (~1526 MB) module mapping space (variable)
ffffffffff600000 - ffffffffffdfffff (=8 MB) vsyscalls [fixmap start] - ffffffffff5fffff kernel-internal fixmap range
ffffffffff600000 - ffffffffff600fff (=4 kB) legacy vsyscall ABI
ffffffffffe00000 - ffffffffffffffff (=2 MB) unused hole ffffffffffe00000 - ffffffffffffffff (=2 MB) unused hole
Virtual memory map with 5 level page tables: Virtual memory map with 5 level page tables:
...@@ -29,26 +31,31 @@ Virtual memory map with 5 level page tables: ...@@ -29,26 +31,31 @@ Virtual memory map with 5 level page tables:
hole caused by [56:63] sign extension hole caused by [56:63] sign extension
ff00000000000000 - ff0fffffffffffff (=52 bits) guard hole, reserved for hypervisor ff00000000000000 - ff0fffffffffffff (=52 bits) guard hole, reserved for hypervisor
ff10000000000000 - ff8fffffffffffff (=55 bits) direct mapping of all phys. memory ff10000000000000 - ff8fffffffffffff (=55 bits) direct mapping of all phys. memory
ff90000000000000 - ff91ffffffffffff (=49 bits) hole ff90000000000000 - ff9fffffffffffff (=52 bits) LDT remap for PTI
ff92000000000000 - ffd1ffffffffffff (=54 bits) vmalloc/ioremap space ffa0000000000000 - ffd1ffffffffffff (=54 bits) vmalloc/ioremap space (12800 TB)
ffd2000000000000 - ffd3ffffffffffff (=49 bits) hole ffd2000000000000 - ffd3ffffffffffff (=49 bits) hole
ffd4000000000000 - ffd5ffffffffffff (=49 bits) virtual memory map (512TB) ffd4000000000000 - ffd5ffffffffffff (=49 bits) virtual memory map (512TB)
... unused hole ... ... unused hole ...
ffdf000000000000 - fffffc0000000000 (=53 bits) kasan shadow memory (8PB) ffdf000000000000 - fffffc0000000000 (=53 bits) kasan shadow memory (8PB)
... unused hole ...
vaddr_end for KASLR
fffffe0000000000 - fffffe7fffffffff (=39 bits) cpu_entry_area mapping
... unused hole ... ... unused hole ...
ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks ffffff0000000000 - ffffff7fffffffff (=39 bits) %esp fixup stacks
... unused hole ... ... unused hole ...
ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space ffffffef00000000 - fffffffeffffffff (=64 GB) EFI region mapping space
... unused hole ... ... unused hole ...
ffffffff80000000 - ffffffff9fffffff (=512 MB) kernel text mapping, from phys 0 ffffffff80000000 - ffffffff9fffffff (=512 MB) kernel text mapping, from phys 0
ffffffffa0000000 - ffffffffff5fffff (=1526 MB) module mapping space ffffffffa0000000 - fffffffffeffffff (1520 MB) module mapping space
ffffffffff600000 - ffffffffffdfffff (=8 MB) vsyscalls [fixmap start] - ffffffffff5fffff kernel-internal fixmap range
ffffffffff600000 - ffffffffff600fff (=4 kB) legacy vsyscall ABI
ffffffffffe00000 - ffffffffffffffff (=2 MB) unused hole ffffffffffe00000 - ffffffffffffffff (=2 MB) unused hole
Architecture defines a 64-bit virtual address. Implementations can support Architecture defines a 64-bit virtual address. Implementations can support
less. Currently supported are 48- and 57-bit virtual addresses. Bits 63 less. Currently supported are 48- and 57-bit virtual addresses. Bits 63
through to the most-significant implemented bit are set to either all ones through to the most-significant implemented bit are sign extended.
or all zero. This causes hole between user space and kernel addresses. This causes hole between user space and kernel addresses if you interpret them
as unsigned.
The direct mapping covers all memory in the system up to the highest The direct mapping covers all memory in the system up to the highest
memory address (this means in some cases it can also include PCI memory memory address (this means in some cases it can also include PCI memory
...@@ -58,19 +65,15 @@ vmalloc space is lazily synchronized into the different PML4/PML5 pages of ...@@ -58,19 +65,15 @@ vmalloc space is lazily synchronized into the different PML4/PML5 pages of
the processes using the page fault handler, with init_top_pgt as the processes using the page fault handler, with init_top_pgt as
reference. reference.
Current X86-64 implementations support up to 46 bits of address space (64 TB),
which is our current limit. This expands into MBZ space in the page tables.
We map EFI runtime services in the 'efi_pgd' PGD in a 64Gb large virtual We map EFI runtime services in the 'efi_pgd' PGD in a 64Gb large virtual
memory window (this size is arbitrary, it can be raised later if needed). memory window (this size is arbitrary, it can be raised later if needed).
The mappings are not part of any other kernel PGD and are only available The mappings are not part of any other kernel PGD and are only available
during EFI runtime calls. during EFI runtime calls.
The module mapping space size changes based on the CONFIG requirements for the
following fixmap section.
Note that if CONFIG_RANDOMIZE_MEMORY is enabled, the direct mapping of all Note that if CONFIG_RANDOMIZE_MEMORY is enabled, the direct mapping of all
physical memory, vmalloc/ioremap space and virtual memory map are randomized. physical memory, vmalloc/ioremap space and virtual memory map are randomized.
Their order is preserved but their base will be offset early at boot time. Their order is preserved but their base will be offset early at boot time.
-Andi Kleen, Jul 2004 Be very careful vs. KASLR when changing anything here. The KASLR address
range must not overlap with anything except the KASAN shadow area, which is
correct as KASAN disables KASLR.
...@@ -2047,7 +2047,7 @@ F: arch/arm/boot/dts/uniphier* ...@@ -2047,7 +2047,7 @@ F: arch/arm/boot/dts/uniphier*
F: arch/arm/include/asm/hardware/cache-uniphier.h F: arch/arm/include/asm/hardware/cache-uniphier.h
F: arch/arm/mach-uniphier/ F: arch/arm/mach-uniphier/
F: arch/arm/mm/cache-uniphier.c F: arch/arm/mm/cache-uniphier.c
F: arch/arm64/boot/dts/socionext/ F: arch/arm64/boot/dts/socionext/uniphier*
F: drivers/bus/uniphier-system-bus.c F: drivers/bus/uniphier-system-bus.c
F: drivers/clk/uniphier/ F: drivers/clk/uniphier/
F: drivers/gpio/gpio-uniphier.c F: drivers/gpio/gpio-uniphier.c
...@@ -2621,24 +2621,22 @@ F: fs/bfs/ ...@@ -2621,24 +2621,22 @@ F: fs/bfs/
F: include/uapi/linux/bfs_fs.h F: include/uapi/linux/bfs_fs.h
BLACKFIN ARCHITECTURE BLACKFIN ARCHITECTURE
M: Steven Miao <realmz6@gmail.com>
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
T: git git://git.code.sf.net/p/adi-linux/code T: git git://git.code.sf.net/p/adi-linux/code
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: arch/blackfin/ F: arch/blackfin/
BLACKFIN EMAC DRIVER BLACKFIN EMAC DRIVER
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: drivers/net/ethernet/adi/ F: drivers/net/ethernet/adi/
BLACKFIN MEDIA DRIVER BLACKFIN MEDIA DRIVER
M: Scott Jiang <scott.jiang.linux@gmail.com>
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org/ W: http://blackfin.uclinux.org/
S: Supported S: Orphan
F: drivers/media/platform/blackfin/ F: drivers/media/platform/blackfin/
F: drivers/media/i2c/adv7183* F: drivers/media/i2c/adv7183*
F: drivers/media/i2c/vs6624* F: drivers/media/i2c/vs6624*
...@@ -2646,25 +2644,25 @@ F: drivers/media/i2c/vs6624* ...@@ -2646,25 +2644,25 @@ F: drivers/media/i2c/vs6624*
BLACKFIN RTC DRIVER BLACKFIN RTC DRIVER
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: drivers/rtc/rtc-bfin.c F: drivers/rtc/rtc-bfin.c
BLACKFIN SDH DRIVER BLACKFIN SDH DRIVER
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: drivers/mmc/host/bfin_sdh.c F: drivers/mmc/host/bfin_sdh.c
BLACKFIN SERIAL DRIVER BLACKFIN SERIAL DRIVER
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: drivers/tty/serial/bfin_uart.c F: drivers/tty/serial/bfin_uart.c
BLACKFIN WATCHDOG DRIVER BLACKFIN WATCHDOG DRIVER
L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers) L: adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
W: http://blackfin.uclinux.org W: http://blackfin.uclinux.org
S: Supported S: Orphan
F: drivers/watchdog/bfin_wdt.c F: drivers/watchdog/bfin_wdt.c
BLINKM RGB LED DRIVER BLINKM RGB LED DRIVER
...@@ -5151,15 +5149,15 @@ F: sound/usb/misc/ua101.c ...@@ -5151,15 +5149,15 @@ F: sound/usb/misc/ua101.c
EFI TEST DRIVER EFI TEST DRIVER
L: linux-efi@vger.kernel.org L: linux-efi@vger.kernel.org
M: Ivan Hu <ivan.hu@canonical.com> M: Ivan Hu <ivan.hu@canonical.com>
M: Matt Fleming <matt@codeblueprint.co.uk> M: Ard Biesheuvel <ard.biesheuvel@linaro.org>
S: Maintained S: Maintained
F: drivers/firmware/efi/test/ F: drivers/firmware/efi/test/
EFI VARIABLE FILESYSTEM EFI VARIABLE FILESYSTEM
M: Matthew Garrett <matthew.garrett@nebula.com> M: Matthew Garrett <matthew.garrett@nebula.com>
M: Jeremy Kerr <jk@ozlabs.org> M: Jeremy Kerr <jk@ozlabs.org>
M: Matt Fleming <matt@codeblueprint.co.uk> M: Ard Biesheuvel <ard.biesheuvel@linaro.org>
T: git git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git
L: linux-efi@vger.kernel.org L: linux-efi@vger.kernel.org
S: Maintained S: Maintained
F: fs/efivarfs/ F: fs/efivarfs/
...@@ -5320,7 +5318,6 @@ S: Supported ...@@ -5320,7 +5318,6 @@ S: Supported
F: security/integrity/evm/ F: security/integrity/evm/
EXTENSIBLE FIRMWARE INTERFACE (EFI) EXTENSIBLE FIRMWARE INTERFACE (EFI)
M: Matt Fleming <matt@codeblueprint.co.uk>
M: Ard Biesheuvel <ard.biesheuvel@linaro.org> M: Ard Biesheuvel <ard.biesheuvel@linaro.org>
L: linux-efi@vger.kernel.org L: linux-efi@vger.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git
...@@ -5431,7 +5428,7 @@ F: drivers/media/tuners/fc2580* ...@@ -5431,7 +5428,7 @@ F: drivers/media/tuners/fc2580*
FCOE SUBSYSTEM (libfc, libfcoe, fcoe) FCOE SUBSYSTEM (libfc, libfcoe, fcoe)
M: Johannes Thumshirn <jth@kernel.org> M: Johannes Thumshirn <jth@kernel.org>
L: fcoe-devel@open-fcoe.org L: linux-scsi@vger.kernel.org
W: www.Open-FCoE.org W: www.Open-FCoE.org
S: Supported S: Supported
F: drivers/scsi/libfc/ F: drivers/scsi/libfc/
...@@ -7767,6 +7764,7 @@ F: security/keys/ ...@@ -7767,6 +7764,7 @@ F: security/keys/
KGDB / KDB /debug_core KGDB / KDB /debug_core
M: Jason Wessel <jason.wessel@windriver.com> M: Jason Wessel <jason.wessel@windriver.com>
M: Daniel Thompson <daniel.thompson@linaro.org>
W: http://kgdb.wiki.kernel.org/ W: http://kgdb.wiki.kernel.org/
L: kgdb-bugreport@lists.sourceforge.net L: kgdb-bugreport@lists.sourceforge.net
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb.git
...@@ -12642,6 +12640,14 @@ S: Maintained ...@@ -12642,6 +12640,14 @@ S: Maintained
F: drivers/ssb/ F: drivers/ssb/
F: include/linux/ssb/ F: include/linux/ssb/
SONY IMX274 SENSOR DRIVER
M: Leon Luo <leonl@leopardimaging.com>
L: linux-media@vger.kernel.org
T: git git://linuxtv.org/media_tree.git
S: Maintained
F: drivers/media/i2c/imx274.c
F: Documentation/devicetree/bindings/media/i2c/imx274.txt
SONY MEMORYSTICK CARD SUPPORT SONY MEMORYSTICK CARD SUPPORT
M: Alex Dubov <oakad@yahoo.com> M: Alex Dubov <oakad@yahoo.com>
W: http://tifmxx.berlios.de/ W: http://tifmxx.berlios.de/
...@@ -13108,6 +13114,7 @@ F: drivers/dma/dw/ ...@@ -13108,6 +13114,7 @@ F: drivers/dma/dw/
SYNOPSYS DESIGNWARE ENTERPRISE ETHERNET DRIVER SYNOPSYS DESIGNWARE ENTERPRISE ETHERNET DRIVER
M: Jie Deng <jiedeng@synopsys.com> M: Jie Deng <jiedeng@synopsys.com>
M: Jose Abreu <Jose.Abreu@synopsys.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
F: drivers/net/ethernet/synopsys/ F: drivers/net/ethernet/synopsys/
...@@ -13483,6 +13490,7 @@ M: Mika Westerberg <mika.westerberg@linux.intel.com> ...@@ -13483,6 +13490,7 @@ M: Mika Westerberg <mika.westerberg@linux.intel.com>
M: Yehezkel Bernat <yehezkel.bernat@intel.com> M: Yehezkel Bernat <yehezkel.bernat@intel.com>
T: git git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git
S: Maintained S: Maintained
F: Documentation/admin-guide/thunderbolt.rst
F: drivers/thunderbolt/ F: drivers/thunderbolt/
F: include/linux/thunderbolt.h F: include/linux/thunderbolt.h
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
VERSION = 4 VERSION = 4
PATCHLEVEL = 15 PATCHLEVEL = 15
SUBLEVEL = 0 SUBLEVEL = 0
EXTRAVERSION = -rc2 EXTRAVERSION = -rc6
NAME = Fearless Coyote NAME = Fearless Coyote
# *DOCUMENTATION* # *DOCUMENTATION*
...@@ -789,6 +789,9 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-sign) ...@@ -789,6 +789,9 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-sign)
# disable invalid "can't wrap" optimizations for signed / pointers # disable invalid "can't wrap" optimizations for signed / pointers
KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow) KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow)
# Make sure -fstack-check isn't enabled (like gentoo apparently did)
KBUILD_CFLAGS += $(call cc-option,-fno-stack-check,)
# conserve stack if available # conserve stack if available
KBUILD_CFLAGS += $(call cc-option,-fconserve-stack) KBUILD_CFLAGS += $(call cc-option,-fconserve-stack)
......
# UAPI Header export list # UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm include include/uapi/asm-generic/Kbuild.asm
generic-y += bpf_perf_event.h
...@@ -3,6 +3,7 @@ include include/uapi/asm-generic/Kbuild.asm ...@@ -3,6 +3,7 @@ include include/uapi/asm-generic/Kbuild.asm
generic-y += auxvec.h generic-y += auxvec.h
generic-y += bitsperlong.h generic-y += bitsperlong.h
generic-y += bpf_perf_event.h
generic-y += errno.h generic-y += errno.h
generic-y += fcntl.h generic-y += fcntl.h
generic-y += ioctl.h generic-y += ioctl.h
......
...@@ -630,6 +630,7 @@ ...@@ -630,6 +630,7 @@
reg-names = "phy"; reg-names = "phy";
status = "disabled"; status = "disabled";
ti,ctrl_mod = <&usb_ctrl_mod>; ti,ctrl_mod = <&usb_ctrl_mod>;
#phy-cells = <0>;
}; };
usb0: usb@47401000 { usb0: usb@47401000 {
...@@ -678,6 +679,7 @@ ...@@ -678,6 +679,7 @@
reg-names = "phy"; reg-names = "phy";
status = "disabled"; status = "disabled";
ti,ctrl_mod = <&usb_ctrl_mod>; ti,ctrl_mod = <&usb_ctrl_mod>;
#phy-cells = <0>;
}; };
usb1: usb@47401800 { usb1: usb@47401800 {
......
...@@ -927,7 +927,8 @@ ...@@ -927,7 +927,8 @@
reg = <0x48038000 0x2000>, reg = <0x48038000 0x2000>,
<0x46000000 0x400000>; <0x46000000 0x400000>;
reg-names = "mpu", "dat"; reg-names = "mpu", "dat";
interrupts = <80>, <81>; interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "tx", "rx"; interrupt-names = "tx", "rx";
status = "disabled"; status = "disabled";
dmas = <&edma 8 2>, dmas = <&edma 8 2>,
...@@ -941,7 +942,8 @@ ...@@ -941,7 +942,8 @@
reg = <0x4803C000 0x2000>, reg = <0x4803C000 0x2000>,
<0x46400000 0x400000>; <0x46400000 0x400000>;
reg-names = "mpu", "dat"; reg-names = "mpu", "dat";
interrupts = <82>, <83>; interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "tx", "rx"; interrupt-names = "tx", "rx";
status = "disabled"; status = "disabled";
dmas = <&edma 10 2>, dmas = <&edma 10 2>,
......
...@@ -301,8 +301,8 @@ ...@@ -301,8 +301,8 @@
status = "okay"; status = "okay";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spi0_pins>; pinctrl-0 = <&spi0_pins>;
dmas = <&edma 16 dmas = <&edma 16 0
&edma 17>; &edma 17 0>;
dma-names = "tx0", "rx0"; dma-names = "tx0", "rx0";
flash: w25q64cvzpig@0 { flash: w25q64cvzpig@0 {
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册