Skip to content

Commit 1868620

Browse files
committed
Merge RK kernel-4.4.126 into sbc/tinkerboard/asus/Debian-9.0
Change-Id: Ib047deb5bda98932a2d4c205eb99c5eabbf0d4f2
2 parents c22ac2e + 9693a61 commit 1868620

4,926 files changed

Lines changed: 580017 additions & 296804 deletions

File tree

Some content is hidden

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

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ Module.symvers
4242
#
4343
# Top-level generic files
4444
#
45+
/boot.img
4546
/kernel.img
4647
/resource.img
4748
/tags

.mailmap

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ Adrian Bunk <bunk@stusta.de>
1414
Alan Cox <alan@lxorguk.ukuu.org.uk>
1515
Alan Cox <root@hraefn.swansea.linux.org.uk>
1616
Aleksey Gorelov <aleksey_gorelov@phoenix.com>
17+
Aleksandar Markovic <aleksandar.markovic@mips.com> <aleksandar.markovic@imgtec.com>
1718
Al Viro <viro@ftp.linux.org.uk>
1819
Al Viro <viro@zenIV.linux.org.uk>
1920
Andreas Herrmann <aherrman@de.ibm.com>
@@ -85,6 +86,7 @@ Matthieu CASTET <castet.matthieu@free.fr>
8586
Mayuresh Janorkar <mayur@ti.com>
8687
Michael Buesch <m@bues.ch>
8788
Michel Dänzer <michel@tungstengraphics.com>
89+
Miodrag Dinic <miodrag.dinic@mips.com> <miodrag.dinic@imgtec.com>
8890
Mitesh shah <mshah@teja.com>
8991
Mohit Kumar <mohit.kumar@st.com> <mohit.kumar.dhaka@gmail.com>
9092
Morten Welinder <terra@gnome.org>

Documentation/ABI/testing/sysfs-devices-system-cpu

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,3 +271,19 @@ Description: Parameters for the CPU cache attributes
271271
- WriteBack: data is written only to the cache line and
272272
the modified cache line is written to main
273273
memory only when it is replaced
274+
275+
What: /sys/devices/system/cpu/vulnerabilities
276+
/sys/devices/system/cpu/vulnerabilities/meltdown
277+
/sys/devices/system/cpu/vulnerabilities/spectre_v1
278+
/sys/devices/system/cpu/vulnerabilities/spectre_v2
279+
Date: January 2018
280+
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
281+
Description: Information about CPU vulnerabilities
282+
283+
The files are named after the code names of CPU
284+
vulnerabilities. The output of those files reflects the
285+
state of the CPUs in the system. Possible output values:
286+
287+
"Not affected" CPU is not affected by the vulnerability
288+
"Vulnerable" CPU is affected and no mitigation in effect
289+
"Mitigation: $M" CPU is affected and mitigation $M is in effect

Documentation/ABI/testing/sysfs-fs-f2fs

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,18 @@ Description:
5151
Controls the dirty page count condition for the in-place-update
5252
policies.
5353

54+
What: /sys/fs/f2fs/<disk>/min_hot_blocks
55+
Date: March 2017
56+
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
57+
Description:
58+
Controls the dirty page count condition for redefining hot data.
59+
60+
What: /sys/fs/f2fs/<disk>/min_ssr_sections
61+
Date: October 2017
62+
Contact: "Chao Yu" <yuchao0@huawei.com>
63+
Description:
64+
Controls the fee section threshold to trigger SSR allocation.
65+
5466
What: /sys/fs/f2fs/<disk>/max_small_discards
5567
Date: November 2013
5668
Contact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com>
@@ -96,6 +108,18 @@ Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
96108
Description:
97109
Controls the checkpoint timing.
98110

111+
What: /sys/fs/f2fs/<disk>/idle_interval
112+
Date: January 2016
113+
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
114+
Description:
115+
Controls the idle timing.
116+
117+
What: /sys/fs/f2fs/<disk>/iostat_enable
118+
Date: August 2017
119+
Contact: "Chao Yu" <yuchao0@huawei.com>
120+
Description:
121+
Controls to enable/disable IO stat.
122+
99123
What: /sys/fs/f2fs/<disk>/ra_nid_pages
100124
Date: October 2015
101125
Contact: "Chao Yu" <chao2.yu@samsung.com>
@@ -116,6 +140,12 @@ Contact: "Shuoran Liu" <liushuoran@huawei.com>
116140
Description:
117141
Shows total written kbytes issued to disk.
118142

143+
What: /sys/fs/f2fs/<disk>/feature
144+
Date: July 2017
145+
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
146+
Description:
147+
Shows all enabled features in current device.
148+
119149
What: /sys/fs/f2fs/<disk>/inject_rate
120150
Date: May 2016
121151
Contact: "Sheng Yong" <shengyong1@huawei.com>
@@ -132,7 +162,18 @@ What: /sys/fs/f2fs/<disk>/reserved_blocks
132162
Date: June 2017
133163
Contact: "Chao Yu" <yuchao0@huawei.com>
134164
Description:
135-
Controls current reserved blocks in system.
165+
Controls target reserved blocks in system, the threshold
166+
is soft, it could exceed current available user space.
167+
168+
What: /sys/fs/f2fs/<disk>/current_reserved_blocks
169+
Date: October 2017
170+
Contact: "Yunlong Song" <yunlong.song@huawei.com>
171+
Contact: "Chao Yu" <yuchao0@huawei.com>
172+
Description:
173+
Shows current reserved blocks in system, it may be temporarily
174+
smaller than target_reserved_blocks, but will gradually
175+
increase to target_reserved_blocks when more free blocks are
176+
freed by user later.
136177

137178
What: /sys/fs/f2fs/<disk>/gc_urgent
138179
Date: August 2017
@@ -145,3 +186,9 @@ Date: August 2017
145186
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
146187
Description:
147188
Controls sleep time of GC urgent mode
189+
190+
What: /sys/fs/f2fs/<disk>/readdir_ra
191+
Date: November 2017
192+
Contact: "Sheng Yong" <shengyong1@huawei.com>
193+
Description:
194+
Controls readahead inode block in readdir.
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
#
2+
# (C) COPYRIGHT 2013-2018 ARM Limited. All rights reserved.
3+
#
4+
# This program is free software and is provided to you under the terms of the
5+
# GNU General Public License version 2 as published by the Free Software
6+
# Foundation, and any use by you of this program is subject to the terms
7+
# of such GNU licence.
8+
#
9+
# This program is distributed in the hope that it will be useful,
10+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
# GNU General Public License for more details.
13+
#
14+
# You should have received a copy of the GNU General Public License
15+
# along with this program; if not, you can access it online at
16+
# http://www.gnu.org/licenses/gpl-2.0.html.
17+
#
18+
# SPDX-License-Identifier: GPL-2.0
19+
#
20+
#
21+
22+
* ARM Mali Midgard devices
23+
24+
25+
Required properties:
26+
27+
- compatible : Should be mali<chip>, replacing digits with x from the back,
28+
until malit<Major>xx, ending with arm,mali-midgard, the latter not optional.
29+
- reg : Physical base address of the device and length of the register area.
30+
- interrupts : Contains the three IRQ lines required by T-6xx devices
31+
- interrupt-names : Contains the names of IRQ resources in the order they were
32+
provided in the interrupts property. Must contain: "JOB, "MMU", "GPU".
33+
34+
Optional:
35+
36+
- clocks : Phandle to clock for the Mali T-6xx device.
37+
- clock-names : Shall be "clk_mali".
38+
- mali-supply : Phandle to regulator for the Mali device. Refer to
39+
Documentation/devicetree/bindings/regulator/regulator.txt for details.
40+
- operating-points-v2 : Refer to Documentation/devicetree/bindings/power/opp.txt
41+
for details.
42+
- jm_config : For T860/T880. Sets job manager configuration. An array containing:
43+
- 1 to override the TIMESTAMP value, 0 otherwise.
44+
- 1 to override clock gate, forcing them to be always on, 0 otherwise.
45+
- 1 to enable job throttle, limiting the number of cores that can be started
46+
simultaneously, 0 otherwise.
47+
- Value between 0 and 63 (including). If job throttle is enabled, this is one
48+
less than the number of cores that can be started simultaneously.
49+
- power_model : Sets the power model parameters. Three power models are currently
50+
defined which include "mali-simple-power-model", "mali-g71-power-model" and
51+
"mali-g72-power-model".
52+
- mali-simple-power-model: this model derives the GPU power usage based
53+
on the GPU voltage scaled by the system temperature. Note: it was
54+
designed for the Juno platform, and may not be suitable for others.
55+
- compatible: Should be "arm,mali-simple-power-model"
56+
- dynamic-coefficient: Coefficient, in pW/(Hz V^2), which is
57+
multiplied by v^2*f to calculate the dynamic power consumption.
58+
- static-coefficient: Coefficient, in uW/V^3, which is
59+
multiplied by v^3 to calculate the static power consumption.
60+
- ts: An array containing coefficients for the temperature
61+
scaling factor. This is used to scale the static power by a
62+
factor of tsf/1000000,
63+
where tsf = ts[3]*T^3 + ts[2]*T^2 + ts[1]*T + ts[0],
64+
and T = temperature in degrees.
65+
- thermal-zone: A string identifying the thermal zone used for
66+
the GPU
67+
- temp-poll-interval-ms: the interval at which the system
68+
temperature is polled
69+
- mali-g71-power-model / mali-g72-power-model: these models derive
70+
the GPU power usage based on performance counters, so they are more
71+
accurate.
72+
- compatible: Should be "arm,mali-g71-power-model" /
73+
"arm,mali-g72-power-model"
74+
- scale: the dynamic power calculated by the power model is
75+
scaled by a factor of "scale"/1000. This value should be
76+
chosen to match a particular implementation.
77+
* Note: when IPA is used, two separate power models (simple and counter-based)
78+
are used at different points so care should be taken to configure
79+
both power models in the device tree (specifically dynamic-coefficient,
80+
static-coefficient and scale) to best match the platform.
81+
- system-coherency : Sets the coherency protocol to be used for coherent
82+
accesses made from the GPU.
83+
If not set then no coherency is used.
84+
- 0 : ACE-Lite
85+
- 1 : ACE
86+
- 31 : No coherency
87+
- ipa-model : Sets the IPA model to be used for power management. GPU probe will fail if the
88+
model is not found in the registered models list. If no model is specified here,
89+
a gpu-id based model is picked if available, otherwise the default model is used.
90+
- mali-simple-power-model: Default model used on mali
91+
- protected-mode-switcher : Phandle to device implemented protected mode switching functionality.
92+
Refer to Documentation/devicetree/bindings/arm/smc-protected-mode-switcher.txt for one implementation.
93+
94+
Example for a Mali GPU:
95+
96+
gpu@0xfc010000 {
97+
compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard";
98+
reg = <0xfc010000 0x4000>;
99+
interrupts = <0 36 4>, <0 37 4>, <0 38 4>;
100+
interrupt-names = "JOB", "MMU", "GPU";
101+
102+
clocks = <&pclk_mali>;
103+
clock-names = "clk_mali";
104+
mali-supply = <&vdd_mali>;
105+
operating-points-v2 = <&gpu_opp_table>;
106+
power_model@0 {
107+
compatible = "arm,mali-simple-power-model";
108+
static-coefficient = <2427750>;
109+
dynamic-coefficient = <4687>;
110+
ts = <20000 2000 (-20) 2>;
111+
thermal-zone = "gpu";
112+
};
113+
power_model@1 {
114+
compatible = "arm,mali-g71-power-model";
115+
scale = <5>;
116+
};
117+
};
118+
119+
gpu_opp_table: opp_table0 {
120+
compatible = "operating-points-v2";
121+
122+
opp@533000000 {
123+
opp-hz = /bits/ 64 <533000000>;
124+
opp-microvolt = <1250000>;
125+
};
126+
opp@450000000 {
127+
opp-hz = /bits/ 64 <450000000>;
128+
opp-microvolt = <1150000>;
129+
};
130+
opp@400000000 {
131+
opp-hz = /bits/ 64 <400000000>;
132+
opp-microvolt = <1125000>;
133+
};
134+
opp@350000000 {
135+
opp-hz = /bits/ 64 <350000000>;
136+
opp-microvolt = <1075000>;
137+
};
138+
opp@266000000 {
139+
opp-hz = /bits/ 64 <266000000>;
140+
opp-microvolt = <1025000>;
141+
};
142+
opp@160000000 {
143+
opp-hz = /bits/ 64 <160000000>;
144+
opp-microvolt = <925000>;
145+
};
146+
opp@100000000 {
147+
opp-hz = /bits/ 64 <100000000>;
148+
opp-microvolt = <912500>;
149+
};
150+
};

Documentation/devicetree/bindings/arm/rockchip.txt

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,3 +114,27 @@ Rockchip platforms device tree bindings
114114
- Rockchip RK3399 evb:
115115
Required root node properties:
116116
- compatible = "rockchip,rk3399-evb", "rockchip,rk3399";
117+
118+
- Rockchip RK3326 f863 board:
119+
Required root node properties:
120+
- compatible = "rockchip,rk3326-863-lp3-v10", "rockchip,rk3326";
121+
122+
- Rockchip RK3326 evb board:
123+
Required root node properties:
124+
- compatible = "rockchip,rk3326-evb-lp3-v10", "rockchip,rk3326";
125+
126+
- Rockchip PX30 evb ddr3 board:
127+
Required root node properties:
128+
- compatible = "rockchip,px30-evb-ddr3-v10", "rockchip,px30";
129+
130+
- Rockchip PX30 evb ddr4 board:
131+
Required root node properties:
132+
- compatible = "rockchip,px30-evb-ddr4-v10", "rockchip,px30";
133+
134+
- Rockchip android things full function board:
135+
Required root node properties:
136+
- compatible = "rockchip,rk3229-at-3nod", "rockchip,rk3229";
137+
138+
- Rockchip android things full function board:
139+
Required root node properties:
140+
- compatible = "rockchip,rk3229-at-3nod-func", "rockchip,rk3229";
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
* Rockchip RK3308 Clock and Reset Unit
2+
3+
The RK3308 clock controller generates and supplies clock to various
4+
controllers within the SoC and also implements a reset controller for SoC
5+
peripherals.
6+
7+
Required Properties:
8+
9+
- compatible: CRU should be "rockchip,rk3308-cru"
10+
- reg: physical base address of the controller and length of memory mapped
11+
region.
12+
- #clock-cells: should be 1.
13+
- #reset-cells: should be 1.
14+
15+
Optional Properties:
16+
17+
- rockchip,grf: phandle to the syscon managing the "general register files"
18+
If missing, pll rates are not changeable, due to the missing pll lock status.
19+
20+
Each clock is assigned an identifier and client nodes can use this identifier
21+
to specify the clock which they consume. All available clocks are defined as
22+
preprocessor macros in the dt-bindings/clock/rk3308-cru.h headers and can be
23+
used in device tree sources. Similar macros exist for the reset sources in
24+
these files.
25+
26+
External clocks:
27+
28+
There are several clocks that are generated outside the SoC. It is expected
29+
that they are defined using standard clock bindings with following
30+
clock-output-names:
31+
- "xin24m" - crystal input - required,
32+
- "xin32k" - rtc clock - optional,
33+
- "mclk_i2sx_xch_in" - external I2S or SPDIF clock - optional,
34+
- "mac_clkin" - external MAC clock - optional
35+
36+
Example: Clock controller node:
37+
38+
cru: clock-controller@ff500000 {
39+
compatible = "rockchip,rk3308-cru";
40+
reg = <0x0 0xff500000 0x0 0x1000>;
41+
rockchip,grf = <&grf>;
42+
#clock-cells = <1>;
43+
#reset-cells = <1>;
44+
};
45+
46+
Example: UART controller node that consumes the clock generated by the clock
47+
controller:
48+
49+
uart0: serial@ff0a0000 {
50+
compatible = "rockchip,rk3308-uart", "snps,dw-apb-uart";
51+
reg = <0x0 0xff0a0000 0x0 0x100>;
52+
interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
53+
clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
54+
clock-names = "baudclk", "apb_pclk";
55+
reg-shift = <2>;
56+
reg-io-width = <4>;
57+
status = "disabled";
58+
};
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
Rockchip RK618 Clock and Reset Unit
2+
3+
This binding uses the common clock binding:
4+
Documentation/devicetree/bindings/clock/clock-bindings.txt
5+
6+
Required properties :
7+
- compatible : Should be "rockchip,rk618-cru"
8+
- clocks : Should contain phandle and clock specifiers for the input clock:
9+
the AP I2S master clock output(mclk) "clkin", and the AP LCDC master
10+
dclk output(dclk) "lcdc0_dclkp".
11+
- #clock-cells : Should be 1.
12+
13+
Example:
14+
15+
&rk618 {
16+
CRU: cru {
17+
compatible = "rockchip,rk618-cru";
18+
clocks = <&cru SCLK_I2S_8CH_OUT>, <&cru DCLK_VOP>;
19+
clock-names = "clkin", "lcdc0_dclkp";
20+
assigned-clocks = <&CRU SCALER_PLLIN_CLK>, <&CRU VIF_PLLIN_CLK>,
21+
<&CRU HDMI_CLK>, <&CRU SCALER_CLK>,
22+
<&CRU CODEC_CLK>;
23+
assigned-clock-parents = <&CRU LCDC0_CLK>, <&CRU LCDC0_CLK>,
24+
<&CRU VIF0_CLK>, <&CRU SCALER_PLL_CLK>,
25+
<&cru SCLK_I2S_8CH_OUT>;
26+
#clock-cells = <1>;
27+
status = "okay";
28+
};
29+
};

0 commit comments

Comments
 (0)