Merge drm/drm-next into drm-misc-next

Required backmerge since we will be based on top of v5.11, and there
has been a request to backmerge already to upstream some features.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
This commit is contained in:
Maarten Lankhorst
2020-12-15 11:05:43 +01:00
1911 changed files with 109296 additions and 15900 deletions

View File

@@ -82,7 +82,10 @@ Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@gmail.com>
Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@imgtec.com> Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@imgtec.com>
Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@mips.com> Dengcheng Zhu <dzhu@wavecomp.com> <dengcheng.zhu@mips.com>
<dev.kurt@vandijck-laurijssen.be> <kurt.van.dijck@eia.be> <dev.kurt@vandijck-laurijssen.be> <kurt.van.dijck@eia.be>
Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Dmitry Baryshkov <dbaryshkov@gmail.com>
Dmitry Baryshkov <dbaryshkov@gmail.com> <[dbaryshkov@gmail.com]>
Dmitry Baryshkov <dbaryshkov@gmail.com> <dmitry_baryshkov@mentor.com>
Dmitry Baryshkov <dbaryshkov@gmail.com> <dmitry_eremin@mentor.com>
Dmitry Safonov <0x7f454c46@gmail.com> <dima@arista.com> Dmitry Safonov <0x7f454c46@gmail.com> <dima@arista.com>
Dmitry Safonov <0x7f454c46@gmail.com> <d.safonov@partner.samsung.com> Dmitry Safonov <0x7f454c46@gmail.com> <d.safonov@partner.samsung.com>
Dmitry Safonov <0x7f454c46@gmail.com> <dsafonov@virtuozzo.com> Dmitry Safonov <0x7f454c46@gmail.com> <dsafonov@virtuozzo.com>
@@ -287,6 +290,7 @@ Santosh Shilimkar <ssantosh@kernel.org>
Sarangdhar Joshi <spjoshi@codeaurora.org> Sarangdhar Joshi <spjoshi@codeaurora.org>
Sascha Hauer <s.hauer@pengutronix.de> Sascha Hauer <s.hauer@pengutronix.de>
S.Çağlar Onur <caglar@pardus.org.tr> S.Çağlar Onur <caglar@pardus.org.tr>
Sean Christopherson <seanjc@google.com> <sean.j.christopherson@intel.com>
Sean Nyekjaer <sean@geanix.com> <sean.nyekjaer@prevas.dk> Sean Nyekjaer <sean@geanix.com> <sean.nyekjaer@prevas.dk>
Sebastian Reichel <sre@kernel.org> <sebastian.reichel@collabora.co.uk> Sebastian Reichel <sre@kernel.org> <sebastian.reichel@collabora.co.uk>
Sebastian Reichel <sre@kernel.org> <sre@debian.org> Sebastian Reichel <sre@kernel.org> <sre@debian.org>
@@ -318,6 +322,8 @@ TripleX Chung <xxx.phy@gmail.com> <zhongyu@18mail.cn>
Tsuneo Yoshioka <Tsuneo.Yoshioka@f-secure.com> Tsuneo Yoshioka <Tsuneo.Yoshioka@f-secure.com>
Tycho Andersen <tycho@tycho.pizza> <tycho@tycho.ws> Tycho Andersen <tycho@tycho.pizza> <tycho@tycho.ws>
Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de> Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Uwe Kleine-König <ukleinek@strlen.de>
Uwe Kleine-König <ukl@pengutronix.de> Uwe Kleine-König <ukl@pengutronix.de>
Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
Valdis Kletnieks <Valdis.Kletnieks@vt.edu> Valdis Kletnieks <Valdis.Kletnieks@vt.edu>

15
CREDITS
View File

@@ -740,6 +740,11 @@ S: (ask for current address)
S: Portland, Oregon S: Portland, Oregon
S: USA S: USA
N: Jason Cooper
D: ARM/Marvell SOC co-maintainer
D: irqchip co-maintainer
D: MVEBU PCI DRIVER co-maintainer
N: Robin Cornelius N: Robin Cornelius
E: robincornelius@users.sourceforge.net E: robincornelius@users.sourceforge.net
D: Ralink rt2x00 WLAN driver D: Ralink rt2x00 WLAN driver
@@ -849,6 +854,12 @@ D: trivial hack to add variable address length routing to Rose.
D: AX25-HOWTO, HAM-HOWTO, IPX-HOWTO, NET-2-HOWTO D: AX25-HOWTO, HAM-HOWTO, IPX-HOWTO, NET-2-HOWTO
D: ax25-utils maintainer. D: ax25-utils maintainer.
N: Kamil Debski
E: kamil@wypas.org
D: Samsung S5P 2D graphics acceleration and Multi Format Codec drivers
D: Samsung USB2 phy drivers
D: PWM fan driver
N: Helge Deller N: Helge Deller
E: deller@gmx.de E: deller@gmx.de
W: http://www.parisc-linux.org/ W: http://www.parisc-linux.org/
@@ -2852,6 +2863,10 @@ D: IPX development and support
N: Venkatesh Pallipadi (Venki) N: Venkatesh Pallipadi (Venki)
D: x86/HPET D: x86/HPET
N: Kyungmin Park
E: kyungmin.park@samsung.com
D: Samsung S5Pv210 and Exynos4210 mobile platforms
N: David Parsons N: David Parsons
E: orc@pell.chi.il.us E: orc@pell.chi.il.us
D: improved memory detection code. D: improved memory detection code.

View File

@@ -109,30 +109,6 @@ Description:
When counting down the counter start from preset value When counting down the counter start from preset value
and fire event when reach 0. and fire event when reach 0.
What: /sys/bus/iio/devices/iio:deviceX/in_count_quadrature_mode_available
KernelVersion: 4.12
Contact: benjamin.gaignard@st.com
Description:
Reading returns the list possible quadrature modes.
What: /sys/bus/iio/devices/iio:deviceX/in_count0_quadrature_mode
KernelVersion: 4.12
Contact: benjamin.gaignard@st.com
Description:
Configure the device counter quadrature modes:
channel_A:
Encoder A input servers as the count input and B as
the UP/DOWN direction control input.
channel_B:
Encoder B input serves as the count input and A as
the UP/DOWN direction control input.
quadrature:
Encoder A and B inputs are mixed to get direction
and count with a scale of 0.25.
What: /sys/bus/iio/devices/iio:deviceX/in_count_enable_mode_available What: /sys/bus/iio/devices/iio:deviceX/in_count_enable_mode_available
KernelVersion: 4.12 KernelVersion: 4.12
Contact: benjamin.gaignard@st.com Contact: benjamin.gaignard@st.com

View File

@@ -137,15 +137,24 @@ Boot Kernel With a Boot Config
============================== ==============================
Since the boot configuration file is loaded with initrd, it will be added Since the boot configuration file is loaded with initrd, it will be added
to the end of the initrd (initramfs) image file with size, checksum and to the end of the initrd (initramfs) image file with padding, size,
12-byte magic word as below. checksum and 12-byte magic word as below.
[initrd][bootconfig][size(u32)][checksum(u32)][#BOOTCONFIG\n] [initrd][bootconfig][padding][size(le32)][checksum(le32)][#BOOTCONFIG\n]
The size and checksum fields are unsigned 32bit little endian value.
When the boot configuration is added to the initrd image, the total
file size is aligned to 4 bytes. To fill the gap, null characters
(``\0``) will be added. Thus the ``size`` is the length of the bootconfig
file + padding bytes.
The Linux kernel decodes the last part of the initrd image in memory to The Linux kernel decodes the last part of the initrd image in memory to
get the boot configuration data. get the boot configuration data.
Because of this "piggyback" method, there is no need to change or Because of this "piggyback" method, there is no need to change or
update the boot loader and the kernel image itself. update the boot loader and the kernel image itself as long as the boot
loader passes the correct initrd file size. If by any chance, the boot
loader passes a longer size, the kernel feils to find the bootconfig data.
To do this operation, Linux kernel provides "bootconfig" command under To do this operation, Linux kernel provides "bootconfig" command under
tools/bootconfig, which allows admin to apply or delete the config file tools/bootconfig, which allows admin to apply or delete the config file
@@ -176,7 +185,8 @@ up to 512 key-value pairs. If keys contains 3 words in average, it can
contain 256 key-value pairs. In most cases, the number of config items contain 256 key-value pairs. In most cases, the number of config items
will be under 100 entries and smaller than 8KB, so it would be enough. will be under 100 entries and smaller than 8KB, so it would be enough.
If the node number exceeds 1024, parser returns an error even if the file If the node number exceeds 1024, parser returns an error even if the file
size is smaller than 32KB. size is smaller than 32KB. (Note that this maximum size is not including
the padding null characters.)
Anyway, since bootconfig command verifies it when appending a boot config Anyway, since bootconfig command verifies it when appending a boot config
to initrd image, user can notice it before boot. to initrd image, user can notice it before boot.

View File

@@ -2858,6 +2858,8 @@
mds=off [X86] mds=off [X86]
tsx_async_abort=off [X86] tsx_async_abort=off [X86]
kvm.nx_huge_pages=off [X86] kvm.nx_huge_pages=off [X86]
no_entry_flush [PPC]
no_uaccess_flush [PPC]
Exceptions: Exceptions:
This does not have any effect on This does not have any effect on
@@ -3186,6 +3188,8 @@
noefi Disable EFI runtime services support. noefi Disable EFI runtime services support.
no_entry_flush [PPC] Don't flush the L1-D cache when entering the kernel.
noexec [IA-64] noexec [IA-64]
noexec [X86] noexec [X86]
@@ -3235,6 +3239,9 @@
nospec_store_bypass_disable nospec_store_bypass_disable
[HW] Disable all mitigations for the Speculative Store Bypass vulnerability [HW] Disable all mitigations for the Speculative Store Bypass vulnerability
no_uaccess_flush
[PPC] Don't flush the L1-D cache after accessing user data.
noxsave [BUGS=X86] Disables x86 extended register state save noxsave [BUGS=X86] Disables x86 extended register state save
and restore using xsave. The kernel will fallback to and restore using xsave. The kernel will fallback to
enabling legacy floating-point and sse state. enabling legacy floating-point and sse state.

View File

@@ -90,7 +90,7 @@ things to try.
re-run kunit_tool. re-run kunit_tool.
5. Try to run ``make ARCH=um defconfig`` before running ``kunit.py run``. This 5. Try to run ``make ARCH=um defconfig`` before running ``kunit.py run``. This
may help clean up any residual config items which could be causing problems. may help clean up any residual config items which could be causing problems.
6. Finally, try running KUnit outside UML. KUnit and KUnit tests can run be 6. Finally, try running KUnit outside UML. KUnit and KUnit tests can be
built into any kernel, or can be built as a module and loaded at runtime. built into any kernel, or can be built as a module and loaded at runtime.
Doing so should allow you to determine if UML is causing the issue you're Doing so should allow you to determine if UML is causing the issue you're
seeing. When tests are built-in, they will execute when the kernel boots, and seeing. When tests are built-in, they will execute when the kernel boots, and

View File

@@ -183,9 +183,9 @@ An example Kconfig entry:
This builds unit tests for foo. This builds unit tests for foo.
For more information on KUnit and unit tests in general, please refer For more information on KUnit and unit tests in general, please refer
to the KUnit documentation in Documentation/dev-tools/kunit to the KUnit documentation in Documentation/dev-tools/kunit/.
If unsure, say N If unsure, say N.
Test File and Module Names Test File and Module Names

View File

@@ -92,7 +92,7 @@ behavior of a function called ``add``; the first parameter is always of type
the second parameter, in this case, is what the value is expected to be; the the second parameter, in this case, is what the value is expected to be; the
last value is what the value actually is. If ``add`` passes all of these last value is what the value actually is. If ``add`` passes all of these
expectations, the test case, ``add_test_basic`` will pass; if any one of these expectations, the test case, ``add_test_basic`` will pass; if any one of these
expectations fail, the test case will fail. expectations fails, the test case will fail.
It is important to understand that a test case *fails* when any expectation is It is important to understand that a test case *fails* when any expectation is
violated; however, the test will continue running, potentially trying other violated; however, the test will continue running, potentially trying other
@@ -202,7 +202,7 @@ Example:
kunit_test_suite(example_test_suite); kunit_test_suite(example_test_suite);
In the above example the test suite, ``example_test_suite``, would run the test In the above example the test suite, ``example_test_suite``, would run the test
cases ``example_test_foo``, ``example_test_bar``, and ``example_test_baz``, cases ``example_test_foo``, ``example_test_bar``, and ``example_test_baz``;
each would have ``example_test_init`` called immediately before it and would each would have ``example_test_init`` called immediately before it and would
have ``example_test_exit`` called immediately after it. have ``example_test_exit`` called immediately after it.
``kunit_test_suite(example_test_suite)`` registers the test suite with the ``kunit_test_suite(example_test_suite)`` registers the test suite with the
@@ -229,7 +229,7 @@ through some sort of indirection where a function is exposed as part of an API
such that the definition of that function can be changed without affecting the such that the definition of that function can be changed without affecting the
rest of the code base. In the kernel this primarily comes from two constructs, rest of the code base. In the kernel this primarily comes from two constructs,
classes, structs that contain function pointers that are provided by the classes, structs that contain function pointers that are provided by the
implementer, and architecture specific functions which have definitions selected implementer, and architecture-specific functions which have definitions selected
at compile time. at compile time.
Classes Classes
@@ -459,7 +459,7 @@ KUnit on non-UML architectures
By default KUnit uses UML as a way to provide dependencies for code under test. By default KUnit uses UML as a way to provide dependencies for code under test.
Under most circumstances KUnit's usage of UML should be treated as an Under most circumstances KUnit's usage of UML should be treated as an
implementation detail of how KUnit works under the hood. Nevertheless, there implementation detail of how KUnit works under the hood. Nevertheless, there
are instances where being able to run architecture specific code or test are instances where being able to run architecture-specific code or test
against real hardware is desirable. For these reasons KUnit supports running on against real hardware is desirable. For these reasons KUnit supports running on
other architectures. other architectures.
@@ -599,7 +599,7 @@ writing normal KUnit tests. One special caveat is that you have to reset
hardware state in between test cases; if this is not possible, you may only be hardware state in between test cases; if this is not possible, you may only be
able to run one test case per invocation. able to run one test case per invocation.
.. TODO(brendanhiggins@google.com): Add an actual example of an architecture .. TODO(brendanhiggins@google.com): Add an actual example of an architecture-
dependent KUnit test. dependent KUnit test.
KUnit debugfs representation KUnit debugfs representation

View File

@@ -57,7 +57,7 @@ examples:
}; };
can@53fc8000 { can@53fc8000 {
compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan"; compatible = "fsl,imx53-flexcan", "fsl,imx25-flexcan";
reg = <0x53fc8000 0x4000>; reg = <0x53fc8000 0x4000>;
interrupts = <82>; interrupts = <82>;
clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>, <&clks IMX5_CLK_CAN1_SERIAL_GATE>; clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>, <&clks IMX5_CLK_CAN1_SERIAL_GATE>;

View File

@@ -76,6 +76,12 @@ properties:
resets: resets:
maxItems: 1 maxItems: 1
wifi-2.4ghz-coexistence:
type: boolean
description: >
Should the pixel frequencies in the WiFi frequencies range be
avoided?
required: required:
- compatible - compatible
- reg - reg

View File

@@ -43,7 +43,7 @@ Required properties (all function blocks):
"mediatek,<chip>-dpi" - DPI controller, see mediatek,dpi.txt "mediatek,<chip>-dpi" - DPI controller, see mediatek,dpi.txt
"mediatek,<chip>-disp-mutex" - display mutex "mediatek,<chip>-disp-mutex" - display mutex
"mediatek,<chip>-disp-od" - overdrive "mediatek,<chip>-disp-od" - overdrive
the supported chips are mt2701, mt7623, mt2712 and mt8173. the supported chips are mt2701, mt7623, mt2712, mt8167 and mt8173.
- reg: Physical base address and length of the function block register space - reg: Physical base address and length of the function block register space
- interrupts: The interrupt signal from the function block (required, except for - interrupts: The interrupt signal from the function block (required, except for
merge and split function blocks). merge and split function blocks).
@@ -59,7 +59,7 @@ Required properties (DMA function blocks):
"mediatek,<chip>-disp-ovl" "mediatek,<chip>-disp-ovl"
"mediatek,<chip>-disp-rdma" "mediatek,<chip>-disp-rdma"
"mediatek,<chip>-disp-wdma" "mediatek,<chip>-disp-wdma"
the supported chips are mt2701 and mt8173. the supported chips are mt2701, mt8167 and mt8173.
- larb: Should contain a phandle pointing to the local arbiter device as defined - larb: Should contain a phandle pointing to the local arbiter device as defined
in Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.txt in Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.txt
- iommus: Should point to the respective IOMMU block with master port as - iommus: Should point to the respective IOMMU block with master port as

View File

@@ -1,42 +0,0 @@
Mediatek DPI Device
===================
The Mediatek DPI function block is a sink of the display subsystem and
provides 8-bit RGB/YUV444 or 8/10/10-bit YUV422 pixel data on a parallel
output bus.
Required properties:
- compatible: "mediatek,<chip>-dpi"
the supported chips are mt2701, mt7623, mt8173 and mt8183.
- reg: Physical base address and length of the controller's registers
- interrupts: The interrupt signal from the function block.
- clocks: device clocks
See Documentation/devicetree/bindings/clock/clock-bindings.txt for details.
- clock-names: must contain "pixel", "engine", and "pll"
- port: Output port node with endpoint definitions as described in
Documentation/devicetree/bindings/graph.txt. This port should be connected
to the input port of an attached HDMI or LVDS encoder chip.
Optional properties:
- pinctrl-names: Contain "default" and "sleep".
Example:
dpi0: dpi@1401d000 {
compatible = "mediatek,mt8173-dpi";
reg = <0 0x1401d000 0 0x1000>;
interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_LOW>;
clocks = <&mmsys CLK_MM_DPI_PIXEL>,
<&mmsys CLK_MM_DPI_ENGINE>,
<&apmixedsys CLK_APMIXED_TVDPLL>;
clock-names = "pixel", "engine", "pll";
pinctrl-names = "default", "sleep";
pinctrl-0 = <&dpi_pin_func>;
pinctrl-1 = <&dpi_pin_idle>;
port {
dpi0_out: endpoint {
remote-endpoint = <&hdmi0_in>;
};
};
};

View File

@@ -0,0 +1,98 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/mediatek/mediatek,dpi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: mediatek DPI Controller Device Tree Bindings
maintainers:
- CK Hu <ck.hu@mediatek.com>
- Jitao shi <jitao.shi@mediatek.com>
description: |
The Mediatek DPI function block is a sink of the display subsystem and
provides 8-bit RGB/YUV444 or 8/10/10-bit YUV422 pixel data on a parallel
output bus.
properties:
compatible:
enum:
- mediatek,mt2701-dpi
- mediatek,mt7623-dpi
- mediatek,mt8173-dpi
- mediatek,mt8183-dpi
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
items:
- description: Pixel Clock
- description: Engine Clock
- description: DPI PLL
clock-names:
items:
- const: pixel
- const: engine
- const: pll
pinctrl-0: true
pinctrl-1: true
pinctrl-names:
items:
- const: default
- const: sleep
port:
type: object
description:
Output port node with endpoint definitions as described in
Documentation/devicetree/bindings/graph.txt. This port should be connected
to the input port of an attached HDMI or LVDS encoder chip.
properties:
endpoint:
type: object
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- port
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/mt8173-clk.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
dpi0: dpi@1401d000 {
compatible = "mediatek,mt8173-dpi";
reg = <0x1401d000 0x1000>;
interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_LOW>;
clocks = <&mmsys CLK_MM_DPI_PIXEL>,
<&mmsys CLK_MM_DPI_ENGINE>,
<&apmixedsys CLK_APMIXED_TVDPLL>;
clock-names = "pixel", "engine", "pll";
pinctrl-names = "default", "sleep";
pinctrl-0 = <&dpi_pin_func>;
pinctrl-1 = <&dpi_pin_idle>;
port {
dpi0_out: endpoint {
remote-endpoint = <&hdmi0_in>;
};
};
};
...

View File

@@ -39,6 +39,10 @@ Required properties:
a4xx Snapdragon SoCs. See a4xx Snapdragon SoCs. See
Documentation/devicetree/bindings/sram/qcom,ocmem.yaml. Documentation/devicetree/bindings/sram/qcom,ocmem.yaml.
Optional properties:
- #cooling-cells: The value must be 2. For details, please refer
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml.
Example 3xx/4xx: Example 3xx/4xx:
/ { / {
@@ -61,6 +65,7 @@ Example 3xx/4xx:
power-domains = <&mmcc OXILICX_GDSC>; power-domains = <&mmcc OXILICX_GDSC>;
operating-points-v2 = <&gpu_opp_table>; operating-points-v2 = <&gpu_opp_table>;
iommus = <&gpu_iommu 0>; iommus = <&gpu_iommu 0>;
#cooling-cells = <2>;
}; };
gpu_sram: ocmem@fdd00000 { gpu_sram: ocmem@fdd00000 {
@@ -98,6 +103,8 @@ Example a6xx (with GMU):
reg = <0x5000000 0x40000>, <0x509e000 0x10>; reg = <0x5000000 0x40000>, <0x509e000 0x10>;
reg-names = "kgsl_3d0_reg_memory", "cx_mem"; reg-names = "kgsl_3d0_reg_memory", "cx_mem";
#cooling-cells = <2>;
/* /*
* Look ma, no clocks! The GPU clocks and power are * Look ma, no clocks! The GPU clocks and power are
* controlled entirely by the GMU * controlled entirely by the GMU

View File

@@ -20,14 +20,17 @@ properties:
- fsl,imx8qm-flexcan - fsl,imx8qm-flexcan
- fsl,imx8mp-flexcan - fsl,imx8mp-flexcan
- fsl,imx6q-flexcan - fsl,imx6q-flexcan
- fsl,imx53-flexcan
- fsl,imx35-flexcan
- fsl,imx28-flexcan - fsl,imx28-flexcan
- fsl,imx25-flexcan - fsl,imx25-flexcan
- fsl,p1010-flexcan - fsl,p1010-flexcan
- fsl,vf610-flexcan - fsl,vf610-flexcan
- fsl,ls1021ar2-flexcan - fsl,ls1021ar2-flexcan
- fsl,lx2160ar1-flexcan - fsl,lx2160ar1-flexcan
- items:
- enum:
- fsl,imx53-flexcan
- fsl,imx35-flexcan
- const: fsl,imx25-flexcan
- items: - items:
- enum: - enum:
- fsl,imx7d-flexcan - fsl,imx7d-flexcan
@@ -80,6 +83,7 @@ properties:
req_gpr is the gpr register offset of CAN stop request. req_gpr is the gpr register offset of CAN stop request.
req_bit is the bit offset of CAN stop request. req_bit is the bit offset of CAN stop request.
$ref: /schemas/types.yaml#/definitions/phandle-array $ref: /schemas/types.yaml#/definitions/phandle-array
items:
items: items:
- description: The 'gpr' is the phandle to general purpose register node. - description: The 'gpr' is the phandle to general purpose register node.
- description: The 'req_gpr' is the gpr register offset of CAN stop request. - description: The 'req_gpr' is the gpr register offset of CAN stop request.

View File

@@ -33,7 +33,7 @@ tcan4x5x: tcan4x5x@0 {
spi-max-frequency = <10000000>; spi-max-frequency = <10000000>;
bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>; bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>;
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <14 GPIO_ACTIVE_LOW>; interrupts = <14 IRQ_TYPE_LEVEL_LOW>;
device-state-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; device-state-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
device-wake-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; device-wake-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>; reset-gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>;

View File

@@ -25,7 +25,7 @@ Example (for ARM-based BeagleBone with NPC100 NFC controller on I2C2):
clock-frequency = <100000>; clock-frequency = <100000>;
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <29 GPIO_ACTIVE_HIGH>; interrupts = <29 IRQ_TYPE_LEVEL_HIGH>;
enable-gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>; enable-gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>;
firmware-gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>; firmware-gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>;

View File

@@ -25,7 +25,7 @@ Example (for ARM-based BeagleBone with PN544 on I2C2):
clock-frequency = <400000>; clock-frequency = <400000>;
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <17 GPIO_ACTIVE_HIGH>; interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;

View File

@@ -8,10 +8,16 @@ Required properties:
- reg : The I2C address of the device. - reg : The I2C address of the device.
Optional properties:
- realtek,power-up-delay-ms
Set a delay time for flush work to be completed,
this value is adjustable depending on platform.
Example: Example:
rt1015: codec@28 { rt1015: codec@28 {
compatible = "realtek,rt1015"; compatible = "realtek,rt1015";
reg = <0x28>; reg = <0x28>;
realtek,power-up-delay-ms = <50>;
}; };

View File

@@ -149,11 +149,11 @@ vidtv_psi.[ch]
Because the generator is implemented in a separate file, it can be Because the generator is implemented in a separate file, it can be
reused elsewhere in the media subsystem. reused elsewhere in the media subsystem.
Currently vidtv supports working with 3 PSI tables: PAT, PMT and Currently vidtv supports working with 5 PSI tables: PAT, PMT,
SDT. SDT, NIT and EIT.
The specification for PAT and PMT can be found in *ISO 13818-1: The specification for PAT and PMT can be found in *ISO 13818-1:
Systems*, while the specification for the SDT can be found in *ETSI Systems*, while the specification for the SDT, NIT, EIT can be found in *ETSI
EN 300 468: Specification for Service Information (SI) in DVB EN 300 468: Specification for Service Information (SI) in DVB
systems*. systems*.
@@ -197,6 +197,8 @@ vidtv_channel.[ch]
#. Their programs will be concatenated to populate the PAT #. Their programs will be concatenated to populate the PAT
#. Their events will be concatenated to populate the EIT
#. For each program in the PAT, a PMT section will be created #. For each program in the PAT, a PMT section will be created
#. The PMT section for a channel will be assigned its streams. #. The PMT section for a channel will be assigned its streams.
@@ -256,6 +258,42 @@ Using dvb-fe-tool
The first step to check whether the demod loaded successfully is to run:: The first step to check whether the demod loaded successfully is to run::
$ dvb-fe-tool $ dvb-fe-tool
Device Dummy demod for DVB-T/T2/C/S/S2 (/dev/dvb/adapter0/frontend0) capabilities:
CAN_FEC_1_2
CAN_FEC_2_3
CAN_FEC_3_4
CAN_FEC_4_5
CAN_FEC_5_6
CAN_FEC_6_7
CAN_FEC_7_8
CAN_FEC_8_9
CAN_FEC_AUTO
CAN_GUARD_INTERVAL_AUTO
CAN_HIERARCHY_AUTO
CAN_INVERSION_AUTO
CAN_QAM_16
CAN_QAM_32
CAN_QAM_64
CAN_QAM_128
CAN_QAM_256
CAN_QAM_AUTO
CAN_QPSK
CAN_TRANSMISSION_MODE_AUTO
DVB API Version 5.11, Current v5 delivery system: DVBC/ANNEX_A
Supported delivery systems:
DVBT
DVBT2
[DVBC/ANNEX_A]
DVBS
DVBS2
Frequency range for the current standard:
From: 51.0 MHz
To: 2.15 GHz
Step: 62.5 kHz
Tolerance: 29.5 MHz
Symbol rate ranges for the current standard:
From: 1.00 MBauds
To: 45.0 MBauds
This should return what is currently set up at the demod struct, i.e.:: This should return what is currently set up at the demod struct, i.e.::
@@ -314,7 +352,7 @@ For this, one should provide a configuration file known as a 'scan file',
here's an example:: here's an example::
[Channel] [Channel]
FREQUENCY = 330000000 FREQUENCY = 474000000
MODULATION = QAM/AUTO MODULATION = QAM/AUTO
SYMBOL_RATE = 6940000 SYMBOL_RATE = 6940000
INNER_FEC = AUTO INNER_FEC = AUTO
@@ -335,6 +373,14 @@ You can browse scan tables online here: `dvb-scan-tables
Assuming this channel is named 'channel.conf', you can then run:: Assuming this channel is named 'channel.conf', you can then run::
$ dvbv5-scan channel.conf $ dvbv5-scan channel.conf
dvbv5-scan ~/vidtv.conf
ERROR command BANDWIDTH_HZ (5) not found during retrieve
Cannot calc frequency shift. Either bandwidth/symbol-rate is unavailable (yet).
Scanning frequency #1 330000000
(0x00) Signal= -68.00dBm
Scanning frequency #2 474000000
Lock (0x1f) Signal= -34.45dBm C/N= 33.74dB UCB= 0
Service Beethoven, provider LinuxTV.org: digital television
For more information on dvb-scan, check its documentation online here: For more information on dvb-scan, check its documentation online here:
`dvb-scan Documentation <https://www.linuxtv.org/wiki/index.php/Dvbscan>`_. `dvb-scan Documentation <https://www.linuxtv.org/wiki/index.php/Dvbscan>`_.
@@ -344,23 +390,38 @@ Using dvb-zap
dvbv5-zap is a command line tool that can be used to record MPEG-TS to disk. The dvbv5-zap is a command line tool that can be used to record MPEG-TS to disk. The
typical use is to tune into a channel and put it into record mode. The example typical use is to tune into a channel and put it into record mode. The example
below - which is taken from the documentation - illustrates that:: below - which is taken from the documentation - illustrates that\ [1]_::
$ dvbv5-zap -c dvb_channel.conf "trilhas sonoras" -r $ dvbv5-zap -c dvb_channel.conf "beethoven" -o music.ts -P -t 10
using demux '/dev/dvb/adapter0/demux0' using demux 'dvb0.demux0'
reading channels from file 'dvb_channel.conf' reading channels from file 'dvb_channel.conf'
service has pid type 05: 204 tuning to 474000000 Hz
tuning to 573000000 Hz pass all PID's to TS
audio pid 104 dvb_set_pesfilter 8192
dvb_set_pesfilter 104 dvb_dev_set_bufsize: buffer set to 6160384
Lock (0x1f) Quality= Good Signal= 100.00% C/N= -13.80dB UCB= 70 postBER= 3.14x10^-3 PER= 0 Lock (0x1f) Quality= Good Signal= -34.66dBm C/N= 33.41dB UCB= 0 postBER= 0 preBER= 1.05x10^-3 PER= 0
DVR interface '/dev/dvb/adapter0/dvr0' can now be opened Lock (0x1f) Quality= Good Signal= -34.57dBm C/N= 33.46dB UCB= 0 postBER= 0 preBER= 1.05x10^-3 PER= 0
Record to file 'music.ts' started
received 24587768 bytes (2401 Kbytes/sec)
Lock (0x1f) Quality= Good Signal= -34.42dBm C/N= 33.89dB UCB= 0 postBER= 0 preBER= 2.44x10^-3 PER= 0
The channel can be watched by playing the contents of the DVR interface, with .. [1] In this example, it records 10 seconds with all program ID's stored
some player that recognizes the MPEG-TS format, such as *mplayer* or *vlc*. at the music.ts file.
The channel can be watched by playing the contents of the stream with some
player that recognizes the MPEG-TS format, such as ``mplayer`` or ``vlc``.
By playing the contents of the stream one can visually inspect the workings of By playing the contents of the stream one can visually inspect the workings of
vidtv, e.g.:: vidtv, e.g., to play a recorded TS file with::
$ mplayer music.ts
or, alternatively, running this command on one terminal::
$ dvbv5-zap -c dvb_channel.conf "beethoven" -P -r &
And, on a second terminal, playing the contents from DVR interface with::
$ mplayer /dev/dvb/adapter0/dvr0 $ mplayer /dev/dvb/adapter0/dvr0
@@ -423,3 +484,30 @@ A nice addition is to simulate some noise when the signal quality is bad by:
- Updating the error statistics accordingly (e.g. BER, etc). - Updating the error statistics accordingly (e.g. BER, etc).
- Simulating some noise in the encoded data. - Simulating some noise in the encoded data.
Functions and structs used within vidtv
---------------------------------------
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_bridge.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_channel.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_demod.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_encoder.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_mux.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_pes.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_psi.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_s302m.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_ts.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_tuner.h
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_common.c
.. kernel-doc:: drivers/media/test-drivers/vidtv/vidtv_tuner.c

View File

@@ -256,6 +256,10 @@ which is 1024 bytes long:
- s\_padding2 - s\_padding2
- -
* - 0x54 * - 0x54
- \_\_be32
- s\_num\_fc\_blocks
- Number of fast commit blocks in the journal.
* - 0x58
- \_\_u32 - \_\_u32
- s\_padding[42] - s\_padding[42]
- -
@@ -310,6 +314,8 @@ The journal incompat features are any combination of the following:
- This journal uses v3 of the checksum on-disk format. This is the same as - This journal uses v3 of the checksum on-disk format. This is the same as
v2, but the journal block tag size is fixed regardless of the size of v2, but the journal block tag size is fixed regardless of the size of
block numbers. (JBD2\_FEATURE\_INCOMPAT\_CSUM\_V3) block numbers. (JBD2\_FEATURE\_INCOMPAT\_CSUM\_V3)
* - 0x20
- Journal has fast commit blocks. (JBD2\_FEATURE\_INCOMPAT\_FAST\_COMMIT)
.. _jbd2_checksum_type: .. _jbd2_checksum_type:

View File

@@ -596,6 +596,13 @@ following:
- Sparse Super Block, v2. If this flag is set, the SB field s\_backup\_bgs - Sparse Super Block, v2. If this flag is set, the SB field s\_backup\_bgs
points to the two block groups that contain backup superblocks points to the two block groups that contain backup superblocks
(COMPAT\_SPARSE\_SUPER2). (COMPAT\_SPARSE\_SUPER2).
* - 0x400
- Fast commits supported. Although fast commits blocks are
backward incompatible, fast commit blocks are not always
present in the journal. If fast commit blocks are present in
the journal, JBD2 incompat feature
(JBD2\_FEATURE\_INCOMPAT\_FAST\_COMMIT) gets
set (COMPAT\_FAST\_COMMIT).
.. _super_incompat: .. _super_incompat:

View File

@@ -136,10 +136,8 @@ Fast commits
~~~~~~~~~~~~ ~~~~~~~~~~~~
JBD2 to also allows you to perform file-system specific delta commits known as JBD2 to also allows you to perform file-system specific delta commits known as
fast commits. In order to use fast commits, you first need to call fast commits. In order to use fast commits, you will need to set following
:c:func:`jbd2_fc_init` and tell how many blocks at the end of journal callbacks that perform correspodning work:
area should be reserved for fast commits. Along with that, you will also need
to set following callbacks that perform correspodning work:
`journal->j_fc_cleanup_cb`: Cleanup function called after every full commit and `journal->j_fc_cleanup_cb`: Cleanup function called after every full commit and
fast commit. fast commit.

View File

@@ -19,9 +19,9 @@ report the "current" state of the lid as either "opened" or "closed".
For most platforms, both the _LID method and the lid notifications are For most platforms, both the _LID method and the lid notifications are
reliable. However, there are exceptions. In order to work with these reliable. However, there are exceptions. In order to work with these
exceptional buggy platforms, special restrictions and expections should be exceptional buggy platforms, special restrictions and exceptions should be
taken into account. This document describes the restrictions and the taken into account. This document describes the restrictions and the
expections of the Linux ACPI lid device driver. exceptions of the Linux ACPI lid device driver.
Restrictions of the returning value of the _LID control method Restrictions of the returning value of the _LID control method
@@ -46,7 +46,7 @@ state is changed to "closed". The "closed" notification is normally used to
trigger some system power saving operations on Windows. Since it is fully trigger some system power saving operations on Windows. Since it is fully
tested, it is reliable from all AML tables. tested, it is reliable from all AML tables.
Expections for the userspace users of the ACPI lid device driver Exceptions for the userspace users of the ACPI lid device driver
================================================================ ================================================================
The ACPI button driver exports the lid state to the userspace via the The ACPI button driver exports the lid state to the userspace via the
@@ -100,7 +100,7 @@ use the following kernel parameter:
C. button.lid_init_state=ignore: C. button.lid_init_state=ignore:
When this option is specified, the ACPI button driver never reports the When this option is specified, the ACPI button driver never reports the
initial lid state and there is a compensation mechanism implemented to initial lid state and there is a compensation mechanism implemented to
ensure that the reliable "closed" notifications can always be delievered ensure that the reliable "closed" notifications can always be delivered
to the userspace by always pairing "closed" input events with complement to the userspace by always pairing "closed" input events with complement
"opened" input events. But there is still no guarantee that the "opened" "opened" input events. But there is still no guarantee that the "opened"
notifications can be delivered to the userspace when the lid is actually notifications can be delivered to the userspace when the lid is actually

View File

@@ -20,9 +20,9 @@ index, like the ASL example below shows::
Name (_CRS, ResourceTemplate () Name (_CRS, ResourceTemplate ()
{ {
GpioIo (Exclusive, PullUp, 0, 0, IoRestrictionInputOnly, GpioIo (Exclusive, PullUp, 0, 0, IoRestrictionOutputOnly,
"\\_SB.GPO0", 0, ResourceConsumer) {15} "\\_SB.GPO0", 0, ResourceConsumer) {15}
GpioIo (Exclusive, PullUp, 0, 0, IoRestrictionInputOnly, GpioIo (Exclusive, PullUp, 0, 0, IoRestrictionOutputOnly,
"\\_SB.GPO0", 0, ResourceConsumer) {27, 31} "\\_SB.GPO0", 0, ResourceConsumer) {27, 31}
}) })
@@ -49,15 +49,41 @@ index
pin pin
Pin in the GpioIo()/GpioInt() resource. Typically this is zero. Pin in the GpioIo()/GpioInt() resource. Typically this is zero.
active_low active_low
If 1 the GPIO is marked as active_low. If 1, the GPIO is marked as active_low.
Since ACPI GpioIo() resource does not have a field saying whether it is Since ACPI GpioIo() resource does not have a field saying whether it is
active low or high, the "active_low" argument can be used here. Setting active low or high, the "active_low" argument can be used here. Setting
it to 1 marks the GPIO as active low. it to 1 marks the GPIO as active low.
Note, active_low in _DSD does not make sense for GpioInt() resource and
must be 0. GpioInt() resource has its own means of defining it.
In our Bluetooth example the "reset-gpios" refers to the second GpioIo() In our Bluetooth example the "reset-gpios" refers to the second GpioIo()
resource, second pin in that resource with the GPIO number of 31. resource, second pin in that resource with the GPIO number of 31.
The GpioIo() resource unfortunately doesn't explicitly provide an initial
state of the output pin which driver should use during its initialization.
Linux tries to use common sense here and derives the state from the bias
and polarity settings. The table below shows the expectations:
========= ============= ==============
Pull Bias Polarity Requested...
========= ============= ==============
Implicit x AS IS (assumed firmware configured for us)
Explicit x (no _DSD) as Pull Bias (Up == High, Down == Low),
assuming non-active (Polarity = !Pull Bias)
Down Low as low, assuming active
Down High as low, assuming non-active
Up Low as high, assuming non-active
Up High as high, assuming active
========= ============= ==============
That said, for our above example the both GPIOs, since the bias setting
is explicit and _DSD is present, will be treated as active with a high
polarity and Linux will configure the pins in this state until a driver
reprograms them differently.
It is possible to leave holes in the array of GPIOs. This is useful in It is possible to leave holes in the array of GPIOs. This is useful in
cases like with SPI host controllers where some chip selects may be cases like with SPI host controllers where some chip selects may be
implemented as GPIOs and some as native signals. For example a SPI host implemented as GPIOs and some as native signals. For example a SPI host
@@ -112,8 +138,8 @@ Example::
Package () { Package () {
"gpio-line-names", "gpio-line-names",
Package () { Package () {
"SPI0_CS_N", "EXP2_INT", "MUX6_IO", "UART0_RXD", "MUX7_IO", "SPI0_CS_N", "EXP2_INT", "MUX6_IO", "UART0_RXD",
"LVL_C_A1", "MUX0_IO", "SPI1_MISO" "MUX7_IO", "LVL_C_A1", "MUX0_IO", "SPI1_MISO",
} }
} }
@@ -137,7 +163,7 @@ to the GPIO lines it is going to use and provide the GPIO subsystem with a
mapping between those names and the ACPI GPIO resources corresponding to them. mapping between those names and the ACPI GPIO resources corresponding to them.
To do that, the driver needs to define a mapping table as a NULL-terminated To do that, the driver needs to define a mapping table as a NULL-terminated
array of struct acpi_gpio_mapping objects that each contain a name, a pointer array of struct acpi_gpio_mapping objects that each contains a name, a pointer
to an array of line data (struct acpi_gpio_params) objects and the size of that to an array of line data (struct acpi_gpio_params) objects and the size of that
array. Each struct acpi_gpio_params object consists of three fields, array. Each struct acpi_gpio_params object consists of three fields,
crs_entry_index, line_index, active_low, representing the index of the target crs_entry_index, line_index, active_low, representing the index of the target
@@ -154,13 +180,14 @@ question would look like this::
static const struct acpi_gpio_mapping bluetooth_acpi_gpios[] = { static const struct acpi_gpio_mapping bluetooth_acpi_gpios[] = {
{ "reset-gpios", &reset_gpio, 1 }, { "reset-gpios", &reset_gpio, 1 },
{ "shutdown-gpios", &shutdown_gpio, 1 }, { "shutdown-gpios", &shutdown_gpio, 1 },
{ }, { }
}; };
Next, the mapping table needs to be passed as the second argument to Next, the mapping table needs to be passed as the second argument to
acpi_dev_add_driver_gpios() that will register it with the ACPI device object acpi_dev_add_driver_gpios() or its managed analogue that will
pointed to by its first argument. That should be done in the driver's .probe() register it with the ACPI device object pointed to by its first
routine. On removal, the driver should unregister its GPIO mapping table by argument. That should be done in the driver's .probe() routine.
On removal, the driver should unregister its GPIO mapping table by
calling acpi_dev_remove_driver_gpios() on the ACPI device object where that calling acpi_dev_remove_driver_gpios() on the ACPI device object where that
table was previously registered. table was previously registered.
@@ -191,12 +218,12 @@ The driver might expect to get the right GPIO when it does::
but since there is no way to know the mapping between "reset" and but since there is no way to know the mapping between "reset" and
the GpioIo() in _CRS desc will hold ERR_PTR(-ENOENT). the GpioIo() in _CRS desc will hold ERR_PTR(-ENOENT).
The driver author can solve this by passing the mapping explictly The driver author can solve this by passing the mapping explicitly
(the recommended way and documented in the above chapter). (this is the recommended way and it's documented in the above chapter).
The ACPI GPIO mapping tables should not contaminate drivers that are not The ACPI GPIO mapping tables should not contaminate drivers that are not
knowing about which exact device they are servicing on. It implies that knowing about which exact device they are servicing on. It implies that
the ACPI GPIO mapping tables are hardly linked to ACPI ID and certain the ACPI GPIO mapping tables are hardly linked to an ACPI ID and certain
objects, as listed in the above chapter, of the device in question. objects, as listed in the above chapter, of the device in question.
Getting GPIO descriptor Getting GPIO descriptor
@@ -229,5 +256,5 @@ Case 2 explicitly tells GPIO core to look for resources in _CRS.
Be aware that gpiod_get_index() in cases 1 and 2, assuming that there Be aware that gpiod_get_index() in cases 1 and 2, assuming that there
are two versions of ACPI device description provided and no mapping is are two versions of ACPI device description provided and no mapping is
present in the driver, will return different resources. That's why a present in the driver, will return different resources. That's why a
certain driver has to handle them carefully as explained in previous certain driver has to handle them carefully as explained in the previous
chapter. chapter.

View File

@@ -98,7 +98,7 @@ subject to change::
[ 0.188903] exdebug-0398 ex_trace_point : Method End [0xf58394d8:\_SB.PCI0.LPCB.ECOK] execution. [ 0.188903] exdebug-0398 ex_trace_point : Method End [0xf58394d8:\_SB.PCI0.LPCB.ECOK] execution.
Developers can utilize these special log entries to track the AML Developers can utilize these special log entries to track the AML
interpretion, thus can aid issue debugging and performance tuning. Note interpretation, thus can aid issue debugging and performance tuning. Note
that, as the "AML tracer" logs are implemented via ACPI_DEBUG_PRINT() that, as the "AML tracer" logs are implemented via ACPI_DEBUG_PRINT()
macro, CONFIG_ACPI_DEBUG is also required to be enabled for enabling macro, CONFIG_ACPI_DEBUG is also required to be enabled for enabling
"AML tracer" logs. "AML tracer" logs.

View File

@@ -57,9 +57,8 @@ to enable them. ::
They can be enabled individually. The full list of the parameters: :: They can be enabled individually. The full list of the parameters: ::
make CC=clang LD=ld.lld AR=llvm-ar NM=llvm-nm STRIP=llvm-strip \ make CC=clang LD=ld.lld AR=llvm-ar NM=llvm-nm STRIP=llvm-strip \
OBJCOPY=llvm-objcopy OBJDUMP=llvm-objdump OBJSIZE=llvm-size \ OBJCOPY=llvm-objcopy OBJDUMP=llvm-objdump READELF=llvm-readelf \
READELF=llvm-readelf HOSTCC=clang HOSTCXX=clang++ HOSTAR=llvm-ar \ HOSTCC=clang HOSTCXX=clang++ HOSTAR=llvm-ar HOSTLD=ld.lld
HOSTLD=ld.lld
Currently, the integrated assembler is disabled by default. You can pass Currently, the integrated assembler is disabled by default. You can pass
``LLVM_IAS=1`` to enable it. ``LLVM_IAS=1`` to enable it.

View File

@@ -110,7 +110,7 @@ Q: I sent a patch and I'm wondering what happened to it?
Q: How can I tell whether it got merged? Q: How can I tell whether it got merged?
A: Start by looking at the main patchworks queue for netdev: A: Start by looking at the main patchworks queue for netdev:
http://patchwork.ozlabs.org/project/netdev/list/ https://patchwork.kernel.org/project/netdevbpf/list/
The "State" field will tell you exactly where things are at with your The "State" field will tell you exactly where things are at with your
patch. patch.
@@ -152,7 +152,7 @@ networking subsystem, and then hands them off to Greg.
There is a patchworks queue that you can see here: There is a patchworks queue that you can see here:
http://patchwork.ozlabs.org/bundle/davem/stable/?state=* https://patchwork.kernel.org/bundle/netdev/stable/?state=*
It contains the patches which Dave has selected, but not yet handed off It contains the patches which Dave has selected, but not yet handed off
to Greg. If Greg already has the patch, then it will be here: to Greg. If Greg already has the patch, then it will be here:
@@ -254,6 +254,32 @@ you will have done run-time testing specific to your change, but at a
minimum, your changes should survive an ``allyesconfig`` and an minimum, your changes should survive an ``allyesconfig`` and an
``allmodconfig`` build without new warnings or failures. ``allmodconfig`` build without new warnings or failures.
Q: How do I post corresponding changes to user space components?
----------------------------------------------------------------
A: User space code exercising kernel features should be posted
alongside kernel patches. This gives reviewers a chance to see
how any new interface is used and how well it works.
When user space tools reside in the kernel repo itself all changes
should generally come as one series. If series becomes too large
or the user space project is not reviewed on netdev include a link
to a public repo where user space patches can be seen.
In case user space tooling lives in a separate repository but is
reviewed on netdev (e.g. patches to `iproute2` tools) kernel and
user space patches should form separate series (threads) when posted
to the mailing list, e.g.::
[PATCH net-next 0/3] net: some feature cover letter
└─ [PATCH net-next 1/3] net: some feature prep
└─ [PATCH net-next 2/3] net: some feature do it
└─ [PATCH net-next 3/3] selftest: net: some feature
[PATCH iproute2-next] ip: add support for some feature
Posting as one thread is discouraged because it confuses patchwork
(as of patchwork 2.2.2).
Q: Any other tips to help ensure my net/net-next patch gets OK'd? Q: Any other tips to help ensure my net/net-next patch gets OK'd?
----------------------------------------------------------------- -----------------------------------------------------------------
A: Attention to detail. Re-read your own work as if you were the A: Attention to detail. Re-read your own work as if you were the

View File

@@ -247,8 +247,8 @@ Some of the interface modes are described below:
speeds (see below.) speeds (see below.)
``PHY_INTERFACE_MODE_2500BASEX`` ``PHY_INTERFACE_MODE_2500BASEX``
This defines a variant of 1000BASE-X which is clocked 2.5 times faster, This defines a variant of 1000BASE-X which is clocked 2.5 times as fast
than the 802.3 standard giving a fixed bit rate of 3.125Gbaud. as the 802.3 standard, giving a fixed bit rate of 3.125Gbaud.
``PHY_INTERFACE_MODE_SGMII`` ``PHY_INTERFACE_MODE_SGMII``
This is used for Cisco SGMII, which is a modification of 1000BASE-X This is used for Cisco SGMII, which is a modification of 1000BASE-X

View File

@@ -39,7 +39,7 @@ Procedure for submitting patches to the -stable tree
submission guidelines as described in submission guidelines as described in
:ref:`Documentation/networking/netdev-FAQ.rst <netdev-FAQ>` :ref:`Documentation/networking/netdev-FAQ.rst <netdev-FAQ>`
after first checking the stable networking queue at after first checking the stable networking queue at
https://patchwork.ozlabs.org/bundle/davem/stable/?series=&submitter=&state=*&q=&archive= https://patchwork.kernel.org/bundle/netdev/stable/?state=*
to ensure the requested patch is not already queued up. to ensure the requested patch is not already queued up.
- Security patches should not be handled (solely) by the -stable review - Security patches should not be handled (solely) by the -stable review
process but should follow the procedures in process but should follow the procedures in

View File

@@ -46,7 +46,7 @@ Procedura per sottomettere patch per i sorgenti -stable
:ref:`Documentation/translations/it_IT/networking/netdev-FAQ.rst <it_netdev-FAQ>`; :ref:`Documentation/translations/it_IT/networking/netdev-FAQ.rst <it_netdev-FAQ>`;
ma solo dopo aver verificato al seguente indirizzo che la patch non sia ma solo dopo aver verificato al seguente indirizzo che la patch non sia
già in coda: già in coda:
https://patchwork.ozlabs.org/bundle/davem/stable/?series=&submitter=&state=*&q=&archive= https://patchwork.kernel.org/bundle/netdev/stable/?state=*
- Una patch di sicurezza non dovrebbero essere gestite (solamente) dal processo - Una patch di sicurezza non dovrebbero essere gestite (solamente) dal processo
di revisione -stable, ma dovrebbe seguire le procedure descritte in di revisione -stable, ma dovrebbe seguire le procedure descritte in
:ref:`Documentation/translations/it_IT/admin-guide/security-bugs.rst <it_securitybugs>`. :ref:`Documentation/translations/it_IT/admin-guide/security-bugs.rst <it_securitybugs>`.

View File

@@ -6367,7 +6367,7 @@ accesses that would usually trigger a #GP by KVM into the guest will
instead get bounced to user space through the KVM_EXIT_X86_RDMSR and instead get bounced to user space through the KVM_EXIT_X86_RDMSR and
KVM_EXIT_X86_WRMSR exit notifications. KVM_EXIT_X86_WRMSR exit notifications.
8.25 KVM_X86_SET_MSR_FILTER 8.27 KVM_X86_SET_MSR_FILTER
--------------------------- ---------------------------
:Architectures: x86 :Architectures: x86
@@ -6381,8 +6381,7 @@ In combination with KVM_CAP_X86_USER_SPACE_MSR, this allows user space to
trap and emulate MSRs that are outside of the scope of KVM as well as trap and emulate MSRs that are outside of the scope of KVM as well as
limit the attack surface on KVM's MSR emulation code. limit the attack surface on KVM's MSR emulation code.
8.28 KVM_CAP_ENFORCE_PV_CPUID
8.26 KVM_CAP_ENFORCE_PV_CPUID
----------------------------- -----------------------------
Architectures: x86 Architectures: x86

View File

@@ -455,7 +455,7 @@ If the generation number of the spte does not equal the global generation
number, it will ignore the cached MMIO information and handle the page number, it will ignore the cached MMIO information and handle the page
fault through the slow path. fault through the slow path.
Since only 19 bits are used to store generation-number on mmio spte, all Since only 18 bits are used to store generation-number on mmio spte, all
pages are zapped when there is an overflow. pages are zapped when there is an overflow.
Unfortunately, a single memory access might access kvm_memslots(kvm) multiple Unfortunately, a single memory access might access kvm_memslots(kvm) multiple

View File

@@ -82,7 +82,8 @@ Default MMUv2-compatible layout::
+------------------+ +------------------+
| VMALLOC area | VMALLOC_START 0xc0000000 128MB - 64KB | VMALLOC area | VMALLOC_START 0xc0000000 128MB - 64KB
+------------------+ VMALLOC_END +------------------+ VMALLOC_END
| Cache aliasing | TLBTEMP_BASE_1 0xc7ff0000 DCACHE_WAY_SIZE +------------------+
| Cache aliasing | TLBTEMP_BASE_1 0xc8000000 DCACHE_WAY_SIZE
| remap area 1 | | remap area 1 |
+------------------+ +------------------+
| Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE
@@ -124,7 +125,8 @@ Default MMUv2-compatible layout::
+------------------+ +------------------+
| VMALLOC area | VMALLOC_START 0xa0000000 128MB - 64KB | VMALLOC area | VMALLOC_START 0xa0000000 128MB - 64KB
+------------------+ VMALLOC_END +------------------+ VMALLOC_END
| Cache aliasing | TLBTEMP_BASE_1 0xa7ff0000 DCACHE_WAY_SIZE +------------------+
| Cache aliasing | TLBTEMP_BASE_1 0xa8000000 DCACHE_WAY_SIZE
| remap area 1 | | remap area 1 |
+------------------+ +------------------+
| Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE
@@ -167,7 +169,8 @@ Default MMUv2-compatible layout::
+------------------+ +------------------+
| VMALLOC area | VMALLOC_START 0x90000000 128MB - 64KB | VMALLOC area | VMALLOC_START 0x90000000 128MB - 64KB
+------------------+ VMALLOC_END +------------------+ VMALLOC_END
| Cache aliasing | TLBTEMP_BASE_1 0x97ff0000 DCACHE_WAY_SIZE +------------------+
| Cache aliasing | TLBTEMP_BASE_1 0x98000000 DCACHE_WAY_SIZE
| remap area 1 | | remap area 1 |
+------------------+ +------------------+
| Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE | Cache aliasing | TLBTEMP_BASE_2 DCACHE_WAY_SIZE

View File

@@ -1279,7 +1279,7 @@ M: Igor Russkikh <irusskikh@marvell.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: https://www.marvell.com/ W: https://www.marvell.com/
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: Documentation/networking/device_drivers/ethernet/aquantia/atlantic.rst F: Documentation/networking/device_drivers/ethernet/aquantia/atlantic.rst
F: drivers/net/ethernet/aquantia/atlantic/ F: drivers/net/ethernet/aquantia/atlantic/
@@ -1486,10 +1486,20 @@ F: Documentation/devicetree/bindings/iommu/arm,smmu*
F: drivers/iommu/arm/ F: drivers/iommu/arm/
F: drivers/iommu/io-pgtable-arm* F: drivers/iommu/io-pgtable-arm*
ARM AND ARM64 SoC SUB-ARCHITECTURES (COMMON PARTS)
M: Arnd Bergmann <arnd@arndb.de>
M: Olof Johansson <olof@lixom.net>
M: soc@kernel.org
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git
F: arch/arm/boot/dts/Makefile
F: arch/arm64/boot/dts/Makefile
ARM SUB-ARCHITECTURES ARM SUB-ARCHITECTURES
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git
F: arch/arm/mach-*/ F: arch/arm/mach-*/
F: arch/arm/plat-*/ F: arch/arm/plat-*/
@@ -1546,6 +1556,7 @@ F: drivers/clk/sunxi/
ARM/Allwinner sunXi SoC support ARM/Allwinner sunXi SoC support
M: Maxime Ripard <mripard@kernel.org> M: Maxime Ripard <mripard@kernel.org>
M: Chen-Yu Tsai <wens@csie.org> M: Chen-Yu Tsai <wens@csie.org>
R: Jernej Skrabec <jernej.skrabec@siol.net>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git
@@ -1723,11 +1734,13 @@ F: arch/arm/mach-ep93xx/micro9.c
ARM/CORESIGHT FRAMEWORK AND DRIVERS ARM/CORESIGHT FRAMEWORK AND DRIVERS
M: Mathieu Poirier <mathieu.poirier@linaro.org> M: Mathieu Poirier <mathieu.poirier@linaro.org>
R: Suzuki K Poulose <suzuki.poulose@arm.com> M: Suzuki K Poulose <suzuki.poulose@arm.com>
R: Mike Leach <mike.leach@linaro.org> R: Mike Leach <mike.leach@linaro.org>
R: Leo Yan <leo.yan@linaro.org>
L: coresight@lists.linaro.org (moderated for non-subscribers) L: coresight@lists.linaro.org (moderated for non-subscribers)
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/coresight/linux.git
F: Documentation/ABI/testing/sysfs-bus-coresight-devices-* F: Documentation/ABI/testing/sysfs-bus-coresight-devices-*
F: Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt F: Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt
F: Documentation/devicetree/bindings/arm/coresight-cti.yaml F: Documentation/devicetree/bindings/arm/coresight-cti.yaml
@@ -1994,7 +2007,6 @@ N: lpc18xx
ARM/LPC32XX SOC SUPPORT ARM/LPC32XX SOC SUPPORT
M: Vladimir Zapolskiy <vz@mleia.com> M: Vladimir Zapolskiy <vz@mleia.com>
M: Sylvain Lemieux <slemieux.tyco@gmail.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
T: git git://github.com/vzapolskiy/linux-lpc32xx.git T: git git://github.com/vzapolskiy/linux-lpc32xx.git
@@ -2012,7 +2024,6 @@ M: Philipp Zabel <philipp.zabel@gmail.com>
S: Maintained S: Maintained
ARM/Marvell Dove/MV78xx0/Orion SOC support ARM/Marvell Dove/MV78xx0/Orion SOC support
M: Jason Cooper <jason@lakedaemon.net>
M: Andrew Lunn <andrew@lunn.ch> M: Andrew Lunn <andrew@lunn.ch>
M: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> M: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
M: Gregory Clement <gregory.clement@bootlin.com> M: Gregory Clement <gregory.clement@bootlin.com>
@@ -2029,7 +2040,6 @@ F: arch/arm/plat-orion/
F: drivers/soc/dove/ F: drivers/soc/dove/
ARM/Marvell Kirkwood and Armada 370, 375, 38x, 39x, XP, 3700, 7K/8K, CN9130 SOC support ARM/Marvell Kirkwood and Armada 370, 375, 38x, 39x, XP, 3700, 7K/8K, CN9130 SOC support
M: Jason Cooper <jason@lakedaemon.net>
M: Andrew Lunn <andrew@lunn.ch> M: Andrew Lunn <andrew@lunn.ch>
M: Gregory Clement <gregory.clement@bootlin.com> M: Gregory Clement <gregory.clement@bootlin.com>
M: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> M: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
@@ -2374,7 +2384,7 @@ F: drivers/i2c/busses/i2c-rk3x.c
F: sound/soc/rockchip/ F: sound/soc/rockchip/
N: rockchip N: rockchip
ARM/SAMSUNG EXYNOS ARM ARCHITECTURES ARM/SAMSUNG S3C, S5P AND EXYNOS ARM ARCHITECTURES
M: Krzysztof Kozlowski <krzk@kernel.org> M: Krzysztof Kozlowski <krzk@kernel.org>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
L: linux-samsung-soc@vger.kernel.org L: linux-samsung-soc@vger.kernel.org
@@ -2403,15 +2413,7 @@ N: s3c2410
N: s3c64xx N: s3c64xx
N: s5pv210 N: s5pv210
ARM/SAMSUNG MOBILE MACHINE SUPPORT
M: Kyungmin Park <kyungmin.park@samsung.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
F: arch/arm/mach-s5pv210/
ARM/SAMSUNG S5P SERIES 2D GRAPHICS ACCELERATION (G2D) SUPPORT ARM/SAMSUNG S5P SERIES 2D GRAPHICS ACCELERATION (G2D) SUPPORT
M: Kyungmin Park <kyungmin.park@samsung.com>
M: Kamil Debski <kamil@wypas.org>
M: Andrzej Hajda <a.hajda@samsung.com> M: Andrzej Hajda <a.hajda@samsung.com>
L: linux-arm-kernel@lists.infradead.org L: linux-arm-kernel@lists.infradead.org
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
@@ -2436,9 +2438,6 @@ S: Maintained
F: drivers/media/platform/s5p-jpeg/ F: drivers/media/platform/s5p-jpeg/
ARM/SAMSUNG S5P SERIES Multi Format Codec (MFC) SUPPORT ARM/SAMSUNG S5P SERIES Multi Format Codec (MFC) SUPPORT
M: Kyungmin Park <kyungmin.park@samsung.com>
M: Kamil Debski <kamil@wypas.org>
M: Jeongtae Park <jtp.park@samsung.com>
M: Andrzej Hajda <a.hajda@samsung.com> M: Andrzej Hajda <a.hajda@samsung.com>
L: linux-arm-kernel@lists.infradead.org L: linux-arm-kernel@lists.infradead.org
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
@@ -3243,12 +3242,12 @@ F: drivers/iio/accel/bma400*
BPF (Safe dynamic programs and tools) BPF (Safe dynamic programs and tools)
M: Alexei Starovoitov <ast@kernel.org> M: Alexei Starovoitov <ast@kernel.org>
M: Daniel Borkmann <daniel@iogearbox.net> M: Daniel Borkmann <daniel@iogearbox.net>
M: Andrii Nakryiko <andrii@kernel.org>
R: Martin KaFai Lau <kafai@fb.com> R: Martin KaFai Lau <kafai@fb.com>
R: Song Liu <songliubraving@fb.com> R: Song Liu <songliubraving@fb.com>
R: Yonghong Song <yhs@fb.com> R: Yonghong Song <yhs@fb.com>
R: Andrii Nakryiko <andrii@kernel.org>
R: John Fastabend <john.fastabend@gmail.com> R: John Fastabend <john.fastabend@gmail.com>
R: KP Singh <kpsingh@chromium.org> R: KP Singh <kpsingh@kernel.org>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
L: bpf@vger.kernel.org L: bpf@vger.kernel.org
S: Supported S: Supported
@@ -3366,6 +3365,17 @@ S: Supported
F: arch/x86/net/ F: arch/x86/net/
X: arch/x86/net/bpf_jit_comp32.c X: arch/x86/net/bpf_jit_comp32.c
BPF LSM (Security Audit and Enforcement using BPF)
M: KP Singh <kpsingh@kernel.org>
R: Florent Revest <revest@chromium.org>
R: Brendan Jackman <jackmanb@chromium.org>
L: bpf@vger.kernel.org
S: Maintained
F: Documentation/bpf/bpf_lsm.rst
F: include/linux/bpf_lsm.h
F: kernel/bpf/bpf_lsm.c
F: security/bpf/
BROADCOM B44 10/100 ETHERNET DRIVER BROADCOM B44 10/100 ETHERNET DRIVER
M: Michael Chan <michael.chan@broadcom.com> M: Michael Chan <michael.chan@broadcom.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
@@ -3538,11 +3548,12 @@ BROADCOM BRCM80211 IEEE802.11n WIRELESS DRIVER
M: Arend van Spriel <arend.vanspriel@broadcom.com> M: Arend van Spriel <arend.vanspriel@broadcom.com>
M: Franky Lin <franky.lin@broadcom.com> M: Franky Lin <franky.lin@broadcom.com>
M: Hante Meuleman <hante.meuleman@broadcom.com> M: Hante Meuleman <hante.meuleman@broadcom.com>
M: Chi-Hsien Lin <chi-hsien.lin@cypress.com> M: Chi-hsien Lin <chi-hsien.lin@infineon.com>
M: Wright Feng <wright.feng@cypress.com> M: Wright Feng <wright.feng@infineon.com>
M: Chung-hsien Hsu <chung-hsien.hsu@infineon.com>
L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org
L: brcm80211-dev-list.pdl@broadcom.com L: brcm80211-dev-list.pdl@broadcom.com
L: brcm80211-dev-list@cypress.com L: SHA-cyfmac-dev-list@infineon.com
S: Supported S: Supported
F: drivers/net/wireless/broadcom/brcm80211/ F: drivers/net/wireless/broadcom/brcm80211/
@@ -4284,6 +4295,7 @@ B: https://github.com/ClangBuiltLinux/linux/issues
C: irc://chat.freenode.net/clangbuiltlinux C: irc://chat.freenode.net/clangbuiltlinux
F: Documentation/kbuild/llvm.rst F: Documentation/kbuild/llvm.rst
F: scripts/clang-tools/ F: scripts/clang-tools/
F: scripts/lld-version.sh
K: \b(?i:clang|llvm)\b K: \b(?i:clang|llvm)\b
CLEANCACHE API CLEANCACHE API
@@ -4710,7 +4722,7 @@ T: git git://linuxtv.org/anttip/media_tree.git
F: drivers/media/dvb-frontends/cxd2820r* F: drivers/media/dvb-frontends/cxd2820r*
CXGB3 ETHERNET DRIVER (CXGB3) CXGB3 ETHERNET DRIVER (CXGB3)
M: Vishal Kulkarni <vishal@chelsio.com> M: Raju Rangoju <rajur@chelsio.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.chelsio.com W: http://www.chelsio.com
@@ -4742,7 +4754,7 @@ W: http://www.chelsio.com
F: drivers/net/ethernet/chelsio/inline_crypto/ F: drivers/net/ethernet/chelsio/inline_crypto/
CXGB4 ETHERNET DRIVER (CXGB4) CXGB4 ETHERNET DRIVER (CXGB4)
M: Vishal Kulkarni <vishal@chelsio.com> M: Raju Rangoju <rajur@chelsio.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.chelsio.com W: http://www.chelsio.com
@@ -4764,7 +4776,7 @@ F: drivers/infiniband/hw/cxgb4/
F: include/uapi/rdma/cxgb4-abi.h F: include/uapi/rdma/cxgb4-abi.h
CXGB4VF ETHERNET DRIVER (CXGB4VF) CXGB4VF ETHERNET DRIVER (CXGB4VF)
M: Vishal Kulkarni <vishal@gmail.com> M: Raju Rangoju <rajur@chelsio.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.chelsio.com W: http://www.chelsio.com
@@ -5870,6 +5882,7 @@ S: Supported
F: Documentation/devicetree/bindings/display/mediatek/ F: Documentation/devicetree/bindings/display/mediatek/
F: drivers/gpu/drm/mediatek/ F: drivers/gpu/drm/mediatek/
F: drivers/phy/mediatek/phy-mtk-hdmi* F: drivers/phy/mediatek/phy-mtk-hdmi*
F: drivers/phy/mediatek/phy-mtk-mipi*
DRM DRIVERS FOR NVIDIA TEGRA DRM DRIVERS FOR NVIDIA TEGRA
M: Thierry Reding <thierry.reding@gmail.com> M: Thierry Reding <thierry.reding@gmail.com>
@@ -6622,6 +6635,7 @@ Q: http://patchwork.ozlabs.org/project/linux-ext4/list/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git
F: Documentation/filesystems/ext4/ F: Documentation/filesystems/ext4/
F: fs/ext4/ F: fs/ext4/
F: include/trace/events/ext4.h
Extended Verification Module (EVM) Extended Verification Module (EVM)
M: Mimi Zohar <zohar@linux.ibm.com> M: Mimi Zohar <zohar@linux.ibm.com>
@@ -8836,8 +8850,8 @@ S: Supported
W: http://www.intel.com/support/feedback.htm W: http://www.intel.com/support/feedback.htm
W: http://e1000.sourceforge.net/ W: http://e1000.sourceforge.net/
Q: http://patchwork.ozlabs.org/project/intel-wired-lan/list/ Q: http://patchwork.ozlabs.org/project/intel-wired-lan/list/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-queue.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git
F: Documentation/networking/device_drivers/ethernet/intel/ F: Documentation/networking/device_drivers/ethernet/intel/
F: drivers/net/ethernet/intel/ F: drivers/net/ethernet/intel/
F: drivers/net/ethernet/intel/*/ F: drivers/net/ethernet/intel/*/
@@ -9090,10 +9104,7 @@ S: Supported
F: drivers/net/wireless/intel/iwlegacy/ F: drivers/net/wireless/intel/iwlegacy/
INTEL WIRELESS WIFI LINK (iwlwifi) INTEL WIRELESS WIFI LINK (iwlwifi)
M: Johannes Berg <johannes.berg@intel.com>
M: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
M: Luca Coelho <luciano.coelho@intel.com> M: Luca Coelho <luciano.coelho@intel.com>
M: Intel Linux Wireless <linuxwifi@intel.com>
L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org
S: Supported S: Supported
W: https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi W: https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi
@@ -9185,6 +9196,7 @@ F: include/linux/iomap.h
IOMMU DRIVERS IOMMU DRIVERS
M: Joerg Roedel <joro@8bytes.org> M: Joerg Roedel <joro@8bytes.org>
M: Will Deacon <will@kernel.org>
L: iommu@lists.linux-foundation.org L: iommu@lists.linux-foundation.org
S: Maintained S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
@@ -9268,7 +9280,6 @@ F: kernel/irq/
IRQCHIP DRIVERS IRQCHIP DRIVERS
M: Thomas Gleixner <tglx@linutronix.de> M: Thomas Gleixner <tglx@linutronix.de>
M: Jason Cooper <jason@lakedaemon.net>
M: Marc Zyngier <maz@kernel.org> M: Marc Zyngier <maz@kernel.org>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
S: Maintained S: Maintained
@@ -9668,6 +9679,7 @@ F: Documentation/virt/kvm/s390*
F: arch/s390/include/asm/gmap.h F: arch/s390/include/asm/gmap.h
F: arch/s390/include/asm/kvm* F: arch/s390/include/asm/kvm*
F: arch/s390/include/uapi/asm/kvm* F: arch/s390/include/uapi/asm/kvm*
F: arch/s390/kernel/uv.c
F: arch/s390/kvm/ F: arch/s390/kvm/
F: arch/s390/mm/gmap.c F: arch/s390/mm/gmap.c
F: tools/testing/selftests/kvm/*/s390x/ F: tools/testing/selftests/kvm/*/s390x/
@@ -9856,13 +9868,6 @@ S: Maintained
F: arch/mips/lantiq F: arch/mips/lantiq
F: drivers/soc/lantiq F: drivers/soc/lantiq
LAPB module
L: linux-x25@vger.kernel.org
S: Orphan
F: Documentation/networking/lapb-module.rst
F: include/*/lapb.h
F: net/lapb/
LASI 53c700 driver for PARISC LASI 53c700 driver for PARISC
M: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com> M: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
L: linux-scsi@vger.kernel.org L: linux-scsi@vger.kernel.org
@@ -10573,6 +10578,13 @@ S: Supported
F: Documentation/networking/device_drivers/ethernet/marvell/octeontx2.rst F: Documentation/networking/device_drivers/ethernet/marvell/octeontx2.rst
F: drivers/net/ethernet/marvell/octeontx2/af/ F: drivers/net/ethernet/marvell/octeontx2/af/
MARVELL PRESTERA ETHERNET SWITCH DRIVER
M: Vadym Kochan <vkochan@marvell.com>
M: Taras Chornyi <tchornyi@marvell.com>
S: Supported
W: https://github.com/Marvell-switching/switchdev-prestera
F: drivers/net/ethernet/marvell/prestera/
MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER
M: Nicolas Pitre <nico@fluxnic.net> M: Nicolas Pitre <nico@fluxnic.net>
S: Odd Fixes S: Odd Fixes
@@ -11187,7 +11199,7 @@ M: Tariq Toukan <tariqt@nvidia.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlx4/en_* F: drivers/net/ethernet/mellanox/mlx4/en_*
MELLANOX ETHERNET DRIVER (mlx5e) MELLANOX ETHERNET DRIVER (mlx5e)
@@ -11195,7 +11207,7 @@ M: Saeed Mahameed <saeedm@nvidia.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlx5/core/en_* F: drivers/net/ethernet/mellanox/mlx5/core/en_*
MELLANOX ETHERNET INNOVA DRIVERS MELLANOX ETHERNET INNOVA DRIVERS
@@ -11203,7 +11215,7 @@ R: Boris Pismenny <borisp@nvidia.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlx5/core/accel/* F: drivers/net/ethernet/mellanox/mlx5/core/accel/*
F: drivers/net/ethernet/mellanox/mlx5/core/en_accel/* F: drivers/net/ethernet/mellanox/mlx5/core/en_accel/*
F: drivers/net/ethernet/mellanox/mlx5/core/fpga/* F: drivers/net/ethernet/mellanox/mlx5/core/fpga/*
@@ -11215,7 +11227,7 @@ M: Ido Schimmel <idosch@nvidia.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlxsw/ F: drivers/net/ethernet/mellanox/mlxsw/
F: tools/testing/selftests/drivers/net/mlxsw/ F: tools/testing/selftests/drivers/net/mlxsw/
@@ -11224,7 +11236,7 @@ M: mlxsw@nvidia.com
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlxfw/ F: drivers/net/ethernet/mellanox/mlxfw/
MELLANOX HARDWARE PLATFORM SUPPORT MELLANOX HARDWARE PLATFORM SUPPORT
@@ -11243,7 +11255,7 @@ L: netdev@vger.kernel.org
L: linux-rdma@vger.kernel.org L: linux-rdma@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: drivers/net/ethernet/mellanox/mlx4/ F: drivers/net/ethernet/mellanox/mlx4/
F: include/linux/mlx4/ F: include/linux/mlx4/
@@ -11264,7 +11276,7 @@ L: netdev@vger.kernel.org
L: linux-rdma@vger.kernel.org L: linux-rdma@vger.kernel.org
S: Supported S: Supported
W: http://www.mellanox.com W: http://www.mellanox.com
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F: Documentation/networking/device_drivers/ethernet/mellanox/ F: Documentation/networking/device_drivers/ethernet/mellanox/
F: drivers/net/ethernet/mellanox/mlx5/core/ F: drivers/net/ethernet/mellanox/mlx5/core/
F: include/linux/mlx5/ F: include/linux/mlx5/
@@ -12144,7 +12156,7 @@ M: Jakub Kicinski <kuba@kernel.org>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
W: http://www.linuxfoundation.org/en/Net W: http://www.linuxfoundation.org/en/Net
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
F: Documentation/devicetree/bindings/net/ F: Documentation/devicetree/bindings/net/
@@ -12189,7 +12201,7 @@ M: Jakub Kicinski <kuba@kernel.org>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
W: http://www.linuxfoundation.org/en/Net W: http://www.linuxfoundation.org/en/Net
Q: http://patchwork.ozlabs.org/project/netdev/list/ Q: https://patchwork.kernel.org/project/netdevbpf/list/
B: mailto:netdev@vger.kernel.org B: mailto:netdev@vger.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
@@ -13190,7 +13202,9 @@ M: Jesper Dangaard Brouer <hawk@kernel.org>
M: Ilias Apalodimas <ilias.apalodimas@linaro.org> M: Ilias Apalodimas <ilias.apalodimas@linaro.org>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
F: Documentation/networking/page_pool.rst
F: include/net/page_pool.h F: include/net/page_pool.h
F: include/trace/events/page_pool.h
F: net/core/page_pool.c F: net/core/page_pool.c
PANASONIC LAPTOP ACPI EXTRAS DRIVER PANASONIC LAPTOP ACPI EXTRAS DRIVER
@@ -13418,7 +13432,6 @@ F: drivers/pci/controller/mobiveil/pcie-mobiveil*
PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support) PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support)
M: Thomas Petazzoni <thomas.petazzoni@bootlin.com> M: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
M: Jason Cooper <jason@lakedaemon.net>
L: linux-pci@vger.kernel.org L: linux-pci@vger.kernel.org
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
@@ -14224,7 +14237,6 @@ F: drivers/media/usb/pwc/*
F: include/trace/events/pwc.h F: include/trace/events/pwc.h
PWM FAN DRIVER PWM FAN DRIVER
M: Kamil Debski <kamil@wypas.org>
M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
L: linux-hwmon@vger.kernel.org L: linux-hwmon@vger.kernel.org
S: Supported S: Supported
@@ -14833,7 +14845,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.g
F: drivers/net/wireless/realtek/rtlwifi/ F: drivers/net/wireless/realtek/rtlwifi/
REALTEK WIRELESS DRIVER (rtw88) REALTEK WIRELESS DRIVER (rtw88)
M: Yan-Hsuan Chuang <yhchuang@realtek.com> M: Yan-Hsuan Chuang <tony0620emma@gmail.com>
L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org
S: Maintained S: Maintained
F: drivers/net/wireless/realtek/rtw88/ F: drivers/net/wireless/realtek/rtw88/
@@ -15260,7 +15272,6 @@ F: drivers/iommu/s390-iommu.c
S390 IUCV NETWORK LAYER S390 IUCV NETWORK LAYER
M: Julian Wiedmann <jwi@linux.ibm.com> M: Julian Wiedmann <jwi@linux.ibm.com>
M: Karsten Graul <kgraul@linux.ibm.com> M: Karsten Graul <kgraul@linux.ibm.com>
M: Ursula Braun <ubraun@linux.ibm.com>
L: linux-s390@vger.kernel.org L: linux-s390@vger.kernel.org
S: Supported S: Supported
W: http://www.ibm.com/developerworks/linux/linux390/ W: http://www.ibm.com/developerworks/linux/linux390/
@@ -15271,7 +15282,6 @@ F: net/iucv/
S390 NETWORK DRIVERS S390 NETWORK DRIVERS
M: Julian Wiedmann <jwi@linux.ibm.com> M: Julian Wiedmann <jwi@linux.ibm.com>
M: Karsten Graul <kgraul@linux.ibm.com> M: Karsten Graul <kgraul@linux.ibm.com>
M: Ursula Braun <ubraun@linux.ibm.com>
L: linux-s390@vger.kernel.org L: linux-s390@vger.kernel.org
S: Supported S: Supported
W: http://www.ibm.com/developerworks/linux/linux390/ W: http://www.ibm.com/developerworks/linux/linux390/
@@ -15440,14 +15450,12 @@ F: Documentation/devicetree/bindings/net/nfc/samsung,s3fwrn5.yaml
F: drivers/nfc/s3fwrn5 F: drivers/nfc/s3fwrn5
SAMSUNG S5C73M3 CAMERA DRIVER SAMSUNG S5C73M3 CAMERA DRIVER
M: Kyungmin Park <kyungmin.park@samsung.com>
M: Andrzej Hajda <a.hajda@samsung.com> M: Andrzej Hajda <a.hajda@samsung.com>
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Supported S: Supported
F: drivers/media/i2c/s5c73m3/* F: drivers/media/i2c/s5c73m3/*
SAMSUNG S5K5BAF CAMERA DRIVER SAMSUNG S5K5BAF CAMERA DRIVER
M: Kyungmin Park <kyungmin.park@samsung.com>
M: Andrzej Hajda <a.hajda@samsung.com> M: Andrzej Hajda <a.hajda@samsung.com>
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Supported S: Supported
@@ -15465,7 +15473,6 @@ F: Documentation/devicetree/bindings/crypto/samsung-sss.yaml
F: drivers/crypto/s5p-sss.c F: drivers/crypto/s5p-sss.c
SAMSUNG S5P/EXYNOS4 SOC SERIES CAMERA SUBSYSTEM DRIVERS SAMSUNG S5P/EXYNOS4 SOC SERIES CAMERA SUBSYSTEM DRIVERS
M: Kyungmin Park <kyungmin.park@samsung.com>
M: Sylwester Nawrocki <s.nawrocki@samsung.com> M: Sylwester Nawrocki <s.nawrocki@samsung.com>
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Supported S: Supported
@@ -15513,7 +15520,6 @@ T: git https://github.com/lmajewski/linux-samsung-thermal.git
F: drivers/thermal/samsung/ F: drivers/thermal/samsung/
SAMSUNG USB2 PHY DRIVER SAMSUNG USB2 PHY DRIVER
M: Kamil Debski <kamil@wypas.org>
M: Sylwester Nawrocki <s.nawrocki@samsung.com> M: Sylwester Nawrocki <s.nawrocki@samsung.com>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
S: Supported S: Supported
@@ -15812,9 +15818,8 @@ F: drivers/slimbus/
F: include/linux/slimbus.h F: include/linux/slimbus.h
SFC NETWORK DRIVER SFC NETWORK DRIVER
M: Solarflare linux maintainers <linux-net-drivers@solarflare.com> M: Edward Cree <ecree.xilinx@gmail.com>
M: Edward Cree <ecree@solarflare.com> M: Martin Habets <habetsm.xilinx@gmail.com>
M: Martin Habets <mhabets@solarflare.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
F: drivers/net/ethernet/sfc/ F: drivers/net/ethernet/sfc/
@@ -15842,7 +15847,6 @@ S: Maintained
F: drivers/misc/sgi-xp/ F: drivers/misc/sgi-xp/
SHARED MEMORY COMMUNICATIONS (SMC) SOCKETS SHARED MEMORY COMMUNICATIONS (SMC) SOCKETS
M: Ursula Braun <ubraun@linux.ibm.com>
M: Karsten Graul <kgraul@linux.ibm.com> M: Karsten Graul <kgraul@linux.ibm.com>
L: linux-s390@vger.kernel.org L: linux-s390@vger.kernel.org
S: Supported S: Supported
@@ -18189,6 +18193,14 @@ L: linux-usb@vger.kernel.org
S: Supported S: Supported
F: drivers/usb/class/usblp.c F: drivers/usb/class/usblp.c
USB RAW GADGET DRIVER
R: Andrey Konovalov <andreyknvl@gmail.com>
L: linux-usb@vger.kernel.org
S: Maintained
F: Documentation/usb/raw-gadget.rst
F: drivers/usb/gadget/legacy/raw_gadget.c
F: include/uapi/linux/usb/raw_gadget.h
USB QMI WWAN NETWORK DRIVER USB QMI WWAN NETWORK DRIVER
M: Bjørn Mork <bjorn@mork.no> M: Bjørn Mork <bjorn@mork.no>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
@@ -19014,12 +19026,18 @@ L: linux-kernel@vger.kernel.org
S: Maintained S: Maintained
N: axp[128] N: axp[128]
X.25 NETWORK LAYER X.25 STACK
M: Andrew Hendry <andrew.hendry@gmail.com> M: Martin Schiller <ms@dev.tdt.de>
L: linux-x25@vger.kernel.org L: linux-x25@vger.kernel.org
S: Odd Fixes S: Maintained
F: Documentation/networking/lapb-module.rst
F: Documentation/networking/x25* F: Documentation/networking/x25*
F: drivers/net/wan/hdlc_x25.c
F: drivers/net/wan/lapbether.c
F: include/*/lapb.h
F: include/net/x25* F: include/net/x25*
F: include/uapi/linux/x25.h
F: net/lapb/
F: net/x25/ F: net/x25/
X86 ARCHITECTURE (32-BIT AND 64-BIT) X86 ARCHITECTURE (32-BIT AND 64-BIT)
@@ -19133,12 +19151,17 @@ L: netdev@vger.kernel.org
L: bpf@vger.kernel.org L: bpf@vger.kernel.org
S: Supported S: Supported
F: include/net/xdp.h F: include/net/xdp.h
F: include/net/xdp_priv.h
F: include/trace/events/xdp.h F: include/trace/events/xdp.h
F: kernel/bpf/cpumap.c F: kernel/bpf/cpumap.c
F: kernel/bpf/devmap.c F: kernel/bpf/devmap.c
F: net/core/xdp.c F: net/core/xdp.c
N: xdp F: samples/bpf/xdp*
K: xdp F: tools/testing/selftests/bpf/*xdp*
F: tools/testing/selftests/bpf/*/*xdp*
F: drivers/net/ethernet/*/*/*/*/*xdp*
F: drivers/net/ethernet/*/*/*xdp*
K: (?:\b|_)xdp(?:\b|_)
XDP SOCKETS (AF_XDP) XDP SOCKETS (AF_XDP)
M: Björn Töpel <bjorn.topel@intel.com> M: Björn Töpel <bjorn.topel@intel.com>
@@ -19147,9 +19170,12 @@ R: Jonathan Lemon <jonathan.lemon@gmail.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
L: bpf@vger.kernel.org L: bpf@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/networking/af_xdp.rst
F: include/net/xdp_sock* F: include/net/xdp_sock*
F: include/net/xsk_buff_pool.h F: include/net/xsk_buff_pool.h
F: include/uapi/linux/if_xdp.h F: include/uapi/linux/if_xdp.h
F: include/uapi/linux/xdp_diag.h
F: include/net/netns/xdp.h
F: net/xdp/ F: net/xdp/
F: samples/bpf/xdpsock* F: samples/bpf/xdpsock*
F: tools/lib/bpf/xsk* F: tools/lib/bpf/xsk*

View File

@@ -2,7 +2,7 @@
VERSION = 5 VERSION = 5
PATCHLEVEL = 10 PATCHLEVEL = 10
SUBLEVEL = 0 SUBLEVEL = 0
EXTRAVERSION = -rc3 EXTRAVERSION =
NAME = Kleptomaniac Octopus NAME = Kleptomaniac Octopus
# *DOCUMENTATION* # *DOCUMENTATION*
@@ -433,7 +433,6 @@ NM = llvm-nm
OBJCOPY = llvm-objcopy OBJCOPY = llvm-objcopy
OBJDUMP = llvm-objdump OBJDUMP = llvm-objdump
READELF = llvm-readelf READELF = llvm-readelf
OBJSIZE = llvm-size
STRIP = llvm-strip STRIP = llvm-strip
else else
CC = $(CROSS_COMPILE)gcc CC = $(CROSS_COMPILE)gcc
@@ -443,7 +442,6 @@ NM = $(CROSS_COMPILE)nm
OBJCOPY = $(CROSS_COMPILE)objcopy OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdump OBJDUMP = $(CROSS_COMPILE)objdump
READELF = $(CROSS_COMPILE)readelf READELF = $(CROSS_COMPILE)readelf
OBJSIZE = $(CROSS_COMPILE)size
STRIP = $(CROSS_COMPILE)strip STRIP = $(CROSS_COMPILE)strip
endif endif
PAHOLE = pahole PAHOLE = pahole
@@ -509,7 +507,7 @@ KBUILD_LDFLAGS :=
CLANG_FLAGS := CLANG_FLAGS :=
export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP OBJSIZE READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
export PERL PYTHON PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX export PERL PYTHON PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
@@ -828,7 +826,9 @@ else
DEBUG_CFLAGS += -g DEBUG_CFLAGS += -g
endif endif
ifneq ($(LLVM_IAS),1)
KBUILD_AFLAGS += -Wa,-gdwarf-2 KBUILD_AFLAGS += -Wa,-gdwarf-2
endif
ifdef CONFIG_DEBUG_INFO_DWARF4 ifdef CONFIG_DEBUG_INFO_DWARF4
DEBUG_CFLAGS += -gdwarf-4 DEBUG_CFLAGS += -gdwarf-4
@@ -946,7 +946,7 @@ KBUILD_CFLAGS += $(call cc-option,-Werror=incompatible-pointer-types)
KBUILD_CFLAGS += $(call cc-option,-Werror=designated-init) KBUILD_CFLAGS += $(call cc-option,-Werror=designated-init)
# change __FILE__ to the relative path from the srctree # change __FILE__ to the relative path from the srctree
KBUILD_CFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=) KBUILD_CPPFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=)
# ensure -fcf-protection is disabled when using retpoline as it is # ensure -fcf-protection is disabled when using retpoline as it is
# incompatible with -mindirect-branch=thunk-extern # incompatible with -mindirect-branch=thunk-extern
@@ -984,6 +984,12 @@ ifeq ($(CONFIG_RELR),y)
LDFLAGS_vmlinux += --pack-dyn-relocs=relr LDFLAGS_vmlinux += --pack-dyn-relocs=relr
endif endif
# We never want expected sections to be placed heuristically by the
# linker. All sections should be explicitly named in the linker script.
ifdef CONFIG_LD_ORPHAN_WARN
LDFLAGS_vmlinux += --orphan-handling=warn
endif
# Align the bit size of userspace programs with the kernel # Align the bit size of userspace programs with the kernel
KBUILD_USERCFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS)) KBUILD_USERCFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS))
KBUILD_USERLDFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS)) KBUILD_USERLDFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS))

View File

@@ -1028,6 +1028,15 @@ config HAVE_STATIC_CALL_INLINE
bool bool
depends on HAVE_STATIC_CALL depends on HAVE_STATIC_CALL
config ARCH_WANT_LD_ORPHAN_WARN
bool
help
An arch should select this symbol once all linker sections are explicitly
included, size-asserted, or discarded in the linker scripts. This is
important because we never want expected sections to be placed heuristically
by the linker, since the locations of such sections can change between linker
versions.
source "kernel/gcov/Kconfig" source "kernel/gcov/Kconfig"
source "scripts/gcc-plugins/Kconfig" source "scripts/gcc-plugins/Kconfig"

View File

@@ -57,7 +57,7 @@ EXPORT_SYMBOL(pm_power_off);
void arch_cpu_idle(void) void arch_cpu_idle(void)
{ {
wtint(0); wtint(0);
local_irq_enable(); raw_local_irq_enable();
} }
void arch_cpu_idle_dead(void) void arch_cpu_idle_dead(void)

View File

@@ -243,10 +243,8 @@ static inline int constant_fls(unsigned int x)
x <<= 2; x <<= 2;
r -= 2; r -= 2;
} }
if (!(x & 0x80000000u)) { if (!(x & 0x80000000u))
x <<= 1;
r -= 1; r -= 1;
}
return r; return r;
} }

View File

@@ -134,8 +134,10 @@
#ifdef CONFIG_ARC_HAS_PAE40 #ifdef CONFIG_ARC_HAS_PAE40
#define PTE_BITS_NON_RWX_IN_PD1 (0xff00000000 | PAGE_MASK | _PAGE_CACHEABLE) #define PTE_BITS_NON_RWX_IN_PD1 (0xff00000000 | PAGE_MASK | _PAGE_CACHEABLE)
#define MAX_POSSIBLE_PHYSMEM_BITS 40
#else #else
#define PTE_BITS_NON_RWX_IN_PD1 (PAGE_MASK | _PAGE_CACHEABLE) #define PTE_BITS_NON_RWX_IN_PD1 (PAGE_MASK | _PAGE_CACHEABLE)
#define MAX_POSSIBLE_PHYSMEM_BITS 32
#endif #endif
/************************************************************************** /**************************************************************************

View File

@@ -38,15 +38,27 @@
#ifdef CONFIG_ARC_DW2_UNWIND #ifdef CONFIG_ARC_DW2_UNWIND
static void seed_unwind_frame_info(struct task_struct *tsk, static int
struct pt_regs *regs, seed_unwind_frame_info(struct task_struct *tsk, struct pt_regs *regs,
struct unwind_frame_info *frame_info) struct unwind_frame_info *frame_info)
{ {
if (regs) {
/*
* Asynchronous unwinding of intr/exception
* - Just uses the pt_regs passed
*/
frame_info->task = tsk;
frame_info->regs.r27 = regs->fp;
frame_info->regs.r28 = regs->sp;
frame_info->regs.r31 = regs->blink;
frame_info->regs.r63 = regs->ret;
frame_info->call_frame = 0;
} else if (tsk == NULL || tsk == current) {
/* /*
* synchronous unwinding (e.g. dump_stack) * synchronous unwinding (e.g. dump_stack)
* - uses current values of SP and friends * - uses current values of SP and friends
*/ */
if (tsk == NULL && regs == NULL) {
unsigned long fp, sp, blink, ret; unsigned long fp, sp, blink, ret;
frame_info->task = current; frame_info->task = current;
@@ -63,13 +75,17 @@ static void seed_unwind_frame_info(struct task_struct *tsk,
frame_info->regs.r31 = blink; frame_info->regs.r31 = blink;
frame_info->regs.r63 = ret; frame_info->regs.r63 = ret;
frame_info->call_frame = 0; frame_info->call_frame = 0;
} else if (regs == NULL) { } else {
/* /*
* Asynchronous unwinding of sleeping task * Asynchronous unwinding of a likely sleeping task
* - Gets SP etc from task's pt_regs (saved bottom of kernel * - first ensure it is actually sleeping
* mode stack of task) * - if so, it will be in __switch_to, kernel mode SP of task
* is safe-kept and BLINK at a well known location in there
*/ */
if (tsk->state == TASK_RUNNING)
return -1;
frame_info->task = tsk; frame_info->task = tsk;
frame_info->regs.r27 = TSK_K_FP(tsk); frame_info->regs.r27 = TSK_K_FP(tsk);
@@ -90,19 +106,8 @@ static void seed_unwind_frame_info(struct task_struct *tsk,
frame_info->regs.r28 += 60; frame_info->regs.r28 += 60;
frame_info->call_frame = 0; frame_info->call_frame = 0;
} else {
/*
* Asynchronous unwinding of intr/exception
* - Just uses the pt_regs passed
*/
frame_info->task = tsk;
frame_info->regs.r27 = regs->fp;
frame_info->regs.r28 = regs->sp;
frame_info->regs.r31 = regs->blink;
frame_info->regs.r63 = regs->ret;
frame_info->call_frame = 0;
} }
return 0;
} }
#endif #endif
@@ -116,7 +121,8 @@ arc_unwind_core(struct task_struct *tsk, struct pt_regs *regs,
unsigned int address; unsigned int address;
struct unwind_frame_info frame_info; struct unwind_frame_info frame_info;
seed_unwind_frame_info(tsk, regs, &frame_info); if (seed_unwind_frame_info(tsk, regs, &frame_info))
return 0;
while (1) { while (1) {
address = UNW_PC(&frame_info); address = UNW_PC(&frame_info);

View File

@@ -30,14 +30,14 @@
* -Changes related to MMU v2 (Rel 4.8) * -Changes related to MMU v2 (Rel 4.8)
* *
* Vineetg: Aug 29th 2008 * Vineetg: Aug 29th 2008
* -In TLB Flush operations (Metal Fix MMU) there is a explict command to * -In TLB Flush operations (Metal Fix MMU) there is a explicit command to
* flush Micro-TLBS. If TLB Index Reg is invalid prior to TLBIVUTLB cmd, * flush Micro-TLBS. If TLB Index Reg is invalid prior to TLBIVUTLB cmd,
* it fails. Thus need to load it with ANY valid value before invoking * it fails. Thus need to load it with ANY valid value before invoking
* TLBIVUTLB cmd * TLBIVUTLB cmd
* *
* Vineetg: Aug 21th 2008: * Vineetg: Aug 21th 2008:
* -Reduced the duration of IRQ lockouts in TLB Flush routines * -Reduced the duration of IRQ lockouts in TLB Flush routines
* -Multiple copies of TLB erase code seperated into a "single" function * -Multiple copies of TLB erase code separated into a "single" function
* -In TLB Flush routines, interrupt disabling moved UP to retrieve ASID * -In TLB Flush routines, interrupt disabling moved UP to retrieve ASID
* in interrupt-safe region. * in interrupt-safe region.
* *
@@ -66,7 +66,7 @@
* *
* Although J-TLB is 2 way set assoc, ARC700 caches J-TLB into uTLBS which has * Although J-TLB is 2 way set assoc, ARC700 caches J-TLB into uTLBS which has
* much higher associativity. u-D-TLB is 8 ways, u-I-TLB is 4 ways. * much higher associativity. u-D-TLB is 8 ways, u-I-TLB is 4 ways.
* Given this, the thrasing problem should never happen because once the 3 * Given this, the thrashing problem should never happen because once the 3
* J-TLB entries are created (even though 3rd will knock out one of the prev * J-TLB entries are created (even though 3rd will knock out one of the prev
* two), the u-D-TLB and u-I-TLB will have what is required to accomplish memcpy * two), the u-D-TLB and u-I-TLB will have what is required to accomplish memcpy
* *
@@ -127,7 +127,7 @@ static void utlb_invalidate(void)
* There was however an obscure hardware bug, where uTLB flush would * There was however an obscure hardware bug, where uTLB flush would
* fail when a prior probe for J-TLB (both totally unrelated) would * fail when a prior probe for J-TLB (both totally unrelated) would
* return lkup err - because the entry didn't exist in MMU. * return lkup err - because the entry didn't exist in MMU.
* The Workround was to set Index reg with some valid value, prior to * The Workaround was to set Index reg with some valid value, prior to
* flush. This was fixed in MMU v3 * flush. This was fixed in MMU v3
*/ */
unsigned int idx; unsigned int idx;
@@ -272,7 +272,7 @@ noinline void local_flush_tlb_all(void)
} }
/* /*
* Flush the entrie MM for userland. The fastest way is to move to Next ASID * Flush the entire MM for userland. The fastest way is to move to Next ASID
*/ */
noinline void local_flush_tlb_mm(struct mm_struct *mm) noinline void local_flush_tlb_mm(struct mm_struct *mm)
{ {
@@ -303,7 +303,7 @@ noinline void local_flush_tlb_mm(struct mm_struct *mm)
* Difference between this and Kernel Range Flush is * Difference between this and Kernel Range Flush is
* -Here the fastest way (if range is too large) is to move to next ASID * -Here the fastest way (if range is too large) is to move to next ASID
* without doing any explicit Shootdown * without doing any explicit Shootdown
* -In case of kernel Flush, entry has to be shot down explictly * -In case of kernel Flush, entry has to be shot down explicitly
*/ */
void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start, void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
unsigned long end) unsigned long end)
@@ -620,7 +620,7 @@ void update_mmu_cache(struct vm_area_struct *vma, unsigned long vaddr_unaligned,
* Super Page size is configurable in hardware (4K to 16M), but fixed once * Super Page size is configurable in hardware (4K to 16M), but fixed once
* RTL builds. * RTL builds.
* *
* The exact THP size a Linx configuration will support is a function of: * The exact THP size a Linux configuration will support is a function of:
* - MMU page size (typical 8K, RTL fixed) * - MMU page size (typical 8K, RTL fixed)
* - software page walker address split between PGD:PTE:PFN (typical * - software page walker address split between PGD:PTE:PFN (typical
* 11:8:13, but can be changed with 1 line) * 11:8:13, but can be changed with 1 line)
@@ -698,7 +698,7 @@ void local_flush_pmd_tlb_range(struct vm_area_struct *vma, unsigned long start,
#endif #endif
/* Read the Cache Build Confuration Registers, Decode them and save into /* Read the Cache Build Configuration Registers, Decode them and save into
* the cpuinfo structure for later use. * the cpuinfo structure for later use.
* No Validation is done here, simply read/convert the BCRs * No Validation is done here, simply read/convert the BCRs
*/ */
@@ -803,13 +803,13 @@ void arc_mmu_init(void)
pr_info("%s", arc_mmu_mumbojumbo(0, str, sizeof(str))); pr_info("%s", arc_mmu_mumbojumbo(0, str, sizeof(str)));
/* /*
* Can't be done in processor.h due to header include depenedencies * Can't be done in processor.h due to header include dependencies
*/ */
BUILD_BUG_ON(!IS_ALIGNED((CONFIG_ARC_KVADDR_SIZE << 20), PMD_SIZE)); BUILD_BUG_ON(!IS_ALIGNED((CONFIG_ARC_KVADDR_SIZE << 20), PMD_SIZE));
/* /*
* stack top size sanity check, * stack top size sanity check,
* Can't be done in processor.h due to header include depenedencies * Can't be done in processor.h due to header include dependencies
*/ */
BUILD_BUG_ON(!IS_ALIGNED(STACK_TOP, PMD_SIZE)); BUILD_BUG_ON(!IS_ALIGNED(STACK_TOP, PMD_SIZE));
@@ -881,7 +881,7 @@ void arc_mmu_init(void)
* the duplicate one. * the duplicate one.
* -Knob to be verbose abt it.(TODO: hook them up to debugfs) * -Knob to be verbose abt it.(TODO: hook them up to debugfs)
*/ */
volatile int dup_pd_silent; /* Be slient abt it or complain (default) */ volatile int dup_pd_silent; /* Be silent abt it or complain (default) */
void do_tlb_overlap_fault(unsigned long cause, unsigned long address, void do_tlb_overlap_fault(unsigned long cause, unsigned long address,
struct pt_regs *regs) struct pt_regs *regs)
@@ -948,7 +948,7 @@ void do_tlb_overlap_fault(unsigned long cause, unsigned long address,
/*********************************************************************** /***********************************************************************
* Diagnostic Routines * Diagnostic Routines
* -Called from Low Level TLB Hanlders if things don;t look good * -Called from Low Level TLB Handlers if things don;t look good
**********************************************************************/ **********************************************************************/
#ifdef CONFIG_ARC_DBG_TLB_PARANOIA #ifdef CONFIG_ARC_DBG_TLB_PARANOIA

View File

@@ -35,6 +35,7 @@ config ARM
select ARCH_USE_CMPXCHG_LOCKREF select ARCH_USE_CMPXCHG_LOCKREF
select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU
select ARCH_WANT_IPC_PARSE_VERSION select ARCH_WANT_IPC_PARSE_VERSION
select ARCH_WANT_LD_ORPHAN_WARN
select BINFMT_FLAT_ARGVP_ENVP_ON_STACK select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
select BUILDTIME_TABLE_SORT if MMU select BUILDTIME_TABLE_SORT if MMU
select CLONE_BACKWARDS select CLONE_BACKWARDS

View File

@@ -16,10 +16,6 @@ LDFLAGS_vmlinux += --be8
KBUILD_LDFLAGS_MODULE += --be8 KBUILD_LDFLAGS_MODULE += --be8
endif endif
# We never want expected sections to be placed heuristically by the
# linker. All sections should be explicitly named in the linker script.
LDFLAGS_vmlinux += $(call ld-option, --orphan-handling=warn)
GZFLAGS :=-9 GZFLAGS :=-9
#KBUILD_CFLAGS +=-pipe #KBUILD_CFLAGS +=-pipe

View File

@@ -129,7 +129,9 @@ LDFLAGS_vmlinux += --no-undefined
# Delete all temporary local symbols # Delete all temporary local symbols
LDFLAGS_vmlinux += -X LDFLAGS_vmlinux += -X
# Report orphan sections # Report orphan sections
LDFLAGS_vmlinux += $(call ld-option, --orphan-handling=warn) ifdef CONFIG_LD_ORPHAN_WARN
LDFLAGS_vmlinux += --orphan-handling=warn
endif
# Next argument is a linker script # Next argument is a linker script
LDFLAGS_vmlinux += -T LDFLAGS_vmlinux += -T

View File

@@ -1472,6 +1472,9 @@ ENTRY(efi_enter_kernel)
@ issued from HYP mode take us to the correct handler code. We @ issued from HYP mode take us to the correct handler code. We
@ will disable the MMU before jumping to the kernel proper. @ will disable the MMU before jumping to the kernel proper.
@ @
ARM( bic r1, r1, #(1 << 30) ) @ clear HSCTLR.TE
THUMB( orr r1, r1, #(1 << 30) ) @ set HSCTLR.TE
mcr p15, 4, r1, c1, c0, 0
adr r0, __hyp_reentry_vectors adr r0, __hyp_reentry_vectors
mcr p15, 4, r0, c12, c0, 0 @ set HYP vector base (HVBAR) mcr p15, 4, r0, c12, c0, 0 @ set HYP vector base (HVBAR)
isb isb

View File

@@ -521,7 +521,7 @@
ranges = <0x0 0x100000 0x8000>; ranges = <0x0 0x100000 0x8000>;
mac_sw: switch@0 { mac_sw: switch@0 {
compatible = "ti,am4372-cpsw","ti,cpsw-switch"; compatible = "ti,am4372-cpsw-switch", "ti,cpsw-switch";
reg = <0x0 0x4000>; reg = <0x0 0x4000>;
ranges = <0 0 0x4000>; ranges = <0 0 0x4000>;
clocks = <&cpsw_125mhz_gclk>, <&dpll_clksel_mac_clk>; clocks = <&cpsw_125mhz_gclk>, <&dpll_clksel_mac_clk>;

View File

@@ -32,8 +32,8 @@
interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "int0", "int1"; interrupt-names = "int0", "int1";
clocks = <&mcan_clk>, <&l3_iclk_div>; clocks = <&l3_iclk_div>, <&mcan_clk>;
clock-names = "cclk", "hclk"; clock-names = "hclk", "cclk";
bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>; bosch,mram-cfg = <0x0 0 0 32 0 0 1 1>;
}; };
}; };

View File

@@ -122,7 +122,6 @@
}; };
&clock { &clock {
clocks = <&clock CLK_XUSBXTI>;
assigned-clocks = <&clock CLK_FOUT_EPLL>; assigned-clocks = <&clock CLK_FOUT_EPLL>;
assigned-clock-rates = <45158401>; assigned-clock-rates = <45158401>;
}; };

View File

@@ -59,7 +59,7 @@
MX50_PAD_CSPI_MISO__CSPI_MISO 0x00 MX50_PAD_CSPI_MISO__CSPI_MISO 0x00
MX50_PAD_CSPI_MOSI__CSPI_MOSI 0x00 MX50_PAD_CSPI_MOSI__CSPI_MOSI 0x00
MX50_PAD_CSPI_SS0__GPIO4_11 0xc4 MX50_PAD_CSPI_SS0__GPIO4_11 0xc4
MX50_PAD_ECSPI1_MOSI__CSPI_SS1 0xf4 MX50_PAD_ECSPI1_MOSI__GPIO4_13 0x84
>; >;
}; };

View File

@@ -213,8 +213,8 @@
#size-cells = <0>; #size-cells = <0>;
/* Microchip KSZ9031RNX PHY */ /* Microchip KSZ9031RNX PHY */
rgmii_phy: ethernet-phy@4 { rgmii_phy: ethernet-phy@0 {
reg = <4>; reg = <0>;
interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>; interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>;
reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
reset-assert-us = <10000>; reset-assert-us = <10000>;

View File

@@ -551,7 +551,7 @@
pinctrl_i2c3: i2c3grp { pinctrl_i2c3: i2c3grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1
MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1 MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1
>; >;
}; };

View File

@@ -98,7 +98,7 @@
&fec { &fec {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_enet>; pinctrl-0 = <&pinctrl_enet>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -166,7 +166,6 @@
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
>; >;
}; };

View File

@@ -223,8 +223,7 @@
}; };
&ssp3 { &ssp3 {
/delete-property/ #address-cells; #address-cells = <0>;
/delete-property/ #size-cells;
spi-slave; spi-slave;
status = "okay"; status = "okay";
ready-gpios = <&gpio 125 GPIO_ACTIVE_HIGH>; ready-gpios = <&gpio 125 GPIO_ACTIVE_HIGH>;

View File

@@ -46,6 +46,16 @@
linux,code = <KEY_A>; linux,code = <KEY_A>;
gpios = <&gpiof 3 GPIO_ACTIVE_LOW>; gpios = <&gpiof 3 GPIO_ACTIVE_LOW>;
}; };
/*
* The EXTi IRQ line 0 is shared with PMIC,
* so mark this as polled GPIO key.
*/
button-2 {
label = "TA3-GPIO-C";
linux,code = <KEY_C>;
gpios = <&gpiog 0 GPIO_ACTIVE_LOW>;
};
}; };
gpio-keys { gpio-keys {
@@ -59,13 +69,6 @@
wakeup-source; wakeup-source;
}; };
button-2 {
label = "TA3-GPIO-C";
linux,code = <KEY_C>;
gpios = <&gpioi 11 GPIO_ACTIVE_LOW>;
wakeup-source;
};
button-3 { button-3 {
label = "TA4-GPIO-D"; label = "TA4-GPIO-D";
linux,code = <KEY_D>; linux,code = <KEY_D>;
@@ -79,7 +82,7 @@
led-0 { led-0 {
label = "green:led5"; label = "green:led5";
gpios = <&gpiog 2 GPIO_ACTIVE_HIGH>; gpios = <&gpioc 6 GPIO_ACTIVE_HIGH>;
default-state = "off"; default-state = "off";
}; };

View File

@@ -68,6 +68,7 @@
gpio = <&gpiog 3 GPIO_ACTIVE_LOW>; gpio = <&gpiog 3 GPIO_ACTIVE_LOW>;
regulator-always-on; regulator-always-on;
regulator-boot-on; regulator-boot-on;
vin-supply = <&vdd>;
}; };
}; };
@@ -202,6 +203,7 @@
vdda: ldo1 { vdda: ldo1 {
regulator-name = "vdda"; regulator-name = "vdda";
regulator-always-on;
regulator-min-microvolt = <2900000>; regulator-min-microvolt = <2900000>;
regulator-max-microvolt = <2900000>; regulator-max-microvolt = <2900000>;
interrupts = <IT_CURLIM_LDO1 0>; interrupts = <IT_CURLIM_LDO1 0>;

View File

@@ -21,6 +21,10 @@
}; };
}; };
&dts {
status = "okay";
};
&i2c4 { &i2c4 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c4_pins_a>; pinctrl-0 = <&i2c4_pins_a>;

View File

@@ -154,7 +154,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -130,7 +130,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
status = "okay"; status = "okay";
}; };

View File

@@ -132,7 +132,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
status = "okay"; status = "okay";
}; };

View File

@@ -151,7 +151,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright 2015 Adam Sampson <ats@offog.org> * Copyright 2015-2020 Adam Sampson <ats@offog.org>
* *
* This file is dual-licensed: you can use it either under the terms * This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual * of the GPL or the X11 license, at your option. Note that this dual
@@ -115,7 +115,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -131,7 +131,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_sw>; phy-supply = <&reg_sw>;
phy-handle = <&rgmii_phy>; phy-handle = <&rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
allwinner,rx-delay-ps = <700>; allwinner,rx-delay-ps = <700>;
allwinner,tx-delay-ps = <700>; allwinner,tx-delay-ps = <700>;
status = "okay"; status = "okay";

View File

@@ -183,7 +183,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_dldo4>; phy-supply = <&reg_dldo4>;
phy-handle = <&rgmii_phy>; phy-handle = <&rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -53,11 +53,6 @@
}; };
}; };
&emac {
/* LEDs changed to active high on the plus */
/delete-property/ allwinner,leds-active-low;
};
&mmc1 { &mmc1 {
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;

View File

@@ -67,7 +67,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -129,7 +129,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_dc1sw>; phy-supply = <&reg_dc1sw>;
status = "okay"; status = "okay";
}; };

View File

@@ -10,7 +10,7 @@
/ { / {
model = "PineCube IP Camera"; model = "PineCube IP Camera";
compatible = "pine64,pinecube", "allwinner,sun8i-s3"; compatible = "pine64,pinecube", "sochip,s3", "allwinner,sun8i-v3";
aliases { aliases {
serial0 = &uart2; serial0 = &uart2;

View File

@@ -539,7 +539,7 @@
gic: interrupt-controller@1c81000 { gic: interrupt-controller@1c81000 {
compatible = "arm,gic-400"; compatible = "arm,gic-400";
reg = <0x01c81000 0x1000>, reg = <0x01c81000 0x1000>,
<0x01c82000 0x1000>, <0x01c82000 0x2000>,
<0x01c84000 0x2000>, <0x01c84000 0x2000>,
<0x01c86000 0x2000>; <0x01c86000 0x2000>;
interrupt-controller; interrupt-controller;

View File

@@ -120,7 +120,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_dc1sw>; phy-supply = <&reg_dc1sw>;
status = "okay"; status = "okay";
}; };
@@ -198,16 +198,16 @@
}; };
&reg_dc1sw { &reg_dc1sw {
regulator-min-microvolt = <3000000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
regulator-name = "vcc-gmac-phy"; regulator-name = "vcc-gmac-phy";
}; };
&reg_dcdc1 { &reg_dcdc1 {
regulator-always-on; regulator-always-on;
regulator-min-microvolt = <3000000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
regulator-name = "vcc-3v0"; regulator-name = "vcc-3v3";
}; };
&reg_dcdc2 { &reg_dcdc2 {

View File

@@ -129,7 +129,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_cldo1>; phy-supply = <&reg_cldo1>;
status = "okay"; status = "okay";
}; };

View File

@@ -124,7 +124,7 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>; pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>; phy-handle = <&phy1>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-supply = <&reg_cldo1>; phy-supply = <&reg_cldo1>;
status = "okay"; status = "okay";
}; };

View File

@@ -126,7 +126,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -406,6 +406,9 @@
}; };
}; };
&mdio1 {
clock-frequency = <5000000>;
};
&iomuxc { &iomuxc {
pinctrl_gpio_e6185_eeprom_sel: pinctrl-gpio-e6185-eeprom-spi0 { pinctrl_gpio_e6185_eeprom_sel: pinctrl-gpio-e6185-eeprom-spi0 {

View File

@@ -81,7 +81,6 @@ CONFIG_PARTITION_ADVANCED=y
CONFIG_BINFMT_MISC=y CONFIG_BINFMT_MISC=y
CONFIG_CMA=y CONFIG_CMA=y
CONFIG_ZSMALLOC=m CONFIG_ZSMALLOC=m
CONFIG_ZSMALLOC_PGTABLE_MAPPING=y
CONFIG_NET=y CONFIG_NET=y
CONFIG_PACKET=y CONFIG_PACKET=y
CONFIG_UNIX=y CONFIG_UNIX=y

View File

@@ -44,20 +44,20 @@ int kprobe_exceptions_notify(struct notifier_block *self,
unsigned long val, void *data); unsigned long val, void *data);
/* optinsn template addresses */ /* optinsn template addresses */
extern __visible kprobe_opcode_t optprobe_template_entry; extern __visible kprobe_opcode_t optprobe_template_entry[];
extern __visible kprobe_opcode_t optprobe_template_val; extern __visible kprobe_opcode_t optprobe_template_val[];
extern __visible kprobe_opcode_t optprobe_template_call; extern __visible kprobe_opcode_t optprobe_template_call[];
extern __visible kprobe_opcode_t optprobe_template_end; extern __visible kprobe_opcode_t optprobe_template_end[];
extern __visible kprobe_opcode_t optprobe_template_sub_sp; extern __visible kprobe_opcode_t optprobe_template_sub_sp[];
extern __visible kprobe_opcode_t optprobe_template_add_sp; extern __visible kprobe_opcode_t optprobe_template_add_sp[];
extern __visible kprobe_opcode_t optprobe_template_restore_begin; extern __visible kprobe_opcode_t optprobe_template_restore_begin[];
extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn; extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn[];
extern __visible kprobe_opcode_t optprobe_template_restore_end; extern __visible kprobe_opcode_t optprobe_template_restore_end[];
#define MAX_OPTIMIZED_LENGTH 4 #define MAX_OPTIMIZED_LENGTH 4
#define MAX_OPTINSN_SIZE \ #define MAX_OPTINSN_SIZE \
((unsigned long)&optprobe_template_end - \ ((unsigned long)optprobe_template_end - \
(unsigned long)&optprobe_template_entry) (unsigned long)optprobe_template_entry)
#define RELATIVEJUMP_SIZE 4 #define RELATIVEJUMP_SIZE 4
struct arch_optimized_insn { struct arch_optimized_insn {

View File

@@ -75,6 +75,8 @@
#define PTE_HWTABLE_OFF (PTE_HWTABLE_PTRS * sizeof(pte_t)) #define PTE_HWTABLE_OFF (PTE_HWTABLE_PTRS * sizeof(pte_t))
#define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u32)) #define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u32))
#define MAX_POSSIBLE_PHYSMEM_BITS 32
/* /*
* PMD_SHIFT determines the size of the area a second-level page table can map * PMD_SHIFT determines the size of the area a second-level page table can map
* PGDIR_SHIFT determines what a third-level page table entry can map * PGDIR_SHIFT determines what a third-level page table entry can map

View File

@@ -25,6 +25,8 @@
#define PTE_HWTABLE_OFF (0) #define PTE_HWTABLE_OFF (0)
#define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u64)) #define PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(u64))
#define MAX_POSSIBLE_PHYSMEM_BITS 40
/* /*
* PGDIR_SHIFT determines the size a top-level page table entry can map. * PGDIR_SHIFT determines the size a top-level page table entry can map.
*/ */

View File

@@ -32,8 +32,7 @@ u64 perf_reg_abi(struct task_struct *task)
} }
void perf_get_regs_user(struct perf_regs *regs_user, void perf_get_regs_user(struct perf_regs *regs_user,
struct pt_regs *regs, struct pt_regs *regs)
struct pt_regs *regs_user_copy)
{ {
regs_user->regs = task_pt_regs(current); regs_user->regs = task_pt_regs(current);
regs_user->abi = perf_reg_abi(current); regs_user->abi = perf_reg_abi(current);

View File

@@ -71,7 +71,7 @@ void arch_cpu_idle(void)
arm_pm_idle(); arm_pm_idle();
else else
cpu_do_idle(); cpu_do_idle();
local_irq_enable(); raw_local_irq_enable();
} }
void arch_cpu_idle_prepare(void) void arch_cpu_idle_prepare(void)

View File

@@ -136,7 +136,7 @@ void __init imx_init_revision_from_anatop(void)
src_np = of_find_compatible_node(NULL, NULL, src_np = of_find_compatible_node(NULL, NULL,
"fsl,imx6ul-src"); "fsl,imx6ul-src");
src_base = of_iomap(np, 0); src_base = of_iomap(src_np, 0);
of_node_put(src_np); of_node_put(src_np);
WARN_ON(!src_base); WARN_ON(!src_base);
sbmr2 = readl_relaxed(src_base + SRC_SBMR2); sbmr2 = readl_relaxed(src_base + SRC_SBMR2);

View File

@@ -6,9 +6,6 @@
#ifndef __MEMORY_H #ifndef __MEMORY_H
#define __MEMORY_H #define __MEMORY_H
#define MAX_PHYSMEM_BITS 36
#define SECTION_SIZE_BITS 34
#define KEYSTONE_LOW_PHYS_START 0x80000000ULL #define KEYSTONE_LOW_PHYS_START 0x80000000ULL
#define KEYSTONE_LOW_PHYS_SIZE 0x80000000ULL /* 2G */ #define KEYSTONE_LOW_PHYS_SIZE 0x80000000ULL /* 2G */
#define KEYSTONE_LOW_PHYS_END (KEYSTONE_LOW_PHYS_START + \ #define KEYSTONE_LOW_PHYS_END (KEYSTONE_LOW_PHYS_START + \

View File

@@ -288,7 +288,7 @@ static struct gpiod_lookup_table osk_usb_gpio_table = {
.dev_id = "ohci", .dev_id = "ohci",
.table = { .table = {
/* Power GPIO on the I2C-attached TPS65010 */ /* Power GPIO on the I2C-attached TPS65010 */
GPIO_LOOKUP("i2c-tps65010", 1, "power", GPIO_ACTIVE_HIGH), GPIO_LOOKUP("tps65010", 0, "power", GPIO_ACTIVE_HIGH),
GPIO_LOOKUP(OMAP_GPIO_LABEL, 9, "overcurrent", GPIO_LOOKUP(OMAP_GPIO_LABEL, 9, "overcurrent",
GPIO_ACTIVE_HIGH), GPIO_ACTIVE_HIGH),
}, },

View File

@@ -7,7 +7,6 @@ config ARCH_OMAP2
depends on ARCH_MULTI_V6 depends on ARCH_MULTI_V6
select ARCH_OMAP2PLUS select ARCH_OMAP2PLUS
select CPU_V6 select CPU_V6
select PM_GENERIC_DOMAINS if PM
select SOC_HAS_OMAP2_SDRC select SOC_HAS_OMAP2_SDRC
config ARCH_OMAP3 config ARCH_OMAP3
@@ -106,6 +105,8 @@ config ARCH_OMAP2PLUS
select OMAP_DM_TIMER select OMAP_DM_TIMER
select OMAP_GPMC select OMAP_GPMC
select PINCTRL select PINCTRL
select PM_GENERIC_DOMAINS if PM
select PM_GENERIC_DOMAINS_OF if PM
select RESET_CONTROLLER select RESET_CONTROLLER
select SOC_BUS select SOC_BUS
select TI_SYSC select TI_SYSC

View File

@@ -175,8 +175,11 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev,
if (mpuss_can_lose_context) { if (mpuss_can_lose_context) {
error = cpu_cluster_pm_enter(); error = cpu_cluster_pm_enter();
if (error) { if (error) {
omap_set_pwrdm_state(mpu_pd, PWRDM_POWER_ON); index = 0;
goto cpu_cluster_pm_out; cx = state_ptr + index;
pwrdm_set_logic_retst(mpu_pd, cx->mpu_logic_state);
omap_set_pwrdm_state(mpu_pd, cx->mpu_state);
mpuss_can_lose_context = 0;
} }
} }
} }
@@ -184,7 +187,6 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev,
omap4_enter_lowpower(dev->cpu, cx->cpu_state); omap4_enter_lowpower(dev->cpu, cx->cpu_state);
cpu_done[dev->cpu] = true; cpu_done[dev->cpu] = true;
cpu_cluster_pm_out:
/* Wakeup CPU1 only if it is not offlined */ /* Wakeup CPU1 only if it is not offlined */
if (dev->cpu == 0 && cpumask_test_cpu(1, cpu_online_mask)) { if (dev->cpu == 0 && cpumask_test_cpu(1, cpu_online_mask)) {

View File

@@ -66,6 +66,7 @@ static const char * const sun8i_board_dt_compat[] = {
"allwinner,sun8i-h2-plus", "allwinner,sun8i-h2-plus",
"allwinner,sun8i-h3", "allwinner,sun8i-h3",
"allwinner,sun8i-r40", "allwinner,sun8i-r40",
"allwinner,sun8i-v3",
"allwinner,sun8i-v3s", "allwinner,sun8i-v3s",
NULL, NULL,
}; };

View File

@@ -85,21 +85,21 @@ asm (
"optprobe_template_end:\n"); "optprobe_template_end:\n");
#define TMPL_VAL_IDX \ #define TMPL_VAL_IDX \
((unsigned long *)&optprobe_template_val - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_val - (unsigned long *)optprobe_template_entry)
#define TMPL_CALL_IDX \ #define TMPL_CALL_IDX \
((unsigned long *)&optprobe_template_call - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_call - (unsigned long *)optprobe_template_entry)
#define TMPL_END_IDX \ #define TMPL_END_IDX \
((unsigned long *)&optprobe_template_end - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_end - (unsigned long *)optprobe_template_entry)
#define TMPL_ADD_SP \ #define TMPL_ADD_SP \
((unsigned long *)&optprobe_template_add_sp - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_add_sp - (unsigned long *)optprobe_template_entry)
#define TMPL_SUB_SP \ #define TMPL_SUB_SP \
((unsigned long *)&optprobe_template_sub_sp - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_sub_sp - (unsigned long *)optprobe_template_entry)
#define TMPL_RESTORE_BEGIN \ #define TMPL_RESTORE_BEGIN \
((unsigned long *)&optprobe_template_restore_begin - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_restore_begin - (unsigned long *)optprobe_template_entry)
#define TMPL_RESTORE_ORIGN_INSN \ #define TMPL_RESTORE_ORIGN_INSN \
((unsigned long *)&optprobe_template_restore_orig_insn - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_restore_orig_insn - (unsigned long *)optprobe_template_entry)
#define TMPL_RESTORE_END \ #define TMPL_RESTORE_END \
((unsigned long *)&optprobe_template_restore_end - (unsigned long *)&optprobe_template_entry) ((unsigned long *)optprobe_template_restore_end - (unsigned long *)optprobe_template_entry)
/* /*
* ARM can always optimize an instruction when using ARM ISA, except * ARM can always optimize an instruction when using ARM ISA, except
@@ -234,7 +234,7 @@ int arch_prepare_optimized_kprobe(struct optimized_kprobe *op, struct kprobe *or
} }
/* Copy arch-dep-instance from template. */ /* Copy arch-dep-instance from template. */
memcpy(code, (unsigned long *)&optprobe_template_entry, memcpy(code, (unsigned long *)optprobe_template_entry,
TMPL_END_IDX * sizeof(kprobe_opcode_t)); TMPL_END_IDX * sizeof(kprobe_opcode_t));
/* Adjust buffer according to instruction. */ /* Adjust buffer according to instruction. */

View File

@@ -81,6 +81,7 @@ config ARM64
select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT
select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_FRAME_POINTERS
select ARCH_WANT_HUGE_PMD_SHARE if ARM64_4K_PAGES || (ARM64_16K_PAGES && !ARM64_VA_BITS_36) select ARCH_WANT_HUGE_PMD_SHARE if ARM64_4K_PAGES || (ARM64_16K_PAGES && !ARM64_VA_BITS_36)
select ARCH_WANT_LD_ORPHAN_WARN
select ARCH_HAS_UBSAN_SANITIZE_ALL select ARCH_HAS_UBSAN_SANITIZE_ALL
select ARM_AMBA select ARM_AMBA
select ARM_ARCH_TIMER select ARM_ARCH_TIMER

View File

@@ -28,10 +28,6 @@ LDFLAGS_vmlinux += --fix-cortex-a53-843419
endif endif
endif endif
# We never want expected sections to be placed heuristically by the
# linker. All sections should be explicitly named in the linker script.
LDFLAGS_vmlinux += $(call ld-option, --orphan-handling=warn)
ifeq ($(CONFIG_ARM64_USE_LSE_ATOMICS), y) ifeq ($(CONFIG_ARM64_USE_LSE_ATOMICS), y)
ifneq ($(CONFIG_ARM64_LSE_ATOMICS), y) ifneq ($(CONFIG_ARM64_LSE_ATOMICS), y)
$(warning LSE atomics not supported by binutils) $(warning LSE atomics not supported by binutils)

View File

@@ -105,7 +105,7 @@
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>; pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_dc1sw>; phy-supply = <&reg_dc1sw>;
status = "okay"; status = "okay";

View File

@@ -120,7 +120,7 @@
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>; pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
status = "okay"; status = "okay";

View File

@@ -13,7 +13,7 @@
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>; pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii"; phy-mode = "rgmii-txid";
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
status = "okay"; status = "okay";
}; };

View File

@@ -122,9 +122,6 @@
status = "okay"; status = "okay";
port { port {
#address-cells = <1>;
#size-cells = <0>;
csi_ep: endpoint { csi_ep: endpoint {
remote-endpoint = <&ov5640_ep>; remote-endpoint = <&ov5640_ep>;
bus-width = <8>; bus-width = <8>;

View File

@@ -79,7 +79,7 @@
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>; pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_dc1sw>; phy-supply = <&reg_dc1sw>;
status = "okay"; status = "okay";

View File

@@ -36,7 +36,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
/delete-property/ allwinner,leds-active-low; /delete-property/ allwinner,leds-active-low;
status = "okay"; status = "okay";
}; };

View File

@@ -96,7 +96,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -123,7 +123,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -124,7 +124,7 @@
pinctrl-0 = <&emac_rgmii_pins>; pinctrl-0 = <&emac_rgmii_pins>;
phy-supply = <&reg_gmac_3v3>; phy-supply = <&reg_gmac_3v3>;
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
status = "okay"; status = "okay";
}; };

View File

@@ -97,7 +97,7 @@
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ext_rgmii_pins>; pinctrl-0 = <&ext_rgmii_pins>;
phy-mode = "rgmii"; phy-mode = "rgmii-id";
phy-handle = <&ext_rgmii_phy>; phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_aldo2>; phy-supply = <&reg_aldo2>;
status = "okay"; status = "okay";

Some files were not shown because too many files have changed in this diff Show More