Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
tools/lib/bpf/ringbuf.c927cbb478a
("libbpf: Handle size overflow for ringbuf mmap")b486d19a0a
("libbpf: checkpatch: Fixed code alignments in ringbuf.c") https://lore.kernel.org/all/20221121122707.44d1446a@canb.auug.org.au/ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Коммит
f2bb566f5c
4
.mailmap
4
.mailmap
|
@ -29,6 +29,7 @@ Alexandre Belloni <alexandre.belloni@bootlin.com> <alexandre.belloni@free-electr
|
|||
Alexei Starovoitov <ast@kernel.org> <alexei.starovoitov@gmail.com>
|
||||
Alexei Starovoitov <ast@kernel.org> <ast@fb.com>
|
||||
Alexei Starovoitov <ast@kernel.org> <ast@plumgrid.com>
|
||||
Alex Hung <alexhung@gmail.com> <alex.hung@canonical.com>
|
||||
Alex Shi <alexs@kernel.org> <alex.shi@intel.com>
|
||||
Alex Shi <alexs@kernel.org> <alex.shi@linaro.org>
|
||||
Alex Shi <alexs@kernel.org> <alex.shi@linux.alibaba.com>
|
||||
|
@ -382,6 +383,7 @@ Santosh Shilimkar <santosh.shilimkar@oracle.org>
|
|||
Santosh Shilimkar <ssantosh@kernel.org>
|
||||
Sarangdhar Joshi <spjoshi@codeaurora.org>
|
||||
Sascha Hauer <s.hauer@pengutronix.de>
|
||||
Satya Priya <quic_c_skakit@quicinc.com> <skakit@codeaurora.org>
|
||||
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>
|
||||
|
@ -389,6 +391,7 @@ Sebastian Reichel <sre@kernel.org> <sebastian.reichel@collabora.co.uk>
|
|||
Sebastian Reichel <sre@kernel.org> <sre@debian.org>
|
||||
Sedat Dilek <sedat.dilek@gmail.com> <sedat.dilek@credativ.de>
|
||||
Seth Forshee <sforshee@kernel.org> <seth.forshee@canonical.com>
|
||||
Shannon Nelson <shannon.nelson@amd.com> <snelson@pensando.io>
|
||||
Shiraz Hashim <shiraz.linux.kernel@gmail.com> <shiraz.hashim@st.com>
|
||||
Shuah Khan <shuah@kernel.org> <shuahkhan@gmail.com>
|
||||
Shuah Khan <shuah@kernel.org> <shuah.khan@hp.com>
|
||||
|
@ -416,6 +419,7 @@ TripleX Chung <xxx.phy@gmail.com> <triplex@zh-kernel.org>
|
|||
TripleX Chung <xxx.phy@gmail.com> <zhongyu@18mail.cn>
|
||||
Tsuneo Yoshioka <Tsuneo.Yoshioka@f-secure.com>
|
||||
Tycho Andersen <tycho@tycho.pizza> <tycho@tycho.ws>
|
||||
Tzung-Bi Shih <tzungbi@kernel.org> <tzungbi@google.com>
|
||||
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>
|
||||
|
|
4
CREDITS
4
CREDITS
|
@ -2452,6 +2452,10 @@ S: 482 Shadowgraph Dr.
|
|||
S: San Jose, CA 95110
|
||||
S: USA
|
||||
|
||||
N: Michal Marek
|
||||
E: michal.lkml@markovi.net
|
||||
D: Kbuild Maintainer 2009-2017
|
||||
|
||||
N: Martin Mares
|
||||
E: mj@ucw.cz
|
||||
W: http://www.ucw.cz/~mj/
|
||||
|
|
|
@ -6959,3 +6959,14 @@
|
|||
memory, and other data can't be written using
|
||||
xmon commands.
|
||||
off xmon is disabled.
|
||||
|
||||
amd_pstate= [X86]
|
||||
disable
|
||||
Do not enable amd_pstate as the default
|
||||
scaling driver for the supported processors
|
||||
passive
|
||||
Use amd_pstate as a scaling driver, driver requests a
|
||||
desired performance on this abstract scale and the power
|
||||
management firmware translates the requests into actual
|
||||
hardware states (core frequency, data fabric and memory
|
||||
clocks etc.)
|
||||
|
|
|
@ -283,23 +283,19 @@ efficiency frequency management method on AMD processors.
|
|||
Kernel Module Options for ``amd-pstate``
|
||||
=========================================
|
||||
|
||||
.. _shared_mem:
|
||||
Passive Mode
|
||||
------------
|
||||
|
||||
``shared_mem``
|
||||
Use a module param (shared_mem) to enable related processors manually with
|
||||
**amd_pstate.shared_mem=1**.
|
||||
Due to the performance issue on the processors with `Shared Memory Support
|
||||
<perf_cap_>`_, we disable it presently and will re-enable this by default
|
||||
once we address performance issue with this solution.
|
||||
``amd_pstate=passive``
|
||||
|
||||
To check whether the current processor is using `Full MSR Support <perf_cap_>`_
|
||||
or `Shared Memory Support <perf_cap_>`_ : ::
|
||||
|
||||
ray@hr-test1:~$ lscpu | grep cppc
|
||||
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd cppc arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm
|
||||
|
||||
If the CPU flags have ``cppc``, then this processor supports `Full MSR Support
|
||||
<perf_cap_>`_. Otherwise, it supports `Shared Memory Support <perf_cap_>`_.
|
||||
It will be enabled if the ``amd_pstate=passive`` is passed to the kernel in the command line.
|
||||
In this mode, ``amd_pstate`` driver software specifies a desired QoS target in the CPPC
|
||||
performance scale as a relative number. This can be expressed as percentage of nominal
|
||||
performance (infrastructure max). Below the nominal sustained performance level,
|
||||
desired performance expresses the average performance level of the processor subject
|
||||
to the Performance Reduction Tolerance register. Above the nominal performance level,
|
||||
processor must provide at least nominal performance requested and go higher if current
|
||||
operating conditions allow.
|
||||
|
||||
|
||||
``cpupower`` tool support for ``amd-pstate``
|
||||
|
|
|
@ -62,13 +62,6 @@ properties:
|
|||
description:
|
||||
Inform the driver that last channel will be used to sensor battery.
|
||||
|
||||
aspeed,trim-data-valid:
|
||||
type: boolean
|
||||
description: |
|
||||
The ADC reference voltage can be calibrated to obtain the trimming
|
||||
data which will be stored in otp. This property informs the driver that
|
||||
the data store in the otp is valid.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
|
|
@ -16,8 +16,11 @@ description:
|
|||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
oneOf:
|
||||
- const: goodix,gt7375p
|
||||
- items:
|
||||
- const: goodix,gt7986u
|
||||
- const: goodix,gt7375p
|
||||
|
||||
reg:
|
||||
enum:
|
||||
|
|
|
@ -24,7 +24,7 @@ properties:
|
|||
oneOf:
|
||||
- items:
|
||||
- enum:
|
||||
- qcom,sc7280-bwmon
|
||||
- qcom,sc7280-cpu-bwmon
|
||||
- qcom,sdm845-bwmon
|
||||
- const: qcom,msm8998-bwmon
|
||||
- const: qcom,msm8998-bwmon # BWMON v4
|
||||
|
|
|
@ -36,6 +36,9 @@ properties:
|
|||
resets:
|
||||
maxItems: 1
|
||||
|
||||
iommus:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
@ -43,6 +46,7 @@ required:
|
|||
- clocks
|
||||
- clock-names
|
||||
- resets
|
||||
- iommus
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
|
@ -59,6 +63,7 @@ examples:
|
|||
clocks = <&ccu CLK_BUS_VP9>, <&ccu CLK_VP9>;
|
||||
clock-names = "bus", "mod";
|
||||
resets = <&ccu RST_BUS_VP9>;
|
||||
iommus = <&iommu 5>;
|
||||
};
|
||||
|
||||
...
|
||||
|
|
|
@ -8,7 +8,7 @@ title: Audio codec controlled by ChromeOS EC
|
|||
|
||||
maintainers:
|
||||
- Cheng-Yi Chiang <cychiang@chromium.org>
|
||||
- Tzung-Bi Shih <tzungbi@google.com>
|
||||
- Tzung-Bi Shih <tzungbi@kernel.org>
|
||||
|
||||
description: |
|
||||
Google's ChromeOS EC codec is a digital mic codec provided by the
|
||||
|
|
|
@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
|
|||
title: Realtek rt1015p codec devicetree bindings
|
||||
|
||||
maintainers:
|
||||
- Tzung-Bi Shih <tzungbi@google.com>
|
||||
- Tzung-Bi Shih <tzungbi@kernel.org>
|
||||
|
||||
description: |
|
||||
Rt1015p is a rt1015 variant which does not support I2C and
|
||||
|
|
|
@ -16,12 +16,11 @@ Parallel Port Devices
|
|||
16x50 UART Driver
|
||||
=================
|
||||
|
||||
.. kernel-doc:: drivers/tty/serial/serial_core.c
|
||||
:export:
|
||||
|
||||
.. kernel-doc:: drivers/tty/serial/8250/8250_core.c
|
||||
:export:
|
||||
|
||||
See serial/driver.rst for related APIs.
|
||||
|
||||
Pulse-Width Modulation (PWM)
|
||||
============================
|
||||
|
||||
|
|
|
@ -6,4 +6,4 @@ Generic Netlink
|
|||
|
||||
A wiki document on how to use Generic Netlink can be found here:
|
||||
|
||||
* http://www.linuxfoundation.org/collaborate/workgroups/networking/generic_netlink_howto
|
||||
* https://wiki.linuxfoundation.org/networking/generic_netlink_howto
|
||||
|
|
|
@ -51,7 +51,7 @@ the Technical Advisory Board (TAB) or other maintainers if you're
|
|||
uncertain how to handle situations that come up. It will not be
|
||||
considered a violation report unless you want it to be. If you are
|
||||
uncertain about approaching the TAB or any other maintainers, please
|
||||
reach out to our conflict mediator, Joanna Lee <joanna.lee@gesmer.com>.
|
||||
reach out to our conflict mediator, Joanna Lee <jlee@linuxfoundation.org>.
|
||||
|
||||
In the end, "be kind to each other" is really what the end goal is for
|
||||
everybody. We know everyone is human and we all fail at times, but the
|
||||
|
|
|
@ -70,8 +70,8 @@ LA64中每个寄存器为64位宽。 ``$r0`` 的内容总是固定为0,而其
|
|||
================= ================== =================== ==========
|
||||
|
||||
.. note::
|
||||
注意:在一些遗留代码中有时可能见到 ``$v0`` 和 ``$v1`` ,它们是
|
||||
``$a0`` 和 ``$a1`` 的别名,属于已经废弃的用法。
|
||||
注意:在一些遗留代码中有时可能见到 ``$fv0`` 和 ``$fv1`` ,它们是
|
||||
``$fa0`` 和 ``$fa1`` 的别名,属于已经废弃的用法。
|
||||
|
||||
|
||||
向量寄存器
|
||||
|
|
76
MAINTAINERS
76
MAINTAINERS
|
@ -2197,7 +2197,7 @@ M: Wei Xu <xuwei5@hisilicon.com>
|
|||
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||
S: Supported
|
||||
W: http://www.hisilicon.com
|
||||
T: git git://github.com/hisilicon/linux-hisi.git
|
||||
T: git https://github.com/hisilicon/linux-hisi.git
|
||||
F: arch/arm/boot/dts/hi3*
|
||||
F: arch/arm/boot/dts/hip*
|
||||
F: arch/arm/boot/dts/hisi*
|
||||
|
@ -4810,7 +4810,7 @@ R: Jeff Layton <jlayton@kernel.org>
|
|||
L: ceph-devel@vger.kernel.org
|
||||
S: Supported
|
||||
W: http://ceph.com/
|
||||
T: git git://github.com/ceph/ceph-client.git
|
||||
T: git https://github.com/ceph/ceph-client.git
|
||||
F: include/linux/ceph/
|
||||
F: include/linux/crush/
|
||||
F: net/ceph/
|
||||
|
@ -4822,7 +4822,7 @@ R: Jeff Layton <jlayton@kernel.org>
|
|||
L: ceph-devel@vger.kernel.org
|
||||
S: Supported
|
||||
W: http://ceph.com/
|
||||
T: git git://github.com/ceph/ceph-client.git
|
||||
T: git https://github.com/ceph/ceph-client.git
|
||||
F: Documentation/filesystems/ceph.rst
|
||||
F: fs/ceph/
|
||||
|
||||
|
@ -4912,7 +4912,7 @@ F: drivers/platform/chrome/
|
|||
|
||||
CHROMEOS EC CODEC DRIVER
|
||||
M: Cheng-Yi Chiang <cychiang@chromium.org>
|
||||
M: Tzung-Bi Shih <tzungbi@google.com>
|
||||
M: Tzung-Bi Shih <tzungbi@kernel.org>
|
||||
R: Guenter Roeck <groeck@chromium.org>
|
||||
L: chrome-platform@lists.linux.dev
|
||||
S: Maintained
|
||||
|
@ -5586,8 +5586,6 @@ F: drivers/scsi/cxgbi/cxgb3i
|
|||
|
||||
CXGB4 CRYPTO DRIVER (chcr)
|
||||
M: Ayush Sawal <ayush.sawal@chelsio.com>
|
||||
M: Vinay Kumar Yadav <vinay.yadav@chelsio.com>
|
||||
M: Rohit Maheshwari <rohitm@chelsio.com>
|
||||
L: linux-crypto@vger.kernel.org
|
||||
S: Supported
|
||||
W: http://www.chelsio.com
|
||||
|
@ -5595,8 +5593,6 @@ F: drivers/crypto/chelsio
|
|||
|
||||
CXGB4 INLINE CRYPTO DRIVER
|
||||
M: Ayush Sawal <ayush.sawal@chelsio.com>
|
||||
M: Vinay Kumar Yadav <vinay.yadav@chelsio.com>
|
||||
M: Rohit Maheshwari <rohitm@chelsio.com>
|
||||
L: netdev@vger.kernel.org
|
||||
S: Supported
|
||||
W: http://www.chelsio.com
|
||||
|
@ -10291,7 +10287,7 @@ T: git https://github.com/intel/gvt-linux.git
|
|||
F: drivers/gpu/drm/i915/gvt/
|
||||
|
||||
INTEL HID EVENT DRIVER
|
||||
M: Alex Hung <alex.hung@canonical.com>
|
||||
M: Alex Hung <alexhung@gmail.com>
|
||||
L: platform-driver-x86@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/platform/x86/intel/hid.c
|
||||
|
@ -11039,6 +11035,7 @@ KCONFIG
|
|||
M: Masahiro Yamada <masahiroy@kernel.org>
|
||||
L: linux-kbuild@vger.kernel.org
|
||||
S: Maintained
|
||||
Q: https://patchwork.kernel.org/project/linux-kbuild/list/
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kconfig
|
||||
F: Documentation/kbuild/kconfig*
|
||||
F: scripts/Kconfig.include
|
||||
|
@ -11096,10 +11093,12 @@ F: fs/autofs/
|
|||
|
||||
KERNEL BUILD + files below scripts/ (unless maintained elsewhere)
|
||||
M: Masahiro Yamada <masahiroy@kernel.org>
|
||||
M: Michal Marek <michal.lkml@markovi.net>
|
||||
R: Nathan Chancellor <nathan@kernel.org>
|
||||
R: Nick Desaulniers <ndesaulniers@google.com>
|
||||
R: Nicolas Schier <nicolas@fjasle.eu>
|
||||
L: linux-kbuild@vger.kernel.org
|
||||
S: Maintained
|
||||
Q: https://patchwork.kernel.org/project/linux-kbuild/list/
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
|
||||
F: Documentation/kbuild/
|
||||
F: Makefile
|
||||
|
@ -13630,6 +13629,12 @@ S: Supported
|
|||
F: drivers/misc/atmel-ssc.c
|
||||
F: include/linux/atmel-ssc.h
|
||||
|
||||
MICROCHIP SOC DRIVERS
|
||||
M: Conor Dooley <conor@kernel.org>
|
||||
S: Supported
|
||||
T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
|
||||
F: drivers/soc/microchip/
|
||||
|
||||
MICROCHIP USB251XB DRIVER
|
||||
M: Richard Leitner <richard.leitner@skidata.com>
|
||||
L: linux-usb@vger.kernel.org
|
||||
|
@ -15949,6 +15954,7 @@ Q: https://patchwork.kernel.org/project/linux-pci/list/
|
|||
B: https://bugzilla.kernel.org
|
||||
C: irc://irc.oftc.net/linux-pci
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git
|
||||
F: Documentation/devicetree/bindings/pci/
|
||||
F: drivers/pci/controller/
|
||||
F: drivers/pci/pci-bridge-emul.c
|
||||
F: drivers/pci/pci-bridge-emul.h
|
||||
|
@ -16055,7 +16061,7 @@ F: Documentation/devicetree/bindings/pci/microchip*
|
|||
F: drivers/pci/controller/*microchip*
|
||||
|
||||
PCIE DRIVER FOR QUALCOMM MSM
|
||||
M: Stanimir Varbanov <svarbanov@mm-sol.com>
|
||||
M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
L: linux-pci@vger.kernel.org
|
||||
L: linux-arm-msm@vger.kernel.org
|
||||
S: Maintained
|
||||
|
@ -16145,7 +16151,8 @@ F: include/linux/peci-cpu.h
|
|||
F: include/linux/peci.h
|
||||
|
||||
PENSANDO ETHERNET DRIVERS
|
||||
M: Shannon Nelson <snelson@pensando.io>
|
||||
M: Shannon Nelson <shannon.nelson@amd.com>
|
||||
M: Brett Creeley <brett.creeley@amd.com>
|
||||
M: drivers@pensando.io
|
||||
L: netdev@vger.kernel.org
|
||||
S: Supported
|
||||
|
@ -17228,7 +17235,7 @@ R: Dongsheng Yang <dongsheng.yang@easystack.cn>
|
|||
L: ceph-devel@vger.kernel.org
|
||||
S: Supported
|
||||
W: http://ceph.com/
|
||||
T: git git://github.com/ceph/ceph-client.git
|
||||
T: git https://github.com/ceph/ceph-client.git
|
||||
F: Documentation/ABI/testing/sysfs-bus-rbd
|
||||
F: drivers/block/rbd.c
|
||||
F: drivers/block/rbd_types.h
|
||||
|
@ -17481,10 +17488,8 @@ S: Maintained
|
|||
F: drivers/net/wireless/realtek/rtw89/
|
||||
|
||||
REDPINE WIRELESS DRIVER
|
||||
M: Amitkumar Karwar <amitkarwar@gmail.com>
|
||||
M: Siva Rebbagondla <siva8118@gmail.com>
|
||||
L: linux-wireless@vger.kernel.org
|
||||
S: Maintained
|
||||
S: Orphan
|
||||
F: drivers/net/wireless/rsi/
|
||||
|
||||
REGISTER MAP ABSTRACTION
|
||||
|
@ -17729,7 +17734,7 @@ F: arch/riscv/
|
|||
N: riscv
|
||||
K: riscv
|
||||
|
||||
RISC-V/MICROCHIP POLARFIRE SOC SUPPORT
|
||||
RISC-V MICROCHIP FPGA SUPPORT
|
||||
M: Conor Dooley <conor.dooley@microchip.com>
|
||||
M: Daire McNamara <daire.mcnamara@microchip.com>
|
||||
L: linux-riscv@lists.infradead.org
|
||||
|
@ -17747,17 +17752,26 @@ F: Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
|
|||
F: arch/riscv/boot/dts/microchip/
|
||||
F: drivers/char/hw_random/mpfs-rng.c
|
||||
F: drivers/clk/microchip/clk-mpfs.c
|
||||
F: drivers/i2c/busses/i2c-microchip-core.c
|
||||
F: drivers/i2c/busses/i2c-microchip-corei2c.c
|
||||
F: drivers/mailbox/mailbox-mpfs.c
|
||||
F: drivers/pci/controller/pcie-microchip-host.c
|
||||
F: drivers/reset/reset-mpfs.c
|
||||
F: drivers/rtc/rtc-mpfs.c
|
||||
F: drivers/soc/microchip/
|
||||
F: drivers/soc/microchip/mpfs-sys-controller.c
|
||||
F: drivers/spi/spi-microchip-core-qspi.c
|
||||
F: drivers/spi/spi-microchip-core.c
|
||||
F: drivers/usb/musb/mpfs.c
|
||||
F: include/soc/microchip/mpfs.h
|
||||
|
||||
RISC-V MISC SOC SUPPORT
|
||||
M: Conor Dooley <conor@kernel.org>
|
||||
L: linux-riscv@lists.infradead.org
|
||||
S: Maintained
|
||||
Q: https://patchwork.kernel.org/project/linux-riscv/list/
|
||||
T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
|
||||
F: Documentation/devicetree/bindings/riscv/
|
||||
F: arch/riscv/boot/dts/
|
||||
|
||||
RNBD BLOCK DRIVERS
|
||||
M: Md. Haris Iqbal <haris.iqbal@ionos.com>
|
||||
M: Jack Wang <jinpu.wang@ionos.com>
|
||||
|
@ -17998,7 +18012,7 @@ L: linux-fbdev@vger.kernel.org
|
|||
S: Maintained
|
||||
F: drivers/video/fbdev/savage/
|
||||
|
||||
S390
|
||||
S390 ARCHITECTURE
|
||||
M: Heiko Carstens <hca@linux.ibm.com>
|
||||
M: Vasily Gorbik <gor@linux.ibm.com>
|
||||
M: Alexander Gordeev <agordeev@linux.ibm.com>
|
||||
|
@ -18053,6 +18067,15 @@ L: netdev@vger.kernel.org
|
|||
S: Supported
|
||||
F: drivers/s390/net/
|
||||
|
||||
S390 MM
|
||||
M: Alexander Gordeev <agordeev@linux.ibm.com>
|
||||
M: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
|
||||
L: linux-s390@vger.kernel.org
|
||||
S: Supported
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git
|
||||
F: arch/s390/include/asm/pgtable.h
|
||||
F: arch/s390/mm
|
||||
|
||||
S390 PCI SUBSYSTEM
|
||||
M: Niklas Schnelle <schnelle@linux.ibm.com>
|
||||
M: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
|
||||
|
@ -18784,7 +18807,6 @@ M: Palmer Dabbelt <palmer@dabbelt.com>
|
|||
M: Paul Walmsley <paul.walmsley@sifive.com>
|
||||
L: linux-riscv@lists.infradead.org
|
||||
S: Supported
|
||||
T: git https://github.com/sifive/riscv-linux.git
|
||||
N: sifive
|
||||
K: [^@]sifive
|
||||
|
||||
|
@ -18803,6 +18825,13 @@ S: Maintained
|
|||
F: Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
|
||||
F: drivers/dma/sf-pdma/
|
||||
|
||||
SIFIVE SOC DRIVERS
|
||||
M: Conor Dooley <conor@kernel.org>
|
||||
L: linux-riscv@lists.infradead.org
|
||||
S: Maintained
|
||||
T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
|
||||
F: drivers/soc/sifive/
|
||||
|
||||
SILEAD TOUCHSCREEN DRIVER
|
||||
M: Hans de Goede <hdegoede@redhat.com>
|
||||
L: linux-input@vger.kernel.org
|
||||
|
@ -19604,6 +19633,11 @@ M: Ion Badulescu <ionut@badula.org>
|
|||
S: Odd Fixes
|
||||
F: drivers/net/ethernet/adaptec/starfire*
|
||||
|
||||
STARFIVE DEVICETREES
|
||||
M: Emil Renner Berthing <kernel@esmil.dk>
|
||||
S: Maintained
|
||||
F: arch/riscv/boot/dts/starfive/
|
||||
|
||||
STARFIVE JH7100 CLOCK DRIVERS
|
||||
M: Emil Renner Berthing <kernel@esmil.dk>
|
||||
S: Maintained
|
||||
|
|
2
Makefile
2
Makefile
|
@ -2,7 +2,7 @@
|
|||
VERSION = 6
|
||||
PATCHLEVEL = 1
|
||||
SUBLEVEL = 0
|
||||
EXTRAVERSION = -rc5
|
||||
EXTRAVERSION = -rc7
|
||||
NAME = Hurr durr I'ma ninja sloth
|
||||
|
||||
# *DOCUMENTATION*
|
||||
|
|
|
@ -12,22 +12,20 @@
|
|||
compatible = "phytec,am335x-pcm-953", "phytec,am335x-phycore-som", "ti,am33xx";
|
||||
|
||||
/* Power */
|
||||
regulators {
|
||||
vcc3v3: fixedregulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
vcc3v3: fixedregulator1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcc1v8: fixedregulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc1v8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
vcc1v8: fixedregulator2 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc1v8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
/* User IO */
|
||||
|
|
|
@ -39,6 +39,13 @@
|
|||
|
||||
};
|
||||
|
||||
usb1 {
|
||||
pinctrl_usb1_vbus_gpio: usb1_vbus_gpio {
|
||||
atmel,pins =
|
||||
<AT91_PIOC 5 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PC5 GPIO */
|
||||
};
|
||||
};
|
||||
|
||||
mmc0_slot1 {
|
||||
pinctrl_board_mmc0_slot1: mmc0_slot1-board {
|
||||
atmel,pins =
|
||||
|
@ -84,6 +91,8 @@
|
|||
};
|
||||
|
||||
usb1: gadget@fffa4000 {
|
||||
pinctrl-0 = <&pinctrl_usb1_vbus_gpio>;
|
||||
pinctrl-names = "default";
|
||||
atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -364,8 +364,8 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wifi>;
|
||||
interrupts-extended = <&gpio1 30 IRQ_TYPE_LEVEL_HIGH>;
|
||||
ref-clock-frequency = "38400000";
|
||||
tcxo-clock-frequency = "19200000";
|
||||
ref-clock-frequency = <38400000>;
|
||||
tcxo-clock-frequency = <19200000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1270,10 +1270,10 @@
|
|||
clocks = <&clks IMX7D_NAND_USDHC_BUS_RAWNAND_CLK>;
|
||||
};
|
||||
|
||||
gpmi: nand-controller@33002000{
|
||||
gpmi: nand-controller@33002000 {
|
||||
compatible = "fsl,imx7d-gpmi-nand";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x33002000 0x2000>, <0x33004000 0x4000>;
|
||||
reg-names = "gpmi-nand", "bch";
|
||||
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -69,6 +69,12 @@
|
|||
pins = "GPIO_35", "GPIO_36";
|
||||
function = "can0_b";
|
||||
};
|
||||
|
||||
sgpio_a_pins: sgpio-a-pins {
|
||||
/* SCK, D0, D1, LD */
|
||||
pins = "GPIO_32", "GPIO_33", "GPIO_34", "GPIO_35";
|
||||
function = "sgpio_a";
|
||||
};
|
||||
};
|
||||
|
||||
&can0 {
|
||||
|
@ -118,6 +124,20 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&sgpio {
|
||||
pinctrl-0 = <&sgpio_a_pins>;
|
||||
pinctrl-names = "default";
|
||||
microchip,sgpio-port-ranges = <0 3>, <8 11>;
|
||||
status = "okay";
|
||||
|
||||
gpio@0 {
|
||||
ngpios = <64>;
|
||||
};
|
||||
gpio@1 {
|
||||
ngpios = <64>;
|
||||
};
|
||||
};
|
||||
|
||||
&switch {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -35,11 +35,10 @@
|
|||
&i2c1 {
|
||||
status = "okay";
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
keyup-threshold-microvolt = <2500000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <0>;
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
#sound-dai-cells = <0>;
|
||||
};
|
||||
|
||||
ir_recv: gpio-ir-receiver {
|
||||
ir_recv: ir-receiver {
|
||||
compatible = "gpio-ir-receiver";
|
||||
gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
|
|
|
@ -379,7 +379,7 @@
|
|||
rockchip,pins = <2 RK_PD3 1 &pcfg_pull_none>;
|
||||
};
|
||||
|
||||
lcdc1_rgb24: ldcd1-rgb24 {
|
||||
lcdc1_rgb24: lcdc1-rgb24 {
|
||||
rockchip,pins = <2 RK_PA0 1 &pcfg_pull_none>,
|
||||
<2 RK_PA1 1 &pcfg_pull_none>,
|
||||
<2 RK_PA2 1 &pcfg_pull_none>,
|
||||
|
@ -607,7 +607,6 @@
|
|||
|
||||
&global_timer {
|
||||
interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&local_timer {
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
hym8563@51 {
|
||||
rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
|
||||
|
|
|
@ -28,19 +28,19 @@
|
|||
press-threshold-microvolt = <300000>;
|
||||
};
|
||||
|
||||
menu {
|
||||
button-menu {
|
||||
label = "Menu";
|
||||
linux,code = <KEY_MENU>;
|
||||
press-threshold-microvolt = <640000>;
|
||||
};
|
||||
|
||||
esc {
|
||||
button-esc {
|
||||
label = "Esc";
|
||||
linux,code = <KEY_ESC>;
|
||||
press-threshold-microvolt = <1000000>;
|
||||
};
|
||||
|
||||
home {
|
||||
button-home {
|
||||
label = "Home";
|
||||
linux,code = <KEY_HOME>;
|
||||
press-threshold-microvolt = <1300000>;
|
||||
|
|
|
@ -233,11 +233,10 @@
|
|||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
interrupt-parent = <&gpio7>;
|
||||
interrupts = <RK_PA4 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
|
|
@ -162,11 +162,10 @@
|
|||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
};
|
||||
|
||||
|
|
|
@ -165,11 +165,10 @@
|
|||
};
|
||||
|
||||
&i2c0 {
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PA4 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
|
|
@ -241,7 +241,6 @@
|
|||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <RK_PC3 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "hym8563";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
|
|
|
@ -76,6 +76,13 @@
|
|||
reg = <0x1013c200 0x20>;
|
||||
interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
|
||||
clocks = <&cru CORE_PERI>;
|
||||
status = "disabled";
|
||||
/* The clock source and the sched_clock provided by the arm_global_timer
|
||||
* on Rockchip rk3066a/rk3188 are quite unstable because their rates
|
||||
* depend on the CPU frequency.
|
||||
* Keep the arm_global_timer disabled in order to have the
|
||||
* DW_APB_TIMER (rk3066a) or ROCKCHIP_TIMER (rk3188) selected by default.
|
||||
*/
|
||||
};
|
||||
|
||||
local_timer: local-timer@1013c600 {
|
||||
|
|
|
@ -261,7 +261,7 @@
|
|||
#define PIN_PB2__FLEXCOM6_IO0 PINMUX_PIN(PIN_PB2, 2, 1)
|
||||
#define PIN_PB2__ADTRG PINMUX_PIN(PIN_PB2, 3, 1)
|
||||
#define PIN_PB2__A20 PINMUX_PIN(PIN_PB2, 4, 1)
|
||||
#define PIN_PB2__FLEXCOM11_IO0 PINMUX_PIN(PIN_PB2, 6, 3)
|
||||
#define PIN_PB2__FLEXCOM11_IO1 PINMUX_PIN(PIN_PB2, 6, 3)
|
||||
#define PIN_PB3 35
|
||||
#define PIN_PB3__GPIO PINMUX_PIN(PIN_PB3, 0, 0)
|
||||
#define PIN_PB3__RF1 PINMUX_PIN(PIN_PB3, 1, 1)
|
||||
|
|
|
@ -17,7 +17,7 @@ extern unsigned long perf_misc_flags(struct pt_regs *regs);
|
|||
|
||||
#define perf_arch_fetch_caller_regs(regs, __ip) { \
|
||||
(regs)->ARM_pc = (__ip); \
|
||||
(regs)->ARM_fp = (unsigned long) __builtin_frame_address(0); \
|
||||
frame_pointer((regs)) = (unsigned long) __builtin_frame_address(0); \
|
||||
(regs)->ARM_sp = current_stack_pointer; \
|
||||
(regs)->ARM_cpsr = SVC_MODE; \
|
||||
}
|
||||
|
|
|
@ -44,12 +44,6 @@
|
|||
|
||||
typedef pte_t *pte_addr_t;
|
||||
|
||||
/*
|
||||
* ZERO_PAGE is a global shared page that is always zero: used
|
||||
* for zero-mapped memory areas etc..
|
||||
*/
|
||||
#define ZERO_PAGE(vaddr) (virt_to_page(0))
|
||||
|
||||
/*
|
||||
* Mark the prot value as uncacheable and unbufferable.
|
||||
*/
|
||||
|
|
|
@ -10,6 +10,15 @@
|
|||
#include <linux/const.h>
|
||||
#include <asm/proc-fns.h>
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
/*
|
||||
* ZERO_PAGE is a global shared page that is always zero: used
|
||||
* for zero-mapped memory areas etc..
|
||||
*/
|
||||
extern struct page *empty_zero_page;
|
||||
#define ZERO_PAGE(vaddr) (empty_zero_page)
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_MMU
|
||||
|
||||
#include <asm-generic/pgtable-nopud.h>
|
||||
|
@ -139,13 +148,6 @@ extern pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn,
|
|||
*/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
/*
|
||||
* ZERO_PAGE is a global shared page that is always zero: used
|
||||
* for zero-mapped memory areas etc..
|
||||
*/
|
||||
extern struct page *empty_zero_page;
|
||||
#define ZERO_PAGE(vaddr) (empty_zero_page)
|
||||
|
||||
|
||||
extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
|
||||
|
||||
|
|
|
@ -169,10 +169,15 @@ sr_ena_2:
|
|||
cmp tmp1, #UDDRC_STAT_SELFREF_TYPE_SW
|
||||
bne sr_ena_2
|
||||
|
||||
/* Put DDR PHY's DLL in bypass mode for non-backup modes. */
|
||||
/* Disable DX DLLs for non-backup modes. */
|
||||
cmp r7, #AT91_PM_BACKUP
|
||||
beq sr_ena_3
|
||||
|
||||
/* Do not soft reset the AC DLL. */
|
||||
ldr tmp1, [r3, DDR3PHY_ACDLLCR]
|
||||
bic tmp1, tmp1, DDR3PHY_ACDLLCR_DLLSRST
|
||||
str tmp1, [r3, DDR3PHY_ACDLLCR]
|
||||
|
||||
/* Disable DX DLLs. */
|
||||
ldr tmp1, [r3, #DDR3PHY_DX0DLLCR]
|
||||
orr tmp1, tmp1, #DDR3PHY_DXDLLCR_DLLDIS
|
||||
|
|
|
@ -393,8 +393,10 @@ static void __init mxs_machine_init(void)
|
|||
|
||||
root = of_find_node_by_path("/");
|
||||
ret = of_property_read_string(root, "model", &soc_dev_attr->machine);
|
||||
if (ret)
|
||||
if (ret) {
|
||||
kfree(soc_dev_attr);
|
||||
return;
|
||||
}
|
||||
|
||||
soc_dev_attr->family = "Freescale MXS Family";
|
||||
soc_dev_attr->soc_id = mxs_get_soc_id();
|
||||
|
|
|
@ -26,6 +26,13 @@
|
|||
|
||||
unsigned long vectors_base;
|
||||
|
||||
/*
|
||||
* empty_zero_page is a special page that is used for
|
||||
* zero-initialized data and COW.
|
||||
*/
|
||||
struct page *empty_zero_page;
|
||||
EXPORT_SYMBOL(empty_zero_page);
|
||||
|
||||
#ifdef CONFIG_ARM_MPU
|
||||
struct mpu_rgn_info mpu_rgn_info;
|
||||
#endif
|
||||
|
@ -148,9 +155,21 @@ void __init adjust_lowmem_bounds(void)
|
|||
*/
|
||||
void __init paging_init(const struct machine_desc *mdesc)
|
||||
{
|
||||
void *zero_page;
|
||||
|
||||
early_trap_init((void *)vectors_base);
|
||||
mpu_setup();
|
||||
|
||||
/* allocate the zero page. */
|
||||
zero_page = memblock_alloc(PAGE_SIZE, PAGE_SIZE);
|
||||
if (!zero_page)
|
||||
panic("%s: Failed to allocate %lu bytes align=0x%lx\n",
|
||||
__func__, PAGE_SIZE, PAGE_SIZE);
|
||||
|
||||
bootmem_init();
|
||||
|
||||
empty_zero_page = virt_to_page(zero_page);
|
||||
flush_dcache_page(empty_zero_page);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -161,6 +161,7 @@
|
|||
clocks = <&ccu CLK_BUS_VP9>, <&ccu CLK_VP9>;
|
||||
clock-names = "bus", "mod";
|
||||
resets = <&ccu RST_BUS_VP9>;
|
||||
iommus = <&iommu 5>;
|
||||
};
|
||||
|
||||
video-codec@1c0e000 {
|
||||
|
|
|
@ -34,11 +34,25 @@
|
|||
off-on-delay-us = <12000>;
|
||||
};
|
||||
|
||||
extcon_usbotg1: extcon-usbotg1 {
|
||||
compatible = "linux,extcon-usb-gpio";
|
||||
connector {
|
||||
compatible = "gpio-usb-b-connector", "usb-b-connector";
|
||||
type = "micro";
|
||||
label = "X19";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb1_extcon>;
|
||||
id-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&pinctrl_usb1_connector>;
|
||||
id-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
usb_dr_connector: endpoint {
|
||||
remote-endpoint = <&usb1_drd_sw>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -105,13 +119,19 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg1>;
|
||||
dr_mode = "otg";
|
||||
extcon = <&extcon_usbotg1>;
|
||||
srp-disable;
|
||||
hnp-disable;
|
||||
adp-disable;
|
||||
power-active-high;
|
||||
over-current-active-low;
|
||||
usb-role-switch;
|
||||
status = "okay";
|
||||
|
||||
port {
|
||||
usb1_drd_sw: endpoint {
|
||||
remote-endpoint = <&usb_dr_connector>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
|
@ -231,7 +251,7 @@
|
|||
<MX8MM_IOMUXC_GPIO1_IO13_USB1_OTG_OC 0x84>;
|
||||
};
|
||||
|
||||
pinctrl_usb1_extcon: usb1-extcongrp {
|
||||
pinctrl_usb1_connector: usb1-connectorgrp {
|
||||
fsl,pins = <MX8MM_IOMUXC_GPIO1_IO10_GPIO1_IO10 0x1c0>;
|
||||
};
|
||||
|
||||
|
|
|
@ -1244,10 +1244,10 @@
|
|||
clocks = <&clk IMX8MM_CLK_NAND_USDHC_BUS_RAWNAND_CLK>;
|
||||
};
|
||||
|
||||
gpmi: nand-controller@33002000{
|
||||
gpmi: nand-controller@33002000 {
|
||||
compatible = "fsl,imx8mm-gpmi-nand", "fsl,imx7d-gpmi-nand";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x33002000 0x2000>, <0x33004000 0x4000>;
|
||||
reg-names = "gpmi-nand", "bch";
|
||||
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -1102,7 +1102,7 @@
|
|||
gpmi: nand-controller@33002000 {
|
||||
compatible = "fsl,imx8mn-gpmi-nand", "fsl,imx7d-gpmi-nand";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x33002000 0x2000>, <0x33004000 0x4000>;
|
||||
reg-names = "gpmi-nand", "bch";
|
||||
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -544,14 +544,14 @@
|
|||
|
||||
pinctrl_pcie0: pcie0grp {
|
||||
fsl,pins = <
|
||||
MX8MP_IOMUXC_I2C4_SCL__PCIE_CLKREQ_B 0x61 /* open drain, pull up */
|
||||
MX8MP_IOMUXC_SD1_DATA5__GPIO2_IO07 0x41
|
||||
MX8MP_IOMUXC_I2C4_SCL__PCIE_CLKREQ_B 0x60 /* open drain, pull up */
|
||||
MX8MP_IOMUXC_SD1_DATA5__GPIO2_IO07 0x40
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie0_reg: pcie0reggrp {
|
||||
fsl,pins = <
|
||||
MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06 0x41
|
||||
MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06 0x40
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -668,7 +668,7 @@
|
|||
|
||||
apcs_glb: mailbox@b111000 {
|
||||
compatible = "qcom,ipq8074-apcs-apps-global";
|
||||
reg = <0x0b111000 0x6000>;
|
||||
reg = <0x0b111000 0x1000>;
|
||||
|
||||
#clock-cells = <1>;
|
||||
#mbox-cells = <1>;
|
||||
|
|
|
@ -3504,7 +3504,7 @@
|
|||
};
|
||||
|
||||
saw3: syscon@9a10000 {
|
||||
compatible = "qcom,tcsr-msm8996", "syscon";
|
||||
compatible = "syscon";
|
||||
reg = <0x09a10000 0x1000>;
|
||||
};
|
||||
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-allow-set-load;
|
||||
|
||||
vin-supply = <&vreg_3p3>;
|
||||
};
|
||||
|
@ -137,6 +136,9 @@
|
|||
regulator-max-microvolt = <880000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7a_1p8: ldo7 {
|
||||
|
@ -152,6 +154,9 @@
|
|||
regulator-max-microvolt = <2960000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l11a_0p8: ldo11 {
|
||||
|
@ -258,6 +263,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7c_1p8: ldo7 {
|
||||
|
@ -273,6 +281,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l10c_3p3: ldo10 {
|
||||
|
|
|
@ -83,6 +83,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l4c: ldo4 {
|
||||
|
@ -98,6 +101,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7c: ldo7 {
|
||||
|
@ -113,6 +119,9 @@
|
|||
regulator-max-microvolt = <2504000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l17c: ldo17 {
|
||||
|
@ -121,6 +130,9 @@
|
|||
regulator-max-microvolt = <2504000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -2296,7 +2296,8 @@
|
|||
|
||||
lpass_audiocc: clock-controller@3300000 {
|
||||
compatible = "qcom,sc7280-lpassaudiocc";
|
||||
reg = <0 0x03300000 0 0x30000>;
|
||||
reg = <0 0x03300000 0 0x30000>,
|
||||
<0 0x032a9000 0 0x1000>;
|
||||
clocks = <&rpmhcc RPMH_CXO_CLK>,
|
||||
<&lpass_aon LPASS_AON_CC_MAIN_RCG_CLK_SRC>;
|
||||
clock-names = "bi_tcxo", "lpass_aon_cc_main_rcg_clk_src";
|
||||
|
|
|
@ -124,6 +124,9 @@
|
|||
regulator-max-microvolt = <2504000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l13c: ldo13 {
|
||||
|
@ -146,6 +149,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l4d: ldo4 {
|
||||
|
|
|
@ -885,13 +885,13 @@
|
|||
|
||||
ufs_mem_phy: phy@1d87000 {
|
||||
compatible = "qcom,sc8280xp-qmp-ufs-phy";
|
||||
reg = <0 0x01d87000 0 0xe10>;
|
||||
reg = <0 0x01d87000 0 0x1c8>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
clock-names = "ref",
|
||||
"ref_aux";
|
||||
clocks = <&rpmhcc RPMH_CXO_CLK>,
|
||||
clocks = <&gcc GCC_UFS_REF_CLKREF_CLK>,
|
||||
<&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
|
||||
|
||||
resets = <&ufs_mem_hc 0>;
|
||||
|
@ -953,13 +953,13 @@
|
|||
|
||||
ufs_card_phy: phy@1da7000 {
|
||||
compatible = "qcom,sc8280xp-qmp-ufs-phy";
|
||||
reg = <0 0x01da7000 0 0xe10>;
|
||||
reg = <0 0x01da7000 0 0x1c8>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
clock-names = "ref",
|
||||
"ref_aux";
|
||||
clocks = <&gcc GCC_UFS_1_CARD_CLKREF_CLK>,
|
||||
clocks = <&gcc GCC_UFS_REF_CLKREF_CLK>,
|
||||
<&gcc GCC_UFS_CARD_PHY_AUX_CLK>;
|
||||
|
||||
resets = <&ufs_card_hc 0>;
|
||||
|
@ -1181,26 +1181,16 @@
|
|||
usb_0_ssphy: usb3-phy@88eb400 {
|
||||
reg = <0 0x088eb400 0 0x100>,
|
||||
<0 0x088eb600 0 0x3ec>,
|
||||
<0 0x088ec400 0 0x1f0>,
|
||||
<0 0x088ec400 0 0x364>,
|
||||
<0 0x088eba00 0 0x100>,
|
||||
<0 0x088ebc00 0 0x3ec>,
|
||||
<0 0x088ec700 0 0x64>;
|
||||
<0 0x088ec200 0 0x18>;
|
||||
#phy-cells = <0>;
|
||||
#clock-cells = <0>;
|
||||
clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
|
||||
clock-names = "pipe0";
|
||||
clock-output-names = "usb0_phy_pipe_clk_src";
|
||||
};
|
||||
|
||||
usb_0_dpphy: dp-phy@88ed200 {
|
||||
reg = <0 0x088ed200 0 0x200>,
|
||||
<0 0x088ed400 0 0x200>,
|
||||
<0 0x088eda00 0 0x200>,
|
||||
<0 0x088ea600 0 0x200>,
|
||||
<0 0x088ea800 0 0x200>;
|
||||
#clock-cells = <1>;
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
usb_1_hsphy: phy@8902000 {
|
||||
|
@ -1242,8 +1232,8 @@
|
|||
|
||||
usb_1_ssphy: usb3-phy@8903400 {
|
||||
reg = <0 0x08903400 0 0x100>,
|
||||
<0 0x08903c00 0 0x3ec>,
|
||||
<0 0x08904400 0 0x1f0>,
|
||||
<0 0x08903600 0 0x3ec>,
|
||||
<0 0x08904400 0 0x364>,
|
||||
<0 0x08903a00 0 0x100>,
|
||||
<0 0x08903c00 0 0x3ec>,
|
||||
<0 0x08904200 0 0x18>;
|
||||
|
@ -1253,16 +1243,6 @@
|
|||
clock-names = "pipe0";
|
||||
clock-output-names = "usb1_phy_pipe_clk_src";
|
||||
};
|
||||
|
||||
usb_1_dpphy: dp-phy@8904200 {
|
||||
reg = <0 0x08904200 0 0x200>,
|
||||
<0 0x08904400 0 0x200>,
|
||||
<0 0x08904a00 0 0x200>,
|
||||
<0 0x08904600 0 0x200>,
|
||||
<0 0x08904800 0 0x200>;
|
||||
#clock-cells = <1>;
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
system-cache-controller@9200000 {
|
||||
|
|
|
@ -348,6 +348,9 @@
|
|||
regulator-max-microvolt = <2960000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7c_3p0: ldo7 {
|
||||
|
@ -367,6 +370,9 @@
|
|||
regulator-max-microvolt = <2960000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l10c_3p3: ldo10 {
|
||||
|
|
|
@ -317,6 +317,9 @@
|
|||
regulator-max-microvolt = <2960000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7c_2p85: ldo7 {
|
||||
|
@ -339,6 +342,9 @@
|
|||
regulator-max-microvolt = <2960000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l10c_3p3: ldo10 {
|
||||
|
|
|
@ -334,6 +334,7 @@
|
|||
exit-latency-us = <6562>;
|
||||
min-residency-us = <9987>;
|
||||
local-timer-stop;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -107,6 +107,9 @@
|
|||
regulator-max-microvolt = <888000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l6b_1p2: ldo6 {
|
||||
|
@ -115,6 +118,9 @@
|
|||
regulator-max-microvolt = <1208000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l7b_2p96: ldo7 {
|
||||
|
@ -123,6 +129,9 @@
|
|||
regulator-max-microvolt = <2504000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
|
||||
vreg_l9b_1p2: ldo9 {
|
||||
|
@ -131,6 +140,9 @@
|
|||
regulator-max-microvolt = <1200000>;
|
||||
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
||||
regulator-allow-set-load;
|
||||
regulator-allowed-modes =
|
||||
<RPMH_REGULATOR_MODE_LPM
|
||||
RPMH_REGULATOR_MODE_HPM>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -30,31 +30,31 @@
|
|||
keyup-threshold-microvolt = <1800000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
esc-key {
|
||||
button-esc {
|
||||
label = "esc";
|
||||
linux,code = <KEY_ESC>;
|
||||
press-threshold-microvolt = <1310000>;
|
||||
};
|
||||
|
||||
home-key {
|
||||
button-home {
|
||||
label = "home";
|
||||
linux,code = <KEY_HOME>;
|
||||
press-threshold-microvolt = <624000>;
|
||||
};
|
||||
|
||||
menu-key {
|
||||
button-menu {
|
||||
label = "menu";
|
||||
linux,code = <KEY_MENU>;
|
||||
press-threshold-microvolt = <987000>;
|
||||
};
|
||||
|
||||
vol-down-key {
|
||||
button-down {
|
||||
label = "volume down";
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
press-threshold-microvolt = <300000>;
|
||||
};
|
||||
|
||||
vol-up-key {
|
||||
button-up {
|
||||
label = "volume up";
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
press-threshold-microvolt = <17000>;
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
poll-interval = <100>;
|
||||
keyup-threshold-microvolt = <1800000>;
|
||||
|
||||
func-key {
|
||||
button-func {
|
||||
linux,code = <KEY_FN>;
|
||||
label = "function";
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
@ -37,31 +37,31 @@
|
|||
poll-interval = <100>;
|
||||
keyup-threshold-microvolt = <1800000>;
|
||||
|
||||
esc-key {
|
||||
button-esc {
|
||||
linux,code = <KEY_MICMUTE>;
|
||||
label = "micmute";
|
||||
press-threshold-microvolt = <1130000>;
|
||||
};
|
||||
|
||||
home-key {
|
||||
button-home {
|
||||
linux,code = <KEY_MODE>;
|
||||
label = "mode";
|
||||
press-threshold-microvolt = <901000>;
|
||||
};
|
||||
|
||||
menu-key {
|
||||
button-menu {
|
||||
linux,code = <KEY_PLAY>;
|
||||
label = "play";
|
||||
press-threshold-microvolt = <624000>;
|
||||
};
|
||||
|
||||
vol-down-key {
|
||||
button-down {
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
label = "volume down";
|
||||
press-threshold-microvolt = <300000>;
|
||||
};
|
||||
|
||||
vol-up-key {
|
||||
button-up {
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
label = "volume up";
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
ir_rx {
|
||||
ir-receiver {
|
||||
compatible = "gpio-ir-receiver";
|
||||
gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
keyup-threshold-microvolt = <1800000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <17000>;
|
||||
|
|
|
@ -208,11 +208,10 @@
|
|||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
/* rtc_int is not connected */
|
||||
};
|
||||
|
|
|
@ -192,11 +192,10 @@
|
|||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
/* rtc_int is not connected */
|
||||
};
|
||||
|
|
|
@ -734,10 +734,6 @@ camera: &i2c7 {
|
|||
};
|
||||
|
||||
/* PINCTRL OVERRIDES */
|
||||
&ec_ap_int_l {
|
||||
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
&ap_fw_wp {
|
||||
rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
|
|
|
@ -123,7 +123,7 @@
|
|||
keyup-threshold-microvolt = <1800000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
keyup-threshold-microvolt = <1800000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
keyup-threshold-microvolt = <1500000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
|
|
@ -167,6 +167,7 @@
|
|||
};
|
||||
|
||||
&emmc_phy {
|
||||
rockchip,enable-strobe-pulldown;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -52,13 +52,13 @@
|
|||
press-threshold-microvolt = <300000>;
|
||||
};
|
||||
|
||||
back {
|
||||
button-back {
|
||||
label = "Back";
|
||||
linux,code = <KEY_BACK>;
|
||||
press-threshold-microvolt = <985000>;
|
||||
};
|
||||
|
||||
menu {
|
||||
button-menu {
|
||||
label = "Menu";
|
||||
linux,code = <KEY_MENU>;
|
||||
press-threshold-microvolt = <1314000>;
|
||||
|
|
|
@ -207,7 +207,7 @@
|
|||
cap-sd-highspeed;
|
||||
cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
|
||||
disable-wp;
|
||||
max-frequency = <150000000>;
|
||||
max-frequency = <40000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
||||
vmmc-supply = <&vcc3v3_baseboard>;
|
||||
|
|
|
@ -98,13 +98,12 @@
|
|||
};
|
||||
|
||||
&i2c0 {
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PA5 IRQ_TYPE_EDGE_FALLING>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
keyup-threshold-microvolt = <1500000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <18000>;
|
||||
|
|
|
@ -509,7 +509,6 @@
|
|||
&i2s1 {
|
||||
rockchip,playback-channels = <2>;
|
||||
rockchip,capture-channels = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s2 {
|
||||
|
|
|
@ -33,13 +33,13 @@
|
|||
press-threshold-microvolt = <300000>;
|
||||
};
|
||||
|
||||
back {
|
||||
button-back {
|
||||
label = "Back";
|
||||
linux,code = <KEY_BACK>;
|
||||
press-threshold-microvolt = <985000>;
|
||||
};
|
||||
|
||||
menu {
|
||||
button-menu {
|
||||
label = "Menu";
|
||||
linux,code = <KEY_MENU>;
|
||||
press-threshold-microvolt = <1314000>;
|
||||
|
|
|
@ -297,11 +297,10 @@
|
|||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
hym8563: rtc@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "hym8563";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
io-channel-names = "buttons";
|
||||
keyup-threshold-microvolt = <1750000>;
|
||||
|
||||
recovery {
|
||||
button-recovery {
|
||||
label = "recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <0>;
|
||||
|
|
|
@ -740,7 +740,7 @@
|
|||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn>;
|
||||
pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn &uart1m0_rtsn>;
|
||||
status = "okay";
|
||||
uart-has-rtscts;
|
||||
|
||||
|
@ -748,13 +748,14 @@
|
|||
compatible = "brcm,bcm43438-bt";
|
||||
clocks = <&rk817 1>;
|
||||
clock-names = "lpo";
|
||||
device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
|
||||
host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
|
||||
host-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
|
||||
device-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
|
||||
shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
||||
vbat-supply = <&vcc_sys>;
|
||||
vddio-supply = <&vcca1v8_pmu>;
|
||||
max-speed = <3000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -246,7 +246,7 @@
|
|||
compatible = "rockchip,rk809";
|
||||
reg = <0x20>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
|
||||
assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
|
||||
assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
|
||||
clock-names = "mclk";
|
||||
|
|
|
@ -142,7 +142,7 @@
|
|||
assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru SCLK_GMAC1>;
|
||||
assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru SCLK_GMAC1>, <&gmac1_clkin>;
|
||||
clock_in_out = "input";
|
||||
phy-mode = "rgmii-id";
|
||||
phy-mode = "rgmii";
|
||||
phy-supply = <&vcc_3v3>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gmac1m0_miim
|
||||
|
@ -432,11 +432,7 @@
|
|||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c3m1_xfer>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c5 {
|
||||
pinctrl-0 = <&i2c3m0_xfer>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -500,7 +500,6 @@
|
|||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PD3 IRQ_TYPE_EDGE_FALLING>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "rtcic_32kout";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
|
|
|
@ -509,7 +509,6 @@
|
|||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "rtcic_32kout";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
|
|
|
@ -863,12 +863,12 @@ static inline bool pte_user_accessible_page(pte_t pte)
|
|||
|
||||
static inline bool pmd_user_accessible_page(pmd_t pmd)
|
||||
{
|
||||
return pmd_present(pmd) && (pmd_user(pmd) || pmd_user_exec(pmd));
|
||||
return pmd_leaf(pmd) && (pmd_user(pmd) || pmd_user_exec(pmd));
|
||||
}
|
||||
|
||||
static inline bool pud_user_accessible_page(pud_t pud)
|
||||
{
|
||||
return pud_present(pud) && pud_user(pud);
|
||||
return pud_leaf(pud) && pud_user(pud);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -299,11 +299,11 @@ SYM_TYPED_FUNC_START(ftrace_stub)
|
|||
ret
|
||||
SYM_FUNC_END(ftrace_stub)
|
||||
|
||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
|
||||
SYM_TYPED_FUNC_START(ftrace_stub_graph)
|
||||
ret
|
||||
SYM_FUNC_END(ftrace_stub_graph)
|
||||
|
||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
|
||||
/*
|
||||
* void return_to_handler(void)
|
||||
*
|
||||
|
|
|
@ -97,7 +97,7 @@ KBUILD_LDFLAGS += -m $(ld-emul)
|
|||
|
||||
ifdef CONFIG_LOONGARCH
|
||||
CHECKFLAGS += $(shell $(CC) $(KBUILD_CFLAGS) -dM -E -x c /dev/null | \
|
||||
egrep -vw '__GNUC_(MINOR_|PATCHLEVEL_)?_' | \
|
||||
grep -E -vw '__GNUC_(MINOR_|PATCHLEVEL_)?_' | \
|
||||
sed -e "s/^\#define /-D'/" -e "s/ /'='/" -e "s/$$/'/" -e 's/\$$/&&/g')
|
||||
endif
|
||||
|
||||
|
|
|
@ -117,7 +117,7 @@ extern struct fwnode_handle *liointc_handle;
|
|||
extern struct fwnode_handle *pch_lpc_handle;
|
||||
extern struct fwnode_handle *pch_pic_handle[MAX_IO_PICS];
|
||||
|
||||
extern irqreturn_t loongson3_ipi_interrupt(int irq, void *dev);
|
||||
extern irqreturn_t loongson_ipi_interrupt(int irq, void *dev);
|
||||
|
||||
#include <asm-generic/irq.h>
|
||||
|
||||
|
|
|
@ -349,13 +349,17 @@ static inline pte_t pte_mkclean(pte_t pte)
|
|||
|
||||
static inline pte_t pte_mkdirty(pte_t pte)
|
||||
{
|
||||
pte_val(pte) |= (_PAGE_DIRTY | _PAGE_MODIFIED);
|
||||
pte_val(pte) |= _PAGE_MODIFIED;
|
||||
if (pte_val(pte) & _PAGE_WRITE)
|
||||
pte_val(pte) |= _PAGE_DIRTY;
|
||||
return pte;
|
||||
}
|
||||
|
||||
static inline pte_t pte_mkwrite(pte_t pte)
|
||||
{
|
||||
pte_val(pte) |= (_PAGE_WRITE | _PAGE_DIRTY);
|
||||
pte_val(pte) |= _PAGE_WRITE;
|
||||
if (pte_val(pte) & _PAGE_MODIFIED)
|
||||
pte_val(pte) |= _PAGE_DIRTY;
|
||||
return pte;
|
||||
}
|
||||
|
||||
|
@ -455,7 +459,9 @@ static inline int pmd_write(pmd_t pmd)
|
|||
|
||||
static inline pmd_t pmd_mkwrite(pmd_t pmd)
|
||||
{
|
||||
pmd_val(pmd) |= (_PAGE_WRITE | _PAGE_DIRTY);
|
||||
pmd_val(pmd) |= _PAGE_WRITE;
|
||||
if (pmd_val(pmd) & _PAGE_MODIFIED)
|
||||
pmd_val(pmd) |= _PAGE_DIRTY;
|
||||
return pmd;
|
||||
}
|
||||
|
||||
|
@ -478,7 +484,9 @@ static inline pmd_t pmd_mkclean(pmd_t pmd)
|
|||
|
||||
static inline pmd_t pmd_mkdirty(pmd_t pmd)
|
||||
{
|
||||
pmd_val(pmd) |= (_PAGE_DIRTY | _PAGE_MODIFIED);
|
||||
pmd_val(pmd) |= _PAGE_MODIFIED;
|
||||
if (pmd_val(pmd) & _PAGE_WRITE)
|
||||
pmd_val(pmd) |= _PAGE_DIRTY;
|
||||
return pmd;
|
||||
}
|
||||
|
||||
|
|
|
@ -19,21 +19,21 @@ extern cpumask_t cpu_sibling_map[];
|
|||
extern cpumask_t cpu_core_map[];
|
||||
extern cpumask_t cpu_foreign_map[];
|
||||
|
||||
void loongson3_smp_setup(void);
|
||||
void loongson3_prepare_cpus(unsigned int max_cpus);
|
||||
void loongson3_boot_secondary(int cpu, struct task_struct *idle);
|
||||
void loongson3_init_secondary(void);
|
||||
void loongson3_smp_finish(void);
|
||||
void loongson3_send_ipi_single(int cpu, unsigned int action);
|
||||
void loongson3_send_ipi_mask(const struct cpumask *mask, unsigned int action);
|
||||
void loongson_smp_setup(void);
|
||||
void loongson_prepare_cpus(unsigned int max_cpus);
|
||||
void loongson_boot_secondary(int cpu, struct task_struct *idle);
|
||||
void loongson_init_secondary(void);
|
||||
void loongson_smp_finish(void);
|
||||
void loongson_send_ipi_single(int cpu, unsigned int action);
|
||||
void loongson_send_ipi_mask(const struct cpumask *mask, unsigned int action);
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
int loongson3_cpu_disable(void);
|
||||
void loongson3_cpu_die(unsigned int cpu);
|
||||
int loongson_cpu_disable(void);
|
||||
void loongson_cpu_die(unsigned int cpu);
|
||||
#endif
|
||||
|
||||
static inline void plat_smp_setup(void)
|
||||
{
|
||||
loongson3_smp_setup();
|
||||
loongson_smp_setup();
|
||||
}
|
||||
|
||||
static inline int raw_smp_processor_id(void)
|
||||
|
@ -85,28 +85,28 @@ extern void show_ipi_list(struct seq_file *p, int prec);
|
|||
*/
|
||||
static inline void smp_send_reschedule(int cpu)
|
||||
{
|
||||
loongson3_send_ipi_single(cpu, SMP_RESCHEDULE);
|
||||
loongson_send_ipi_single(cpu, SMP_RESCHEDULE);
|
||||
}
|
||||
|
||||
static inline void arch_send_call_function_single_ipi(int cpu)
|
||||
{
|
||||
loongson3_send_ipi_single(cpu, SMP_CALL_FUNCTION);
|
||||
loongson_send_ipi_single(cpu, SMP_CALL_FUNCTION);
|
||||
}
|
||||
|
||||
static inline void arch_send_call_function_ipi_mask(const struct cpumask *mask)
|
||||
{
|
||||
loongson3_send_ipi_mask(mask, SMP_CALL_FUNCTION);
|
||||
loongson_send_ipi_mask(mask, SMP_CALL_FUNCTION);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
static inline int __cpu_disable(void)
|
||||
{
|
||||
return loongson3_cpu_disable();
|
||||
return loongson_cpu_disable();
|
||||
}
|
||||
|
||||
static inline void __cpu_die(unsigned int cpu)
|
||||
{
|
||||
loongson3_cpu_die(cpu);
|
||||
loongson_cpu_die(cpu);
|
||||
}
|
||||
|
||||
extern void play_dead(void);
|
||||
|
|
|
@ -56,23 +56,6 @@ void __iomem *acpi_os_ioremap(acpi_physical_address phys, acpi_size size)
|
|||
return ioremap_cache(phys, size);
|
||||
}
|
||||
|
||||
void __init acpi_boot_table_init(void)
|
||||
{
|
||||
/*
|
||||
* If acpi_disabled, bail out
|
||||
*/
|
||||
if (acpi_disabled)
|
||||
return;
|
||||
|
||||
/*
|
||||
* Initialize the ACPI boot-time table parser.
|
||||
*/
|
||||
if (acpi_table_init()) {
|
||||
disable_acpi();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
static int set_processor_mask(u32 id, u32 flags)
|
||||
{
|
||||
|
@ -156,13 +139,21 @@ static void __init acpi_process_madt(void)
|
|||
loongson_sysconf.nr_cpus = num_processors;
|
||||
}
|
||||
|
||||
int __init acpi_boot_init(void)
|
||||
void __init acpi_boot_table_init(void)
|
||||
{
|
||||
/*
|
||||
* If acpi_disabled, bail out
|
||||
*/
|
||||
if (acpi_disabled)
|
||||
return -1;
|
||||
return;
|
||||
|
||||
/*
|
||||
* Initialize the ACPI boot-time table parser.
|
||||
*/
|
||||
if (acpi_table_init()) {
|
||||
disable_acpi();
|
||||
return;
|
||||
}
|
||||
|
||||
loongson_sysconf.boot_cpu_id = read_csr_cpuid();
|
||||
|
||||
|
@ -173,8 +164,6 @@ int __init acpi_boot_init(void)
|
|||
|
||||
/* Do not enable ACPI SPCR console by default */
|
||||
acpi_parse_spcr(earlycon_acpi_spcr_enable, false);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_ACPI_NUMA
|
||||
|
|
|
@ -117,7 +117,7 @@ void __init init_IRQ(void)
|
|||
if (ipi_irq < 0)
|
||||
panic("IPI IRQ mapping failed\n");
|
||||
irq_set_percpu_devid(ipi_irq);
|
||||
r = request_percpu_irq(ipi_irq, loongson3_ipi_interrupt, "IPI", &ipi_dummy_dev);
|
||||
r = request_percpu_irq(ipi_irq, loongson_ipi_interrupt, "IPI", &ipi_dummy_dev);
|
||||
if (r < 0)
|
||||
panic("IPI IRQ request failed\n");
|
||||
#endif
|
||||
|
|
|
@ -152,7 +152,7 @@ int copy_thread(struct task_struct *p, const struct kernel_clone_args *args)
|
|||
childregs->csr_crmd = p->thread.csr_crmd;
|
||||
childregs->csr_prmd = p->thread.csr_prmd;
|
||||
childregs->csr_ecfg = p->thread.csr_ecfg;
|
||||
return 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
/* user thread */
|
||||
|
@ -171,14 +171,15 @@ int copy_thread(struct task_struct *p, const struct kernel_clone_args *args)
|
|||
*/
|
||||
childregs->csr_euen = 0;
|
||||
|
||||
if (clone_flags & CLONE_SETTLS)
|
||||
childregs->regs[2] = tls;
|
||||
|
||||
out:
|
||||
clear_tsk_thread_flag(p, TIF_USEDFPU);
|
||||
clear_tsk_thread_flag(p, TIF_USEDSIMD);
|
||||
clear_tsk_thread_flag(p, TIF_LSX_CTX_LIVE);
|
||||
clear_tsk_thread_flag(p, TIF_LASX_CTX_LIVE);
|
||||
|
||||
if (clone_flags & CLONE_SETTLS)
|
||||
childregs->regs[2] = tls;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -257,7 +257,6 @@ void __init platform_init(void)
|
|||
#ifdef CONFIG_ACPI
|
||||
acpi_gbl_use_default_register_widths = false;
|
||||
acpi_boot_table_init();
|
||||
acpi_boot_init();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_NUMA
|
||||
|
|
|
@ -136,12 +136,12 @@ static void ipi_write_action(int cpu, u32 action)
|
|||
}
|
||||
}
|
||||
|
||||
void loongson3_send_ipi_single(int cpu, unsigned int action)
|
||||
void loongson_send_ipi_single(int cpu, unsigned int action)
|
||||
{
|
||||
ipi_write_action(cpu_logical_map(cpu), (u32)action);
|
||||
}
|
||||
|
||||
void loongson3_send_ipi_mask(const struct cpumask *mask, unsigned int action)
|
||||
void loongson_send_ipi_mask(const struct cpumask *mask, unsigned int action)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
|
@ -149,7 +149,7 @@ void loongson3_send_ipi_mask(const struct cpumask *mask, unsigned int action)
|
|||
ipi_write_action(cpu_logical_map(i), (u32)action);
|
||||
}
|
||||
|
||||
irqreturn_t loongson3_ipi_interrupt(int irq, void *dev)
|
||||
irqreturn_t loongson_ipi_interrupt(int irq, void *dev)
|
||||
{
|
||||
unsigned int action;
|
||||
unsigned int cpu = smp_processor_id();
|
||||
|
@ -169,7 +169,7 @@ irqreturn_t loongson3_ipi_interrupt(int irq, void *dev)
|
|||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
void __init loongson3_smp_setup(void)
|
||||
void __init loongson_smp_setup(void)
|
||||
{
|
||||
cpu_data[0].core = cpu_logical_map(0) % loongson_sysconf.cores_per_package;
|
||||
cpu_data[0].package = cpu_logical_map(0) / loongson_sysconf.cores_per_package;
|
||||
|
@ -178,7 +178,7 @@ void __init loongson3_smp_setup(void)
|
|||
pr_info("Detected %i available CPU(s)\n", loongson_sysconf.nr_cpus);
|
||||
}
|
||||
|
||||
void __init loongson3_prepare_cpus(unsigned int max_cpus)
|
||||
void __init loongson_prepare_cpus(unsigned int max_cpus)
|
||||
{
|
||||
int i = 0;
|
||||
|
||||
|
@ -193,7 +193,7 @@ void __init loongson3_prepare_cpus(unsigned int max_cpus)
|
|||
/*
|
||||
* Setup the PC, SP, and TP of a secondary processor and start it running!
|
||||
*/
|
||||
void loongson3_boot_secondary(int cpu, struct task_struct *idle)
|
||||
void loongson_boot_secondary(int cpu, struct task_struct *idle)
|
||||
{
|
||||
unsigned long entry;
|
||||
|
||||
|
@ -205,13 +205,13 @@ void loongson3_boot_secondary(int cpu, struct task_struct *idle)
|
|||
|
||||
csr_mail_send(entry, cpu_logical_map(cpu), 0);
|
||||
|
||||
loongson3_send_ipi_single(cpu, SMP_BOOT_CPU);
|
||||
loongson_send_ipi_single(cpu, SMP_BOOT_CPU);
|
||||
}
|
||||
|
||||
/*
|
||||
* SMP init and finish on secondary CPUs
|
||||
*/
|
||||
void loongson3_init_secondary(void)
|
||||
void loongson_init_secondary(void)
|
||||
{
|
||||
unsigned int cpu = smp_processor_id();
|
||||
unsigned int imask = ECFGF_IP0 | ECFGF_IP1 | ECFGF_IP2 |
|
||||
|
@ -231,7 +231,7 @@ void loongson3_init_secondary(void)
|
|||
cpu_logical_map(cpu) / loongson_sysconf.cores_per_package;
|
||||
}
|
||||
|
||||
void loongson3_smp_finish(void)
|
||||
void loongson_smp_finish(void)
|
||||
{
|
||||
local_irq_enable();
|
||||
iocsr_write64(0, LOONGARCH_IOCSR_MBUF0);
|
||||
|
@ -240,7 +240,7 @@ void loongson3_smp_finish(void)
|
|||
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
|
||||
int loongson3_cpu_disable(void)
|
||||
int loongson_cpu_disable(void)
|
||||
{
|
||||
unsigned long flags;
|
||||
unsigned int cpu = smp_processor_id();
|
||||
|
@ -262,7 +262,7 @@ int loongson3_cpu_disable(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void loongson3_cpu_die(unsigned int cpu)
|
||||
void loongson_cpu_die(unsigned int cpu)
|
||||
{
|
||||
while (per_cpu(cpu_state, cpu) != CPU_DEAD)
|
||||
cpu_relax();
|
||||
|
@ -300,19 +300,19 @@ void play_dead(void)
|
|||
*/
|
||||
#ifdef CONFIG_PM
|
||||
|
||||
static int loongson3_ipi_suspend(void)
|
||||
static int loongson_ipi_suspend(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void loongson3_ipi_resume(void)
|
||||
static void loongson_ipi_resume(void)
|
||||
{
|
||||
iocsr_write32(0xffffffff, LOONGARCH_IOCSR_IPI_EN);
|
||||
}
|
||||
|
||||
static struct syscore_ops loongson3_ipi_syscore_ops = {
|
||||
.resume = loongson3_ipi_resume,
|
||||
.suspend = loongson3_ipi_suspend,
|
||||
static struct syscore_ops loongson_ipi_syscore_ops = {
|
||||
.resume = loongson_ipi_resume,
|
||||
.suspend = loongson_ipi_suspend,
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -321,7 +321,7 @@ static struct syscore_ops loongson3_ipi_syscore_ops = {
|
|||
*/
|
||||
static int __init ipi_pm_init(void)
|
||||
{
|
||||
register_syscore_ops(&loongson3_ipi_syscore_ops);
|
||||
register_syscore_ops(&loongson_ipi_syscore_ops);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -425,7 +425,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus)
|
|||
{
|
||||
init_new_context(current, &init_mm);
|
||||
current_thread_info()->cpu = 0;
|
||||
loongson3_prepare_cpus(max_cpus);
|
||||
loongson_prepare_cpus(max_cpus);
|
||||
set_cpu_sibling_map(0);
|
||||
set_cpu_core_map(0);
|
||||
calculate_cpu_foreign_map();
|
||||
|
@ -436,7 +436,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus)
|
|||
|
||||
int __cpu_up(unsigned int cpu, struct task_struct *tidle)
|
||||
{
|
||||
loongson3_boot_secondary(cpu, tidle);
|
||||
loongson_boot_secondary(cpu, tidle);
|
||||
|
||||
/* Wait for CPU to start and be ready to sync counters */
|
||||
if (!wait_for_completion_timeout(&cpu_starting,
|
||||
|
@ -465,7 +465,7 @@ asmlinkage void start_secondary(void)
|
|||
|
||||
cpu_probe();
|
||||
constant_clockevent_init();
|
||||
loongson3_init_secondary();
|
||||
loongson_init_secondary();
|
||||
|
||||
set_cpu_sibling_map(cpu);
|
||||
set_cpu_core_map(cpu);
|
||||
|
@ -487,11 +487,11 @@ asmlinkage void start_secondary(void)
|
|||
complete(&cpu_running);
|
||||
|
||||
/*
|
||||
* irq will be enabled in loongson3_smp_finish(), enabling it too
|
||||
* irq will be enabled in loongson_smp_finish(), enabling it too
|
||||
* early is dangerous.
|
||||
*/
|
||||
WARN_ON_ONCE(!irqs_disabled());
|
||||
loongson3_smp_finish();
|
||||
loongson_smp_finish();
|
||||
|
||||
cpu_startup_entry(CPUHP_AP_ONLINE_IDLE);
|
||||
}
|
||||
|
|
|
@ -43,7 +43,8 @@ static bool unwind_by_prologue(struct unwind_state *state)
|
|||
{
|
||||
struct stack_info *info = &state->stack_info;
|
||||
union loongarch_instruction *ip, *ip_end;
|
||||
unsigned long frame_size = 0, frame_ra = -1;
|
||||
long frame_ra = -1;
|
||||
unsigned long frame_size = 0;
|
||||
unsigned long size, offset, pc = state->pc;
|
||||
|
||||
if (state->sp >= info->end || state->sp < info->begin)
|
||||
|
|
|
@ -67,12 +67,12 @@ linux.bin.ub linux.bin.gz: linux.bin
|
|||
linux.bin: vmlinux
|
||||
linux.bin linux.bin.gz linux.bin.ub:
|
||||
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
||||
@echo 'Kernel: $(boot)/$@ is ready' ' (#'`cat .version`')'
|
||||
@echo 'Kernel: $(boot)/$@ is ready' ' (#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
|
||||
|
||||
PHONY += simpleImage.$(DTB)
|
||||
simpleImage.$(DTB): vmlinux
|
||||
$(Q)$(MAKE) $(build)=$(boot) $(addprefix $(boot)/$@., ub unstrip strip)
|
||||
@echo 'Kernel: $(boot)/$@ is ready' ' (#'`cat .version`')'
|
||||
@echo 'Kernel: $(boot)/$@ is ready' ' (#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
|
||||
|
||||
define archhelp
|
||||
echo '* linux.bin - Create raw binary'
|
||||
|
|
|
@ -20,7 +20,7 @@ $(obj)/vmlinux.bin: vmlinux FORCE
|
|||
$(obj)/vmlinux.gz: $(obj)/vmlinux.bin FORCE
|
||||
$(call if_changed,gzip)
|
||||
|
||||
$(obj)/vmImage: $(obj)/vmlinux.gz
|
||||
$(obj)/vmImage: $(obj)/vmlinux.gz FORCE
|
||||
$(call if_changed,uimage)
|
||||
@$(kecho) 'Kernel: $@ is ready'
|
||||
|
||||
|
|
|
@ -142,7 +142,7 @@ SECTIONS
|
|||
#endif
|
||||
|
||||
.data.rel.ro : AT(ADDR(.data.rel.ro) - LOAD_OFFSET) {
|
||||
*(.data.rel.ro*)
|
||||
*(.data.rel.ro .data.rel.ro.*)
|
||||
}
|
||||
|
||||
.branch_lt : AT(ADDR(.branch_lt) - LOAD_OFFSET) {
|
||||
|
|
|
@ -199,7 +199,16 @@ unsigned long __get_wchan(struct task_struct *p);
|
|||
/* Has task runtime instrumentation enabled ? */
|
||||
#define is_ri_task(tsk) (!!(tsk)->thread.ri_cb)
|
||||
|
||||
register unsigned long current_stack_pointer asm("r15");
|
||||
/* avoid using global register due to gcc bug in versions < 8.4 */
|
||||
#define current_stack_pointer (__current_stack_pointer())
|
||||
|
||||
static __always_inline unsigned long __current_stack_pointer(void)
|
||||
{
|
||||
unsigned long sp;
|
||||
|
||||
asm volatile("lgr %0,15" : "=d" (sp));
|
||||
return sp;
|
||||
}
|
||||
|
||||
static __always_inline unsigned short stap(void)
|
||||
{
|
||||
|
|
|
@ -46,7 +46,7 @@ struct save_area {
|
|||
u64 fprs[16];
|
||||
u32 fpc;
|
||||
u32 prefix;
|
||||
u64 todpreg;
|
||||
u32 todpreg;
|
||||
u64 timer;
|
||||
u64 todcmp;
|
||||
u64 vxrs_low[16];
|
||||
|
|
|
@ -83,7 +83,7 @@ cmd_image = $(obj)/tools/build $(obj)/setup.bin $(obj)/vmlinux.bin \
|
|||
|
||||
$(obj)/bzImage: $(obj)/setup.bin $(obj)/vmlinux.bin $(obj)/tools/build FORCE
|
||||
$(call if_changed,image)
|
||||
@$(kecho) 'Kernel: $@ is ready' ' (#'`cat .version`')'
|
||||
@$(kecho) 'Kernel: $@ is ready' ' (#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
|
||||
|
||||
OBJCOPYFLAGS_vmlinux.bin := -O binary -R .note -R .comment -S
|
||||
$(obj)/vmlinux.bin: $(obj)/compressed/vmlinux FORCE
|
||||
|
|
|
@ -861,8 +861,7 @@ static int amd_pmu_handle_irq(struct pt_regs *regs)
|
|||
pmu_enabled = cpuc->enabled;
|
||||
cpuc->enabled = 0;
|
||||
|
||||
/* stop everything (includes BRS) */
|
||||
amd_pmu_disable_all();
|
||||
amd_brs_disable_all();
|
||||
|
||||
/* Drain BRS is in use (could be inactive) */
|
||||
if (cpuc->lbr_users)
|
||||
|
@ -873,7 +872,7 @@ static int amd_pmu_handle_irq(struct pt_regs *regs)
|
|||
|
||||
cpuc->enabled = pmu_enabled;
|
||||
if (pmu_enabled)
|
||||
amd_pmu_enable_all(0);
|
||||
amd_brs_enable_all();
|
||||
|
||||
return amd_pmu_adjust_nmi_window(handled);
|
||||
}
|
||||
|
|
|
@ -553,6 +553,7 @@ static void uncore_clean_online(void)
|
|||
|
||||
hlist_for_each_entry_safe(uncore, n, &uncore_unused_list, node) {
|
||||
hlist_del(&uncore->node);
|
||||
kfree(uncore->events);
|
||||
kfree(uncore);
|
||||
}
|
||||
}
|
||||
|
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче