mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 02:21:52 +09:00
Merge tag 'android14-6.1-2024-10_r1' of https://android.googlesource.com/kernel/common
android14-6.1 October 2024 release 1 Artifacts: https://ci.android.com/builds/submitted/12440485/kernel_aarch64/latest * tag 'android14-6.1-2024-10_r1': (2174 commits) UPSTREAM: KVM: arm64: Add memory length checks and remove inline in do_ffa_mem_xfer ANDROID: GKI: Update symbol list for BCMSTB UPSTREAM: arm64: Add Neoverse-V2 part UPSTREAM: usb: dwc3: core: update LC timer as per USB Spec V3.2 ANDROID: GKI: Add symbol for pci power limit ANDROID: OPP: fix function args mismatch for dev_pm_opp_add in pm_opp.h ANDROID: GKI: Update KMI symbol list for ASR ANDROID: GKI: Export a symbol “next_arg” for honor BACKPORT: netem: fix return value if duplicate enqueue fails ANDROID: 16K: Fixup padding vm_flags bits on VMA splits ANDROID: 16K: Introduce pgsize_migration_inline.h FROMLIST: binder: fix BINDER_WORK_FROZEN_BINDER debug logs BACKPORT: FROMLIST: binder: fix freeze UAF in binder_release_work() FROMLIST: binder: fix OOB in binder_add_freeze_work() FROMLIST: binder: fix node UAF in binder_add_freeze_work() FROMGIT: virtio_pmem: Check device status before requesting flush ANDROID: GKI: update rockchip symbols sync with kernel update ANDROID: GKI: Update symbol list for honor ANDROID: GKI: Update `kernel_aarch64_16k` build config to match `kernel_aarch64` ANDROID: ABI: update symbol list for honor ... Change-Id: I1861d4a9b4ff37e7f1ee718930cb05e558547269 Conflicts: arch/arm64/boot/dts/rockchip/rk3328.dtsi drivers/gpu/drm/rockchip/rockchip_drm_vop2.c drivers/phy/rockchip/phy-rockchip-snps-pcie3.c drivers/pinctrl/pinctrl-rockchip.c drivers/tty/serial/8250/8250_port.c drivers/usb/gadget/function/u_audio.c include/linux/usb/quirks.h mm/cma.c sound/soc/rockchip/rockchip_i2s_tdm.c
This commit is contained in:
10
BUILD.bazel
10
BUILD.bazel
@@ -120,6 +120,8 @@ filegroup(
|
||||
"android/abi_gki_aarch64_qcom",
|
||||
"android/abi_gki_aarch64_rockchip",
|
||||
"android/abi_gki_aarch64_sony",
|
||||
"android/abi_gki_aarch64_sunxi",
|
||||
"android/abi_gki_aarch64_telechips",
|
||||
"android/abi_gki_aarch64_tuxera",
|
||||
"android/abi_gki_aarch64_type_visibility",
|
||||
"android/abi_gki_aarch64_unisoc",
|
||||
@@ -143,8 +145,14 @@ define_common_kernels(target_configs = {
|
||||
"make_goals": _GKI_AARCH64_MAKE_GOALS,
|
||||
},
|
||||
"kernel_aarch64_16k": {
|
||||
"kmi_symbol_list_strict_mode": False,
|
||||
"kmi_symbol_list_strict_mode": True,
|
||||
"module_implicit_outs": get_gki_modules_list("arm64"),
|
||||
"kmi_symbol_list": "android/abi_gki_aarch64",
|
||||
"rewrite_absolute_paths_in_config": True,
|
||||
"kmi_symbol_list_add_only": True,
|
||||
"additional_kmi_symbol_lists": [":aarch64_additional_kmi_symbol_lists"],
|
||||
"protected_exports_list": "android/abi_gki_protected_exports_aarch64",
|
||||
"protected_modules_list": "android/gki_aarch64_protected_modules",
|
||||
"make_goals": _GKI_AARCH64_MAKE_GOALS,
|
||||
},
|
||||
"kernel_aarch64_debug": {
|
||||
|
||||
@@ -67,8 +67,8 @@ arg4:
|
||||
will be performed for all tasks in the task group of ``pid``.
|
||||
|
||||
arg5:
|
||||
userspace pointer to an unsigned long for storing the cookie returned by
|
||||
``PR_SCHED_CORE_GET`` command. Should be 0 for all other commands.
|
||||
userspace pointer to an unsigned long long for storing the cookie returned
|
||||
by ``PR_SCHED_CORE_GET`` command. Should be 0 for all other commands.
|
||||
|
||||
In order for a process to push a cookie to, or pull a cookie from a process, it
|
||||
is required to have the ptrace access mode: `PTRACE_MODE_READ_REALCREDS` to the
|
||||
|
||||
@@ -138,11 +138,10 @@ associated with the source address of the indirect branch. Specifically,
|
||||
the BHB might be shared across privilege levels even in the presence of
|
||||
Enhanced IBRS.
|
||||
|
||||
Currently the only known real-world BHB attack vector is via
|
||||
unprivileged eBPF. Therefore, it's highly recommended to not enable
|
||||
unprivileged eBPF, especially when eIBRS is used (without retpolines).
|
||||
For a full mitigation against BHB attacks, it's recommended to use
|
||||
retpolines (or eIBRS combined with retpolines).
|
||||
Previously the only known real-world BHB attack vector was via unprivileged
|
||||
eBPF. Further research has found attacks that don't require unprivileged eBPF.
|
||||
For a full mitigation against BHB attacks it is recommended to set BHI_DIS_S or
|
||||
use the BHB clearing sequence.
|
||||
|
||||
Attack scenarios
|
||||
----------------
|
||||
@@ -430,6 +429,23 @@ The possible values in this file are:
|
||||
'PBRSB-eIBRS: Not affected' CPU is not affected by PBRSB
|
||||
=========================== =======================================================
|
||||
|
||||
- Branch History Injection (BHI) protection status:
|
||||
|
||||
.. list-table::
|
||||
|
||||
* - BHI: Not affected
|
||||
- System is not affected
|
||||
* - BHI: Retpoline
|
||||
- System is protected by retpoline
|
||||
* - BHI: BHI_DIS_S
|
||||
- System is protected by BHI_DIS_S
|
||||
* - BHI: SW loop, KVM SW loop
|
||||
- System is protected by software clearing sequence
|
||||
* - BHI: Vulnerable
|
||||
- System is vulnerable to BHI
|
||||
* - BHI: Vulnerable, KVM: SW loop
|
||||
- System is vulnerable; KVM is protected by software clearing sequence
|
||||
|
||||
Full mitigation might require a microcode update from the CPU
|
||||
vendor. When the necessary microcode is not available, the kernel will
|
||||
report vulnerability.
|
||||
@@ -484,7 +500,11 @@ Spectre variant 2
|
||||
|
||||
Systems which support enhanced IBRS (eIBRS) enable IBRS protection once at
|
||||
boot, by setting the IBRS bit, and they're automatically protected against
|
||||
Spectre v2 variant attacks.
|
||||
some Spectre v2 variant attacks. The BHB can still influence the choice of
|
||||
indirect branch predictor entry, and although branch predictor entries are
|
||||
isolated between modes when eIBRS is enabled, the BHB itself is not isolated
|
||||
between modes. Systems which support BHI_DIS_S will set it to protect against
|
||||
BHI attacks.
|
||||
|
||||
On Intel's enhanced IBRS systems, this includes cross-thread branch target
|
||||
injections on SMT systems (STIBP). In other words, Intel eIBRS enables
|
||||
@@ -638,6 +658,18 @@ kernel command line.
|
||||
spectre_v2=off. Spectre variant 1 mitigations
|
||||
cannot be disabled.
|
||||
|
||||
spectre_bhi=
|
||||
|
||||
[X86] Control mitigation of Branch History Injection
|
||||
(BHI) vulnerability. This setting affects the deployment
|
||||
of the HW BHI control and the SW BHB clearing sequence.
|
||||
|
||||
on
|
||||
(default) Enable the HW or SW mitigation as
|
||||
needed.
|
||||
off
|
||||
Disable the mitigation.
|
||||
|
||||
For spectre_v2_user see Documentation/admin-guide/kernel-parameters.txt
|
||||
|
||||
Mitigation selection guide
|
||||
|
||||
@@ -3331,6 +3331,7 @@
|
||||
reg_file_data_sampling=off [X86]
|
||||
retbleed=off [X86]
|
||||
spec_store_bypass_disable=off [X86,PPC]
|
||||
spectre_bhi=off [X86]
|
||||
spectre_v2_user=off [X86]
|
||||
srbds=off [X86,INTEL]
|
||||
ssbd=force-off [ARM64]
|
||||
@@ -5801,6 +5802,15 @@
|
||||
sonypi.*= [HW] Sony Programmable I/O Control Device driver
|
||||
See Documentation/admin-guide/laptops/sonypi.rst
|
||||
|
||||
spectre_bhi= [X86] Control mitigation of Branch History Injection
|
||||
(BHI) vulnerability. This setting affects the
|
||||
deployment of the HW BHI control and the SW BHB
|
||||
clearing sequence.
|
||||
|
||||
on - (default) Enable the HW or SW mitigation
|
||||
as needed.
|
||||
off - Disable the mitigation.
|
||||
|
||||
spectre_v2= [X86] Control mitigation of Spectre variant 2
|
||||
(indirect branch speculation) vulnerability.
|
||||
The default operation protects the kernel from
|
||||
@@ -6661,6 +6671,9 @@
|
||||
pause after every control message);
|
||||
o = USB_QUIRK_HUB_SLOW_RESET (Hub needs extra
|
||||
delay after resetting its port);
|
||||
p = USB_QUIRK_SHORT_SET_ADDRESS_REQ_TIMEOUT
|
||||
(Reduce timeout of the SET_ADDRESS
|
||||
request from 5000 ms to 500 ms);
|
||||
Example: quirks=0781:5580:bk,0a5c:5834:gij
|
||||
|
||||
usbhid.mousepoll=
|
||||
|
||||
@@ -205,6 +205,11 @@ Will increase power usage.
|
||||
|
||||
Default: 0 (off)
|
||||
|
||||
mem_pcpu_rsv
|
||||
------------
|
||||
|
||||
Per-cpu reserved forward alloc cache size in page units. Default 1MB per CPU.
|
||||
|
||||
rmem_default
|
||||
------------
|
||||
|
||||
|
||||
@@ -296,7 +296,9 @@ properties:
|
||||
power-domains property.
|
||||
|
||||
For PSCI based platforms, the name corresponding to the index of the PSCI
|
||||
PM domain provider, must be "psci".
|
||||
PM domain provider, must be "psci". For SCMI based platforms, the name
|
||||
corresponding to the index of an SCMI performance domain provider, must be
|
||||
"perf".
|
||||
|
||||
qcom,saw:
|
||||
$ref: '/schemas/types.yaml#/definitions/phandle'
|
||||
|
||||
@@ -120,8 +120,15 @@ properties:
|
||||
'#clock-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- '#clock-cells'
|
||||
'#power-domain-cells':
|
||||
const: 1
|
||||
|
||||
oneOf:
|
||||
- required:
|
||||
- '#clock-cells'
|
||||
|
||||
- required:
|
||||
- '#power-domain-cells'
|
||||
|
||||
protocol@14:
|
||||
type: object
|
||||
|
||||
@@ -62,6 +62,8 @@ properties:
|
||||
|
||||
interrupt-controller: true
|
||||
|
||||
gpio-ranges: true
|
||||
|
||||
wakeup-source:
|
||||
type: boolean
|
||||
description: >
|
||||
@@ -88,6 +90,7 @@ examples:
|
||||
interrupt-parent = <&irq0_intc>;
|
||||
interrupts = <0x6>;
|
||||
brcm,gpio-bank-widths = <32 32 32 24>;
|
||||
gpio-ranges = <&pinctrl 0 0 120>;
|
||||
};
|
||||
|
||||
upg_gio_aon: gpio@f04172c0 {
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
# Copyright 2019 BayLibre, SAS
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/i2c/amlogic,meson6-i2c.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
$id: http://devicetree.org/schemas/i2c/amlogic,meson6-i2c.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Amlogic Meson I2C Controller
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/i2c/apple,i2c.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
$id: http://devicetree.org/schemas/i2c/apple,i2c.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Apple/PASemi I2C controller
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@ required:
|
||||
- clocks
|
||||
|
||||
allOf:
|
||||
- $ref: "i2c-controller.yaml"
|
||||
- $ref: /schemas/i2c/i2c-controller.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/i2c/cdns,i2c-r1p10.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
$id: http://devicetree.org/schemas/i2c/cdns,i2c-r1p10.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Cadence I2C controller
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ description: |
|
||||
google,cros-ec-spi or google,cros-ec-i2c.
|
||||
|
||||
allOf:
|
||||
- $ref: i2c-controller.yaml#
|
||||
- $ref: /schemas/i2c/i2c-controller.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
|
||||
@@ -45,7 +45,7 @@ properties:
|
||||
|
||||
i2c-parent:
|
||||
description: phandle of the I2C bus that this multiplexer's master-side port is connected to
|
||||
$ref: "/schemas/types.yaml#/definitions/phandle"
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
mux-gpios:
|
||||
description: list of GPIOs used to control the muxer
|
||||
@@ -55,7 +55,7 @@ properties:
|
||||
idle-state:
|
||||
description: Value to set the muxer to when idle. When no value is given, it defaults to the
|
||||
last value used.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
allOf:
|
||||
- $ref: i2c-mux.yaml
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/i2c/qcom,i2c-geni-qcom.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
$id: http://devicetree.org/schemas/i2c/qcom,i2c-geni-qcom.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm Geni based QUP I2C Controller
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ properties:
|
||||
st,syscfg-fmp:
|
||||
description: Use to set Fast Mode Plus bit within SYSCFG when Fast Mode
|
||||
Plus speed is selected by slave.
|
||||
$ref: "/schemas/types.yaml#/definitions/phandle-array"
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
items:
|
||||
- items:
|
||||
- description: phandle to syscfg
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/i2c/xlnx,xps-iic-2.00.a.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
$id: http://devicetree.org/schemas/i2c/xlnx,xps-iic-2.00.a.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Xilinx IIC controller
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ allOf:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: maxim,max30100
|
||||
const: maxim,max30102
|
||||
then:
|
||||
properties:
|
||||
maxim,green-led-current-microamp: false
|
||||
|
||||
@@ -37,15 +37,15 @@ properties:
|
||||
active low.
|
||||
maxItems: 1
|
||||
|
||||
dovdd-supply:
|
||||
DOVDD-supply:
|
||||
description:
|
||||
Definition of the regulator used as interface power supply.
|
||||
|
||||
avdd-supply:
|
||||
AVDD-supply:
|
||||
description:
|
||||
Definition of the regulator used as analog power supply.
|
||||
|
||||
dvdd-supply:
|
||||
DVDD-supply:
|
||||
description:
|
||||
Definition of the regulator used as digital power supply.
|
||||
|
||||
@@ -59,9 +59,9 @@ required:
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- dovdd-supply
|
||||
- avdd-supply
|
||||
- dvdd-supply
|
||||
- DOVDD-supply
|
||||
- AVDD-supply
|
||||
- DVDD-supply
|
||||
- reset-gpios
|
||||
- port
|
||||
|
||||
@@ -82,9 +82,9 @@ examples:
|
||||
clock-names = "xvclk";
|
||||
reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
|
||||
|
||||
dovdd-supply = <&sw2_reg>;
|
||||
dvdd-supply = <&sw2_reg>;
|
||||
avdd-supply = <®_peri_3p15v>;
|
||||
DOVDD-supply = <&sw2_reg>;
|
||||
DVDD-supply = <&sw2_reg>;
|
||||
AVDD-supply = <®_peri_3p15v>;
|
||||
|
||||
port {
|
||||
ov2680_to_mipi: endpoint {
|
||||
|
||||
@@ -68,6 +68,18 @@ properties:
|
||||
phy-names:
|
||||
const: pcie
|
||||
|
||||
vpcie1v5-supply:
|
||||
description: The 1.5v regulator to use for PCIe.
|
||||
|
||||
vpcie3v3-supply:
|
||||
description: The 3.3v regulator to use for PCIe.
|
||||
|
||||
vpcie12v-supply:
|
||||
description: The 12v regulator to use for PCIe.
|
||||
|
||||
iommu-map: true
|
||||
iommu-map-mask: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
@@ -121,5 +133,7 @@ examples:
|
||||
clock-names = "pcie", "pcie_bus";
|
||||
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
|
||||
resets = <&cpg 319>;
|
||||
vpcie3v3-supply = <&pcie_3v3>;
|
||||
vpcie12v-supply = <&pcie_12v>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -97,7 +97,8 @@ patternProperties:
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [emmc, emmc_rst]
|
||||
items:
|
||||
enum: [emmc, emmc_rst]
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
@@ -105,8 +106,9 @@ patternProperties:
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [esw, esw_p0_p1, esw_p2_p3_p4, rgmii_via_esw,
|
||||
rgmii_via_gmac1, rgmii_via_gmac2, mdc_mdio]
|
||||
items:
|
||||
enum: [esw, esw_p0_p1, esw_p2_p3_p4, rgmii_via_esw,
|
||||
rgmii_via_gmac1, rgmii_via_gmac2, mdc_mdio]
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
@@ -123,10 +125,11 @@ patternProperties:
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [i2s_in_mclk_bclk_ws, i2s1_in_data, i2s2_in_data,
|
||||
i2s3_in_data, i2s4_in_data, i2s_out_mclk_bclk_ws,
|
||||
i2s1_out_data, i2s2_out_data, i2s3_out_data,
|
||||
i2s4_out_data]
|
||||
items:
|
||||
enum: [i2s_in_mclk_bclk_ws, i2s1_in_data, i2s2_in_data,
|
||||
i2s3_in_data, i2s4_in_data, i2s_out_mclk_bclk_ws,
|
||||
i2s1_out_data, i2s2_out_data, i2s3_out_data,
|
||||
i2s4_out_data]
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
@@ -159,10 +162,11 @@ patternProperties:
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pcie0_0_waken, pcie0_1_waken, pcie1_0_waken,
|
||||
pcie0_0_clkreq, pcie0_1_clkreq, pcie1_0_clkreq,
|
||||
pcie0_pad_perst, pcie1_pad_perst, pcie_pereset,
|
||||
pcie_wake, pcie_clkreq]
|
||||
items:
|
||||
enum: [pcie0_0_waken, pcie0_1_waken, pcie1_0_waken,
|
||||
pcie0_0_clkreq, pcie0_1_clkreq, pcie1_0_clkreq,
|
||||
pcie0_pad_perst, pcie1_pad_perst, pcie_pereset,
|
||||
pcie_wake, pcie_clkreq]
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
@@ -178,11 +182,12 @@ patternProperties:
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pwm_ch1_0, pwm_ch1_1, pwm_ch1_2, pwm_ch2_0, pwm_ch2_1,
|
||||
pwm_ch2_2, pwm_ch3_0, pwm_ch3_1, pwm_ch3_2, pwm_ch4_0,
|
||||
pwm_ch4_1, pwm_ch4_2, pwm_ch4_3, pwm_ch5_0, pwm_ch5_1,
|
||||
pwm_ch5_2, pwm_ch6_0, pwm_ch6_1, pwm_ch6_2, pwm_ch6_3,
|
||||
pwm_ch7_0, pwm_0, pwm_1]
|
||||
items:
|
||||
enum: [pwm_ch1_0, pwm_ch1_1, pwm_ch1_2, pwm_ch2_0, pwm_ch2_1,
|
||||
pwm_ch2_2, pwm_ch3_0, pwm_ch3_1, pwm_ch3_2, pwm_ch4_0,
|
||||
pwm_ch4_1, pwm_ch4_2, pwm_ch4_3, pwm_ch5_0, pwm_ch5_1,
|
||||
pwm_ch5_2, pwm_ch6_0, pwm_ch6_1, pwm_ch6_2, pwm_ch6_3,
|
||||
pwm_ch7_0, pwm_0, pwm_1]
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
@@ -260,33 +265,34 @@ patternProperties:
|
||||
pins:
|
||||
description: |
|
||||
An array of strings. Each string contains the name of a pin.
|
||||
enum: [GPIO_A, I2S1_IN, I2S1_OUT, I2S_BCLK, I2S_WS, I2S_MCLK, TXD0,
|
||||
RXD0, SPI_WP, SPI_HOLD, SPI_CLK, SPI_MOSI, SPI_MISO, SPI_CS,
|
||||
I2C_SDA, I2C_SCL, I2S2_IN, I2S3_IN, I2S4_IN, I2S2_OUT,
|
||||
I2S3_OUT, I2S4_OUT, GPIO_B, MDC, MDIO, G2_TXD0, G2_TXD1,
|
||||
G2_TXD2, G2_TXD3, G2_TXEN, G2_TXC, G2_RXD0, G2_RXD1, G2_RXD2,
|
||||
G2_RXD3, G2_RXDV, G2_RXC, NCEB, NWEB, NREB, NDL4, NDL5, NDL6,
|
||||
NDL7, NRB, NCLE, NALE, NDL0, NDL1, NDL2, NDL3, MDI_TP_P0,
|
||||
MDI_TN_P0, MDI_RP_P0, MDI_RN_P0, MDI_TP_P1, MDI_TN_P1,
|
||||
MDI_RP_P1, MDI_RN_P1, MDI_RP_P2, MDI_RN_P2, MDI_TP_P2,
|
||||
MDI_TN_P2, MDI_TP_P3, MDI_TN_P3, MDI_RP_P3, MDI_RN_P3,
|
||||
MDI_RP_P4, MDI_RN_P4, MDI_TP_P4, MDI_TN_P4, PMIC_SCL,
|
||||
PMIC_SDA, SPIC1_CLK, SPIC1_MOSI, SPIC1_MISO, SPIC1_CS,
|
||||
GPIO_D, WATCHDOG, RTS3_N, CTS3_N, TXD3, RXD3, PERST0_N,
|
||||
PERST1_N, WLED_N, EPHY_LED0_N, AUXIN0, AUXIN1, AUXIN2,
|
||||
AUXIN3, TXD4, RXD4, RTS4_N, CST4_N, PWM1, PWM2, PWM3, PWM4,
|
||||
PWM5, PWM6, PWM7, GPIO_E, TOP_5G_CLK, TOP_5G_DATA,
|
||||
WF0_5G_HB0, WF0_5G_HB1, WF0_5G_HB2, WF0_5G_HB3, WF0_5G_HB4,
|
||||
WF0_5G_HB5, WF0_5G_HB6, XO_REQ, TOP_RST_N, SYS_WATCHDOG,
|
||||
EPHY_LED0_N_JTDO, EPHY_LED1_N_JTDI, EPHY_LED2_N_JTMS,
|
||||
EPHY_LED3_N_JTCLK, EPHY_LED4_N_JTRST_N, WF2G_LED_N,
|
||||
WF5G_LED_N, GPIO_9, GPIO_10, GPIO_11, GPIO_12, UART1_TXD,
|
||||
UART1_RXD, UART1_CTS, UART1_RTS, UART2_TXD, UART2_RXD,
|
||||
UART2_CTS, UART2_RTS, SMI_MDC, SMI_MDIO, PCIE_PERESET_N,
|
||||
PWM_0, GPIO_0, GPIO_1, GPIO_2, GPIO_3, GPIO_4, GPIO_5,
|
||||
GPIO_6, GPIO_7, GPIO_8, UART0_TXD, UART0_RXD, TOP_2G_CLK,
|
||||
TOP_2G_DATA, WF0_2G_HB0, WF0_2G_HB1, WF0_2G_HB2, WF0_2G_HB3,
|
||||
WF0_2G_HB4, WF0_2G_HB5, WF0_2G_HB6]
|
||||
items:
|
||||
enum: [GPIO_A, I2S1_IN, I2S1_OUT, I2S_BCLK, I2S_WS, I2S_MCLK, TXD0,
|
||||
RXD0, SPI_WP, SPI_HOLD, SPI_CLK, SPI_MOSI, SPI_MISO, SPI_CS,
|
||||
I2C_SDA, I2C_SCL, I2S2_IN, I2S3_IN, I2S4_IN, I2S2_OUT,
|
||||
I2S3_OUT, I2S4_OUT, GPIO_B, MDC, MDIO, G2_TXD0, G2_TXD1,
|
||||
G2_TXD2, G2_TXD3, G2_TXEN, G2_TXC, G2_RXD0, G2_RXD1, G2_RXD2,
|
||||
G2_RXD3, G2_RXDV, G2_RXC, NCEB, NWEB, NREB, NDL4, NDL5, NDL6,
|
||||
NDL7, NRB, NCLE, NALE, NDL0, NDL1, NDL2, NDL3, MDI_TP_P0,
|
||||
MDI_TN_P0, MDI_RP_P0, MDI_RN_P0, MDI_TP_P1, MDI_TN_P1,
|
||||
MDI_RP_P1, MDI_RN_P1, MDI_RP_P2, MDI_RN_P2, MDI_TP_P2,
|
||||
MDI_TN_P2, MDI_TP_P3, MDI_TN_P3, MDI_RP_P3, MDI_RN_P3,
|
||||
MDI_RP_P4, MDI_RN_P4, MDI_TP_P4, MDI_TN_P4, PMIC_SCL,
|
||||
PMIC_SDA, SPIC1_CLK, SPIC1_MOSI, SPIC1_MISO, SPIC1_CS,
|
||||
GPIO_D, WATCHDOG, RTS3_N, CTS3_N, TXD3, RXD3, PERST0_N,
|
||||
PERST1_N, WLED_N, EPHY_LED0_N, AUXIN0, AUXIN1, AUXIN2,
|
||||
AUXIN3, TXD4, RXD4, RTS4_N, CST4_N, PWM1, PWM2, PWM3, PWM4,
|
||||
PWM5, PWM6, PWM7, GPIO_E, TOP_5G_CLK, TOP_5G_DATA,
|
||||
WF0_5G_HB0, WF0_5G_HB1, WF0_5G_HB2, WF0_5G_HB3, WF0_5G_HB4,
|
||||
WF0_5G_HB5, WF0_5G_HB6, XO_REQ, TOP_RST_N, SYS_WATCHDOG,
|
||||
EPHY_LED0_N_JTDO, EPHY_LED1_N_JTDI, EPHY_LED2_N_JTMS,
|
||||
EPHY_LED3_N_JTCLK, EPHY_LED4_N_JTRST_N, WF2G_LED_N,
|
||||
WF5G_LED_N, GPIO_9, GPIO_10, GPIO_11, GPIO_12, UART1_TXD,
|
||||
UART1_RXD, UART1_CTS, UART1_RTS, UART2_TXD, UART2_RXD,
|
||||
UART2_CTS, UART2_RTS, SMI_MDC, SMI_MDIO, PCIE_PERESET_N,
|
||||
PWM_0, GPIO_0, GPIO_1, GPIO_2, GPIO_3, GPIO_4, GPIO_5,
|
||||
GPIO_6, GPIO_7, GPIO_8, UART0_TXD, UART0_RXD, TOP_2G_CLK,
|
||||
TOP_2G_DATA, WF0_2G_HB0, WF0_2G_HB1, WF0_2G_HB2, WF0_2G_HB3,
|
||||
WF0_2G_HB4, WF0_2G_HB5, WF0_2G_HB6]
|
||||
|
||||
bias-disable: true
|
||||
|
||||
|
||||
@@ -13,8 +13,9 @@ maintainers:
|
||||
|
||||
description: |+
|
||||
System on chip designs are often divided into multiple PM domains that can be
|
||||
used for power gating of selected IP blocks for power saving by reduced leakage
|
||||
current.
|
||||
used for power gating of selected IP blocks for power saving by reduced
|
||||
leakage current. Moreover, in some cases the similar PM domains may also be
|
||||
capable of scaling performance for a group of IP blocks.
|
||||
|
||||
This device tree binding can be used to bind PM domain consumer devices with
|
||||
their PM domains provided by PM domain providers. A PM domain provider can be
|
||||
@@ -25,7 +26,7 @@ description: |+
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^(power-controller|power-domain)([@-].*)?$"
|
||||
pattern: "^(power-controller|power-domain|performance-domain)([@-].*)?$"
|
||||
|
||||
domain-idle-states:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
@@ -47,11 +48,11 @@ properties:
|
||||
items:
|
||||
maxItems: 1
|
||||
description:
|
||||
Phandles to the OPP tables of power domains provided by a power domain
|
||||
provider. If the provider provides a single power domain only or all
|
||||
the power domains provided by the provider have identical OPP tables,
|
||||
then this shall contain a single phandle. Refer to ../opp/opp-v2-base.yaml
|
||||
for more information.
|
||||
Phandles to the OPP tables of power domains that are capable of scaling
|
||||
performance, provided by a power domain provider. If the provider provides
|
||||
a single power domain only or all the power domains provided by the
|
||||
provider have identical OPP tables, then this shall contain a single
|
||||
phandle. Refer to ../opp/opp-v2-base.yaml for more information.
|
||||
|
||||
"#power-domain-cells":
|
||||
description:
|
||||
|
||||
@@ -151,6 +151,7 @@ allOf:
|
||||
unevaluatedProperties: false
|
||||
|
||||
pcie-phy:
|
||||
type: object
|
||||
description:
|
||||
Documentation/devicetree/bindings/phy/rockchip-pcie-phy.txt
|
||||
|
||||
|
||||
@@ -20,6 +20,11 @@ Optional properties:
|
||||
a GPIO spec for the external headphone detect pin. If jd-mode = 0,
|
||||
we will get the JD status by getting the value of hp-detect-gpios.
|
||||
|
||||
- cbj-sleeve-gpios:
|
||||
a GPIO spec to control the external combo jack circuit to tie the sleeve/ring2
|
||||
contacts to the ground or floating. It could avoid some electric noise from the
|
||||
active speaker jacks.
|
||||
|
||||
- realtek,in2-differential
|
||||
Boolean. Indicate MIC2 input are differential, rather than single-ended.
|
||||
|
||||
@@ -68,6 +73,7 @@ codec: rt5650@1a {
|
||||
compatible = "realtek,rt5650";
|
||||
reg = <0x1a>;
|
||||
hp-detect-gpios = <&gpio 19 0>;
|
||||
cbj-sleeve-gpios = <&gpio 20 0>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
||||
realtek,dmic-en = "true";
|
||||
|
||||
@@ -46,13 +46,16 @@ API to add a new FPGA region
|
||||
----------------------------
|
||||
|
||||
* struct fpga_region - The FPGA region struct
|
||||
* struct fpga_region_info - Parameter structure for fpga_region_register_full()
|
||||
* fpga_region_register_full() - Create and register an FPGA region using the
|
||||
* struct fpga_region_info - Parameter structure for __fpga_region_register_full()
|
||||
* __fpga_region_register_full() - Create and register an FPGA region using the
|
||||
fpga_region_info structure to provide the full flexibility of options
|
||||
* fpga_region_register() - Create and register an FPGA region using standard
|
||||
* __fpga_region_register() - Create and register an FPGA region using standard
|
||||
arguments
|
||||
* fpga_region_unregister() - Unregister an FPGA region
|
||||
|
||||
Helper macros ``fpga_region_register()`` and ``fpga_region_register_full()``
|
||||
automatically set the module that registers the FPGA region as the owner.
|
||||
|
||||
The FPGA region's probe function will need to get a reference to the FPGA
|
||||
Manager it will be using to do the programming. This usually would happen
|
||||
during the region's probe function.
|
||||
@@ -82,10 +85,10 @@ following APIs to handle building or tearing down that list.
|
||||
:functions: fpga_region_info
|
||||
|
||||
.. kernel-doc:: drivers/fpga/fpga-region.c
|
||||
:functions: fpga_region_register_full
|
||||
:functions: __fpga_region_register_full
|
||||
|
||||
.. kernel-doc:: drivers/fpga/fpga-region.c
|
||||
:functions: fpga_region_register
|
||||
:functions: __fpga_region_register
|
||||
|
||||
.. kernel-doc:: drivers/fpga/fpga-region.c
|
||||
:functions: fpga_region_unregister
|
||||
|
||||
@@ -136,7 +136,8 @@ PMD Page Table Helpers
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pmd_swp_clear_soft_dirty | Clears a soft dirty swapped PMD |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pmd_mkinvalid | Invalidates a mapped PMD [1] |
|
||||
| pmd_mkinvalid | Invalidates a present PMD; do not call for |
|
||||
| | non-present PMD [1] |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pmd_set_huge | Creates a PMD huge mapping |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
@@ -192,7 +193,8 @@ PUD Page Table Helpers
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pud_mkdevmap | Creates a ZONE_DEVICE mapped PUD |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pud_mkinvalid | Invalidates a mapped PUD [1] |
|
||||
| pud_mkinvalid | Invalidates a present PUD; do not call for |
|
||||
| | non-present PUD [1] |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
| pud_set_huge | Creates a PUD huge mapping |
|
||||
+---------------------------+--------------------------------------------------+
|
||||
|
||||
@@ -205,6 +205,7 @@ Adaptive coalescing can be switched on/off through `ethtool(8)`'s
|
||||
More information about Adaptive Interrupt Moderation (DIM) can be found in
|
||||
Documentation/networking/net_dim.rst
|
||||
|
||||
.. _`RX copybreak`:
|
||||
RX copybreak
|
||||
============
|
||||
The rx_copybreak is initialized by default to ENA_DEFAULT_RX_COPYBREAK
|
||||
@@ -315,3 +316,34 @@ Rx
|
||||
- The new SKB is updated with the necessary information (protocol,
|
||||
checksum hw verify result, etc), and then passed to the network
|
||||
stack, using the NAPI interface function :code:`napi_gro_receive()`.
|
||||
|
||||
Dynamic RX Buffers (DRB)
|
||||
------------------------
|
||||
|
||||
Each RX descriptor in the RX ring is a single memory page (which is either 4KB
|
||||
or 16KB long depending on system's configurations).
|
||||
To reduce the memory allocations required when dealing with a high rate of small
|
||||
packets, the driver tries to reuse the remaining RX descriptor's space if more
|
||||
than 2KB of this page remain unused.
|
||||
|
||||
A simple example of this mechanism is the following sequence of events:
|
||||
|
||||
::
|
||||
|
||||
1. Driver allocates page-sized RX buffer and passes it to hardware
|
||||
+----------------------+
|
||||
|4KB RX Buffer |
|
||||
+----------------------+
|
||||
|
||||
2. A 300Bytes packet is received on this buffer
|
||||
|
||||
3. The driver increases the ref count on this page and returns it back to
|
||||
HW as an RX buffer of size 4KB - 300Bytes = 3796 Bytes
|
||||
+----+--------------------+
|
||||
|****|3796 Bytes RX Buffer|
|
||||
+----+--------------------+
|
||||
|
||||
This mechanism isn't used when an XDP program is loaded, or when the
|
||||
RX packet is less than rx_copybreak bytes (in which case the packet is
|
||||
copied out of the RX buffer into the linear part of a new skb allocated
|
||||
for it and the RX buffer remains the same size, see `RX copybreak`_).
|
||||
|
||||
@@ -97,7 +97,6 @@ class KernelInclude(Include):
|
||||
# HINT: this is the only line I had to change / commented out:
|
||||
#path = utils.relative_path(None, path)
|
||||
|
||||
path = nodes.reprunicode(path)
|
||||
encoding = self.options.get(
|
||||
'encoding', self.state.document.settings.input_encoding)
|
||||
e_handler=self.state.document.settings.input_encoding_error_handler
|
||||
|
||||
@@ -8040,7 +8040,7 @@ M: Geoffrey D. Bennett <g@b4.vu>
|
||||
L: alsa-devel@alsa-project.org (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
|
||||
F: sound/usb/mixer_scarlett_gen2.c
|
||||
F: sound/usb/mixer_scarlett2.c
|
||||
|
||||
FORCEDETH GIGABIT ETHERNET DRIVER
|
||||
M: Rain River <rain.1986.08.12@gmail.com>
|
||||
@@ -22599,6 +22599,7 @@ F: include/xen/swiotlb-xen.h
|
||||
|
||||
XFS FILESYSTEM
|
||||
C: irc://irc.oftc.net/xfs
|
||||
M: Leah Rumancik <leah.rumancik@gmail.com>
|
||||
M: Darrick J. Wong <djwong@kernel.org>
|
||||
L: linux-xfs@vger.kernel.org
|
||||
S: Supported
|
||||
|
||||
7
Makefile
7
Makefile
@@ -1,7 +1,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
VERSION = 6
|
||||
PATCHLEVEL = 1
|
||||
SUBLEVEL = 84
|
||||
SUBLEVEL = 99
|
||||
EXTRAVERSION =
|
||||
NAME = Curry Ramen
|
||||
|
||||
@@ -1003,7 +1003,6 @@ endif
|
||||
ifdef CONFIG_LTO_CLANG
|
||||
ifdef CONFIG_LTO_CLANG_THIN
|
||||
CC_FLAGS_LTO := -flto=thin -fsplit-lto-unit
|
||||
KBUILD_LDFLAGS += --thinlto-cache-dir=$(extmod_prefix).thinlto-cache
|
||||
else
|
||||
CC_FLAGS_LTO := -flto
|
||||
endif
|
||||
@@ -1630,7 +1629,7 @@ endif # CONFIG_MODULES
|
||||
# Directories & files removed with 'make clean'
|
||||
CLEAN_FILES += include/ksym vmlinux.symvers modules-only.symvers \
|
||||
modules.builtin modules.builtin.modinfo modules.nsdeps \
|
||||
compile_commands.json .thinlto-cache rust/test rust/doc \
|
||||
compile_commands.json rust/test rust/doc \
|
||||
.vmlinux.objs .vmlinux.export.c
|
||||
|
||||
# Directories & files removed with 'make mrproper'
|
||||
@@ -1926,7 +1925,7 @@ PHONY += compile_commands.json
|
||||
|
||||
clean-dirs := $(KBUILD_EXTMOD)
|
||||
clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers $(KBUILD_EXTMOD)/modules.nsdeps \
|
||||
$(KBUILD_EXTMOD)/compile_commands.json $(KBUILD_EXTMOD)/.thinlto-cache
|
||||
$(KBUILD_EXTMOD)/compile_commands.json
|
||||
|
||||
PHONY += prepare
|
||||
# now expand this into a simple variable to reduce the cost of shell evaluations
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -41,3 +41,17 @@
|
||||
# required by asr_drm.ko
|
||||
clk_set_rate_exclusive
|
||||
clk_rate_exclusive_put
|
||||
|
||||
# required by mercury.ko
|
||||
media_device_register_entity
|
||||
media_device_unregister_entity
|
||||
v4l2_ctrl_get_menu
|
||||
v4l2_ctrl_type_op_equal
|
||||
v4l2_ctrl_type_op_init
|
||||
v4l2_ctrl_type_op_log
|
||||
v4l2_m2m_buf_done_and_job_finish
|
||||
v4l2_m2m_last_buf
|
||||
|
||||
# required by jpu_heap.ko
|
||||
kmem_cache_size
|
||||
memset16
|
||||
|
||||
@@ -147,6 +147,7 @@
|
||||
dma_map_sg_attrs
|
||||
dma_set_coherent_mask
|
||||
dma_set_mask
|
||||
dma_sync_single_for_device
|
||||
dma_unmap_page_attrs
|
||||
dma_unmap_sg_attrs
|
||||
do_trace_netlink_extack
|
||||
@@ -188,9 +189,12 @@
|
||||
get_net_ns_by_fd
|
||||
get_net_ns_by_pid
|
||||
get_random_bytes
|
||||
get_zeroed_page
|
||||
gic_nonsecure_priorities
|
||||
gpiochip_add_data_with_key
|
||||
gpiochip_find
|
||||
gpiochip_generic_free
|
||||
gpiochip_generic_request
|
||||
gpiochip_get_data
|
||||
gpiochip_remove
|
||||
gpiod_get_value_cansleep
|
||||
@@ -353,8 +357,8 @@
|
||||
nr_cpu_ids
|
||||
ns_capable
|
||||
of_address_to_resource
|
||||
of_alias_get_id
|
||||
of_clk_get_by_name
|
||||
of_count_phandle_with_args
|
||||
of_device_get_match_data
|
||||
of_device_is_available
|
||||
of_device_is_big_endian
|
||||
@@ -413,13 +417,13 @@
|
||||
phy_start
|
||||
phy_stop
|
||||
phy_trigger_machine
|
||||
platform_device_put
|
||||
platform_device_register_full
|
||||
platform_device_unregister
|
||||
__platform_driver_probe
|
||||
__platform_driver_register
|
||||
platform_driver_unregister
|
||||
platform_get_irq
|
||||
platform_get_irq_byname
|
||||
platform_get_irq_byname_optional
|
||||
platform_get_irq_optional
|
||||
platform_get_resource
|
||||
@@ -490,6 +494,7 @@
|
||||
register_pernet_device
|
||||
register_pernet_subsys
|
||||
register_pm_notifier
|
||||
register_reboot_notifier
|
||||
register_syscore_ops
|
||||
regulator_bulk_disable
|
||||
regulator_bulk_enable
|
||||
@@ -660,6 +665,7 @@
|
||||
unregister_pernet_device
|
||||
unregister_pernet_subsys
|
||||
unregister_pm_notifier
|
||||
unregister_reboot_notifier
|
||||
up_read
|
||||
up_write
|
||||
usb_alloc_urb
|
||||
@@ -742,18 +748,6 @@
|
||||
vlan_vid_add
|
||||
vlan_vid_del
|
||||
|
||||
# required by 8250_bcm7271.ko
|
||||
serial8250_do_set_termios
|
||||
serial8250_do_shutdown
|
||||
serial8250_do_startup
|
||||
serial8250_get_port
|
||||
serial8250_handle_irq
|
||||
serial8250_register_8250_port
|
||||
serial8250_resume_port
|
||||
serial8250_suspend_port
|
||||
serial8250_unregister_port
|
||||
uart_write_wakeup
|
||||
|
||||
# required by ahci_brcm.ko
|
||||
phy_calibrate
|
||||
|
||||
@@ -816,7 +810,6 @@
|
||||
dma_pool_create
|
||||
dma_pool_destroy
|
||||
dma_pool_free
|
||||
of_count_phandle_with_args
|
||||
usb_add_gadget_udc
|
||||
usb_del_gadget_udc
|
||||
usb_ep_set_maxpacket_limit
|
||||
@@ -872,6 +865,23 @@
|
||||
of_find_net_device_by_node
|
||||
of_find_node_by_phandle
|
||||
|
||||
# required by brcmstb-iommu.ko
|
||||
devm_get_free_pages
|
||||
generic_device_group
|
||||
iommu_device_register
|
||||
iommu_device_sysfs_add
|
||||
iommu_device_sysfs_remove
|
||||
iommu_device_unlink
|
||||
iommu_device_unregister
|
||||
iommu_fwspec_init
|
||||
iommu_group_alloc
|
||||
iommu_group_put
|
||||
iommu_group_ref_get
|
||||
iommu_group_set_name
|
||||
pci_device_group
|
||||
pci_find_host_bridge
|
||||
platform_get_irq_byname
|
||||
|
||||
# required by brcmstb-proc-info.ko
|
||||
find_get_pid
|
||||
generic_file_open
|
||||
@@ -1065,6 +1075,7 @@
|
||||
netif_schedule_queue
|
||||
netif_set_real_num_rx_queues
|
||||
netif_set_real_num_tx_queues
|
||||
of_alias_get_id
|
||||
of_get_compatible_child
|
||||
of_phy_find_device
|
||||
phy_attach
|
||||
@@ -1083,7 +1094,6 @@
|
||||
platform_device_add_data
|
||||
platform_device_add_resources
|
||||
platform_device_alloc
|
||||
platform_device_put
|
||||
softnet_data
|
||||
|
||||
# required by gpio-brcmstb.ko
|
||||
@@ -1353,6 +1363,7 @@
|
||||
scsi_remove_device
|
||||
scsi_remove_host
|
||||
scsi_rescan_device
|
||||
scsi_resume_device
|
||||
scsi_schedule_eh
|
||||
scsi_sense_desc_find
|
||||
scsi_set_sense_field_pointer
|
||||
@@ -1449,8 +1460,6 @@
|
||||
gpiochip_disable_irq
|
||||
gpiochip_enable_irq
|
||||
gpiochip_generic_config
|
||||
gpiochip_generic_free
|
||||
gpiochip_generic_request
|
||||
gpiochip_irq_relres
|
||||
gpiochip_irq_reqres
|
||||
of_pinctrl_get
|
||||
@@ -1527,6 +1536,9 @@
|
||||
usb_set_configuration
|
||||
work_busy
|
||||
|
||||
# required by reboot_data_save.ko
|
||||
ktime_get_real_ts64
|
||||
|
||||
# required by rfcomm.ko
|
||||
kthread_should_stop
|
||||
kthread_stop
|
||||
@@ -1543,11 +1555,9 @@
|
||||
# required by rtc-brcmstb-waketimer.ko
|
||||
devm_rtc_allocate_device
|
||||
__devm_rtc_register_device
|
||||
register_reboot_notifier
|
||||
rtc_time64_to_tm
|
||||
rtc_tm_to_time64
|
||||
rtc_update_irq
|
||||
unregister_reboot_notifier
|
||||
|
||||
# required by rtl8150.ko
|
||||
usb_control_msg_send
|
||||
@@ -1602,7 +1612,6 @@
|
||||
dma_get_slave_caps
|
||||
dma_release_channel
|
||||
dma_request_chan
|
||||
dma_sync_single_for_device
|
||||
empty_zero_page
|
||||
gpiochip_request_own_desc
|
||||
__of_get_address
|
||||
@@ -1697,7 +1706,6 @@
|
||||
device_find_child_by_name
|
||||
device_for_each_child
|
||||
_find_first_zero_bit
|
||||
get_zeroed_page
|
||||
rtnl_configure_link
|
||||
rtnl_create_link
|
||||
|
||||
@@ -1759,3 +1767,11 @@
|
||||
# required by bstm.ko
|
||||
phys_mem_access_prot
|
||||
generic_access_phys
|
||||
|
||||
# required by bcm_astra.ko
|
||||
strnlen_user
|
||||
tty_buffer_set_limit
|
||||
tty_buffer_request_room
|
||||
|
||||
# required by bcm_athena.ko
|
||||
__read_overflow2_field
|
||||
|
||||
@@ -447,6 +447,7 @@
|
||||
misc_register
|
||||
mod_delayed_work_on
|
||||
mod_timer
|
||||
__module_get
|
||||
module_layout
|
||||
__msecs_to_jiffies
|
||||
msleep
|
||||
@@ -848,6 +849,7 @@
|
||||
vunmap
|
||||
vzalloc
|
||||
wait_for_completion_interruptible
|
||||
wait_for_completion_interruptible_timeout
|
||||
wait_for_completion_timeout
|
||||
__wake_up
|
||||
wake_up_process
|
||||
@@ -1260,6 +1262,7 @@
|
||||
can_ethtool_op_get_ts_info_hwts
|
||||
can_fd_dlc2len
|
||||
can_fd_len2dlc
|
||||
can_free_echo_skb
|
||||
can_put_echo_skb
|
||||
can_rx_offload_add_manual
|
||||
can_rx_offload_del
|
||||
@@ -1292,6 +1295,7 @@
|
||||
timecounter_read
|
||||
unregister_candev
|
||||
__vmalloc
|
||||
work_busy
|
||||
|
||||
# required by mhi.ko
|
||||
get_random_u32
|
||||
|
||||
@@ -440,7 +440,9 @@
|
||||
netdev_err
|
||||
netdev_info
|
||||
netdev_is_rx_handler_busy
|
||||
netdev_master_upper_dev_get
|
||||
netdev_warn
|
||||
nla_append
|
||||
noop_llseek
|
||||
nr_cpu_ids
|
||||
nsecs_to_jiffies
|
||||
@@ -610,6 +612,8 @@
|
||||
seq_putc
|
||||
seq_puts
|
||||
seq_read
|
||||
serdev_device_write
|
||||
serdev_device_write_wakeup
|
||||
set_cpus_allowed_ptr
|
||||
set_normalized_timespec64
|
||||
sg_alloc_table
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
__tracepoint_android_vh_get_page_wmark
|
||||
__tracepoint_android_vh_page_add_new_anon_rmap
|
||||
__tracepoint_android_vh_do_shrink_slab
|
||||
__tracepoint_android_vh_should_fault_around
|
||||
__traceiter_android_vh_should_fault_around
|
||||
__tracepoint_android_vh_shrink_slab_bypass
|
||||
__tracepoint_android_vh_mutex_init
|
||||
__tracepoint_android_vh_file_is_tiny_bypass
|
||||
@@ -14,6 +16,33 @@
|
||||
__traceiter_android_vh_shrink_slab_bypass
|
||||
__traceiter_android_vh_mutex_init
|
||||
__traceiter_android_vh_file_is_tiny_bypass
|
||||
__tracepoint_android_vh_do_read_fault
|
||||
__tracepoint_android_vh_filemap_read
|
||||
__tracepoint_android_vh_filemap_map_pages
|
||||
__traceiter_android_vh_do_read_fault
|
||||
__traceiter_android_vh_filemap_read
|
||||
__traceiter_android_vh_filemap_map_pages
|
||||
__traceiter_android_vh_modify_scan_control
|
||||
__traceiter_android_vh_should_continue_reclaim
|
||||
__traceiter_android_vh_tune_fault_around_bytes
|
||||
binder_alloc_copy_from_buffer
|
||||
kfree
|
||||
__kmalloc
|
||||
mod_node_page_state
|
||||
page_cache_sync_ra
|
||||
proc_create
|
||||
profile_event_register
|
||||
profile_event_unregister
|
||||
drop_super
|
||||
si_swapinfo
|
||||
__show_mem
|
||||
single_open
|
||||
sock_from_file
|
||||
task_cputime_adjusted
|
||||
tcp_sync_mss
|
||||
netdev_get_name
|
||||
tcp_send_active_reset
|
||||
tcp_done
|
||||
udp4_lib_lookup
|
||||
udp6_lib_lookup
|
||||
next_arg
|
||||
|
||||
@@ -554,6 +554,8 @@
|
||||
devm_request_threaded_irq
|
||||
__devm_reset_control_get
|
||||
devm_reset_controller_register
|
||||
devm_rproc_add
|
||||
devm_rproc_alloc
|
||||
devm_rtc_allocate_device
|
||||
devm_rtc_nvmem_register
|
||||
__devm_rtc_register_device
|
||||
@@ -2261,6 +2263,9 @@
|
||||
round_jiffies
|
||||
round_jiffies_relative
|
||||
round_jiffies_up
|
||||
rpmsg_chrdev_eptdev_create
|
||||
rpmsg_chrdev_eptdev_destroy
|
||||
rpmsg_class
|
||||
rpmsg_create_ept
|
||||
rpmsg_destroy_ept
|
||||
rpmsg_find_device
|
||||
@@ -2492,6 +2497,7 @@
|
||||
snd_soc_bytes_info_ext
|
||||
snd_soc_bytes_tlv_callback
|
||||
snd_soc_card_jack_new
|
||||
snd_soc_cnew
|
||||
snd_soc_component_exit_regmap
|
||||
snd_soc_component_init_regmap
|
||||
snd_soc_component_read
|
||||
|
||||
@@ -76,6 +76,7 @@
|
||||
__bitmap_andnot
|
||||
__bitmap_clear
|
||||
__bitmap_equal
|
||||
bitmap_find_free_region
|
||||
bitmap_find_next_zero_area_off
|
||||
bitmap_free
|
||||
bitmap_from_arr32
|
||||
@@ -84,6 +85,7 @@
|
||||
bitmap_parselist
|
||||
bitmap_parse_user
|
||||
bitmap_print_to_pagebuf
|
||||
bitmap_release_region
|
||||
__bitmap_set
|
||||
__bitmap_subset
|
||||
bitmap_to_arr32
|
||||
@@ -367,6 +369,7 @@
|
||||
dev_fetch_sw_netstats
|
||||
devfreq_add_device
|
||||
devfreq_add_governor
|
||||
devfreq_get_devfreq_by_phandle
|
||||
devfreq_monitor_resume
|
||||
devfreq_monitor_start
|
||||
devfreq_monitor_stop
|
||||
@@ -573,6 +576,7 @@
|
||||
dma_direct_free
|
||||
dmaengine_unmap_put
|
||||
dma_fence_add_callback
|
||||
dma_fence_allocate_private_stub
|
||||
dma_fence_array_create
|
||||
dma_fence_array_ops
|
||||
dma_fence_context_alloc
|
||||
@@ -1356,6 +1360,7 @@
|
||||
mbox_controller_unregister
|
||||
mbox_free_channel
|
||||
mbox_request_channel
|
||||
mbox_request_channel_byname
|
||||
mbox_send_message
|
||||
memchr
|
||||
memchr_inv
|
||||
@@ -1520,6 +1525,7 @@
|
||||
of_get_parent
|
||||
of_get_property
|
||||
of_get_regulator_init_data
|
||||
of_graph_get_endpoint_by_regs
|
||||
of_graph_get_next_endpoint
|
||||
of_graph_get_port_parent
|
||||
of_graph_get_remote_endpoint
|
||||
@@ -2303,6 +2309,7 @@
|
||||
teo_cpu_get_util_threshold
|
||||
teo_cpu_set_util_threshold
|
||||
thermal_cdev_update
|
||||
thermal_cooling_device_register
|
||||
thermal_cooling_device_unregister
|
||||
thermal_of_cooling_device_register
|
||||
thermal_pressure
|
||||
@@ -2347,6 +2354,7 @@
|
||||
__traceiter_android_rvh_irqs_enable
|
||||
__traceiter_android_rvh_madvise_pageout_begin
|
||||
__traceiter_android_rvh_madvise_pageout_end
|
||||
__traceiter_android_rvh_mapping_shrinkable
|
||||
__traceiter_android_rvh_meminfo_proc_show
|
||||
__traceiter_android_rvh_post_init_entity_util_avg
|
||||
__traceiter_android_rvh_preempt_disable
|
||||
@@ -2366,6 +2374,7 @@
|
||||
__traceiter_android_rvh_set_user_nice
|
||||
__traceiter_android_rvh_set_user_nice_locked
|
||||
__traceiter_android_rvh_tick_entry
|
||||
__traceiter_android_rvh_try_to_wake_up_success
|
||||
__traceiter_android_rvh_typec_tcpci_get_vbus
|
||||
__traceiter_android_rvh_uclamp_eff_get
|
||||
__traceiter_android_rvh_ufs_complete_init
|
||||
@@ -2376,6 +2385,7 @@
|
||||
__traceiter_android_rvh_update_misfit_status
|
||||
__traceiter_android_rvh_update_rt_rq_load_avg
|
||||
__traceiter_android_rvh_usb_dev_suspend
|
||||
__traceiter_android_rvh_util_est_update
|
||||
__traceiter_android_rvh_util_fits_cpu
|
||||
__traceiter_android_vh_arch_set_freq_scale
|
||||
__traceiter_android_vh_audio_usb_offload_connect
|
||||
@@ -2393,12 +2403,14 @@
|
||||
__traceiter_android_vh_meminfo_proc_show
|
||||
__traceiter_android_vh_mm_compaction_begin
|
||||
__traceiter_android_vh_mm_compaction_end
|
||||
__traceiter_android_vh_mm_kcompactd_cpu_online
|
||||
__traceiter_android_vh_prio_inheritance
|
||||
__traceiter_android_vh_prio_restore
|
||||
__traceiter_android_vh_resume_end
|
||||
__traceiter_android_vh_rmqueue
|
||||
__traceiter_android_vh_scheduler_tick
|
||||
__traceiter_android_vh_setscheduler_uclamp
|
||||
__traceiter_android_vh_set_task_comm
|
||||
__traceiter_android_vh_si_meminfo_adjust
|
||||
__traceiter_android_vh_sound_usb_support_cpu_suspend
|
||||
__traceiter_android_vh_sysrq_crash
|
||||
@@ -2420,6 +2432,7 @@
|
||||
__traceiter_android_vh_ufs_update_sysfs
|
||||
__traceiter_android_vh_usb_dev_resume
|
||||
__traceiter_android_vh_use_amu_fie
|
||||
__traceiter_android_vh_vmscan_kswapd_done
|
||||
__traceiter_clock_set_rate
|
||||
__traceiter_cma_alloc_finish
|
||||
__traceiter_cma_alloc_start
|
||||
@@ -2438,6 +2451,7 @@
|
||||
__traceiter_mmap_lock_start_locking
|
||||
__traceiter_mm_vmscan_direct_reclaim_begin
|
||||
__traceiter_mm_vmscan_direct_reclaim_end
|
||||
__traceiter_mm_vmscan_kswapd_wake
|
||||
__traceiter_pelt_cfs_tp
|
||||
__traceiter_pelt_dl_tp
|
||||
__traceiter_pelt_irq_tp
|
||||
@@ -2475,6 +2489,7 @@
|
||||
__tracepoint_android_rvh_irqs_enable
|
||||
__tracepoint_android_rvh_madvise_pageout_begin
|
||||
__tracepoint_android_rvh_madvise_pageout_end
|
||||
__tracepoint_android_rvh_mapping_shrinkable
|
||||
__tracepoint_android_rvh_meminfo_proc_show
|
||||
__tracepoint_android_rvh_post_init_entity_util_avg
|
||||
__tracepoint_android_rvh_preempt_disable
|
||||
@@ -2494,6 +2509,7 @@
|
||||
__tracepoint_android_rvh_set_user_nice
|
||||
__tracepoint_android_rvh_set_user_nice_locked
|
||||
__tracepoint_android_rvh_tick_entry
|
||||
__tracepoint_android_rvh_try_to_wake_up_success
|
||||
__tracepoint_android_rvh_typec_tcpci_get_vbus
|
||||
__tracepoint_android_rvh_uclamp_eff_get
|
||||
__tracepoint_android_rvh_ufs_complete_init
|
||||
@@ -2504,6 +2520,7 @@
|
||||
__tracepoint_android_rvh_update_misfit_status
|
||||
__tracepoint_android_rvh_update_rt_rq_load_avg
|
||||
__tracepoint_android_rvh_usb_dev_suspend
|
||||
__tracepoint_android_rvh_util_est_update
|
||||
__tracepoint_android_rvh_util_fits_cpu
|
||||
__tracepoint_android_vh_arch_set_freq_scale
|
||||
__tracepoint_android_vh_audio_usb_offload_connect
|
||||
@@ -2521,12 +2538,14 @@
|
||||
__tracepoint_android_vh_meminfo_proc_show
|
||||
__tracepoint_android_vh_mm_compaction_begin
|
||||
__tracepoint_android_vh_mm_compaction_end
|
||||
__tracepoint_android_vh_mm_kcompactd_cpu_online
|
||||
__tracepoint_android_vh_prio_inheritance
|
||||
__tracepoint_android_vh_prio_restore
|
||||
__tracepoint_android_vh_resume_end
|
||||
__tracepoint_android_vh_rmqueue
|
||||
__tracepoint_android_vh_scheduler_tick
|
||||
__tracepoint_android_vh_setscheduler_uclamp
|
||||
__tracepoint_android_vh_set_task_comm
|
||||
__tracepoint_android_vh_si_meminfo_adjust
|
||||
__tracepoint_android_vh_sound_usb_support_cpu_suspend
|
||||
__tracepoint_android_vh_sysrq_crash
|
||||
@@ -2548,6 +2567,7 @@
|
||||
__tracepoint_android_vh_ufs_update_sysfs
|
||||
__tracepoint_android_vh_usb_dev_resume
|
||||
__tracepoint_android_vh_use_amu_fie
|
||||
__tracepoint_android_vh_vmscan_kswapd_done
|
||||
__tracepoint_clock_set_rate
|
||||
__tracepoint_cma_alloc_finish
|
||||
__tracepoint_cma_alloc_start
|
||||
@@ -2566,6 +2586,7 @@
|
||||
__tracepoint_mmap_lock_start_locking
|
||||
__tracepoint_mm_vmscan_direct_reclaim_begin
|
||||
__tracepoint_mm_vmscan_direct_reclaim_end
|
||||
__tracepoint_mm_vmscan_kswapd_wake
|
||||
__tracepoint_pelt_cfs_tp
|
||||
__tracepoint_pelt_dl_tp
|
||||
__tracepoint_pelt_irq_tp
|
||||
@@ -2793,6 +2814,7 @@
|
||||
vmf_insert_pfn_prot
|
||||
vm_iomap_memory
|
||||
vm_node_stat
|
||||
vm_unmapped_area
|
||||
vm_zone_stat
|
||||
vprintk
|
||||
vprintk_emit
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
__arch_copy_from_user
|
||||
__arch_copy_to_user
|
||||
arch_freq_scale
|
||||
arch_invalidate_pmem
|
||||
arch_timer_read_counter
|
||||
argv_free
|
||||
argv_split
|
||||
@@ -1326,6 +1327,7 @@
|
||||
gro_cells_destroy
|
||||
gro_cells_init
|
||||
gro_cells_receive
|
||||
groups_free
|
||||
h4_recv_buf
|
||||
handle_bad_irq
|
||||
handle_edge_irq
|
||||
@@ -3444,6 +3446,7 @@
|
||||
__traceiter_android_vh_ftrace_size_check
|
||||
__traceiter_android_vh_gic_v3_suspend
|
||||
__traceiter_android_vh_hibernate_save_cmp_len
|
||||
__traceiter_android_vh_hibernate_state
|
||||
__traceiter_android_vh_hibernated_do_mem_alloc
|
||||
__traceiter_android_vh_ignore_dmabuf_vmap_bounds
|
||||
__traceiter_android_vh_init_aes_encrypt
|
||||
@@ -3596,6 +3599,7 @@
|
||||
__tracepoint_android_vh_ftrace_size_check
|
||||
__tracepoint_android_vh_gic_v3_suspend
|
||||
__tracepoint_android_vh_hibernate_save_cmp_len
|
||||
__tracepoint_android_vh_hibernate_state
|
||||
__tracepoint_android_vh_hibernated_do_mem_alloc
|
||||
__tracepoint_android_vh_ignore_dmabuf_vmap_bounds
|
||||
__tracepoint_android_vh_init_aes_encrypt
|
||||
|
||||
@@ -200,6 +200,7 @@
|
||||
devm_clk_bulk_get
|
||||
devm_clk_bulk_get_all
|
||||
devm_clk_get
|
||||
devm_clk_get_enabled
|
||||
devm_clk_get_optional
|
||||
devm_clk_hw_register
|
||||
devm_clk_register
|
||||
@@ -252,6 +253,7 @@
|
||||
__devm_regmap_init_i2c
|
||||
__devm_regmap_init_mmio_clk
|
||||
devm_regulator_bulk_get
|
||||
devm_regulator_bulk_get_enable
|
||||
devm_regulator_get
|
||||
devm_regulator_get_optional
|
||||
devm_regulator_register
|
||||
@@ -1975,6 +1977,7 @@
|
||||
scsi_remove_device
|
||||
scsi_remove_host
|
||||
scsi_rescan_device
|
||||
scsi_resume_device
|
||||
scsi_schedule_eh
|
||||
scsi_sense_desc_find
|
||||
scsi_set_sense_field_pointer
|
||||
@@ -2118,6 +2121,7 @@
|
||||
devm_pci_remap_cfg_resource
|
||||
jiffies_to_usecs
|
||||
of_pci_get_max_link_speed
|
||||
of_pci_get_slot_power_limit
|
||||
pci_host_probe
|
||||
pci_remove_root_bus
|
||||
pci_stop_root_bus
|
||||
@@ -3023,3 +3027,9 @@
|
||||
# required by wlan_mt7663_usb.ko
|
||||
usb_anchor_empty
|
||||
usb_reset_endpoint
|
||||
|
||||
# required by dw_hdmi_qp.ko
|
||||
drm_edid_alloc
|
||||
drm_edid_read_ddc
|
||||
drm_edid_raw
|
||||
drm_edid_connector_update
|
||||
|
||||
55
android/abi_gki_aarch64_sunxi
Normal file
55
android/abi_gki_aarch64_sunxi
Normal file
@@ -0,0 +1,55 @@
|
||||
[abi_symbol_list]
|
||||
arp_create
|
||||
clk_unregister_gate
|
||||
clk_unregister_fixed_factor
|
||||
dev_mc_add
|
||||
dev_mc_del
|
||||
dma_get_any_slave_channel
|
||||
dmam_pool_create
|
||||
drm_client_buffer_vmap
|
||||
drm_client_framebuffer_create
|
||||
drm_gem_fb_create_with_funcs
|
||||
drm_property_add_enum
|
||||
drm_vblank_work_init
|
||||
drm_vblank_work_schedule
|
||||
drm_vblank_work_cancel_sync
|
||||
drm_vblank_work_flush
|
||||
drm_warn_on_modeset_not_all_locked
|
||||
fat_time_fat2unix
|
||||
fat_time_unix2fat
|
||||
gpiochip_line_is_irq
|
||||
hwspin_lock_register
|
||||
hwspin_lock_unregister
|
||||
init_on_alloc
|
||||
iio_map_array_register
|
||||
iio_map_array_unregister
|
||||
ioport_resource
|
||||
irq_setup_alt_chip
|
||||
ir_raw_event_store
|
||||
ir_raw_event_handle
|
||||
of_io_request_and_map
|
||||
of_clk_hw_register
|
||||
pinctrl_gpio_set_config
|
||||
phy_queue_state_machine
|
||||
phy_speed_to_str
|
||||
rc_map_register
|
||||
rc_map_unregister
|
||||
rc_keydown
|
||||
reset_control_status
|
||||
skb_append
|
||||
snd_dmaengine_pcm_close_release_chan
|
||||
snd_dmaengine_pcm_get_chan
|
||||
snd_dmaengine_pcm_open
|
||||
snd_dmaengine_pcm_pointer
|
||||
snd_dmaengine_pcm_trigger
|
||||
spi_unregister_device
|
||||
v4l2_ctrl_cluster
|
||||
v4l2_g_ctrl
|
||||
v4l2_i2c_new_subdev
|
||||
vb2_dma_contig_set_max_seg_size
|
||||
__media_entity_setup_link
|
||||
__traceiter_dwc3_readl
|
||||
__traceiter_dwc3_writel
|
||||
__tracepoint_dwc3_readl
|
||||
__tracepoint_dwc3_writel
|
||||
|
||||
1567
android/abi_gki_aarch64_telechips
Normal file
1567
android/abi_gki_aarch64_telechips
Normal file
File diff suppressed because it is too large
Load Diff
@@ -3,3 +3,6 @@
|
||||
# for type visibility
|
||||
ANDROID_GKI_struct_dwc3
|
||||
ANDROID_GKI_struct_kernel_all_info
|
||||
|
||||
# symbol no longer needed
|
||||
serial8250_handle_irq
|
||||
|
||||
@@ -408,6 +408,8 @@
|
||||
__traceiter_android_vh_mmap_region
|
||||
__traceiter_android_vh_mutex_wait_finish
|
||||
__traceiter_android_vh_mutex_wait_start
|
||||
__traceiter_android_vh_oom_swapmem_gather_finish
|
||||
__traceiter_android_vh_oom_swapmem_gather_init
|
||||
__traceiter_android_vh_percpu_rwsem_down_read
|
||||
__traceiter_android_vh_percpu_rwsem_up_write
|
||||
__traceiter_android_vh_printk_hotplug
|
||||
@@ -428,6 +430,9 @@
|
||||
__traceiter_android_vh_shmem_swapin_folio
|
||||
__traceiter_android_vh_show_resume_epoch_val
|
||||
__traceiter_android_vh_show_suspend_epoch_val
|
||||
__traceiter_android_vh_swapmem_gather_add_bypass
|
||||
__traceiter_android_vh_swapmem_gather_finish
|
||||
__traceiter_android_vh_swapmem_gather_init
|
||||
__traceiter_android_vh_sysrq_crash
|
||||
__traceiter_android_vh_timer_calc_index
|
||||
__traceiter_android_vh_try_to_freeze_todo
|
||||
@@ -513,6 +518,8 @@
|
||||
__tracepoint_android_rvh_is_cpu_allowed
|
||||
__tracepoint_android_rvh_migrate_queued_task
|
||||
__tracepoint_android_rvh_new_task_stats
|
||||
__tracepoint_android_vh_oom_swapmem_gather_finish
|
||||
__tracepoint_android_vh_oom_swapmem_gather_init
|
||||
__tracepoint_android_rvh_panic_unhandled
|
||||
__tracepoint_android_rvh_percpu_rwsem_wait_complete
|
||||
__tracepoint_android_rvh_pick_next_entity
|
||||
@@ -546,6 +553,9 @@
|
||||
__tracepoint_android_rvh_setscheduler
|
||||
__tracepoint_android_rvh_shmem_get_folio
|
||||
__tracepoint_android_rvh_show_max_freq
|
||||
__tracepoint_android_vh_swapmem_gather_add_bypass
|
||||
__tracepoint_android_vh_swapmem_gather_finish
|
||||
__tracepoint_android_vh_swapmem_gather_init
|
||||
__tracepoint_android_rvh_tick_entry
|
||||
__tracepoint_android_rvh_try_to_wake_up
|
||||
__tracepoint_android_rvh_try_to_wake_up_success
|
||||
|
||||
@@ -373,6 +373,9 @@
|
||||
pci_sriov_set_totalvfs
|
||||
pci_num_vf
|
||||
|
||||
# required by shrink memory module
|
||||
shrink_slab
|
||||
|
||||
#required by cifs.ko
|
||||
add_swap_extent
|
||||
asn1_ber_decoder
|
||||
@@ -458,3 +461,23 @@
|
||||
__d_lookup_unhash_wake
|
||||
__fs_parse
|
||||
__filemap_get_folio
|
||||
|
||||
#required by mem_reclaim_ctl.ko
|
||||
__traceiter_android_vh_page_should_be_protected
|
||||
__tracepoint_android_vh_page_should_be_protected
|
||||
__traceiter_android_vh_page_referenced_check_bypass
|
||||
__tracepoint_android_vh_page_referenced_check_bypass
|
||||
__page_mapcount
|
||||
|
||||
#required by mi_async_reclaim.ko
|
||||
__traceiter_android_vh_handle_trylock_failed_folio
|
||||
__tracepoint_android_vh_handle_trylock_failed_folio
|
||||
__traceiter_android_vh_folio_trylock_set
|
||||
__tracepoint_android_vh_folio_trylock_set
|
||||
__traceiter_android_vh_folio_trylock_clear
|
||||
__tracepoint_android_vh_folio_trylock_clear
|
||||
__traceiter_android_vh_get_folio_trylock_result
|
||||
__tracepoint_android_vh_get_folio_trylock_result
|
||||
__traceiter_android_vh_do_folio_trylock
|
||||
__tracepoint_android_vh_do_folio_trylock
|
||||
reclaim_pages
|
||||
|
||||
@@ -22,6 +22,7 @@ bt_err_ratelimited
|
||||
bt_info
|
||||
bt_procfs_cleanup
|
||||
bt_procfs_init
|
||||
bt_sock_alloc
|
||||
bt_sock_ioctl
|
||||
bt_sock_link
|
||||
bt_sock_poll
|
||||
|
||||
@@ -9,6 +9,14 @@
|
||||
#
|
||||
source "arch/$(SRCARCH)/Kconfig"
|
||||
|
||||
config ARCH_CONFIGURES_CPU_MITIGATIONS
|
||||
bool
|
||||
|
||||
if !ARCH_CONFIGURES_CPU_MITIGATIONS
|
||||
config CPU_MITIGATIONS
|
||||
def_bool y
|
||||
endif
|
||||
|
||||
menu "General architecture-dependent options"
|
||||
|
||||
config CRASH_CORE
|
||||
|
||||
@@ -205,7 +205,6 @@
|
||||
};
|
||||
|
||||
gmac: ethernet@8000 {
|
||||
#interrupt-cells = <1>;
|
||||
compatible = "snps,dwmac";
|
||||
reg = <0x8000 0x2000>;
|
||||
interrupts = <10>;
|
||||
|
||||
@@ -293,7 +293,7 @@
|
||||
|
||||
regulator-state-standby {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-voltage = <1150000>;
|
||||
regulator-suspend-microvolt = <1150000>;
|
||||
regulator-mode = <4>;
|
||||
};
|
||||
|
||||
@@ -314,7 +314,7 @@
|
||||
|
||||
regulator-state-standby {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-voltage = <1050000>;
|
||||
regulator-suspend-microvolt = <1050000>;
|
||||
regulator-mode = <4>;
|
||||
};
|
||||
|
||||
@@ -331,7 +331,7 @@
|
||||
regulator-always-on;
|
||||
|
||||
regulator-state-standby {
|
||||
regulator-suspend-voltage = <1800000>;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
|
||||
@@ -346,7 +346,7 @@
|
||||
regulator-max-microvolt = <3700000>;
|
||||
|
||||
regulator-state-standby {
|
||||
regulator-suspend-voltage = <1800000>;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
&keypad {
|
||||
samsung,keypad-num-rows = <2>;
|
||||
samsung,keypad-num-columns = <8>;
|
||||
linux,keypad-no-autorepeat;
|
||||
linux,input-no-autorepeat;
|
||||
wakeup-source;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&keypad_rows &keypad_cols>;
|
||||
|
||||
@@ -448,7 +448,7 @@
|
||||
&keypad {
|
||||
samsung,keypad-num-rows = <3>;
|
||||
samsung,keypad-num-columns = <2>;
|
||||
linux,keypad-no-autorepeat;
|
||||
linux,input-no-autorepeat;
|
||||
wakeup-source;
|
||||
pinctrl-0 = <&keypad_rows &keypad_cols>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
&keypad {
|
||||
samsung,keypad-num-rows = <3>;
|
||||
samsung,keypad-num-columns = <8>;
|
||||
linux,keypad-no-autorepeat;
|
||||
linux,input-no-autorepeat;
|
||||
wakeup-source;
|
||||
pinctrl-0 = <&keypad_rows &keypad_cols>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
@@ -231,6 +231,7 @@
|
||||
pinctrl-0 = <&hdmii2c_xfer>, <&hdmi_hpd>;
|
||||
power-domains = <&power RK3066_PD_VIO>;
|
||||
rockchip,grf = <&grf>;
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
|
||||
ports {
|
||||
|
||||
@@ -110,6 +110,7 @@ CONFIG_DRM_PANEL_LVDS=y
|
||||
CONFIG_DRM_PANEL_SIMPLE=y
|
||||
CONFIG_DRM_PANEL_EDP=y
|
||||
CONFIG_DRM_SIMPLE_BRIDGE=y
|
||||
CONFIG_DRM_DW_HDMI=y
|
||||
CONFIG_DRM_LIMA=y
|
||||
CONFIG_FB_SIMPLE=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
|
||||
@@ -127,6 +127,10 @@ cpu_resume_after_mmu:
|
||||
instr_sync
|
||||
#endif
|
||||
bl cpu_init @ restore the und/abt/irq banked regs
|
||||
#if defined(CONFIG_KASAN) && defined(CONFIG_KASAN_STACK)
|
||||
mov r0, sp
|
||||
bl kasan_unpoison_task_stack_below
|
||||
#endif
|
||||
mov r0, #0 @ return zero on success
|
||||
ldmfd sp!, {r4 - r11, pc}
|
||||
ENDPROC(cpu_resume_after_mmu)
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
#include <linux/platform_data/spi-omap2-mcspi.h>
|
||||
#include <linux/platform_data/mmc-omap.h>
|
||||
#include <linux/mfd/menelaus.h>
|
||||
#include <sound/tlv320aic3x.h>
|
||||
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach-types.h>
|
||||
@@ -567,10 +566,6 @@ struct menelaus_platform_data n8x0_menelaus_platform_data = {
|
||||
.late_init = n8x0_menelaus_late_init,
|
||||
};
|
||||
|
||||
struct aic3x_pdata n810_aic33_data = {
|
||||
.gpio_reset = 118,
|
||||
};
|
||||
|
||||
static int __init n8x0_late_initcall(void)
|
||||
{
|
||||
if (!board_caps)
|
||||
|
||||
@@ -2,12 +2,10 @@
|
||||
#ifndef __OMAP_COMMON_BOARD_DEVICES__
|
||||
#define __OMAP_COMMON_BOARD_DEVICES__
|
||||
|
||||
#include <sound/tlv320aic3x.h>
|
||||
#include <linux/mfd/menelaus.h>
|
||||
|
||||
void *n8x0_legacy_init(void);
|
||||
|
||||
extern struct menelaus_platform_data n8x0_menelaus_platform_data;
|
||||
extern struct aic3x_pdata n810_aic33_data;
|
||||
|
||||
#endif /* __OMAP_COMMON_BOARD_DEVICES__ */
|
||||
|
||||
@@ -440,7 +440,6 @@ static struct of_dev_auxdata omap_auxdata_lookup[] = {
|
||||
#ifdef CONFIG_MACH_NOKIA_N8X0
|
||||
OF_DEV_AUXDATA("ti,omap2420-mmc", 0x4809c000, "mmci-omap.0", NULL),
|
||||
OF_DEV_AUXDATA("menelaus", 0x72, "1-0072", &n8x0_menelaus_platform_data),
|
||||
OF_DEV_AUXDATA("tlv320aic3x", 0x18, "2-0018", &n810_aic33_data),
|
||||
#endif
|
||||
#ifdef CONFIG_ARCH_OMAP3
|
||||
OF_DEV_AUXDATA("ti,omap2-iommu", 0x5d000000, "5d000000.mmu",
|
||||
|
||||
@@ -1756,7 +1756,6 @@ config ARM64_LSE_ATOMICS
|
||||
|
||||
config ARM64_USE_LSE_ATOMICS
|
||||
bool "Atomic instructions"
|
||||
depends on JUMP_LABEL
|
||||
default y
|
||||
help
|
||||
As part of the Large System Extensions, ARMv8.1 introduces new
|
||||
|
||||
@@ -61,10 +61,15 @@
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
pwrc: power-controller {
|
||||
compatible = "amlogic,meson-s4-pwrc";
|
||||
#power-domain-cells = <1>;
|
||||
status = "okay";
|
||||
firmware {
|
||||
sm: secure-monitor {
|
||||
compatible = "amlogic,meson-gxbb-sm";
|
||||
|
||||
pwrc: power-controller {
|
||||
compatible = "amlogic,meson-s4-pwrc";
|
||||
#power-domain-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
soc {
|
||||
|
||||
@@ -38,8 +38,8 @@ conn_subsys: bus@5b000000 {
|
||||
interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
|
||||
reg = <0x5b010000 0x10000>;
|
||||
clocks = <&sdhc0_lpcg IMX_LPCG_CLK_4>,
|
||||
<&sdhc0_lpcg IMX_LPCG_CLK_0>,
|
||||
<&sdhc0_lpcg IMX_LPCG_CLK_5>;
|
||||
<&sdhc0_lpcg IMX_LPCG_CLK_5>,
|
||||
<&sdhc0_lpcg IMX_LPCG_CLK_0>;
|
||||
clock-names = "ipg", "ahb", "per";
|
||||
power-domains = <&pd IMX_SC_R_SDHC_0>;
|
||||
status = "disabled";
|
||||
@@ -49,8 +49,8 @@ conn_subsys: bus@5b000000 {
|
||||
interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
|
||||
reg = <0x5b020000 0x10000>;
|
||||
clocks = <&sdhc1_lpcg IMX_LPCG_CLK_4>,
|
||||
<&sdhc1_lpcg IMX_LPCG_CLK_0>,
|
||||
<&sdhc1_lpcg IMX_LPCG_CLK_5>;
|
||||
<&sdhc1_lpcg IMX_LPCG_CLK_5>,
|
||||
<&sdhc1_lpcg IMX_LPCG_CLK_0>;
|
||||
clock-names = "ipg", "ahb", "per";
|
||||
power-domains = <&pd IMX_SC_R_SDHC_1>;
|
||||
fsl,tuning-start-tap = <20>;
|
||||
@@ -62,8 +62,8 @@ conn_subsys: bus@5b000000 {
|
||||
interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
|
||||
reg = <0x5b030000 0x10000>;
|
||||
clocks = <&sdhc2_lpcg IMX_LPCG_CLK_4>,
|
||||
<&sdhc2_lpcg IMX_LPCG_CLK_0>,
|
||||
<&sdhc2_lpcg IMX_LPCG_CLK_5>;
|
||||
<&sdhc2_lpcg IMX_LPCG_CLK_5>,
|
||||
<&sdhc2_lpcg IMX_LPCG_CLK_0>;
|
||||
clock-names = "ipg", "ahb", "per";
|
||||
power-domains = <&pd IMX_SC_R_SDHC_2>;
|
||||
status = "disabled";
|
||||
|
||||
@@ -930,7 +930,7 @@
|
||||
/* Verdin GPIO_9_DSI (pulled-up as active-low) */
|
||||
pinctrl_gpio_9_dsi: gpio9dsigrp {
|
||||
fsl,pins =
|
||||
<MX8MM_IOMUXC_NAND_RE_B_GPIO3_IO15 0x146>; /* SODIMM 17 */
|
||||
<MX8MM_IOMUXC_NAND_RE_B_GPIO3_IO15 0x1c6>; /* SODIMM 17 */
|
||||
};
|
||||
|
||||
/* Verdin GPIO_10_DSI (pulled-up as active-low) */
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
regulator-name = "SD1_SPWR";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
gpio = <&lsio_gpio4 19 GPIO_ACTIVE_HIGH>;
|
||||
gpio = <&lsio_gpio4 7 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -60,7 +60,6 @@
|
||||
vmmc-supply = <®_usdhc2_vmmc>;
|
||||
bus-width = <4>;
|
||||
status = "okay";
|
||||
no-sdio;
|
||||
no-mmc;
|
||||
};
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
gic: interrupt-controller@f1001000 {
|
||||
compatible = "arm,gic-400";
|
||||
reg = <0x0 0xf1001000 0x0 0x1000>, /* GICD */
|
||||
<0x0 0xf1002000 0x0 0x100>; /* GICC */
|
||||
<0x0 0xf1002000 0x0 0x2000>; /* GICC */
|
||||
#address-cells = <0>;
|
||||
#interrupt-cells = <3>;
|
||||
interrupt-controller;
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
};
|
||||
|
||||
&pio {
|
||||
eth_default: eth_default {
|
||||
eth_default: eth-default-pins {
|
||||
tx_pins {
|
||||
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GBE_TXD3>,
|
||||
<MT2712_PIN_72_GBE_TXD2__FUNC_GBE_TXD2>,
|
||||
@@ -155,7 +155,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
eth_sleep: eth_sleep {
|
||||
eth_sleep: eth-sleep-pins {
|
||||
tx_pins {
|
||||
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GPIO71>,
|
||||
<MT2712_PIN_72_GBE_TXD2__FUNC_GPIO72>,
|
||||
@@ -181,14 +181,14 @@
|
||||
};
|
||||
};
|
||||
|
||||
usb0_id_pins_float: usb0_iddig {
|
||||
usb0_id_pins_float: usb0-iddig-pins {
|
||||
pins_iddig {
|
||||
pinmux = <MT2712_PIN_12_IDDIG_P0__FUNC_IDDIG_A>;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
usb1_id_pins_float: usb1_iddig {
|
||||
usb1_id_pins_float: usb1-iddig-pins {
|
||||
pins_iddig {
|
||||
pinmux = <MT2712_PIN_14_IDDIG_P1__FUNC_IDDIG_B>;
|
||||
bias-pull-up;
|
||||
|
||||
@@ -249,10 +249,11 @@
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
|
||||
infracfg: syscon@10001000 {
|
||||
infracfg: clock-controller@10001000 {
|
||||
compatible = "mediatek,mt2712-infracfg", "syscon";
|
||||
reg = <0 0x10001000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
pericfg: syscon@10003000 {
|
||||
|
||||
@@ -251,7 +251,7 @@
|
||||
clock-names = "hif_sel";
|
||||
};
|
||||
|
||||
cir: cir@10009000 {
|
||||
cir: ir-receiver@10009000 {
|
||||
compatible = "mediatek,mt7622-cir";
|
||||
reg = <0 0x10009000 0 0x1000>;
|
||||
interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_LOW>;
|
||||
@@ -282,16 +282,14 @@
|
||||
};
|
||||
};
|
||||
|
||||
apmixedsys: apmixedsys@10209000 {
|
||||
compatible = "mediatek,mt7622-apmixedsys",
|
||||
"syscon";
|
||||
apmixedsys: clock-controller@10209000 {
|
||||
compatible = "mediatek,mt7622-apmixedsys";
|
||||
reg = <0 0x10209000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
|
||||
topckgen: topckgen@10210000 {
|
||||
compatible = "mediatek,mt7622-topckgen",
|
||||
"syscon";
|
||||
topckgen: clock-controller@10210000 {
|
||||
compatible = "mediatek,mt7622-topckgen";
|
||||
reg = <0 0x10210000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
@@ -514,7 +512,6 @@
|
||||
<&pericfg CLK_PERI_AUXADC_PD>;
|
||||
clock-names = "therm", "auxadc";
|
||||
resets = <&pericfg MT7622_PERI_THERM_SW_RST>;
|
||||
reset-names = "therm";
|
||||
mediatek,auxadc = <&auxadc>;
|
||||
mediatek,apmixedsys = <&apmixedsys>;
|
||||
nvmem-cells = <&thermal_calibration>;
|
||||
@@ -734,9 +731,8 @@
|
||||
power-domains = <&scpsys MT7622_POWER_DOMAIN_WB>;
|
||||
};
|
||||
|
||||
ssusbsys: ssusbsys@1a000000 {
|
||||
compatible = "mediatek,mt7622-ssusbsys",
|
||||
"syscon";
|
||||
ssusbsys: clock-controller@1a000000 {
|
||||
compatible = "mediatek,mt7622-ssusbsys";
|
||||
reg = <0 0x1a000000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
@@ -793,9 +789,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
pciesys: pciesys@1a100800 {
|
||||
compatible = "mediatek,mt7622-pciesys",
|
||||
"syscon";
|
||||
pciesys: clock-controller@1a100800 {
|
||||
compatible = "mediatek,mt7622-pciesys";
|
||||
reg = <0 0x1a100800 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
@@ -921,12 +916,13 @@
|
||||
};
|
||||
};
|
||||
|
||||
hifsys: syscon@1af00000 {
|
||||
compatible = "mediatek,mt7622-hifsys", "syscon";
|
||||
hifsys: clock-controller@1af00000 {
|
||||
compatible = "mediatek,mt7622-hifsys";
|
||||
reg = <0 0x1af00000 0 0x70>;
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
|
||||
ethsys: syscon@1b000000 {
|
||||
ethsys: clock-controller@1b000000 {
|
||||
compatible = "mediatek,mt7622-ethsys",
|
||||
"syscon";
|
||||
reg = <0 0x1b000000 0 0x1000>;
|
||||
@@ -966,9 +962,7 @@
|
||||
};
|
||||
|
||||
eth: ethernet@1b100000 {
|
||||
compatible = "mediatek,mt7622-eth",
|
||||
"mediatek,mt2701-eth",
|
||||
"syscon";
|
||||
compatible = "mediatek,mt7622-eth";
|
||||
reg = <0 0x1b100000 0 0x20000>;
|
||||
interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_LOW>,
|
||||
<GIC_SPI 224 IRQ_TYPE_LEVEL_LOW>,
|
||||
|
||||
@@ -1554,6 +1554,7 @@
|
||||
compatible = "mediatek,mt8183-mfgcfg", "syscon";
|
||||
reg = <0 0x13000000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
power-domains = <&spm MT8183_POWER_DOMAIN_MFG_ASYNC>;
|
||||
};
|
||||
|
||||
gpu: gpu@13040000 {
|
||||
|
||||
@@ -903,7 +903,7 @@
|
||||
mt6315_6_vbuck1: vbuck1 {
|
||||
regulator-compatible = "vbuck1";
|
||||
regulator-name = "Vbcpu";
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1193750>;
|
||||
regulator-enable-ramp-delay = <256>;
|
||||
regulator-allowed-modes = <0 1 2>;
|
||||
@@ -913,7 +913,7 @@
|
||||
mt6315_6_vbuck3: vbuck3 {
|
||||
regulator-compatible = "vbuck3";
|
||||
regulator-name = "Vlcpu";
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1193750>;
|
||||
regulator-enable-ramp-delay = <256>;
|
||||
regulator-allowed-modes = <0 1 2>;
|
||||
@@ -930,7 +930,7 @@
|
||||
mt6315_7_vbuck1: vbuck1 {
|
||||
regulator-compatible = "vbuck1";
|
||||
regulator-name = "Vgpu";
|
||||
regulator-min-microvolt = <606250>;
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <800000>;
|
||||
regulator-enable-ramp-delay = <256>;
|
||||
regulator-allowed-modes = <0 1 2>;
|
||||
|
||||
@@ -1240,6 +1240,7 @@
|
||||
reg = <0 0x14001000 0 0x1000>;
|
||||
interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&mmsys CLK_MM_DISP_MUTEX0>;
|
||||
mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x1000 0x1000>;
|
||||
mediatek,gce-events = <CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_0>,
|
||||
<CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_1>;
|
||||
power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
|
||||
|
||||
@@ -845,7 +845,7 @@
|
||||
mt6315_6_vbuck1: vbuck1 {
|
||||
regulator-compatible = "vbuck1";
|
||||
regulator-name = "Vbcpu";
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1193750>;
|
||||
regulator-enable-ramp-delay = <256>;
|
||||
regulator-ramp-delay = <6250>;
|
||||
@@ -863,7 +863,7 @@
|
||||
mt6315_7_vbuck1: vbuck1 {
|
||||
regulator-compatible = "vbuck1";
|
||||
regulator-name = "Vgpu";
|
||||
regulator-min-microvolt = <625000>;
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1193750>;
|
||||
regulator-enable-ramp-delay = <256>;
|
||||
regulator-ramp-delay = <6250>;
|
||||
|
||||
@@ -1492,6 +1492,7 @@
|
||||
compatible = "mediatek,mt8195-vppsys0";
|
||||
reg = <0 0x14000000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0 0x1000>;
|
||||
};
|
||||
|
||||
smi_sub_common_vpp0_vpp1_2x1: smi@14010000 {
|
||||
@@ -1597,6 +1598,7 @@
|
||||
compatible = "mediatek,mt8195-vppsys1";
|
||||
reg = <0 0x14f00000 0 0x1000>;
|
||||
#clock-cells = <1>;
|
||||
mediatek,gce-client-reg = <&gce1 SUBSYS_14f0XXXX 0 0x1000>;
|
||||
};
|
||||
|
||||
larb5: larb@14f02000 {
|
||||
@@ -1982,6 +1984,7 @@
|
||||
reg = <0 0x1c01a000 0 0x1000>;
|
||||
mboxes = <&gce0 0 CMDQ_THR_PRIO_4>;
|
||||
#clock-cells = <1>;
|
||||
mediatek,gce-client-reg = <&gce0 SUBSYS_1c01XXXX 0xa000 0x1000>;
|
||||
};
|
||||
|
||||
larb20: larb@1b010000 {
|
||||
@@ -2085,6 +2088,7 @@
|
||||
interrupts = <GIC_SPI 658 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
|
||||
clocks = <&vdosys0 CLK_VDO0_DISP_MUTEX0>;
|
||||
mediatek,gce-client-reg = <&gce0 SUBSYS_1c01XXXX 0x6000 0x1000>;
|
||||
mediatek,gce-events = <CMDQ_EVENT_VDO0_DISP_STREAM_DONE_0>;
|
||||
};
|
||||
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
compatible = "nvidia,norrin", "nvidia,tegra132", "nvidia,tegra124";
|
||||
|
||||
aliases {
|
||||
rtc0 = "/i2c@7000d000/as3722@40";
|
||||
rtc1 = "/rtc@7000e000";
|
||||
rtc0 = &as3722;
|
||||
rtc1 = &tegra_rtc;
|
||||
serial0 = &uarta;
|
||||
};
|
||||
|
||||
|
||||
@@ -579,7 +579,7 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
rtc@7000e000 {
|
||||
tegra_rtc: rtc@7000e000 {
|
||||
compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc";
|
||||
reg = <0x0 0x7000e000 0x0 0x100>;
|
||||
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
vddrf-supply = <&vreg_l1_1p3>;
|
||||
vddch0-supply = <&vdd_ch0_3p3>;
|
||||
|
||||
local-bd-address = [ 02 00 00 00 5a ad ];
|
||||
local-bd-address = [ 00 00 00 00 00 00 ];
|
||||
|
||||
max-speed = <3200000>;
|
||||
};
|
||||
|
||||
@@ -372,6 +372,16 @@
|
||||
};
|
||||
};
|
||||
|
||||
&pmm8155au_1_gpios {
|
||||
pmm8155au_1_sdc2_cd: sdc2-cd-default-state {
|
||||
pins = "gpio4";
|
||||
function = "normal";
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
power-source = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&qupv3_id_1 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -389,10 +399,10 @@
|
||||
&sdhc_2 {
|
||||
status = "okay";
|
||||
|
||||
cd-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
|
||||
cd-gpios = <&pmm8155au_1_gpios 4 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&sdc2_on>;
|
||||
pinctrl-1 = <&sdc2_off>;
|
||||
pinctrl-0 = <&sdc2_on &pmm8155au_1_sdc2_cd>;
|
||||
pinctrl-1 = <&sdc2_off &pmm8155au_1_sdc2_cd>;
|
||||
vqmmc-supply = <&vreg_l13c_2p96>; /* IO line power */
|
||||
vmmc-supply = <&vreg_l17a_2p96>; /* Card power line */
|
||||
bus-width = <4>;
|
||||
@@ -488,120 +498,102 @@
|
||||
&tlmm {
|
||||
gpio-reserved-ranges = <0 4>;
|
||||
|
||||
sdc2_on: sdc2_on {
|
||||
clk {
|
||||
sdc2_on: sdc2-on-state {
|
||||
clk-pins {
|
||||
pins = "sdc2_clk";
|
||||
bias-disable; /* No pull */
|
||||
drive-strength = <16>; /* 16 MA */
|
||||
};
|
||||
|
||||
cmd {
|
||||
cmd-pins {
|
||||
pins = "sdc2_cmd";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <16>; /* 16 MA */
|
||||
};
|
||||
|
||||
data {
|
||||
data-pins {
|
||||
pins = "sdc2_data";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <16>; /* 16 MA */
|
||||
};
|
||||
|
||||
sd-cd {
|
||||
pins = "gpio96";
|
||||
function = "gpio";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <2>; /* 2 MA */
|
||||
};
|
||||
};
|
||||
|
||||
sdc2_off: sdc2_off {
|
||||
clk {
|
||||
sdc2_off: sdc2-off-state {
|
||||
clk-pins {
|
||||
pins = "sdc2_clk";
|
||||
bias-disable; /* No pull */
|
||||
drive-strength = <2>; /* 2 MA */
|
||||
};
|
||||
|
||||
cmd {
|
||||
cmd-pins {
|
||||
pins = "sdc2_cmd";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <2>; /* 2 MA */
|
||||
};
|
||||
|
||||
data {
|
||||
data-pins {
|
||||
pins = "sdc2_data";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <2>; /* 2 MA */
|
||||
};
|
||||
|
||||
sd-cd {
|
||||
pins = "gpio96";
|
||||
function = "gpio";
|
||||
bias-pull-up; /* pull up */
|
||||
drive-strength = <2>; /* 2 MA */
|
||||
};
|
||||
};
|
||||
|
||||
usb2phy_ac_en1_default: usb2phy_ac_en1_default {
|
||||
mux {
|
||||
pins = "gpio113";
|
||||
function = "usb2phy_ac";
|
||||
bias-disable;
|
||||
drive-strength = <2>;
|
||||
};
|
||||
usb2phy_ac_en1_default: usb2phy-ac-en1-default-state {
|
||||
pins = "gpio113";
|
||||
function = "usb2phy_ac";
|
||||
bias-disable;
|
||||
drive-strength = <2>;
|
||||
};
|
||||
|
||||
usb2phy_ac_en2_default: usb2phy_ac_en2_default {
|
||||
mux {
|
||||
pins = "gpio123";
|
||||
function = "usb2phy_ac";
|
||||
bias-disable;
|
||||
drive-strength = <2>;
|
||||
};
|
||||
usb2phy_ac_en2_default: usb2phy-ac-en2-default-state {
|
||||
pins = "gpio123";
|
||||
function = "usb2phy_ac";
|
||||
bias-disable;
|
||||
drive-strength = <2>;
|
||||
};
|
||||
|
||||
ethernet_defaults: ethernet-defaults {
|
||||
mdc {
|
||||
ethernet_defaults: ethernet-defaults-state {
|
||||
mdc-pins {
|
||||
pins = "gpio7";
|
||||
function = "rgmii";
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
mdio {
|
||||
mdio-pins {
|
||||
pins = "gpio59";
|
||||
function = "rgmii";
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
rgmii-rx {
|
||||
rgmii-rx-pins {
|
||||
pins = "gpio117", "gpio118", "gpio119", "gpio120", "gpio115", "gpio116";
|
||||
function = "rgmii";
|
||||
bias-disable;
|
||||
drive-strength = <2>;
|
||||
};
|
||||
|
||||
rgmii-tx {
|
||||
rgmii-tx-pins {
|
||||
pins = "gpio122", "gpio4", "gpio5", "gpio6", "gpio114", "gpio121";
|
||||
function = "rgmii";
|
||||
bias-pull-up;
|
||||
drive-strength = <16>;
|
||||
};
|
||||
|
||||
phy-intr {
|
||||
phy-intr-pins {
|
||||
pins = "gpio124";
|
||||
function = "emac_phy";
|
||||
bias-disable;
|
||||
drive-strength = <8>;
|
||||
};
|
||||
|
||||
pps {
|
||||
pps-pins {
|
||||
pins = "gpio81";
|
||||
function = "emac_pps";
|
||||
bias-disable;
|
||||
drive-strength = <8>;
|
||||
};
|
||||
|
||||
phy-reset {
|
||||
phy-reset-pins {
|
||||
pins = "gpio79";
|
||||
function = "gpio";
|
||||
bias-pull-up;
|
||||
|
||||
@@ -923,6 +923,8 @@ ap_spi_fp: &spi10 {
|
||||
vddrf-supply = <&pp1300_l2c>;
|
||||
vddch0-supply = <&pp3300_l10c>;
|
||||
max-speed = <3200000>;
|
||||
|
||||
qcom,local-bd-address-broken;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -475,7 +475,7 @@
|
||||
&tlmm {
|
||||
gpio-reserved-ranges = <126 4>;
|
||||
|
||||
da7280_intr_default: da7280-intr-default {
|
||||
da7280_intr_default: da7280-intr-default-state {
|
||||
pins = "gpio42";
|
||||
function = "gpio";
|
||||
bias-pull-up;
|
||||
|
||||
@@ -2284,422 +2284,302 @@
|
||||
#interrupt-cells = <2>;
|
||||
wakeup-parent = <&pdc>;
|
||||
|
||||
qup_i2c0_default: qup-i2c0-default {
|
||||
mux {
|
||||
pins = "gpio0", "gpio1";
|
||||
function = "qup0";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio0", "gpio1";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c0_default: qup-i2c0-default-state {
|
||||
pins = "gpio0", "gpio1";
|
||||
function = "qup0";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi0_default: qup-spi0-default {
|
||||
qup_spi0_default: qup-spi0-default-state {
|
||||
pins = "gpio0", "gpio1", "gpio2", "gpio3";
|
||||
function = "qup0";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c1_default: qup-i2c1-default {
|
||||
mux {
|
||||
pins = "gpio114", "gpio115";
|
||||
function = "qup1";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio114", "gpio115";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c1_default: qup-i2c1-default-state {
|
||||
pins = "gpio114", "gpio115";
|
||||
function = "qup1";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi1_default: qup-spi1-default {
|
||||
qup_spi1_default: qup-spi1-default-state {
|
||||
pins = "gpio114", "gpio115", "gpio116", "gpio117";
|
||||
function = "qup1";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c2_default: qup-i2c2-default {
|
||||
mux {
|
||||
pins = "gpio126", "gpio127";
|
||||
function = "qup2";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio126", "gpio127";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c2_default: qup-i2c2-default-state {
|
||||
pins = "gpio126", "gpio127";
|
||||
function = "qup2";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi2_default: qup-spi2-default {
|
||||
qup_spi2_default: qup-spi2-default-state {
|
||||
pins = "gpio126", "gpio127", "gpio128", "gpio129";
|
||||
function = "qup2";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c3_default: qup-i2c3-default {
|
||||
mux {
|
||||
pins = "gpio144", "gpio145";
|
||||
function = "qup3";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio144", "gpio145";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c3_default: qup-i2c3-default-state {
|
||||
pins = "gpio144", "gpio145";
|
||||
function = "qup3";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi3_default: qup-spi3-default {
|
||||
qup_spi3_default: qup-spi3-default-state {
|
||||
pins = "gpio144", "gpio145", "gpio146", "gpio147";
|
||||
function = "qup3";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c4_default: qup-i2c4-default {
|
||||
mux {
|
||||
pins = "gpio51", "gpio52";
|
||||
function = "qup4";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio51", "gpio52";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c4_default: qup-i2c4-default-state {
|
||||
pins = "gpio51", "gpio52";
|
||||
function = "qup4";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi4_default: qup-spi4-default {
|
||||
qup_spi4_default: qup-spi4-default-state {
|
||||
pins = "gpio51", "gpio52", "gpio53", "gpio54";
|
||||
function = "qup4";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c5_default: qup-i2c5-default {
|
||||
mux {
|
||||
pins = "gpio121", "gpio122";
|
||||
function = "qup5";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio121", "gpio122";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c5_default: qup-i2c5-default-state {
|
||||
pins = "gpio121", "gpio122";
|
||||
function = "qup5";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi5_default: qup-spi5-default {
|
||||
qup_spi5_default: qup-spi5-default-state {
|
||||
pins = "gpio119", "gpio120", "gpio121", "gpio122";
|
||||
function = "qup5";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c6_default: qup-i2c6-default {
|
||||
mux {
|
||||
pins = "gpio6", "gpio7";
|
||||
function = "qup6";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio6", "gpio7";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c6_default: qup-i2c6-default-state {
|
||||
pins = "gpio6", "gpio7";
|
||||
function = "qup6";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi6_default: qup-spi6_default {
|
||||
qup_spi6_default: qup-spi6_default-state {
|
||||
pins = "gpio4", "gpio5", "gpio6", "gpio7";
|
||||
function = "qup6";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c7_default: qup-i2c7-default {
|
||||
mux {
|
||||
pins = "gpio98", "gpio99";
|
||||
function = "qup7";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio98", "gpio99";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c7_default: qup-i2c7-default-state {
|
||||
pins = "gpio98", "gpio99";
|
||||
function = "qup7";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi7_default: qup-spi7_default {
|
||||
qup_spi7_default: qup-spi7_default-state {
|
||||
pins = "gpio98", "gpio99", "gpio100", "gpio101";
|
||||
function = "qup7";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c8_default: qup-i2c8-default {
|
||||
mux {
|
||||
pins = "gpio88", "gpio89";
|
||||
function = "qup8";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio88", "gpio89";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c8_default: qup-i2c8-default-state {
|
||||
pins = "gpio88", "gpio89";
|
||||
function = "qup8";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi8_default: qup-spi8-default {
|
||||
qup_spi8_default: qup-spi8-default-state {
|
||||
pins = "gpio88", "gpio89", "gpio90", "gpio91";
|
||||
function = "qup8";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c9_default: qup-i2c9-default {
|
||||
mux {
|
||||
pins = "gpio39", "gpio40";
|
||||
function = "qup9";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio39", "gpio40";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c9_default: qup-i2c9-default-state {
|
||||
pins = "gpio39", "gpio40";
|
||||
function = "qup9";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi9_default: qup-spi9-default {
|
||||
qup_spi9_default: qup-spi9-default-state {
|
||||
pins = "gpio39", "gpio40", "gpio41", "gpio42";
|
||||
function = "qup9";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c10_default: qup-i2c10-default {
|
||||
mux {
|
||||
pins = "gpio9", "gpio10";
|
||||
function = "qup10";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio9", "gpio10";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c10_default: qup-i2c10-default-state {
|
||||
pins = "gpio9", "gpio10";
|
||||
function = "qup10";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi10_default: qup-spi10-default {
|
||||
qup_spi10_default: qup-spi10-default-state {
|
||||
pins = "gpio9", "gpio10", "gpio11", "gpio12";
|
||||
function = "qup10";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c11_default: qup-i2c11-default {
|
||||
mux {
|
||||
pins = "gpio94", "gpio95";
|
||||
function = "qup11";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio94", "gpio95";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c11_default: qup-i2c11-default-state {
|
||||
pins = "gpio94", "gpio95";
|
||||
function = "qup11";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi11_default: qup-spi11-default {
|
||||
qup_spi11_default: qup-spi11-default-state {
|
||||
pins = "gpio92", "gpio93", "gpio94", "gpio95";
|
||||
function = "qup11";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c12_default: qup-i2c12-default {
|
||||
mux {
|
||||
pins = "gpio83", "gpio84";
|
||||
function = "qup12";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio83", "gpio84";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c12_default: qup-i2c12-default-state {
|
||||
pins = "gpio83", "gpio84";
|
||||
function = "qup12";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi12_default: qup-spi12-default {
|
||||
qup_spi12_default: qup-spi12-default-state {
|
||||
pins = "gpio83", "gpio84", "gpio85", "gpio86";
|
||||
function = "qup12";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c13_default: qup-i2c13-default {
|
||||
mux {
|
||||
pins = "gpio43", "gpio44";
|
||||
function = "qup13";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio43", "gpio44";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c13_default: qup-i2c13-default-state {
|
||||
pins = "gpio43", "gpio44";
|
||||
function = "qup13";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi13_default: qup-spi13-default {
|
||||
qup_spi13_default: qup-spi13-default-state {
|
||||
pins = "gpio43", "gpio44", "gpio45", "gpio46";
|
||||
function = "qup13";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c14_default: qup-i2c14-default {
|
||||
mux {
|
||||
pins = "gpio47", "gpio48";
|
||||
function = "qup14";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio47", "gpio48";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c14_default: qup-i2c14-default-state {
|
||||
pins = "gpio47", "gpio48";
|
||||
function = "qup14";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi14_default: qup-spi14-default {
|
||||
qup_spi14_default: qup-spi14-default-state {
|
||||
pins = "gpio47", "gpio48", "gpio49", "gpio50";
|
||||
function = "qup14";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c15_default: qup-i2c15-default {
|
||||
mux {
|
||||
pins = "gpio27", "gpio28";
|
||||
function = "qup15";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio27", "gpio28";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c15_default: qup-i2c15-default-state {
|
||||
pins = "gpio27", "gpio28";
|
||||
function = "qup15";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi15_default: qup-spi15-default {
|
||||
qup_spi15_default: qup-spi15-default-state {
|
||||
pins = "gpio27", "gpio28", "gpio29", "gpio30";
|
||||
function = "qup15";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c16_default: qup-i2c16-default {
|
||||
mux {
|
||||
pins = "gpio86", "gpio85";
|
||||
function = "qup16";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio86", "gpio85";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c16_default: qup-i2c16-default-state {
|
||||
pins = "gpio86", "gpio85";
|
||||
function = "qup16";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi16_default: qup-spi16-default {
|
||||
qup_spi16_default: qup-spi16-default-state {
|
||||
pins = "gpio83", "gpio84", "gpio85", "gpio86";
|
||||
function = "qup16";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c17_default: qup-i2c17-default {
|
||||
mux {
|
||||
pins = "gpio55", "gpio56";
|
||||
function = "qup17";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio55", "gpio56";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c17_default: qup-i2c17-default-state {
|
||||
pins = "gpio55", "gpio56";
|
||||
function = "qup17";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi17_default: qup-spi17-default {
|
||||
qup_spi17_default: qup-spi17-default-state {
|
||||
pins = "gpio55", "gpio56", "gpio57", "gpio58";
|
||||
function = "qup17";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c18_default: qup-i2c18-default {
|
||||
mux {
|
||||
pins = "gpio23", "gpio24";
|
||||
function = "qup18";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio23", "gpio24";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c18_default: qup-i2c18-default-state {
|
||||
pins = "gpio23", "gpio24";
|
||||
function = "qup18";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi18_default: qup-spi18-default {
|
||||
qup_spi18_default: qup-spi18-default-state {
|
||||
pins = "gpio23", "gpio24", "gpio25", "gpio26";
|
||||
function = "qup18";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_i2c19_default: qup-i2c19-default {
|
||||
mux {
|
||||
pins = "gpio57", "gpio58";
|
||||
function = "qup19";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio57", "gpio58";
|
||||
drive-strength = <0x02>;
|
||||
bias-disable;
|
||||
};
|
||||
qup_i2c19_default: qup-i2c19-default-state {
|
||||
pins = "gpio57", "gpio58";
|
||||
function = "qup19";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
qup_spi19_default: qup-spi19-default {
|
||||
qup_spi19_default: qup-spi19-default-state {
|
||||
pins = "gpio55", "gpio56", "gpio57", "gpio58";
|
||||
function = "qup19";
|
||||
drive-strength = <6>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pcie0_default_state: pcie0-default {
|
||||
perst {
|
||||
pcie0_default_state: pcie0-default-state {
|
||||
perst-pins {
|
||||
pins = "gpio35";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
clkreq {
|
||||
clkreq-pins {
|
||||
pins = "gpio36";
|
||||
function = "pci_e0";
|
||||
drive-strength = <2>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
wake {
|
||||
wake-pins {
|
||||
pins = "gpio37";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
@@ -2707,22 +2587,22 @@
|
||||
};
|
||||
};
|
||||
|
||||
pcie1_default_state: pcie1-default {
|
||||
perst {
|
||||
pcie1_default_state: pcie1-default-state {
|
||||
perst-pins {
|
||||
pins = "gpio102";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
clkreq {
|
||||
clkreq-pins {
|
||||
pins = "gpio103";
|
||||
function = "pci_e1";
|
||||
drive-strength = <2>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
wake {
|
||||
wake-pins {
|
||||
pins = "gpio104";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/leds/common.h>
|
||||
#include "rk3308.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -24,17 +26,21 @@
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&green_led_gio>, <&heartbeat_led_gpio>;
|
||||
pinctrl-0 = <&green_led>, <&heartbeat_led>;
|
||||
|
||||
green-led {
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
default-state = "on";
|
||||
function = LED_FUNCTION_POWER;
|
||||
gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
|
||||
label = "rockpis:green:power";
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
|
||||
blue-led {
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
default-state = "on";
|
||||
function = LED_FUNCTION_HEARTBEAT;
|
||||
gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
|
||||
label = "rockpis:blue:user";
|
||||
linux,default-trigger = "heartbeat";
|
||||
@@ -127,10 +133,12 @@
|
||||
};
|
||||
|
||||
&emmc {
|
||||
bus-width = <4>;
|
||||
cap-mmc-highspeed;
|
||||
mmc-hs200-1_8v;
|
||||
cap-sd-highspeed;
|
||||
no-sdio;
|
||||
non-removable;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd>;
|
||||
vmmc-supply = <&vcc_io>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -153,11 +161,11 @@
|
||||
pinctrl-0 = <&rtc_32k>;
|
||||
|
||||
leds {
|
||||
green_led_gio: green-led-gpio {
|
||||
green_led: green-led {
|
||||
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
|
||||
heartbeat_led_gpio: heartbeat-led-gpio {
|
||||
heartbeat_led: heartbeat-led {
|
||||
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -186,8 +186,8 @@
|
||||
rk805: pmic@18 {
|
||||
compatible = "rockchip,rk805";
|
||||
reg = <0x18>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "xin32k", "rk805-clkout2";
|
||||
gpio-controller;
|
||||
|
||||
@@ -794,6 +794,7 @@
|
||||
dma-names = "tx";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spdif_tx>;
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@@ -805,6 +806,7 @@
|
||||
clocks = <&cru SCLK_I2S_2CH>, <&cru HCLK_I2S_2CH>;
|
||||
dmas = <&dmac_bus 6>, <&dmac_bus 7>;
|
||||
dma-names = "tx", "rx";
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@@ -818,6 +820,7 @@
|
||||
dma-names = "tx", "rx";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2s_8ch_bus>;
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@@ -789,7 +789,6 @@
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
bus-scan-delay-ms = <1000>;
|
||||
ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>;
|
||||
num-lanes = <4>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
@@ -401,16 +401,22 @@
|
||||
gpio1830-supply = <&vcc_1v8>;
|
||||
};
|
||||
|
||||
&pmu_io_domains {
|
||||
status = "okay";
|
||||
pmu1830-supply = <&vcc_1v8>;
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
&pcie_clkreqn_cpm {
|
||||
rockchip,pins =
|
||||
<2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&q7_thermal_pin>;
|
||||
|
||||
gpios {
|
||||
q7_thermal_pin: q7-thermal-pin {
|
||||
rockchip,pins =
|
||||
<0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c8 {
|
||||
i2c8_xfer_a: i2c8-xfer {
|
||||
rockchip,pins =
|
||||
@@ -443,11 +449,20 @@
|
||||
usb3 {
|
||||
usb3_id: usb3-id {
|
||||
rockchip,pins =
|
||||
<1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
<1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pmu_io_domains {
|
||||
status = "okay";
|
||||
pmu1830-supply = <&vcc_1v8>;
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
/*
|
||||
* Signal integrity isn't great at 200MHz but 100MHz has proven stable
|
||||
|
||||
@@ -2181,6 +2181,7 @@
|
||||
hdmi: hdmi@ff940000 {
|
||||
compatible = "rockchip,rk3399-dw-hdmi";
|
||||
reg = <0x0 0xff940000 0x0 0x20000>;
|
||||
reg-io-width = <4>;
|
||||
interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&cru PCLK_HDMI_CTRL>,
|
||||
<&cru SCLK_HDMI_SFR>,
|
||||
@@ -2189,7 +2190,6 @@
|
||||
<&cru PLL_VPLL>;
|
||||
clock-names = "iahb", "isfr", "cec", "grf", "ref";
|
||||
power-domains = <&power RK3399_PD_HDCP>;
|
||||
reg-io-width = <4>;
|
||||
rockchip,grf = <&grf>;
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
@@ -2197,7 +2197,11 @@
|
||||
status = "disabled";
|
||||
|
||||
ports {
|
||||
hdmi_in: port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
hdmi_in: port@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
@@ -2210,6 +2214,10 @@
|
||||
remote-endpoint = <&vopl_out_hdmi>;
|
||||
};
|
||||
};
|
||||
|
||||
hdmi_out: port@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -290,7 +290,7 @@
|
||||
regulator-name = "vdd_gpu";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-min-microvolt = <500000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-init-microvolt = <900000>;
|
||||
regulator-ramp-delay = <6001>;
|
||||
|
||||
@@ -412,6 +412,8 @@
|
||||
|
||||
vccio_sd: LDO_REG5 {
|
||||
regulator-name = "vccio_sd";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
@@ -521,9 +523,9 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
switch@0 {
|
||||
switch@1f {
|
||||
compatible = "mediatek,mt7531";
|
||||
reg = <0>;
|
||||
reg = <0x1f>;
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
|
||||
@@ -402,7 +402,6 @@ CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=32
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=0
|
||||
CONFIG_SERIAL_8250_DW=y
|
||||
# CONFIG_SERIAL_8250_BCM7271 is not set
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
@@ -732,6 +731,7 @@ CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
|
||||
CONFIG_TRACE_MMIO_ACCESS=y
|
||||
CONFIG_CRC_CCITT=y
|
||||
CONFIG_XZ_DEC=y
|
||||
CONFIG_DMA_RESTRICTED_POOL=y
|
||||
CONFIG_DMA_CMA=y
|
||||
CONFIG_PRINTK_TIME=y
|
||||
CONFIG_PRINTK_CALLER=y
|
||||
@@ -751,7 +751,6 @@ CONFIG_UBSAN_LOCAL_BOUNDS=y
|
||||
CONFIG_PAGE_OWNER=y
|
||||
CONFIG_PAGE_PINNER=y
|
||||
CONFIG_PER_VMA_LOCK_STATS=y
|
||||
CONFIG_DEBUG_STACK_USAGE=y
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
CONFIG_KASAN=y
|
||||
CONFIG_KASAN_HW_TAGS=y
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
14470: .long 14471f - .; \
|
||||
_BUGVERBOSE_LOCATION(__FILE__, __LINE__) \
|
||||
.short flags; \
|
||||
.align 2; \
|
||||
.popsection; \
|
||||
14471:
|
||||
#else
|
||||
|
||||
@@ -85,6 +85,7 @@
|
||||
#define ARM_CPU_PART_CORTEX_X2 0xD48
|
||||
#define ARM_CPU_PART_NEOVERSE_N2 0xD49
|
||||
#define ARM_CPU_PART_CORTEX_A78C 0xD4B
|
||||
#define ARM_CPU_PART_NEOVERSE_V2 0xD4F
|
||||
|
||||
#define APM_CPU_PART_XGENE 0x000
|
||||
#define APM_CPU_VAR_POTENZA 0x00
|
||||
@@ -151,6 +152,7 @@
|
||||
#define MIDR_CORTEX_X2 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_X2)
|
||||
#define MIDR_NEOVERSE_N2 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_NEOVERSE_N2)
|
||||
#define MIDR_CORTEX_A78C MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A78C)
|
||||
#define MIDR_NEOVERSE_V2 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_NEOVERSE_V2)
|
||||
#define MIDR_THUNDERX MIDR_CPU_MODEL(ARM_CPU_IMP_CAVIUM, CAVIUM_CPU_PART_THUNDERX)
|
||||
#define MIDR_THUNDERX_81XX MIDR_CPU_MODEL(ARM_CPU_IMP_CAVIUM, CAVIUM_CPU_PART_THUNDERX_81XX)
|
||||
#define MIDR_THUNDERX_83XX MIDR_CPU_MODEL(ARM_CPU_IMP_CAVIUM, CAVIUM_CPU_PART_THUNDERX_83XX)
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
#include <linux/compiler_types.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/jump_label.h>
|
||||
#include <linux/stringify.h>
|
||||
#include <asm/alternative.h>
|
||||
#include <asm/alternative-macros.h>
|
||||
|
||||
@@ -840,7 +840,7 @@ __SYSCALL(__NR_pselect6_time64, compat_sys_pselect6_time64)
|
||||
#define __NR_ppoll_time64 414
|
||||
__SYSCALL(__NR_ppoll_time64, compat_sys_ppoll_time64)
|
||||
#define __NR_io_pgetevents_time64 416
|
||||
__SYSCALL(__NR_io_pgetevents_time64, sys_io_pgetevents)
|
||||
__SYSCALL(__NR_io_pgetevents_time64, compat_sys_io_pgetevents_time64)
|
||||
#define __NR_recvmmsg_time64 417
|
||||
__SYSCALL(__NR_recvmmsg_time64, compat_sys_recvmmsg_time64)
|
||||
#define __NR_mq_timedsend_time64 418
|
||||
|
||||
@@ -120,8 +120,10 @@ int arch_hibernation_header_save(void *addr, unsigned int max_size)
|
||||
hdr->ttbr1_el1 = __pa_symbol(swapper_pg_dir);
|
||||
hdr->reenter_kernel = _cpu_resume;
|
||||
|
||||
#ifdef CONFIG_ANDROID_VENDOR_OEM_DATA
|
||||
trace_android_vh_save_cpu_resume(&hdr->android_vendor_data1,
|
||||
__pa(cpu_resume));
|
||||
#endif
|
||||
|
||||
/* We can't use __hyp_get_vectors() because kvm may still be loaded */
|
||||
if (el2_reset_needed())
|
||||
|
||||
@@ -57,17 +57,15 @@ static void invoke_syscall(struct pt_regs *regs, unsigned int scno,
|
||||
syscall_set_return_value(current, regs, 0, ret);
|
||||
|
||||
/*
|
||||
* Ultimately, this value will get limited by KSTACK_OFFSET_MAX(),
|
||||
* but not enough for arm64 stack utilization comfort. To keep
|
||||
* reasonable stack head room, reduce the maximum offset to 9 bits.
|
||||
* This value will get limited by KSTACK_OFFSET_MAX(), which is 10
|
||||
* bits. The actual entropy will be further reduced by the compiler
|
||||
* when applying stack alignment constraints: the AAPCS mandates a
|
||||
* 16-byte aligned SP at function boundaries, which will remove the
|
||||
* 4 low bits from any entropy chosen here.
|
||||
*
|
||||
* The actual entropy will be further reduced by the compiler when
|
||||
* applying stack alignment constraints: the AAPCS mandates a
|
||||
* 16-byte (i.e. 4-bit) aligned SP at function boundaries.
|
||||
*
|
||||
* The resulting 5 bits of entropy is seen in SP[8:4].
|
||||
* The resulting 6 bits of entropy is seen in SP[9:4].
|
||||
*/
|
||||
choose_random_kstack_offset(get_random_u16() & 0x1FF);
|
||||
choose_random_kstack_offset(get_random_u16());
|
||||
}
|
||||
|
||||
static inline bool has_syscall_work(unsigned long flags)
|
||||
|
||||
@@ -252,6 +252,7 @@ static int set_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
|
||||
case PSR_AA32_MODE_SVC:
|
||||
case PSR_AA32_MODE_ABT:
|
||||
case PSR_AA32_MODE_UND:
|
||||
case PSR_AA32_MODE_SYS:
|
||||
if (!vcpu_el1_is_32bit(vcpu))
|
||||
return -EINVAL;
|
||||
break;
|
||||
@@ -272,7 +273,7 @@ static int set_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
|
||||
if (*vcpu_cpsr(vcpu) & PSR_MODE32_BIT) {
|
||||
int i, nr_reg;
|
||||
|
||||
switch (*vcpu_cpsr(vcpu)) {
|
||||
switch (*vcpu_cpsr(vcpu) & PSR_AA32_MODE_MASK) {
|
||||
/*
|
||||
* Either we are dealing with user mode, and only the
|
||||
* first 15 registers (+ PC) must be narrowed to 32bit.
|
||||
|
||||
@@ -50,9 +50,23 @@ bool kvm_condition_valid32(const struct kvm_vcpu *vcpu)
|
||||
u32 cpsr_cond;
|
||||
int cond;
|
||||
|
||||
/* Top two bits non-zero? Unconditional. */
|
||||
if (kvm_vcpu_get_esr(vcpu) >> 30)
|
||||
/*
|
||||
* These are the exception classes that could fire with a
|
||||
* conditional instruction.
|
||||
*/
|
||||
switch (kvm_vcpu_trap_get_class(vcpu)) {
|
||||
case ESR_ELx_EC_CP15_32:
|
||||
case ESR_ELx_EC_CP15_64:
|
||||
case ESR_ELx_EC_CP14_MR:
|
||||
case ESR_ELx_EC_CP14_LS:
|
||||
case ESR_ELx_EC_FP_ASIMD:
|
||||
case ESR_ELx_EC_CP10_ID:
|
||||
case ESR_ELx_EC_CP14_64:
|
||||
case ESR_ELx_EC_SVC32:
|
||||
break;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
|
||||
/* Is condition field valid? */
|
||||
cond = kvm_vcpu_get_condition(vcpu);
|
||||
|
||||
@@ -58,8 +58,8 @@ void *rb_reserve_trace_entry(struct hyp_rb_per_cpu *cpu_buffer, unsigned long le
|
||||
int __pkvm_load_tracing(unsigned long pack_va, size_t pack_size);
|
||||
void __pkvm_teardown_tracing(void);
|
||||
int __pkvm_enable_tracing(bool enable);
|
||||
int __pkvm_rb_swap_reader_page(int cpu);
|
||||
int __pkvm_rb_update_footers(int cpu);
|
||||
int __pkvm_rb_swap_reader_page(unsigned int cpu);
|
||||
int __pkvm_rb_update_footers(unsigned int cpu);
|
||||
int __pkvm_enable_event(unsigned short id, bool enable);
|
||||
|
||||
#define HYP_EVENT(__name, __proto, __struct, __assign, __printk) \
|
||||
@@ -94,12 +94,12 @@ static inline void __pkvm_teardown_tracing(void) { }
|
||||
|
||||
static inline int __pkvm_enable_tracing(bool enable) { return -ENODEV; }
|
||||
|
||||
static inline int __pkvm_rb_swap_reader_page(int cpu)
|
||||
static inline int __pkvm_rb_swap_reader_page(unsigned int cpu)
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int __pkvm_rb_update_footers(int cpu)
|
||||
static inline int __pkvm_rb_update_footers(unsigned int cpu)
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
@@ -411,9 +411,9 @@ out:
|
||||
return;
|
||||
}
|
||||
|
||||
static __always_inline void do_ffa_mem_xfer(const u64 func_id,
|
||||
struct arm_smccc_res *res,
|
||||
struct kvm_cpu_context *ctxt)
|
||||
static void __do_ffa_mem_xfer(const u64 func_id,
|
||||
struct arm_smccc_res *res,
|
||||
struct kvm_cpu_context *ctxt)
|
||||
{
|
||||
DECLARE_REG(u32, len, ctxt, 1);
|
||||
DECLARE_REG(u32, fraglen, ctxt, 2);
|
||||
@@ -424,9 +424,6 @@ static __always_inline void do_ffa_mem_xfer(const u64 func_id,
|
||||
u32 offset, nr_ranges;
|
||||
int ret = 0;
|
||||
|
||||
BUILD_BUG_ON(func_id != FFA_FN64_MEM_SHARE &&
|
||||
func_id != FFA_FN64_MEM_LEND);
|
||||
|
||||
if (addr_mbz || npages_mbz || fraglen > len ||
|
||||
fraglen > KVM_FFA_MBOX_NR_PAGES * PAGE_SIZE) {
|
||||
ret = FFA_RET_INVALID_PARAMETERS;
|
||||
@@ -445,6 +442,11 @@ static __always_inline void do_ffa_mem_xfer(const u64 func_id,
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
if (len > ffa_desc_buf.len) {
|
||||
ret = FFA_RET_NO_MEMORY;
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
buf = hyp_buffers.tx;
|
||||
memcpy(buf, host_buffers.tx, fraglen);
|
||||
|
||||
@@ -494,6 +496,13 @@ err_unshare:
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
#define do_ffa_mem_xfer(fid, res, ctxt) \
|
||||
do { \
|
||||
BUILD_BUG_ON((fid) != FFA_FN64_MEM_SHARE && \
|
||||
(fid) != FFA_FN64_MEM_LEND); \
|
||||
__do_ffa_mem_xfer((fid), (res), (ctxt)); \
|
||||
} while (0);
|
||||
|
||||
static void do_ffa_mem_reclaim(struct arm_smccc_res *res,
|
||||
struct kvm_cpu_context *ctxt)
|
||||
{
|
||||
|
||||
@@ -126,7 +126,7 @@ alternative_else_nop_endif
|
||||
|
||||
/* Invalidate the stale TLBs from Bootloader */
|
||||
tlbi alle2
|
||||
tlbi vmalls12e1
|
||||
tlbi alle1
|
||||
dsb sy
|
||||
|
||||
mov_q x0, INIT_SCTLR_EL2_MMU_ON
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user