Skip to content

Commit 24a72ac

Browse files
committed
Merge tag 'v3.10' into next
Merge 3.10 in order to get some of the last minute powerpc changes, resolve conflicts and add additional fixes on top of them.
2 parents 6e0b8bc + 8bb495e commit 24a72ac

File tree

366 files changed

+7856
-2018
lines changed

Some content is hidden

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

366 files changed

+7856
-2018
lines changed
Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,27 @@
11
<title>Codec Interface</title>
22

3-
<note>
4-
<title>Suspended</title>
3+
<para>A V4L2 codec can compress, decompress, transform, or otherwise
4+
convert video data from one format into another format, in memory. Typically
5+
such devices are memory-to-memory devices (i.e. devices with the
6+
<constant>V4L2_CAP_VIDEO_M2M</constant> or <constant>V4L2_CAP_VIDEO_M2M_MPLANE</constant>
7+
capability set).
8+
</para>
59

6-
<para>This interface has been be suspended from the V4L2 API
7-
implemented in Linux 2.6 until we have more experience with codec
8-
device interfaces.</para>
9-
</note>
10+
<para>A memory-to-memory video node acts just like a normal video node, but it
11+
supports both output (sending frames from memory to the codec hardware) and
12+
capture (receiving the processed frames from the codec hardware into memory)
13+
stream I/O. An application will have to setup the stream
14+
I/O for both sides and finally call &VIDIOC-STREAMON; for both capture and output
15+
to start the codec.</para>
1016

11-
<para>A V4L2 codec can compress, decompress, transform, or otherwise
12-
convert video data from one format into another format, in memory.
13-
Applications send data to be converted to the driver through a
14-
&func-write; call, and receive the converted data through a
15-
&func-read; call. For efficiency a driver may also support streaming
16-
I/O.</para>
17+
<para>Video compression codecs use the MPEG controls to setup their codec parameters
18+
(note that the MPEG controls actually support many more codecs than just MPEG).
19+
See <xref linkend="mpeg-controls"></xref>.</para>
1720

18-
<para>[to do]</para>
21+
<para>Memory-to-memory devices can often be used as a shared resource: you can
22+
open the video node multiple times, each application setting up their own codec properties
23+
that are local to the file handle, and each can use it independently from the others.
24+
The driver will arbitrate access to the codec and reprogram it whenever another file
25+
handler gets access. This is different from the usual video node behavior where the video properties
26+
are global to the device (i.e. changing something through one file handle is visible
27+
through another file handle).</para>

Documentation/DocBook/media/v4l/v4l2.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ and discussions on the V4L mailing list.</revremark>
493493
</partinfo>
494494

495495
<title>Video for Linux Two API Specification</title>
496-
<subtitle>Revision 3.9</subtitle>
496+
<subtitle>Revision 3.10</subtitle>
497497

498498
<chapter id="common">
499499
&sub-common;

Documentation/devicetree/bindings/media/exynos-fimc-lite.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Exynos4x12/Exynos5 SoC series camera host interface (FIMC-LITE)
22

33
Required properties:
44

5-
- compatible : should be "samsung,exynos4212-fimc" for Exynos4212 and
5+
- compatible : should be "samsung,exynos4212-fimc-lite" for Exynos4212 and
66
Exynos4412 SoCs;
77
- reg : physical base address and size of the device memory mapped
88
registers;

Documentation/networking/ip-sysctl.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -420,10 +420,10 @@ tcp_synack_retries - INTEGER
420420
for a passive TCP connection will happen after 63seconds.
421421

422422
tcp_syncookies - BOOLEAN
423-
Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
423+
Only valid when the kernel was compiled with CONFIG_SYN_COOKIES
424424
Send out syncookies when the syn backlog queue of a socket
425425
overflows. This is to prevent against the common 'SYN flood attack'
426-
Default: FALSE
426+
Default: 1
427427

428428
Note, that syncookies is fallback facility.
429429
It MUST NOT be used to help highly loaded servers to stand

Documentation/sound/alsa/HD-Audio-Models.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ ALC269/270/275/276/280/282
2929
alc271-dmic Enable ALC271X digital mic workaround
3030
inv-dmic Inverted internal mic workaround
3131
lenovo-dock Enables docking station I/O for some Lenovos
32+
dell-headset-multi Headset jack, which can also be used as mic-in
33+
dell-headset-dock Headset jack (without mic-in), and also dock I/O
3234

3335
ALC662/663/272
3436
==============
@@ -42,6 +44,7 @@ ALC662/663/272
4244
asus-mode7 ASUS
4345
asus-mode8 ASUS
4446
inv-dmic Inverted internal mic workaround
47+
dell-headset-multi Headset jack, which can also be used as mic-in
4548

4649
ALC680
4750
======

MAINTAINERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3227,7 +3227,7 @@ F: lib/fault-inject.c
32273227

32283228
FCOE SUBSYSTEM (libfc, libfcoe, fcoe)
32293229
M: Robert Love <[email protected]>
3230-
3230+
32313231
W: www.Open-FCoE.org
32323232
S: Supported
32333233
F: drivers/scsi/libfc/

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
VERSION = 3
22
PATCHLEVEL = 10
33
SUBLEVEL = 0
4-
EXTRAVERSION = -rc5
4+
EXTRAVERSION =
55
NAME = Unicycling Gorilla
66

77
# *DOCUMENTATION*

arch/arm/Kconfig

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1087,6 +1087,20 @@ if !MMU
10871087
source "arch/arm/Kconfig-nommu"
10881088
endif
10891089

1090+
config PJ4B_ERRATA_4742
1091+
bool "PJ4B Errata 4742: IDLE Wake Up Commands can Cause the CPU Core to Cease Operation"
1092+
depends on CPU_PJ4B && MACH_ARMADA_370
1093+
default y
1094+
help
1095+
When coming out of either a Wait for Interrupt (WFI) or a Wait for
1096+
Event (WFE) IDLE states, a specific timing sensitivity exists between
1097+
the retiring WFI/WFE instructions and the newly issued subsequent
1098+
instructions. This sensitivity can result in a CPU hang scenario.
1099+
Workaround:
1100+
The software must insert either a Data Synchronization Barrier (DSB)
1101+
or Data Memory Barrier (DMB) command immediately after the WFI/WFE
1102+
instruction
1103+
10901104
config ARM_ERRATA_326103
10911105
bool "ARM errata: FSR write bit incorrect on a SWP to read-only memory"
10921106
depends on CPU_V6
@@ -1189,6 +1203,16 @@ config PL310_ERRATA_588369
11891203
is not correctly implemented in PL310 as clean lines are not
11901204
invalidated as a result of these operations.
11911205

1206+
config ARM_ERRATA_643719
1207+
bool "ARM errata: LoUIS bit field in CLIDR register is incorrect"
1208+
depends on CPU_V7 && SMP
1209+
help
1210+
This option enables the workaround for the 643719 Cortex-A9 (prior to
1211+
r1p0) erratum. On affected cores the LoUIS bit field of the CLIDR
1212+
register returns zero when it should return one. The workaround
1213+
corrects this value, ensuring cache maintenance operations which use
1214+
it behave as intended and avoiding data corruption.
1215+
11921216
config ARM_ERRATA_720789
11931217
bool "ARM errata: TLBIASIDIS and TLBIMVAIS operations can broadcast a faulty ASID"
11941218
depends on CPU_V7
@@ -2006,7 +2030,7 @@ config XIP_PHYS_ADDR
20062030

20072031
config KEXEC
20082032
bool "Kexec system call (EXPERIMENTAL)"
2009-
depends on (!SMP || HOTPLUG_CPU)
2033+
depends on (!SMP || PM_SLEEP_SMP)
20102034
help
20112035
kexec is a system call that implements the ability to shutdown your
20122036
current kernel, and to start another kernel. It is like a reboot

arch/arm/boot/compressed/Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ targets := vmlinux vmlinux.lds \
116116

117117
# Make sure files are removed during clean
118118
extra-y += piggy.gzip piggy.lzo piggy.lzma piggy.xzkern \
119-
lib1funcs.S ashldi3.S $(libfdt) $(libfdt_hdrs)
119+
lib1funcs.S ashldi3.S $(libfdt) $(libfdt_hdrs) \
120+
hyp-stub.S
120121

121122
ifeq ($(CONFIG_FUNCTION_TRACER),y)
122123
ORIG_CFLAGS := $(KBUILD_CFLAGS)

arch/arm/boot/dts/am33xx.dtsi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -409,8 +409,8 @@
409409
ti,hwmods = "gpmc";
410410
reg = <0x50000000 0x2000>;
411411
interrupts = <100>;
412-
num-cs = <7>;
413-
num-waitpins = <2>;
412+
gpmc,num-cs = <7>;
413+
gpmc,num-waitpins = <2>;
414414
#address-cells = <2>;
415415
#size-cells = <1>;
416416
status = "disabled";

arch/arm/boot/dts/armada-xp-gp.dts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,9 @@
3939
};
4040

4141
soc {
42-
ranges = <0 0 0xd0000000 0x100000
43-
0xf0000000 0 0xf0000000 0x1000000>;
42+
ranges = <0 0 0xd0000000 0x100000 /* Internal registers 1MiB */
43+
0xe0000000 0 0xe0000000 0x8100000 /* PCIe */
44+
0xf0000000 0 0xf0000000 0x1000000 /* Device Bus, NOR 16MiB */>;
4445

4546
internal-regs {
4647
serial@12000 {

arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@
2727
};
2828

2929
soc {
30-
ranges = <0 0 0xd0000000 0x100000
31-
0xf0000000 0 0xf0000000 0x8000000>;
30+
ranges = <0 0 0xd0000000 0x100000 /* Internal registers 1MiB */
31+
0xe0000000 0 0xe0000000 0x8100000 /* PCIe */
32+
0xf0000000 0 0xf0000000 0x8000000 /* Device Bus, NOR 128MiB */>;
3233

3334
internal-regs {
3435
serial@12000 {

arch/arm/boot/dts/exynos5250-pinctrl.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -763,7 +763,7 @@
763763
};
764764
};
765765

766-
pinctrl@03680000 {
766+
pinctrl@03860000 {
767767
gpz: gpz {
768768
gpio-controller;
769769
#gpio-cells = <2>;

arch/arm/boot/dts/exynos5250.dtsi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,9 +161,9 @@
161161
interrupts = <0 50 0>;
162162
};
163163

164-
pinctrl_3: pinctrl@03680000 {
164+
pinctrl_3: pinctrl@03860000 {
165165
compatible = "samsung,exynos5250-pinctrl";
166-
reg = <0x0368000 0x1000>;
166+
reg = <0x03860000 0x1000>;
167167
interrupts = <0 47 0>;
168168
};
169169

arch/arm/boot/dts/omap4-panda-common.dtsi

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,16 +56,36 @@
5656
};
5757
};
5858

59+
&omap4_pmx_wkup {
60+
pinctrl-names = "default";
61+
pinctrl-0 = <
62+
&twl6030_wkup_pins
63+
>;
64+
65+
twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
66+
pinctrl-single,pins = <
67+
0x14 0x2 /* fref_clk0_out.sys_drm_msecure OUTPUT | MODE2 */
68+
>;
69+
};
70+
};
71+
5972
&omap4_pmx_core {
6073
pinctrl-names = "default";
6174
pinctrl-0 = <
75+
&twl6030_pins
6276
&twl6040_pins
6377
&mcpdm_pins
6478
&mcbsp1_pins
6579
&dss_hdmi_pins
6680
&tpd12s015_pins
6781
>;
6882

83+
twl6030_pins: pinmux_twl6030_pins {
84+
pinctrl-single,pins = <
85+
0x15e 0x4118 /* sys_nirq1.sys_nirq1 OMAP_WAKEUP_EN | INPUT_PULLUP | MODE0 */
86+
>;
87+
};
88+
6989
twl6040_pins: pinmux_twl6040_pins {
7090
pinctrl-single,pins = <
7191
0xe0 0x3 /* hdq_sio.gpio_127 OUTPUT | MODE3 */

arch/arm/boot/dts/omap4-sdp.dts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,9 +142,23 @@
142142
};
143143
};
144144

145+
&omap4_pmx_wkup {
146+
pinctrl-names = "default";
147+
pinctrl-0 = <
148+
&twl6030_wkup_pins
149+
>;
150+
151+
twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
152+
pinctrl-single,pins = <
153+
0x14 0x2 /* fref_clk0_out.sys_drm_msecure OUTPUT | MODE2 */
154+
>;
155+
};
156+
};
157+
145158
&omap4_pmx_core {
146159
pinctrl-names = "default";
147160
pinctrl-0 = <
161+
&twl6030_pins
148162
&twl6040_pins
149163
&mcpdm_pins
150164
&dmic_pins
@@ -179,6 +193,12 @@
179193
>;
180194
};
181195

196+
twl6030_pins: pinmux_twl6030_pins {
197+
pinctrl-single,pins = <
198+
0x15e 0x4118 /* sys_nirq1.sys_nirq1 OMAP_WAKEUP_EN | INPUT_PULLUP | MODE0 */
199+
>;
200+
};
201+
182202
twl6040_pins: pinmux_twl6040_pins {
183203
pinctrl-single,pins = <
184204
0xe0 0x3 /* hdq_sio.gpio_127 OUTPUT | MODE3 */

arch/arm/boot/dts/omap5.dtsi

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,7 @@
538538
interrupts = <0 41 0x4>;
539539
ti,hwmods = "timer5";
540540
ti,timer-dsp;
541+
ti,timer-pwm;
541542
};
542543

543544
timer6: timer@4013a000 {
@@ -574,13 +575,15 @@
574575
reg = <0x4803e000 0x80>;
575576
interrupts = <0 45 0x4>;
576577
ti,hwmods = "timer9";
578+
ti,timer-pwm;
577579
};
578580

579581
timer10: timer@48086000 {
580582
compatible = "ti,omap5430-timer";
581583
reg = <0x48086000 0x80>;
582584
interrupts = <0 46 0x4>;
583585
ti,hwmods = "timer10";
586+
ti,timer-pwm;
584587
};
585588

586589
timer11: timer@48088000 {

arch/arm/include/asm/cacheflush.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -320,9 +320,7 @@ static inline void flush_anon_page(struct vm_area_struct *vma,
320320
}
321321

322322
#define ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE
323-
static inline void flush_kernel_dcache_page(struct page *page)
324-
{
325-
}
323+
extern void flush_kernel_dcache_page(struct page *);
326324

327325
#define flush_dcache_mmap_lock(mapping) \
328326
spin_lock_irq(&(mapping)->tree_lock)

arch/arm/include/asm/cputype.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@
3232

3333
#define MPIDR_HWID_BITMASK 0xFFFFFF
3434

35+
#define MPIDR_INVALID (~MPIDR_HWID_BITMASK)
36+
3537
#define MPIDR_LEVEL_BITS 8
3638
#define MPIDR_LEVEL_MASK ((1 << MPIDR_LEVEL_BITS) - 1)
3739

arch/arm/include/asm/glue-proc.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,15 @@
230230
# endif
231231
#endif
232232

233+
#ifdef CONFIG_CPU_PJ4B
234+
# ifdef CPU_NAME
235+
# undef MULTI_CPU
236+
# define MULTI_CPU
237+
# else
238+
# define CPU_NAME cpu_pj4b
239+
# endif
240+
#endif
241+
233242
#ifndef MULTI_CPU
234243
#define cpu_proc_init __glue(CPU_NAME,_proc_init)
235244
#define cpu_proc_fin __glue(CPU_NAME,_proc_fin)

arch/arm/include/asm/smp_plat.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ static inline int cache_ops_need_broadcast(void)
4949
/*
5050
* Logical CPU mapping.
5151
*/
52-
extern int __cpu_logical_map[];
52+
extern u32 __cpu_logical_map[];
5353
#define cpu_logical_map(cpu) __cpu_logical_map[cpu]
5454
/*
5555
* Retrieve logical cpu index corresponding to a given MPIDR[23:0]

arch/arm/kernel/devtree.c

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ void __init arm_dt_init_cpu_maps(void)
8282
u32 i, j, cpuidx = 1;
8383
u32 mpidr = is_smp() ? read_cpuid_mpidr() & MPIDR_HWID_BITMASK : 0;
8484

85-
u32 tmp_map[NR_CPUS] = { [0 ... NR_CPUS-1] = UINT_MAX };
85+
u32 tmp_map[NR_CPUS] = { [0 ... NR_CPUS-1] = MPIDR_INVALID };
8686
bool bootcpu_valid = false;
8787
cpus = of_find_node_by_path("/cpus");
8888

@@ -92,6 +92,9 @@ void __init arm_dt_init_cpu_maps(void)
9292
for_each_child_of_node(cpus, cpu) {
9393
u32 hwid;
9494

95+
if (of_node_cmp(cpu->type, "cpu"))
96+
continue;
97+
9598
pr_debug(" * %s...\n", cpu->full_name);
9699
/*
97100
* A device tree containing CPU nodes with missing "reg"
@@ -149,9 +152,10 @@ void __init arm_dt_init_cpu_maps(void)
149152
tmp_map[i] = hwid;
150153
}
151154

152-
if (WARN(!bootcpu_valid, "DT missing boot CPU MPIDR[23:0], "
153-
"fall back to default cpu_logical_map\n"))
155+
if (!bootcpu_valid) {
156+
pr_warn("DT missing boot CPU MPIDR[23:0], fall back to default cpu_logical_map\n");
154157
return;
158+
}
155159

156160
/*
157161
* Since the boot CPU node contains proper data, and all nodes have

0 commit comments

Comments
 (0)