Skip to content

Commit 38a413c

Browse files
author
Ingo Molnar
committed
Merge tag 'v4.3-rc3' into x86/mm, to pick up fixes before applying new changes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2 parents 55696b1 + 9ffecb1 commit 38a413c

File tree

436 files changed

+4983
-2581
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

436 files changed

+4983
-2581
lines changed

Documentation/devicetree/bindings/arm/gic-v3.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ used to route Message Signalled Interrupts (MSI) to the CPUs.
5757
These nodes must have the following properties:
5858
- compatible : Should at least contain "arm,gic-v3-its".
5959
- msi-controller : Boolean property. Identifies the node as an MSI controller
60+
- #msi-cells: Must be <1>. The single msi-cell is the DeviceID of the device
61+
which will generate the MSI.
6062
- reg: Specifies the base physical address and size of the ITS
6163
registers.
6264

@@ -83,6 +85,7 @@ Examples:
8385
gic-its@2c200000 {
8486
compatible = "arm,gic-v3-its";
8587
msi-controller;
88+
#msi-cells = <1>;
8689
reg = <0x0 0x2c200000 0 0x200000>;
8790
};
8891
};
@@ -107,12 +110,14 @@ Examples:
107110
gic-its@2c200000 {
108111
compatible = "arm,gic-v3-its";
109112
msi-controller;
113+
#msi-cells = <1>;
110114
reg = <0x0 0x2c200000 0 0x200000>;
111115
};
112116

113117
gic-its@2c400000 {
114118
compatible = "arm,gic-v3-its";
115119
msi-controller;
120+
#msi-cells = <1>;
116121
reg = <0x0 0x2c400000 0 0x200000>;
117122
};
118123
};

Documentation/devicetree/bindings/arm/idle-states.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -497,7 +497,7 @@ cpus {
497497
};
498498

499499
idle-states {
500-
entry-method = "arm,psci";
500+
entry-method = "psci";
501501

502502
CPU_RETENTION_0_0: cpu-retention-0-0 {
503503
compatible = "arm,idle-state";

Documentation/devicetree/bindings/gpio/gpio.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ properties, each containing a 'gpio-list':
1616
GPIO properties should be named "[<name>-]gpios", with <name> being the purpose
1717
of this GPIO for the device. While a non-existent <name> is considered valid
1818
for compatibility reasons (resolving to the "gpios" property), it is not allowed
19-
for new bindings.
19+
for new bindings. Also, GPIO properties named "[<name>-]gpio" are valid and old
20+
bindings use it, but are only supported for compatibility reasons and should not
21+
be used for newer bindings since it has been deprecated.
2022

2123
GPIO properties can contain one or more GPIO phandles, but only in exceptional
2224
cases should they contain more than one. If your device uses several GPIOs with

Documentation/devicetree/bindings/iio/accel/bma180.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
* Bosch BMA180 triaxial acceleration sensor
1+
* Bosch BMA180 / BMA250 triaxial acceleration sensor
22

33
http://omapworld.com/BMA180_111_1002839.pdf
4+
http://ae-bst.resource.bosch.com/media/products/dokumente/bma250/bst-bma250-ds002-05.pdf
45

56
Required properties:
67

7-
- compatible : should be "bosch,bma180"
8+
- compatible : should be "bosch,bma180" or "bosch,bma250"
89
- reg : the I2C address of the sensor
910

1011
Optional properties:
@@ -13,6 +14,9 @@ Optional properties:
1314

1415
- interrupts : interrupt mapping for GPIO IRQ, it should by configured with
1516
flags IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING
17+
For the bma250 the first interrupt listed must be the one
18+
connected to the INT1 pin, the second (optional) interrupt
19+
listed must be the one connected to the INT2 pin.
1620

1721
Example:
1822

Documentation/devicetree/bindings/pci/pci-rcar-gen2.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ OHCI and EHCI controllers.
77

88
Required properties:
99
- compatible: "renesas,pci-r8a7790" for the R8A7790 SoC;
10-
"renesas,pci-r8a7791" for the R8A7791 SoC.
10+
"renesas,pci-r8a7791" for the R8A7791 SoC;
11+
"renesas,pci-r8a7794" for the R8A7794 SoC.
1112
- reg: A list of physical regions to access the device: the first is
1213
the operational registers for the OHCI/EHCI controllers and the
1314
second is for the bridge configuration and control registers.

Documentation/devicetree/bindings/regulator/pbias-regulator.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,12 @@ PBIAS internal regulator for SD card dual voltage i/o pads on OMAP SoCs.
22

33
Required properties:
44
- compatible:
5-
- "ti,pbias-omap" for OMAP2, OMAP3, OMAP4, OMAP5, DRA7.
5+
- should be "ti,pbias-dra7" for DRA7
6+
- should be "ti,pbias-omap2" for OMAP2
7+
- should be "ti,pbias-omap3" for OMAP3
8+
- should be "ti,pbias-omap4" for OMAP4
9+
- should be "ti,pbias-omap5" for OMAP5
10+
- "ti,pbias-omap" is deprecated
611
- reg: pbias register offset from syscon base and size of pbias register.
712
- syscon : phandle of the system control module
813
- regulator-name : should be

Documentation/devicetree/bindings/spi/spi-mt65xx.txt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,18 @@ Required properties:
1515
- interrupts: Should contain spi interrupt
1616

1717
- clocks: phandles to input clocks.
18-
The first should be <&topckgen CLK_TOP_SPI_SEL>.
19-
The second should be one of the following.
18+
The first should be one of the following. It's PLL.
2019
- <&clk26m>: specify parent clock 26MHZ.
2120
- <&topckgen CLK_TOP_SYSPLL3_D2>: specify parent clock 109MHZ.
2221
It's the default one.
2322
- <&topckgen CLK_TOP_SYSPLL4_D2>: specify parent clock 78MHZ.
2423
- <&topckgen CLK_TOP_UNIVPLL2_D4>: specify parent clock 104MHZ.
2524
- <&topckgen CLK_TOP_UNIVPLL1_D8>: specify parent clock 78MHZ.
25+
The second should be <&topckgen CLK_TOP_SPI_SEL>. It's clock mux.
26+
The third is <&pericfg CLK_PERI_SPI0>. It's clock gate.
2627

27-
- clock-names: shall be "spi-clk" for the controller clock, and
28-
"parent-clk" for the parent clock.
28+
- clock-names: shall be "parent-clk" for the parent clock, "sel-clk" for the
29+
muxes clock, and "spi-clk" for the clock gate.
2930

3031
Optional properties:
3132
- mediatek,pad-select: specify which pins group(ck/mi/mo/cs) spi
@@ -44,8 +45,11 @@ spi: spi@1100a000 {
4445
#size-cells = <0>;
4546
reg = <0 0x1100a000 0 0x1000>;
4647
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_LOW>;
47-
clocks = <&topckgen CLK_TOP_SPI_SEL>, <&topckgen CLK_TOP_SYSPLL3_D2>;
48-
clock-names = "spi-clk", "parent-clk";
48+
clocks = <&topckgen CLK_TOP_SYSPLL3_D2>,
49+
<&topckgen CLK_TOP_SPI_SEL>,
50+
<&pericfg CLK_PERI_SPI0>;
51+
clock-names = "parent-clk", "sel-clk", "spi-clk";
52+
4953
mediatek,pad-select = <0>;
5054
status = "disabled";
5155
};

Documentation/devicetree/bindings/thermal/thermal.txt

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -55,19 +55,11 @@ of heat dissipation). For example a fan's cooling states correspond to
5555
the different fan speeds possible. Cooling states are referred to by
5656
single unsigned integers, where larger numbers mean greater heat
5757
dissipation. The precise set of cooling states associated with a device
58-
(as referred to be the cooling-min-state and cooling-max-state
58+
(as referred to by the cooling-min-level and cooling-max-level
5959
properties) should be defined in a particular device's binding.
6060
For more examples of cooling devices, refer to the example sections below.
6161

6262
Required properties:
63-
- cooling-min-state: An integer indicating the smallest
64-
Type: unsigned cooling state accepted. Typically 0.
65-
Size: one cell
66-
67-
- cooling-max-state: An integer indicating the largest
68-
Type: unsigned cooling state accepted.
69-
Size: one cell
70-
7163
- #cooling-cells: Used to provide cooling device specific information
7264
Type: unsigned while referring to it. Must be at least 2, in order
7365
Size: one cell to specify minimum and maximum cooling state used
@@ -77,6 +69,15 @@ Required properties:
7769
See Cooling device maps section below for more details
7870
on how consumers refer to cooling devices.
7971

72+
Optional properties:
73+
- cooling-min-level: An integer indicating the smallest
74+
Type: unsigned cooling state accepted. Typically 0.
75+
Size: one cell
76+
77+
- cooling-max-level: An integer indicating the largest
78+
Type: unsigned cooling state accepted.
79+
Size: one cell
80+
8081
* Trip points
8182

8283
The trip node is a node to describe a point in the temperature domain
@@ -225,8 +226,8 @@ cpus {
225226
396000 950000
226227
198000 850000
227228
>;
228-
cooling-min-state = <0>;
229-
cooling-max-state = <3>;
229+
cooling-min-level = <0>;
230+
cooling-max-level = <3>;
230231
#cooling-cells = <2>; /* min followed by max */
231232
};
232233
...
@@ -240,8 +241,8 @@ cpus {
240241
*/
241242
fan0: fan@0x48 {
242243
...
243-
cooling-min-state = <0>;
244-
cooling-max-state = <9>;
244+
cooling-min-level = <0>;
245+
cooling-max-level = <9>;
245246
#cooling-cells = <2>; /* min followed by max */
246247
};
247248
};

Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ Required properties:
66
"lsi,zevio-usb"
77
"qcom,ci-hdrc"
88
"chipidea,usb2"
9+
"xlnx,zynq-usb-2.20a"
910
- reg: base address and length of the registers
1011
- interrupts: interrupt for the USB controller
1112

Documentation/devicetree/bindings/vendor-prefixes.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ sitronix Sitronix Technology Corporation
203203
skyworks Skyworks Solutions, Inc.
204204
smsc Standard Microsystems Corporation
205205
snps Synopsys, Inc.
206+
socionext Socionext Inc.
206207
solidrun SolidRun
207208
solomon Solomon Systech Limited
208209
sony Sony Corporation

Documentation/networking/vrf.txt

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
Virtual Routing and Forwarding (VRF)
2+
====================================
3+
The VRF device combined with ip rules provides the ability to create virtual
4+
routing and forwarding domains (aka VRFs, VRF-lite to be specific) in the
5+
Linux network stack. One use case is the multi-tenancy problem where each
6+
tenant has their own unique routing tables and in the very least need
7+
different default gateways.
8+
9+
Processes can be "VRF aware" by binding a socket to the VRF device. Packets
10+
through the socket then use the routing table associated with the VRF
11+
device. An important feature of the VRF device implementation is that it
12+
impacts only Layer 3 and above so L2 tools (e.g., LLDP) are not affected
13+
(ie., they do not need to be run in each VRF). The design also allows
14+
the use of higher priority ip rules (Policy Based Routing, PBR) to take
15+
precedence over the VRF device rules directing specific traffic as desired.
16+
17+
In addition, VRF devices allow VRFs to be nested within namespaces. For
18+
example network namespaces provide separation of network interfaces at L1
19+
(Layer 1 separation), VLANs on the interfaces within a namespace provide
20+
L2 separation and then VRF devices provide L3 separation.
21+
22+
Design
23+
------
24+
A VRF device is created with an associated route table. Network interfaces
25+
are then enslaved to a VRF device:
26+
27+
+-----------------------------+
28+
| vrf-blue | ===> route table 10
29+
+-----------------------------+
30+
| | |
31+
+------+ +------+ +-------------+
32+
| eth1 | | eth2 | ... | bond1 |
33+
+------+ +------+ +-------------+
34+
| |
35+
+------+ +------+
36+
| eth8 | | eth9 |
37+
+------+ +------+
38+
39+
Packets received on an enslaved device and are switched to the VRF device
40+
using an rx_handler which gives the impression that packets flow through
41+
the VRF device. Similarly on egress routing rules are used to send packets
42+
to the VRF device driver before getting sent out the actual interface. This
43+
allows tcpdump on a VRF device to capture all packets into and out of the
44+
VRF as a whole.[1] Similiarly, netfilter [2] and tc rules can be applied
45+
using the VRF device to specify rules that apply to the VRF domain as a whole.
46+
47+
[1] Packets in the forwarded state do not flow through the device, so those
48+
packets are not seen by tcpdump. Will revisit this limitation in a
49+
future release.
50+
51+
[2] Iptables on ingress is limited to NF_INET_PRE_ROUTING only with skb->dev
52+
set to real ingress device and egress is limited to NF_INET_POST_ROUTING.
53+
Will revisit this limitation in a future release.
54+
55+
56+
Setup
57+
-----
58+
1. VRF device is created with an association to a FIB table.
59+
e.g, ip link add vrf-blue type vrf table 10
60+
ip link set dev vrf-blue up
61+
62+
2. Rules are added that send lookups to the associated FIB table when the
63+
iif or oif is the VRF device. e.g.,
64+
ip ru add oif vrf-blue table 10
65+
ip ru add iif vrf-blue table 10
66+
67+
Set the default route for the table (and hence default route for the VRF).
68+
e.g, ip route add table 10 prohibit default
69+
70+
3. Enslave L3 interfaces to a VRF device.
71+
e.g, ip link set dev eth1 master vrf-blue
72+
73+
Local and connected routes for enslaved devices are automatically moved to
74+
the table associated with VRF device. Any additional routes depending on
75+
the enslaved device will need to be reinserted following the enslavement.
76+
77+
4. Additional VRF routes are added to associated table.
78+
e.g., ip route add table 10 ...
79+
80+
81+
Applications
82+
------------
83+
Applications that are to work within a VRF need to bind their socket to the
84+
VRF device:
85+
86+
setsockopt(sd, SOL_SOCKET, SO_BINDTODEVICE, dev, strlen(dev)+1);
87+
88+
or to specify the output device using cmsg and IP_PKTINFO.
89+
90+
91+
Limitations
92+
-----------
93+
VRF device currently only works for IPv4. Support for IPv6 is under development.
94+
95+
Index of original ingress interface is not available via cmsg. Will address
96+
soon.

Documentation/sysctl/net.txt

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,15 @@ default_qdisc
5454
--------------
5555

5656
The default queuing discipline to use for network devices. This allows
57-
overriding the default queue discipline of pfifo_fast with an
58-
alternative. Since the default queuing discipline is created with the
59-
no additional parameters so is best suited to queuing disciplines that
60-
work well without configuration like stochastic fair queue (sfq),
61-
CoDel (codel) or fair queue CoDel (fq_codel). Don't use queuing disciplines
62-
like Hierarchical Token Bucket or Deficit Round Robin which require setting
63-
up classes and bandwidths.
57+
overriding the default of pfifo_fast with an alternative. Since the default
58+
queuing discipline is created without additional parameters so is best suited
59+
to queuing disciplines that work well without configuration like stochastic
60+
fair queue (sfq), CoDel (codel) or fair queue CoDel (fq_codel). Don't use
61+
queuing disciplines like Hierarchical Token Bucket or Deficit Round Robin
62+
which require setting up classes and bandwidths. Note that physical multiqueue
63+
interfaces still use mq as root qdisc, which in turn uses this default for its
64+
leaves. Virtual devices (like e.g. lo or veth) ignore this setting and instead
65+
default to noqueue.
6466
Default: pfifo_fast
6567

6668
busy_read

Documentation/thermal/power_allocator.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Power allocator governor tunables
44
Trip points
55
-----------
66

7-
The governor requires the following two passive trip points:
7+
The governor works optimally with the following two passive trip points:
88

99
1. "switch on" trip point: temperature above which the governor
1010
control loop starts operating. This is the first passive trip

0 commit comments

Comments
 (0)