mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
Merge remote-tracking branch 'stable/linux-6.1.y' into rpi-6.1.y
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
What: /sys/class/<iface>/statistics/collisions
|
What: /sys/class/net/<iface>/statistics/collisions
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -6,7 +6,7 @@ Description:
|
|||||||
Indicates the number of collisions seen by this network device.
|
Indicates the number of collisions seen by this network device.
|
||||||
This value might not be relevant with all MAC layers.
|
This value might not be relevant with all MAC layers.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/multicast
|
What: /sys/class/net/<iface>/statistics/multicast
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -14,7 +14,7 @@ Description:
|
|||||||
Indicates the number of multicast packets received by this
|
Indicates the number of multicast packets received by this
|
||||||
network device.
|
network device.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_bytes
|
What: /sys/class/net/<iface>/statistics/rx_bytes
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -23,7 +23,7 @@ Description:
|
|||||||
See the network driver for the exact meaning of when this
|
See the network driver for the exact meaning of when this
|
||||||
value is incremented.
|
value is incremented.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_compressed
|
What: /sys/class/net/<iface>/statistics/rx_compressed
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -32,7 +32,7 @@ Description:
|
|||||||
network device. This value might only be relevant for interfaces
|
network device. This value might only be relevant for interfaces
|
||||||
that support packet compression (e.g: PPP).
|
that support packet compression (e.g: PPP).
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_crc_errors
|
What: /sys/class/net/<iface>/statistics/rx_crc_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -41,7 +41,7 @@ Description:
|
|||||||
by this network device. Note that the specific meaning might
|
by this network device. Note that the specific meaning might
|
||||||
depend on the MAC layer used by the interface.
|
depend on the MAC layer used by the interface.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_dropped
|
What: /sys/class/net/<iface>/statistics/rx_dropped
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -51,7 +51,7 @@ Description:
|
|||||||
packet processing. See the network driver for the exact
|
packet processing. See the network driver for the exact
|
||||||
meaning of this value.
|
meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_errors
|
What: /sys/class/net/<iface>/statistics/rx_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -59,7 +59,7 @@ Description:
|
|||||||
Indicates the number of receive errors on this network device.
|
Indicates the number of receive errors on this network device.
|
||||||
See the network driver for the exact meaning of this value.
|
See the network driver for the exact meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_fifo_errors
|
What: /sys/class/net/<iface>/statistics/rx_fifo_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -68,7 +68,7 @@ Description:
|
|||||||
network device. See the network driver for the exact
|
network device. See the network driver for the exact
|
||||||
meaning of this value.
|
meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_frame_errors
|
What: /sys/class/net/<iface>/statistics/rx_frame_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -78,7 +78,7 @@ Description:
|
|||||||
on the MAC layer protocol used. See the network driver for
|
on the MAC layer protocol used. See the network driver for
|
||||||
the exact meaning of this value.
|
the exact meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_length_errors
|
What: /sys/class/net/<iface>/statistics/rx_length_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -87,7 +87,7 @@ Description:
|
|||||||
error, oversized or undersized. See the network driver for the
|
error, oversized or undersized. See the network driver for the
|
||||||
exact meaning of this value.
|
exact meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_missed_errors
|
What: /sys/class/net/<iface>/statistics/rx_missed_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -96,7 +96,7 @@ Description:
|
|||||||
due to lack of capacity in the receive side. See the network
|
due to lack of capacity in the receive side. See the network
|
||||||
driver for the exact meaning of this value.
|
driver for the exact meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_nohandler
|
What: /sys/class/net/<iface>/statistics/rx_nohandler
|
||||||
Date: February 2016
|
Date: February 2016
|
||||||
KernelVersion: 4.6
|
KernelVersion: 4.6
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -104,7 +104,7 @@ Description:
|
|||||||
Indicates the number of received packets that were dropped on
|
Indicates the number of received packets that were dropped on
|
||||||
an inactive device by the network core.
|
an inactive device by the network core.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_over_errors
|
What: /sys/class/net/<iface>/statistics/rx_over_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -114,7 +114,7 @@ Description:
|
|||||||
(e.g: larger than MTU). See the network driver for the exact
|
(e.g: larger than MTU). See the network driver for the exact
|
||||||
meaning of this value.
|
meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/rx_packets
|
What: /sys/class/net/<iface>/statistics/rx_packets
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -122,7 +122,7 @@ Description:
|
|||||||
Indicates the total number of good packets received by this
|
Indicates the total number of good packets received by this
|
||||||
network device.
|
network device.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_aborted_errors
|
What: /sys/class/net/<iface>/statistics/tx_aborted_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -132,7 +132,7 @@ Description:
|
|||||||
a medium collision). See the network driver for the exact
|
a medium collision). See the network driver for the exact
|
||||||
meaning of this value.
|
meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_bytes
|
What: /sys/class/net/<iface>/statistics/tx_bytes
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -143,7 +143,7 @@ Description:
|
|||||||
transmitted packets or all packets that have been queued for
|
transmitted packets or all packets that have been queued for
|
||||||
transmission.
|
transmission.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_carrier_errors
|
What: /sys/class/net/<iface>/statistics/tx_carrier_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -152,7 +152,7 @@ Description:
|
|||||||
because of carrier errors (e.g: physical link down). See the
|
because of carrier errors (e.g: physical link down). See the
|
||||||
network driver for the exact meaning of this value.
|
network driver for the exact meaning of this value.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_compressed
|
What: /sys/class/net/<iface>/statistics/tx_compressed
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -161,7 +161,7 @@ Description:
|
|||||||
this might only be relevant for devices that support
|
this might only be relevant for devices that support
|
||||||
compression (e.g: PPP).
|
compression (e.g: PPP).
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_dropped
|
What: /sys/class/net/<iface>/statistics/tx_dropped
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -170,7 +170,7 @@ Description:
|
|||||||
See the driver for the exact reasons as to why the packets were
|
See the driver for the exact reasons as to why the packets were
|
||||||
dropped.
|
dropped.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_errors
|
What: /sys/class/net/<iface>/statistics/tx_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -179,7 +179,7 @@ Description:
|
|||||||
a network device. See the driver for the exact reasons as to
|
a network device. See the driver for the exact reasons as to
|
||||||
why the packets were dropped.
|
why the packets were dropped.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_fifo_errors
|
What: /sys/class/net/<iface>/statistics/tx_fifo_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -188,7 +188,7 @@ Description:
|
|||||||
FIFO error. See the driver for the exact reasons as to why the
|
FIFO error. See the driver for the exact reasons as to why the
|
||||||
packets were dropped.
|
packets were dropped.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_heartbeat_errors
|
What: /sys/class/net/<iface>/statistics/tx_heartbeat_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -197,7 +197,7 @@ Description:
|
|||||||
reported as heartbeat errors. See the driver for the exact
|
reported as heartbeat errors. See the driver for the exact
|
||||||
reasons as to why the packets were dropped.
|
reasons as to why the packets were dropped.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_packets
|
What: /sys/class/net/<iface>/statistics/tx_packets
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
@@ -206,7 +206,7 @@ Description:
|
|||||||
device. See the driver for whether this reports the number of all
|
device. See the driver for whether this reports the number of all
|
||||||
attempted or successful transmissions.
|
attempted or successful transmissions.
|
||||||
|
|
||||||
What: /sys/class/<iface>/statistics/tx_window_errors
|
What: /sys/class/net/<iface>/statistics/tx_window_errors
|
||||||
Date: April 2005
|
Date: April 2005
|
||||||
KernelVersion: 2.6.12
|
KernelVersion: 2.6.12
|
||||||
Contact: netdev@vger.kernel.org
|
Contact: netdev@vger.kernel.org
|
||||||
|
|||||||
@@ -519,6 +519,7 @@ What: /sys/devices/system/cpu/vulnerabilities
|
|||||||
/sys/devices/system/cpu/vulnerabilities/mds
|
/sys/devices/system/cpu/vulnerabilities/mds
|
||||||
/sys/devices/system/cpu/vulnerabilities/meltdown
|
/sys/devices/system/cpu/vulnerabilities/meltdown
|
||||||
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data
|
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data
|
||||||
|
/sys/devices/system/cpu/vulnerabilities/reg_file_data_sampling
|
||||||
/sys/devices/system/cpu/vulnerabilities/retbleed
|
/sys/devices/system/cpu/vulnerabilities/retbleed
|
||||||
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
|
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
|
||||||
/sys/devices/system/cpu/vulnerabilities/spectre_v1
|
/sys/devices/system/cpu/vulnerabilities/spectre_v1
|
||||||
|
|||||||
@@ -67,8 +67,8 @@ arg4:
|
|||||||
will be performed for all tasks in the task group of ``pid``.
|
will be performed for all tasks in the task group of ``pid``.
|
||||||
|
|
||||||
arg5:
|
arg5:
|
||||||
userspace pointer to an unsigned long for storing the cookie returned by
|
userspace pointer to an unsigned long long for storing the cookie returned
|
||||||
``PR_SCHED_CORE_GET`` command. Should be 0 for all other commands.
|
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
|
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
|
is required to have the ptrace access mode: `PTRACE_MODE_READ_REALCREDS` to the
|
||||||
|
|||||||
@@ -21,3 +21,4 @@ are configurable at compile, boot or run time.
|
|||||||
cross-thread-rsb.rst
|
cross-thread-rsb.rst
|
||||||
gather_data_sampling.rst
|
gather_data_sampling.rst
|
||||||
srso
|
srso
|
||||||
|
reg-file-data-sampling
|
||||||
|
|||||||
104
Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst
Normal file
104
Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
==================================
|
||||||
|
Register File Data Sampling (RFDS)
|
||||||
|
==================================
|
||||||
|
|
||||||
|
Register File Data Sampling (RFDS) is a microarchitectural vulnerability that
|
||||||
|
only affects Intel Atom parts(also branded as E-cores). RFDS may allow
|
||||||
|
a malicious actor to infer data values previously used in floating point
|
||||||
|
registers, vector registers, or integer registers. RFDS does not provide the
|
||||||
|
ability to choose which data is inferred. CVE-2023-28746 is assigned to RFDS.
|
||||||
|
|
||||||
|
Affected Processors
|
||||||
|
===================
|
||||||
|
Below is the list of affected Intel processors [#f1]_:
|
||||||
|
|
||||||
|
=================== ============
|
||||||
|
Common name Family_Model
|
||||||
|
=================== ============
|
||||||
|
ATOM_GOLDMONT 06_5CH
|
||||||
|
ATOM_GOLDMONT_D 06_5FH
|
||||||
|
ATOM_GOLDMONT_PLUS 06_7AH
|
||||||
|
ATOM_TREMONT_D 06_86H
|
||||||
|
ATOM_TREMONT 06_96H
|
||||||
|
ALDERLAKE 06_97H
|
||||||
|
ALDERLAKE_L 06_9AH
|
||||||
|
ATOM_TREMONT_L 06_9CH
|
||||||
|
RAPTORLAKE 06_B7H
|
||||||
|
RAPTORLAKE_P 06_BAH
|
||||||
|
ATOM_GRACEMONT 06_BEH
|
||||||
|
RAPTORLAKE_S 06_BFH
|
||||||
|
=================== ============
|
||||||
|
|
||||||
|
As an exception to this table, Intel Xeon E family parts ALDERLAKE(06_97H) and
|
||||||
|
RAPTORLAKE(06_B7H) codenamed Catlow are not affected. They are reported as
|
||||||
|
vulnerable in Linux because they share the same family/model with an affected
|
||||||
|
part. Unlike their affected counterparts, they do not enumerate RFDS_CLEAR or
|
||||||
|
CPUID.HYBRID. This information could be used to distinguish between the
|
||||||
|
affected and unaffected parts, but it is deemed not worth adding complexity as
|
||||||
|
the reporting is fixed automatically when these parts enumerate RFDS_NO.
|
||||||
|
|
||||||
|
Mitigation
|
||||||
|
==========
|
||||||
|
Intel released a microcode update that enables software to clear sensitive
|
||||||
|
information using the VERW instruction. Like MDS, RFDS deploys the same
|
||||||
|
mitigation strategy to force the CPU to clear the affected buffers before an
|
||||||
|
attacker can extract the secrets. This is achieved by using the otherwise
|
||||||
|
unused and obsolete VERW instruction in combination with a microcode update.
|
||||||
|
The microcode clears the affected CPU buffers when the VERW instruction is
|
||||||
|
executed.
|
||||||
|
|
||||||
|
Mitigation points
|
||||||
|
-----------------
|
||||||
|
VERW is executed by the kernel before returning to user space, and by KVM
|
||||||
|
before VMentry. None of the affected cores support SMT, so VERW is not required
|
||||||
|
at C-state transitions.
|
||||||
|
|
||||||
|
New bits in IA32_ARCH_CAPABILITIES
|
||||||
|
----------------------------------
|
||||||
|
Newer processors and microcode update on existing affected processors added new
|
||||||
|
bits to IA32_ARCH_CAPABILITIES MSR. These bits can be used to enumerate
|
||||||
|
vulnerability and mitigation capability:
|
||||||
|
|
||||||
|
- Bit 27 - RFDS_NO - When set, processor is not affected by RFDS.
|
||||||
|
- Bit 28 - RFDS_CLEAR - When set, processor is affected by RFDS, and has the
|
||||||
|
microcode that clears the affected buffers on VERW execution.
|
||||||
|
|
||||||
|
Mitigation control on the kernel command line
|
||||||
|
---------------------------------------------
|
||||||
|
The kernel command line allows to control RFDS mitigation at boot time with the
|
||||||
|
parameter "reg_file_data_sampling=". The valid arguments are:
|
||||||
|
|
||||||
|
========== =================================================================
|
||||||
|
on If the CPU is vulnerable, enable mitigation; CPU buffer clearing
|
||||||
|
on exit to userspace and before entering a VM.
|
||||||
|
off Disables mitigation.
|
||||||
|
========== =================================================================
|
||||||
|
|
||||||
|
Mitigation default is selected by CONFIG_MITIGATION_RFDS.
|
||||||
|
|
||||||
|
Mitigation status information
|
||||||
|
-----------------------------
|
||||||
|
The Linux kernel provides a sysfs interface to enumerate the current
|
||||||
|
vulnerability status of the system: whether the system is vulnerable, and
|
||||||
|
which mitigations are active. The relevant sysfs file is:
|
||||||
|
|
||||||
|
/sys/devices/system/cpu/vulnerabilities/reg_file_data_sampling
|
||||||
|
|
||||||
|
The possible values in this file are:
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
|
||||||
|
* - 'Not affected'
|
||||||
|
- The processor is not vulnerable
|
||||||
|
* - 'Vulnerable'
|
||||||
|
- The processor is vulnerable, but no mitigation enabled
|
||||||
|
* - 'Vulnerable: No microcode'
|
||||||
|
- The processor is vulnerable but microcode is not updated.
|
||||||
|
* - 'Mitigation: Clear Register File'
|
||||||
|
- The processor is vulnerable and the CPU buffer clearing mitigation is
|
||||||
|
enabled.
|
||||||
|
|
||||||
|
References
|
||||||
|
----------
|
||||||
|
.. [#f1] Affected Processors
|
||||||
|
https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affected-consolidated-product-cpu-model.html
|
||||||
@@ -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
|
the BHB might be shared across privilege levels even in the presence of
|
||||||
Enhanced IBRS.
|
Enhanced IBRS.
|
||||||
|
|
||||||
Currently the only known real-world BHB attack vector is via
|
Previously the only known real-world BHB attack vector was via unprivileged
|
||||||
unprivileged eBPF. Therefore, it's highly recommended to not enable
|
eBPF. Further research has found attacks that don't require unprivileged eBPF.
|
||||||
unprivileged eBPF, especially when eIBRS is used (without retpolines).
|
For a full mitigation against BHB attacks it is recommended to set BHI_DIS_S or
|
||||||
For a full mitigation against BHB attacks, it's recommended to use
|
use the BHB clearing sequence.
|
||||||
retpolines (or eIBRS combined with retpolines).
|
|
||||||
|
|
||||||
Attack scenarios
|
Attack scenarios
|
||||||
----------------
|
----------------
|
||||||
@@ -430,6 +429,23 @@ The possible values in this file are:
|
|||||||
'PBRSB-eIBRS: Not affected' CPU is not affected by PBRSB
|
'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
|
Full mitigation might require a microcode update from the CPU
|
||||||
vendor. When the necessary microcode is not available, the kernel will
|
vendor. When the necessary microcode is not available, the kernel will
|
||||||
report vulnerability.
|
report vulnerability.
|
||||||
@@ -484,11 +500,18 @@ Spectre variant 2
|
|||||||
|
|
||||||
Systems which support enhanced IBRS (eIBRS) enable IBRS protection once at
|
Systems which support enhanced IBRS (eIBRS) enable IBRS protection once at
|
||||||
boot, by setting the IBRS bit, and they're automatically protected against
|
boot, by setting the IBRS bit, and they're automatically protected against
|
||||||
Spectre v2 variant attacks, including cross-thread branch target injections
|
some Spectre v2 variant attacks. The BHB can still influence the choice of
|
||||||
on SMT systems (STIBP). In other words, eIBRS enables STIBP too.
|
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.
|
||||||
|
|
||||||
Legacy IBRS systems clear the IBRS bit on exit to userspace and
|
On Intel's enhanced IBRS systems, this includes cross-thread branch target
|
||||||
therefore explicitly enable STIBP for that
|
injections on SMT systems (STIBP). In other words, Intel eIBRS enables
|
||||||
|
STIBP, too.
|
||||||
|
|
||||||
|
AMD Automatic IBRS does not protect userspace, and Legacy IBRS systems clear
|
||||||
|
the IBRS bit on exit to userspace, therefore both explicitly enable STIBP.
|
||||||
|
|
||||||
The retpoline mitigation is turned on by default on vulnerable
|
The retpoline mitigation is turned on by default on vulnerable
|
||||||
CPUs. It can be forced on or off by the administrator
|
CPUs. It can be forced on or off by the administrator
|
||||||
@@ -621,9 +644,9 @@ kernel command line.
|
|||||||
retpoline,generic Retpolines
|
retpoline,generic Retpolines
|
||||||
retpoline,lfence LFENCE; indirect branch
|
retpoline,lfence LFENCE; indirect branch
|
||||||
retpoline,amd alias for retpoline,lfence
|
retpoline,amd alias for retpoline,lfence
|
||||||
eibrs enhanced IBRS
|
eibrs Enhanced/Auto IBRS
|
||||||
eibrs,retpoline enhanced IBRS + Retpolines
|
eibrs,retpoline Enhanced/Auto IBRS + Retpolines
|
||||||
eibrs,lfence enhanced IBRS + LFENCE
|
eibrs,lfence Enhanced/Auto IBRS + LFENCE
|
||||||
ibrs use IBRS to protect kernel
|
ibrs use IBRS to protect kernel
|
||||||
|
|
||||||
Not specifying this option is equivalent to
|
Not specifying this option is equivalent to
|
||||||
@@ -635,6 +658,18 @@ kernel command line.
|
|||||||
spectre_v2=off. Spectre variant 1 mitigations
|
spectre_v2=off. Spectre variant 1 mitigations
|
||||||
cannot be disabled.
|
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
|
For spectre_v2_user see Documentation/admin-guide/kernel-parameters.txt
|
||||||
|
|
||||||
Mitigation selection guide
|
Mitigation selection guide
|
||||||
|
|||||||
@@ -1107,6 +1107,26 @@
|
|||||||
The filter can be disabled or changed to another
|
The filter can be disabled or changed to another
|
||||||
driver later using sysfs.
|
driver later using sysfs.
|
||||||
|
|
||||||
|
reg_file_data_sampling=
|
||||||
|
[X86] Controls mitigation for Register File Data
|
||||||
|
Sampling (RFDS) vulnerability. RFDS is a CPU
|
||||||
|
vulnerability which may allow userspace to infer
|
||||||
|
kernel data values previously stored in floating point
|
||||||
|
registers, vector registers, or integer registers.
|
||||||
|
RFDS only affects Intel Atom processors.
|
||||||
|
|
||||||
|
on: Turns ON the mitigation.
|
||||||
|
off: Turns OFF the mitigation.
|
||||||
|
|
||||||
|
This parameter overrides the compile time default set
|
||||||
|
by CONFIG_MITIGATION_RFDS. Mitigation cannot be
|
||||||
|
disabled when other VERW based mitigations (like MDS)
|
||||||
|
are enabled. In order to disable RFDS mitigation all
|
||||||
|
VERW based mitigations need to be disabled.
|
||||||
|
|
||||||
|
For details see:
|
||||||
|
Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst
|
||||||
|
|
||||||
driver_async_probe= [KNL]
|
driver_async_probe= [KNL]
|
||||||
List of driver names to be probed asynchronously. *
|
List of driver names to be probed asynchronously. *
|
||||||
matches with all driver names. If * is specified, the
|
matches with all driver names. If * is specified, the
|
||||||
@@ -3186,9 +3206,7 @@
|
|||||||
|
|
||||||
mem_encrypt= [X86-64] AMD Secure Memory Encryption (SME) control
|
mem_encrypt= [X86-64] AMD Secure Memory Encryption (SME) control
|
||||||
Valid arguments: on, off
|
Valid arguments: on, off
|
||||||
Default (depends on kernel configuration option):
|
Default: off
|
||||||
on (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=y)
|
|
||||||
off (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=n)
|
|
||||||
mem_encrypt=on: Activate SME
|
mem_encrypt=on: Activate SME
|
||||||
mem_encrypt=off: Do not activate SME
|
mem_encrypt=off: Do not activate SME
|
||||||
|
|
||||||
@@ -3262,8 +3280,10 @@
|
|||||||
nospectre_bhb [ARM64]
|
nospectre_bhb [ARM64]
|
||||||
nospectre_v1 [X86,PPC]
|
nospectre_v1 [X86,PPC]
|
||||||
nospectre_v2 [X86,PPC,S390,ARM64]
|
nospectre_v2 [X86,PPC,S390,ARM64]
|
||||||
|
reg_file_data_sampling=off [X86]
|
||||||
retbleed=off [X86]
|
retbleed=off [X86]
|
||||||
spec_store_bypass_disable=off [X86,PPC]
|
spec_store_bypass_disable=off [X86,PPC]
|
||||||
|
spectre_bhi=off [X86]
|
||||||
spectre_v2_user=off [X86]
|
spectre_v2_user=off [X86]
|
||||||
srbds=off [X86,INTEL]
|
srbds=off [X86,INTEL]
|
||||||
ssbd=force-off [ARM64]
|
ssbd=force-off [ARM64]
|
||||||
@@ -5714,6 +5734,15 @@
|
|||||||
sonypi.*= [HW] Sony Programmable I/O Control Device driver
|
sonypi.*= [HW] Sony Programmable I/O Control Device driver
|
||||||
See Documentation/admin-guide/laptops/sonypi.rst
|
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
|
spectre_v2= [X86] Control mitigation of Spectre variant 2
|
||||||
(indirect branch speculation) vulnerability.
|
(indirect branch speculation) vulnerability.
|
||||||
The default operation protects the kernel from
|
The default operation protects the kernel from
|
||||||
@@ -5744,9 +5773,9 @@
|
|||||||
retpoline,generic - Retpolines
|
retpoline,generic - Retpolines
|
||||||
retpoline,lfence - LFENCE; indirect branch
|
retpoline,lfence - LFENCE; indirect branch
|
||||||
retpoline,amd - alias for retpoline,lfence
|
retpoline,amd - alias for retpoline,lfence
|
||||||
eibrs - enhanced IBRS
|
eibrs - Enhanced/Auto IBRS
|
||||||
eibrs,retpoline - enhanced IBRS + Retpolines
|
eibrs,retpoline - Enhanced/Auto IBRS + Retpolines
|
||||||
eibrs,lfence - enhanced IBRS + LFENCE
|
eibrs,lfence - Enhanced/Auto IBRS + LFENCE
|
||||||
ibrs - use IBRS to protect kernel
|
ibrs - use IBRS to protect kernel
|
||||||
|
|
||||||
Not specifying this option is equivalent to
|
Not specifying this option is equivalent to
|
||||||
@@ -6574,6 +6603,9 @@
|
|||||||
pause after every control message);
|
pause after every control message);
|
||||||
o = USB_QUIRK_HUB_SLOW_RESET (Hub needs extra
|
o = USB_QUIRK_HUB_SLOW_RESET (Hub needs extra
|
||||||
delay after resetting its port);
|
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
|
Example: quirks=0781:5580:bk,0a5c:5834:gij
|
||||||
|
|
||||||
usbhid.mousepoll=
|
usbhid.mousepoll=
|
||||||
|
|||||||
@@ -205,6 +205,11 @@ Will increase power usage.
|
|||||||
|
|
||||||
Default: 0 (off)
|
Default: 0 (off)
|
||||||
|
|
||||||
|
mem_pcpu_rsv
|
||||||
|
------------
|
||||||
|
|
||||||
|
Per-cpu reserved forward alloc cache size in page units. Default 1MB per CPU.
|
||||||
|
|
||||||
rmem_default
|
rmem_default
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
|||||||
@@ -221,3 +221,10 @@ stable kernels.
|
|||||||
+----------------+-----------------+-----------------+-----------------------------+
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
| Fujitsu | A64FX | E#010001 | FUJITSU_ERRATUM_010001 |
|
| Fujitsu | A64FX | E#010001 | FUJITSU_ERRATUM_010001 |
|
||||||
+----------------+-----------------+-----------------+-----------------------------+
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
| Microsoft | Azure Cobalt 100| #2139208 | ARM64_ERRATUM_2139208 |
|
||||||
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
| Microsoft | Azure Cobalt 100| #2067961 | ARM64_ERRATUM_2067961 |
|
||||||
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
| Microsoft | Azure Cobalt 100| #2253138 | ARM64_ERRATUM_2253138 |
|
||||||
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ allOf:
|
|||||||
properties:
|
properties:
|
||||||
compatible:
|
compatible:
|
||||||
contains:
|
contains:
|
||||||
const: maxim,max30100
|
const: maxim,max30102
|
||||||
then:
|
then:
|
||||||
properties:
|
properties:
|
||||||
maxim,green-led-current-microamp: false
|
maxim,green-led-current-microamp: false
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Marvell 8787/8897/8997 (sd8787/sd8897/sd8997/pcie8997) SDIO/PCIE devices
|
Marvell 8787/8897/8978/8997 (sd8787/sd8897/sd8978/sd8997/pcie8997) SDIO/PCIE devices
|
||||||
------
|
------
|
||||||
|
|
||||||
This node provides properties for controlling the Marvell SDIO/PCIE wireless device.
|
This node provides properties for controlling the Marvell SDIO/PCIE wireless device.
|
||||||
@@ -10,7 +10,9 @@ Required properties:
|
|||||||
- compatible : should be one of the following:
|
- compatible : should be one of the following:
|
||||||
* "marvell,sd8787"
|
* "marvell,sd8787"
|
||||||
* "marvell,sd8897"
|
* "marvell,sd8897"
|
||||||
|
* "marvell,sd8978"
|
||||||
* "marvell,sd8997"
|
* "marvell,sd8997"
|
||||||
|
* "nxp,iw416"
|
||||||
* "pci11ab,2b42"
|
* "pci11ab,2b42"
|
||||||
* "pci1b4b,2b42"
|
* "pci1b4b,2b42"
|
||||||
|
|
||||||
|
|||||||
@@ -97,7 +97,6 @@ class KernelInclude(Include):
|
|||||||
# HINT: this is the only line I had to change / commented out:
|
# HINT: this is the only line I had to change / commented out:
|
||||||
#path = utils.relative_path(None, path)
|
#path = utils.relative_path(None, path)
|
||||||
|
|
||||||
path = nodes.reprunicode(path)
|
|
||||||
encoding = self.options.get(
|
encoding = self.options.get(
|
||||||
'encoding', self.state.document.settings.input_encoding)
|
'encoding', self.state.document.settings.input_encoding)
|
||||||
e_handler=self.state.document.settings.input_encoding_error_handler
|
e_handler=self.state.document.settings.input_encoding_error_handler
|
||||||
|
|||||||
@@ -375,12 +375,11 @@ Types and flags used to represent the media graph elements
|
|||||||
are origins of links.
|
are origins of links.
|
||||||
|
|
||||||
* - ``MEDIA_PAD_FL_MUST_CONNECT``
|
* - ``MEDIA_PAD_FL_MUST_CONNECT``
|
||||||
- If this flag is set and the pad is linked to any other pad, then
|
- If this flag is set, then for this pad to be able to stream, it must
|
||||||
at least one of those links must be enabled for the entity to be
|
be connected by at least one enabled link. There could be temporary
|
||||||
able to stream. There could be temporary reasons (e.g. device
|
reasons (e.g. device configuration dependent) for the pad to need
|
||||||
configuration dependent) for the pad to need enabled links even
|
enabled links even when this flag isn't set; the absence of the flag
|
||||||
when this flag isn't set; the absence of the flag doesn't imply
|
doesn't imply there is none.
|
||||||
there is none.
|
|
||||||
|
|
||||||
|
|
||||||
One and only one of ``MEDIA_PAD_FL_SINK`` and ``MEDIA_PAD_FL_SOURCE``
|
One and only one of ``MEDIA_PAD_FL_SINK`` and ``MEDIA_PAD_FL_SOURCE``
|
||||||
|
|||||||
@@ -87,14 +87,14 @@ The state of SME in the Linux kernel can be documented as follows:
|
|||||||
kernel is non-zero).
|
kernel is non-zero).
|
||||||
|
|
||||||
SME can also be enabled and activated in the BIOS. If SME is enabled and
|
SME can also be enabled and activated in the BIOS. If SME is enabled and
|
||||||
activated in the BIOS, then all memory accesses will be encrypted and it will
|
activated in the BIOS, then all memory accesses will be encrypted and it
|
||||||
not be necessary to activate the Linux memory encryption support. If the BIOS
|
will not be necessary to activate the Linux memory encryption support.
|
||||||
merely enables SME (sets bit 23 of the MSR_AMD64_SYSCFG), then Linux can activate
|
|
||||||
memory encryption by default (CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT=y) or
|
If the BIOS merely enables SME (sets bit 23 of the MSR_AMD64_SYSCFG),
|
||||||
by supplying mem_encrypt=on on the kernel command line. However, if BIOS does
|
then memory encryption can be enabled by supplying mem_encrypt=on on the
|
||||||
not enable SME, then Linux will not be able to activate memory encryption, even
|
kernel command line. However, if BIOS does not enable SME, then Linux
|
||||||
if configured to do so by default or the mem_encrypt=on command line parameter
|
will not be able to activate memory encryption, even if configured to do
|
||||||
is specified.
|
so by default or the mem_encrypt=on command line parameter is specified.
|
||||||
|
|
||||||
Secure Nested Paging (SNP)
|
Secure Nested Paging (SNP)
|
||||||
==========================
|
==========================
|
||||||
|
|||||||
@@ -1416,7 +1416,7 @@ execution context provided by the EFI firmware.
|
|||||||
|
|
||||||
The function prototype for the handover entry point looks like this::
|
The function prototype for the handover entry point looks like this::
|
||||||
|
|
||||||
efi_main(void *handle, efi_system_table_t *table, struct boot_params *bp)
|
efi_stub_entry(void *handle, efi_system_table_t *table, struct boot_params *bp)
|
||||||
|
|
||||||
'handle' is the EFI image handle passed to the boot loader by the EFI
|
'handle' is the EFI image handle passed to the boot loader by the EFI
|
||||||
firmware, 'table' is the EFI system table - these are the first two
|
firmware, 'table' is the EFI system table - these are the first two
|
||||||
|
|||||||
@@ -95,6 +95,9 @@ The kernel provides a function to invoke the buffer clearing:
|
|||||||
|
|
||||||
mds_clear_cpu_buffers()
|
mds_clear_cpu_buffers()
|
||||||
|
|
||||||
|
Also macro CLEAR_CPU_BUFFERS can be used in ASM late in exit-to-user path.
|
||||||
|
Other than CFLAGS.ZF, this macro doesn't clobber any registers.
|
||||||
|
|
||||||
The mitigation is invoked on kernel/userspace, hypervisor/guest and C-state
|
The mitigation is invoked on kernel/userspace, hypervisor/guest and C-state
|
||||||
(idle) transitions.
|
(idle) transitions.
|
||||||
|
|
||||||
@@ -138,17 +141,30 @@ Mitigation points
|
|||||||
|
|
||||||
When transitioning from kernel to user space the CPU buffers are flushed
|
When transitioning from kernel to user space the CPU buffers are flushed
|
||||||
on affected CPUs when the mitigation is not disabled on the kernel
|
on affected CPUs when the mitigation is not disabled on the kernel
|
||||||
command line. The migitation is enabled through the static key
|
command line. The mitigation is enabled through the feature flag
|
||||||
mds_user_clear.
|
X86_FEATURE_CLEAR_CPU_BUF.
|
||||||
|
|
||||||
The mitigation is invoked in prepare_exit_to_usermode() which covers
|
The mitigation is invoked just before transitioning to userspace after
|
||||||
all but one of the kernel to user space transitions. The exception
|
user registers are restored. This is done to minimize the window in
|
||||||
is when we return from a Non Maskable Interrupt (NMI), which is
|
which kernel data could be accessed after VERW e.g. via an NMI after
|
||||||
handled directly in do_nmi().
|
VERW.
|
||||||
|
|
||||||
(The reason that NMI is special is that prepare_exit_to_usermode() can
|
**Corner case not handled**
|
||||||
enable IRQs. In NMI context, NMIs are blocked, and we don't want to
|
Interrupts returning to kernel don't clear CPUs buffers since the
|
||||||
enable IRQs with NMIs blocked.)
|
exit-to-user path is expected to do that anyways. But, there could be
|
||||||
|
a case when an NMI is generated in kernel after the exit-to-user path
|
||||||
|
has cleared the buffers. This case is not handled and NMI returning to
|
||||||
|
kernel don't clear CPU buffers because:
|
||||||
|
|
||||||
|
1. It is rare to get an NMI after VERW, but before returning to userspace.
|
||||||
|
2. For an unprivileged user, there is no known way to make that NMI
|
||||||
|
less rare or target it.
|
||||||
|
3. It would take a large number of these precisely-timed NMIs to mount
|
||||||
|
an actual attack. There's presumably not enough bandwidth.
|
||||||
|
4. The NMI in question occurs after a VERW, i.e. when user state is
|
||||||
|
restored and most interesting data is already scrubbed. Whats left
|
||||||
|
is only the data that NMI touches, and that may or may not be of
|
||||||
|
any interest.
|
||||||
|
|
||||||
|
|
||||||
2. C-State transition
|
2. C-State transition
|
||||||
|
|||||||
10
MAINTAINERS
10
MAINTAINERS
@@ -8070,7 +8070,7 @@ M: Geoffrey D. Bennett <g@b4.vu>
|
|||||||
L: alsa-devel@alsa-project.org (moderated for non-subscribers)
|
L: alsa-devel@alsa-project.org (moderated for non-subscribers)
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
|
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
|
FORCEDETH GIGABIT ETHERNET DRIVER
|
||||||
M: Rain River <rain.1986.08.12@gmail.com>
|
M: Rain River <rain.1986.08.12@gmail.com>
|
||||||
@@ -10090,6 +10090,7 @@ F: drivers/infiniband/
|
|||||||
F: include/rdma/
|
F: include/rdma/
|
||||||
F: include/trace/events/ib_mad.h
|
F: include/trace/events/ib_mad.h
|
||||||
F: include/trace/events/ib_umad.h
|
F: include/trace/events/ib_umad.h
|
||||||
|
F: include/trace/misc/rdma.h
|
||||||
F: include/uapi/linux/if_infiniband.h
|
F: include/uapi/linux/if_infiniband.h
|
||||||
F: include/uapi/rdma/
|
F: include/uapi/rdma/
|
||||||
F: samples/bpf/ibumad_kern.c
|
F: samples/bpf/ibumad_kern.c
|
||||||
@@ -11178,6 +11179,12 @@ F: fs/nfs_common/
|
|||||||
F: fs/nfsd/
|
F: fs/nfsd/
|
||||||
F: include/linux/lockd/
|
F: include/linux/lockd/
|
||||||
F: include/linux/sunrpc/
|
F: include/linux/sunrpc/
|
||||||
|
F: include/trace/events/rpcgss.h
|
||||||
|
F: include/trace/events/rpcrdma.h
|
||||||
|
F: include/trace/events/sunrpc.h
|
||||||
|
F: include/trace/misc/fs.h
|
||||||
|
F: include/trace/misc/nfs.h
|
||||||
|
F: include/trace/misc/sunrpc.h
|
||||||
F: include/uapi/linux/nfsd/
|
F: include/uapi/linux/nfsd/
|
||||||
F: include/uapi/linux/sunrpc/
|
F: include/uapi/linux/sunrpc/
|
||||||
F: net/sunrpc/
|
F: net/sunrpc/
|
||||||
@@ -22638,6 +22645,7 @@ F: include/xen/swiotlb-xen.h
|
|||||||
|
|
||||||
XFS FILESYSTEM
|
XFS FILESYSTEM
|
||||||
C: irc://irc.oftc.net/xfs
|
C: irc://irc.oftc.net/xfs
|
||||||
|
M: Leah Rumancik <leah.rumancik@gmail.com>
|
||||||
M: Darrick J. Wong <djwong@kernel.org>
|
M: Darrick J. Wong <djwong@kernel.org>
|
||||||
L: linux-xfs@vger.kernel.org
|
L: linux-xfs@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
|
|||||||
8
Makefile
8
Makefile
@@ -1,7 +1,7 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
VERSION = 6
|
VERSION = 6
|
||||||
PATCHLEVEL = 1
|
PATCHLEVEL = 1
|
||||||
SUBLEVEL = 77
|
SUBLEVEL = 92
|
||||||
EXTRAVERSION =
|
EXTRAVERSION =
|
||||||
NAME = Curry Ramen
|
NAME = Curry Ramen
|
||||||
|
|
||||||
@@ -459,8 +459,7 @@ HOSTRUSTC = rustc
|
|||||||
HOSTPKG_CONFIG = pkg-config
|
HOSTPKG_CONFIG = pkg-config
|
||||||
|
|
||||||
KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
|
KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
|
||||||
-O2 -fomit-frame-pointer -std=gnu11 \
|
-O2 -fomit-frame-pointer -std=gnu11
|
||||||
-Wdeclaration-after-statement
|
|
||||||
KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
|
KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
|
||||||
KBUILD_USERLDFLAGS := $(USERLDFLAGS)
|
KBUILD_USERLDFLAGS := $(USERLDFLAGS)
|
||||||
|
|
||||||
@@ -1018,9 +1017,6 @@ endif
|
|||||||
# arch Makefile may override CC so keep this after arch Makefile is included
|
# arch Makefile may override CC so keep this after arch Makefile is included
|
||||||
NOSTDINC_FLAGS += -nostdinc
|
NOSTDINC_FLAGS += -nostdinc
|
||||||
|
|
||||||
# warn about C99 declaration after statement
|
|
||||||
KBUILD_CFLAGS += -Wdeclaration-after-statement
|
|
||||||
|
|
||||||
# Variable Length Arrays (VLAs) should not be used anywhere in the kernel
|
# Variable Length Arrays (VLAs) should not be used anywhere in the kernel
|
||||||
KBUILD_CFLAGS += -Wvla
|
KBUILD_CFLAGS += -Wvla
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,14 @@
|
|||||||
#
|
#
|
||||||
source "arch/$(SRCARCH)/Kconfig"
|
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"
|
menu "General architecture-dependent options"
|
||||||
|
|
||||||
config CRASH_CORE
|
config CRASH_CORE
|
||||||
@@ -642,6 +650,7 @@ config SHADOW_CALL_STACK
|
|||||||
bool "Shadow Call Stack"
|
bool "Shadow Call Stack"
|
||||||
depends on ARCH_SUPPORTS_SHADOW_CALL_STACK
|
depends on ARCH_SUPPORTS_SHADOW_CALL_STACK
|
||||||
depends on DYNAMIC_FTRACE_WITH_ARGS || DYNAMIC_FTRACE_WITH_REGS || !FUNCTION_GRAPH_TRACER
|
depends on DYNAMIC_FTRACE_WITH_ARGS || DYNAMIC_FTRACE_WITH_REGS || !FUNCTION_GRAPH_TRACER
|
||||||
|
depends on MMU
|
||||||
help
|
help
|
||||||
This option enables the compiler's Shadow Call Stack, which
|
This option enables the compiler's Shadow Call Stack, which
|
||||||
uses a shadow stack to protect function return addresses from
|
uses a shadow stack to protect function return addresses from
|
||||||
|
|||||||
@@ -205,7 +205,6 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
gmac: ethernet@8000 {
|
gmac: ethernet@8000 {
|
||||||
#interrupt-cells = <1>;
|
|
||||||
compatible = "snps,dwmac";
|
compatible = "snps,dwmac";
|
||||||
reg = <0x8000 0x2000>;
|
reg = <0x8000 0x2000>;
|
||||||
interrupts = <10>;
|
interrupts = <10>;
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
static __always_inline bool arch_static_branch(struct static_key *key,
|
static __always_inline bool arch_static_branch(struct static_key *key,
|
||||||
bool branch)
|
bool branch)
|
||||||
{
|
{
|
||||||
asm_volatile_goto(".balign "__stringify(JUMP_LABEL_NOP_SIZE)" \n"
|
asm goto(".balign "__stringify(JUMP_LABEL_NOP_SIZE)" \n"
|
||||||
"1: \n"
|
"1: \n"
|
||||||
"nop \n"
|
"nop \n"
|
||||||
".pushsection __jump_table, \"aw\" \n"
|
".pushsection __jump_table, \"aw\" \n"
|
||||||
@@ -47,7 +47,7 @@ l_yes:
|
|||||||
static __always_inline bool arch_static_branch_jump(struct static_key *key,
|
static __always_inline bool arch_static_branch_jump(struct static_key *key,
|
||||||
bool branch)
|
bool branch)
|
||||||
{
|
{
|
||||||
asm_volatile_goto(".balign "__stringify(JUMP_LABEL_NOP_SIZE)" \n"
|
asm goto(".balign "__stringify(JUMP_LABEL_NOP_SIZE)" \n"
|
||||||
"1: \n"
|
"1: \n"
|
||||||
"b %l[l_yes] \n"
|
"b %l[l_yes] \n"
|
||||||
".pushsection __jump_table, \"aw\" \n"
|
".pushsection __jump_table, \"aw\" \n"
|
||||||
|
|||||||
@@ -451,7 +451,7 @@
|
|||||||
|
|
||||||
/* Direct-mapped development chip ROM */
|
/* Direct-mapped development chip ROM */
|
||||||
pb1176_rom@10200000 {
|
pb1176_rom@10200000 {
|
||||||
compatible = "direct-mapped";
|
compatible = "mtd-rom";
|
||||||
reg = <0x10200000 0x4000>;
|
reg = <0x10200000 0x4000>;
|
||||||
bank-width = <1>;
|
bank-width = <1>;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -293,7 +293,7 @@
|
|||||||
|
|
||||||
regulator-state-standby {
|
regulator-state-standby {
|
||||||
regulator-on-in-suspend;
|
regulator-on-in-suspend;
|
||||||
regulator-suspend-voltage = <1150000>;
|
regulator-suspend-microvolt = <1150000>;
|
||||||
regulator-mode = <4>;
|
regulator-mode = <4>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -314,7 +314,7 @@
|
|||||||
|
|
||||||
regulator-state-standby {
|
regulator-state-standby {
|
||||||
regulator-on-in-suspend;
|
regulator-on-in-suspend;
|
||||||
regulator-suspend-voltage = <1050000>;
|
regulator-suspend-microvolt = <1050000>;
|
||||||
regulator-mode = <4>;
|
regulator-mode = <4>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -331,7 +331,7 @@
|
|||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
|
|
||||||
regulator-state-standby {
|
regulator-state-standby {
|
||||||
regulator-suspend-voltage = <1800000>;
|
regulator-suspend-microvolt = <1800000>;
|
||||||
regulator-on-in-suspend;
|
regulator-on-in-suspend;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -346,7 +346,7 @@
|
|||||||
regulator-max-microvolt = <3700000>;
|
regulator-max-microvolt = <3700000>;
|
||||||
|
|
||||||
regulator-state-standby {
|
regulator-state-standby {
|
||||||
regulator-suspend-voltage = <1800000>;
|
regulator-suspend-microvolt = <1800000>;
|
||||||
regulator-on-in-suspend;
|
regulator-on-in-suspend;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,7 @@
|
|||||||
reg = <0x80000000 0x2000>;
|
reg = <0x80000000 0x2000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
dma_apbh: dma-apbh@80004000 {
|
dma_apbh: dma-controller@80004000 {
|
||||||
compatible = "fsl,imx23-dma-apbh";
|
compatible = "fsl,imx23-dma-apbh";
|
||||||
reg = <0x80004000 0x2000>;
|
reg = <0x80004000 0x2000>;
|
||||||
interrupts = <0 14 20 0
|
interrupts = <0 14 20 0
|
||||||
|
|||||||
@@ -78,7 +78,7 @@
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
dma_apbh: dma-apbh@80004000 {
|
dma_apbh: dma-controller@80004000 {
|
||||||
compatible = "fsl,imx28-dma-apbh";
|
compatible = "fsl,imx28-dma-apbh";
|
||||||
reg = <0x80004000 0x2000>;
|
reg = <0x80004000 0x2000>;
|
||||||
interrupts = <82 83 84 85
|
interrupts = <82 83 84 85
|
||||||
|
|||||||
@@ -106,8 +106,6 @@
|
|||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pinctrl_enet>;
|
pinctrl-0 = <&pinctrl_enet>;
|
||||||
phy-mode = "rgmii-id";
|
phy-mode = "rgmii-id";
|
||||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
|
||||||
phy-reset-duration = <20>;
|
|
||||||
phy-supply = <&sw2_reg>;
|
phy-supply = <&sw2_reg>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
@@ -120,17 +118,10 @@
|
|||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
|
||||||
phy_port2: phy@1 {
|
|
||||||
reg = <1>;
|
|
||||||
};
|
|
||||||
|
|
||||||
phy_port3: phy@2 {
|
|
||||||
reg = <2>;
|
|
||||||
};
|
|
||||||
|
|
||||||
switch@10 {
|
switch@10 {
|
||||||
compatible = "qca,qca8334";
|
compatible = "qca,qca8334";
|
||||||
reg = <10>;
|
reg = <0x10>;
|
||||||
|
reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||||
|
|
||||||
switch_ports: ports {
|
switch_ports: ports {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
@@ -151,15 +142,30 @@
|
|||||||
eth2: port@2 {
|
eth2: port@2 {
|
||||||
reg = <2>;
|
reg = <2>;
|
||||||
label = "eth2";
|
label = "eth2";
|
||||||
|
phy-mode = "internal";
|
||||||
phy-handle = <&phy_port2>;
|
phy-handle = <&phy_port2>;
|
||||||
};
|
};
|
||||||
|
|
||||||
eth1: port@3 {
|
eth1: port@3 {
|
||||||
reg = <3>;
|
reg = <3>;
|
||||||
label = "eth1";
|
label = "eth1";
|
||||||
|
phy-mode = "internal";
|
||||||
phy-handle = <&phy_port3>;
|
phy-handle = <&phy_port3>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mdio {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
phy_port2: ethernet-phy@1 {
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
phy_port3: ethernet-phy@2 {
|
||||||
|
reg = <2>;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -76,6 +76,7 @@
|
|||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pinctrl_enable_can1_power>;
|
pinctrl-0 = <&pinctrl_enable_can1_power>;
|
||||||
regulator-name = "can1_supply";
|
regulator-name = "can1_supply";
|
||||||
|
startup-delay-us = <1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_can2_supply: regulator-can2-supply {
|
reg_can2_supply: regulator-can2-supply {
|
||||||
@@ -85,6 +86,7 @@
|
|||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pinctrl_enable_can2_power>;
|
pinctrl-0 = <&pinctrl_enable_can2_power>;
|
||||||
regulator-name = "can2_supply";
|
regulator-name = "can2_supply";
|
||||||
|
startup-delay-us = <1000>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -150,7 +150,7 @@
|
|||||||
interrupt-parent = <&gpc>;
|
interrupt-parent = <&gpc>;
|
||||||
ranges;
|
ranges;
|
||||||
|
|
||||||
dma_apbh: dma-apbh@110000 {
|
dma_apbh: dma-controller@110000 {
|
||||||
compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
|
compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
|
||||||
reg = <0x00110000 0x2000>;
|
reg = <0x00110000 0x2000>;
|
||||||
interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
|||||||
@@ -209,7 +209,7 @@
|
|||||||
power-domains = <&pd_pu>;
|
power-domains = <&pd_pu>;
|
||||||
};
|
};
|
||||||
|
|
||||||
dma_apbh: dma-apbh@1804000 {
|
dma_apbh: dma-controller@1804000 {
|
||||||
compatible = "fsl,imx6sx-dma-apbh", "fsl,imx28-dma-apbh";
|
compatible = "fsl,imx6sx-dma-apbh", "fsl,imx28-dma-apbh";
|
||||||
reg = <0x01804000 0x2000>;
|
reg = <0x01804000 0x2000>;
|
||||||
interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
|||||||
@@ -164,7 +164,7 @@
|
|||||||
<0x00a06000 0x2000>;
|
<0x00a06000 0x2000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
dma_apbh: dma-apbh@1804000 {
|
dma_apbh: dma-controller@1804000 {
|
||||||
compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
|
compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
|
||||||
reg = <0x01804000 0x2000>;
|
reg = <0x01804000 0x2000>;
|
||||||
interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
|||||||
@@ -1267,14 +1267,13 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
dma_apbh: dma-apbh@33000000 {
|
dma_apbh: dma-controller@33000000 {
|
||||||
compatible = "fsl,imx7d-dma-apbh", "fsl,imx28-dma-apbh";
|
compatible = "fsl,imx7d-dma-apbh", "fsl,imx28-dma-apbh";
|
||||||
reg = <0x33000000 0x2000>;
|
reg = <0x33000000 0x2000>;
|
||||||
interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
|
<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3";
|
|
||||||
#dma-cells = <1>;
|
#dma-cells = <1>;
|
||||||
dma-channels = <4>;
|
dma-channels = <4>;
|
||||||
clocks = <&clks IMX7D_NAND_USDHC_BUS_RAWNAND_CLK>;
|
clocks = <&clks IMX7D_NAND_USDHC_BUS_RAWNAND_CLK>;
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
&twsi1 {
|
&twsi1 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
pmic: max8925@3c {
|
pmic: max8925@3c {
|
||||||
compatible = "maxium,max8925";
|
compatible = "maxim,max8925";
|
||||||
reg = <0x3c>;
|
reg = <0x3c>;
|
||||||
interrupts = <1>;
|
interrupts = <1>;
|
||||||
interrupt-parent = <&intcmux4>;
|
interrupt-parent = <&intcmux4>;
|
||||||
|
|||||||
@@ -1134,7 +1134,7 @@
|
|||||||
|
|
||||||
qfprom: qfprom@fc4bc000 {
|
qfprom: qfprom@fc4bc000 {
|
||||||
compatible = "qcom,msm8974-qfprom", "qcom,qfprom";
|
compatible = "qcom,msm8974-qfprom", "qcom,qfprom";
|
||||||
reg = <0xfc4bc000 0x1000>;
|
reg = <0xfc4bc000 0x2100>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
tsens_calib: calib@d0 {
|
tsens_calib: calib@d0 {
|
||||||
|
|||||||
@@ -209,6 +209,18 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&extal1_clk {
|
||||||
|
clock-frequency = <26000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&extal2_clk {
|
||||||
|
clock-frequency = <48000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&extalr_clk {
|
||||||
|
clock-frequency = <32768>;
|
||||||
|
};
|
||||||
|
|
||||||
&pfc {
|
&pfc {
|
||||||
scifa0_pins: scifa0 {
|
scifa0_pins: scifa0 {
|
||||||
groups = "scifa0_data";
|
groups = "scifa0_data";
|
||||||
|
|||||||
@@ -450,17 +450,20 @@
|
|||||||
extalr_clk: extalr {
|
extalr_clk: extalr {
|
||||||
compatible = "fixed-clock";
|
compatible = "fixed-clock";
|
||||||
#clock-cells = <0>;
|
#clock-cells = <0>;
|
||||||
clock-frequency = <32768>;
|
/* This value must be overridden by the board. */
|
||||||
|
clock-frequency = <0>;
|
||||||
};
|
};
|
||||||
extal1_clk: extal1 {
|
extal1_clk: extal1 {
|
||||||
compatible = "fixed-clock";
|
compatible = "fixed-clock";
|
||||||
#clock-cells = <0>;
|
#clock-cells = <0>;
|
||||||
clock-frequency = <25000000>;
|
/* This value must be overridden by the board. */
|
||||||
|
clock-frequency = <0>;
|
||||||
};
|
};
|
||||||
extal2_clk: extal2 {
|
extal2_clk: extal2 {
|
||||||
compatible = "fixed-clock";
|
compatible = "fixed-clock";
|
||||||
#clock-cells = <0>;
|
#clock-cells = <0>;
|
||||||
clock-frequency = <48000000>;
|
/* This value must be overridden by the board. */
|
||||||
|
clock-frequency = <0>;
|
||||||
};
|
};
|
||||||
fsiack_clk: fsiack {
|
fsiack_clk: fsiack {
|
||||||
compatible = "fixed-clock";
|
compatible = "fixed-clock";
|
||||||
|
|||||||
@@ -24,8 +24,8 @@
|
|||||||
|
|
||||||
#include "sha256_glue.h"
|
#include "sha256_glue.h"
|
||||||
|
|
||||||
asmlinkage void sha256_block_data_order(u32 *digest, const void *data,
|
asmlinkage void sha256_block_data_order(struct sha256_state *state,
|
||||||
unsigned int num_blks);
|
const u8 *data, int num_blks);
|
||||||
|
|
||||||
int crypto_sha256_arm_update(struct shash_desc *desc, const u8 *data,
|
int crypto_sha256_arm_update(struct shash_desc *desc, const u8 *data,
|
||||||
unsigned int len)
|
unsigned int len)
|
||||||
@@ -33,23 +33,20 @@ int crypto_sha256_arm_update(struct shash_desc *desc, const u8 *data,
|
|||||||
/* make sure casting to sha256_block_fn() is safe */
|
/* make sure casting to sha256_block_fn() is safe */
|
||||||
BUILD_BUG_ON(offsetof(struct sha256_state, state) != 0);
|
BUILD_BUG_ON(offsetof(struct sha256_state, state) != 0);
|
||||||
|
|
||||||
return sha256_base_do_update(desc, data, len,
|
return sha256_base_do_update(desc, data, len, sha256_block_data_order);
|
||||||
(sha256_block_fn *)sha256_block_data_order);
|
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(crypto_sha256_arm_update);
|
EXPORT_SYMBOL(crypto_sha256_arm_update);
|
||||||
|
|
||||||
static int crypto_sha256_arm_final(struct shash_desc *desc, u8 *out)
|
static int crypto_sha256_arm_final(struct shash_desc *desc, u8 *out)
|
||||||
{
|
{
|
||||||
sha256_base_do_finalize(desc,
|
sha256_base_do_finalize(desc, sha256_block_data_order);
|
||||||
(sha256_block_fn *)sha256_block_data_order);
|
|
||||||
return sha256_base_finish(desc, out);
|
return sha256_base_finish(desc, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
int crypto_sha256_arm_finup(struct shash_desc *desc, const u8 *data,
|
int crypto_sha256_arm_finup(struct shash_desc *desc, const u8 *data,
|
||||||
unsigned int len, u8 *out)
|
unsigned int len, u8 *out)
|
||||||
{
|
{
|
||||||
sha256_base_do_update(desc, data, len,
|
sha256_base_do_update(desc, data, len, sha256_block_data_order);
|
||||||
(sha256_block_fn *)sha256_block_data_order);
|
|
||||||
return crypto_sha256_arm_final(desc, out);
|
return crypto_sha256_arm_final(desc, out);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(crypto_sha256_arm_finup);
|
EXPORT_SYMBOL(crypto_sha256_arm_finup);
|
||||||
|
|||||||
@@ -25,27 +25,25 @@ MODULE_ALIAS_CRYPTO("sha512");
|
|||||||
MODULE_ALIAS_CRYPTO("sha384-arm");
|
MODULE_ALIAS_CRYPTO("sha384-arm");
|
||||||
MODULE_ALIAS_CRYPTO("sha512-arm");
|
MODULE_ALIAS_CRYPTO("sha512-arm");
|
||||||
|
|
||||||
asmlinkage void sha512_block_data_order(u64 *state, u8 const *src, int blocks);
|
asmlinkage void sha512_block_data_order(struct sha512_state *state,
|
||||||
|
u8 const *src, int blocks);
|
||||||
|
|
||||||
int sha512_arm_update(struct shash_desc *desc, const u8 *data,
|
int sha512_arm_update(struct shash_desc *desc, const u8 *data,
|
||||||
unsigned int len)
|
unsigned int len)
|
||||||
{
|
{
|
||||||
return sha512_base_do_update(desc, data, len,
|
return sha512_base_do_update(desc, data, len, sha512_block_data_order);
|
||||||
(sha512_block_fn *)sha512_block_data_order);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sha512_arm_final(struct shash_desc *desc, u8 *out)
|
static int sha512_arm_final(struct shash_desc *desc, u8 *out)
|
||||||
{
|
{
|
||||||
sha512_base_do_finalize(desc,
|
sha512_base_do_finalize(desc, sha512_block_data_order);
|
||||||
(sha512_block_fn *)sha512_block_data_order);
|
|
||||||
return sha512_base_finish(desc, out);
|
return sha512_base_finish(desc, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
int sha512_arm_finup(struct shash_desc *desc, const u8 *data,
|
int sha512_arm_finup(struct shash_desc *desc, const u8 *data,
|
||||||
unsigned int len, u8 *out)
|
unsigned int len, u8 *out)
|
||||||
{
|
{
|
||||||
sha512_base_do_update(desc, data, len,
|
sha512_base_do_update(desc, data, len, sha512_block_data_order);
|
||||||
(sha512_block_fn *)sha512_block_data_order);
|
|
||||||
return sha512_arm_final(desc, out);
|
return sha512_arm_final(desc, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
static __always_inline bool arch_static_branch(struct static_key *key, bool branch)
|
static __always_inline bool arch_static_branch(struct static_key *key, bool branch)
|
||||||
{
|
{
|
||||||
asm_volatile_goto("1:\n\t"
|
asm goto("1:\n\t"
|
||||||
WASM(nop) "\n\t"
|
WASM(nop) "\n\t"
|
||||||
".pushsection __jump_table, \"aw\"\n\t"
|
".pushsection __jump_table, \"aw\"\n\t"
|
||||||
".word 1b, %l[l_yes], %c0\n\t"
|
".word 1b, %l[l_yes], %c0\n\t"
|
||||||
@@ -25,7 +25,7 @@ l_yes:
|
|||||||
|
|
||||||
static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch)
|
static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch)
|
||||||
{
|
{
|
||||||
asm_volatile_goto("1:\n\t"
|
asm goto("1:\n\t"
|
||||||
WASM(b) " %l[l_yes]\n\t"
|
WASM(b) " %l[l_yes]\n\t"
|
||||||
".pushsection __jump_table, \"aw\"\n\t"
|
".pushsection __jump_table, \"aw\"\n\t"
|
||||||
".word 1b, %l[l_yes], %c0\n\t"
|
".word 1b, %l[l_yes], %c0\n\t"
|
||||||
|
|||||||
@@ -127,6 +127,10 @@ cpu_resume_after_mmu:
|
|||||||
instr_sync
|
instr_sync
|
||||||
#endif
|
#endif
|
||||||
bl cpu_init @ restore the und/abt/irq banked regs
|
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
|
mov r0, #0 @ return zero on success
|
||||||
ldmfd sp!, {r4 - r11, pc}
|
ldmfd sp!, {r4 - r11, pc}
|
||||||
ENDPROC(cpu_resume_after_mmu)
|
ENDPROC(cpu_resume_after_mmu)
|
||||||
|
|||||||
@@ -339,6 +339,7 @@ static struct gpiod_lookup_table ep93xx_i2c_gpiod_table = {
|
|||||||
GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN),
|
GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN),
|
||||||
GPIO_LOOKUP_IDX("G", 0, NULL, 1,
|
GPIO_LOOKUP_IDX("G", 0, NULL, 1,
|
||||||
GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN),
|
GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN),
|
||||||
|
{ }
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,6 @@
|
|||||||
#include <linux/platform_data/spi-omap2-mcspi.h>
|
#include <linux/platform_data/spi-omap2-mcspi.h>
|
||||||
#include <linux/platform_data/mmc-omap.h>
|
#include <linux/platform_data/mmc-omap.h>
|
||||||
#include <linux/mfd/menelaus.h>
|
#include <linux/mfd/menelaus.h>
|
||||||
#include <sound/tlv320aic3x.h>
|
|
||||||
|
|
||||||
#include <asm/mach/arch.h>
|
#include <asm/mach/arch.h>
|
||||||
#include <asm/mach-types.h>
|
#include <asm/mach-types.h>
|
||||||
@@ -567,10 +566,6 @@ struct menelaus_platform_data n8x0_menelaus_platform_data = {
|
|||||||
.late_init = n8x0_menelaus_late_init,
|
.late_init = n8x0_menelaus_late_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct aic3x_pdata n810_aic33_data = {
|
|
||||||
.gpio_reset = 118,
|
|
||||||
};
|
|
||||||
|
|
||||||
static int __init n8x0_late_initcall(void)
|
static int __init n8x0_late_initcall(void)
|
||||||
{
|
{
|
||||||
if (!board_caps)
|
if (!board_caps)
|
||||||
|
|||||||
@@ -2,12 +2,10 @@
|
|||||||
#ifndef __OMAP_COMMON_BOARD_DEVICES__
|
#ifndef __OMAP_COMMON_BOARD_DEVICES__
|
||||||
#define __OMAP_COMMON_BOARD_DEVICES__
|
#define __OMAP_COMMON_BOARD_DEVICES__
|
||||||
|
|
||||||
#include <sound/tlv320aic3x.h>
|
|
||||||
#include <linux/mfd/menelaus.h>
|
#include <linux/mfd/menelaus.h>
|
||||||
|
|
||||||
void *n8x0_legacy_init(void);
|
void *n8x0_legacy_init(void);
|
||||||
|
|
||||||
extern struct menelaus_platform_data n8x0_menelaus_platform_data;
|
extern struct menelaus_platform_data n8x0_menelaus_platform_data;
|
||||||
extern struct aic3x_pdata n810_aic33_data;
|
|
||||||
|
|
||||||
#endif /* __OMAP_COMMON_BOARD_DEVICES__ */
|
#endif /* __OMAP_COMMON_BOARD_DEVICES__ */
|
||||||
|
|||||||
@@ -440,7 +440,6 @@ static struct of_dev_auxdata omap_auxdata_lookup[] = {
|
|||||||
#ifdef CONFIG_MACH_NOKIA_N8X0
|
#ifdef CONFIG_MACH_NOKIA_N8X0
|
||||||
OF_DEV_AUXDATA("ti,omap2420-mmc", 0x4809c000, "mmci-omap.0", NULL),
|
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("menelaus", 0x72, "1-0072", &n8x0_menelaus_platform_data),
|
||||||
OF_DEV_AUXDATA("tlv320aic3x", 0x18, "2-0018", &n810_aic33_data),
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef CONFIG_ARCH_OMAP3
|
#ifdef CONFIG_ARCH_OMAP3
|
||||||
OF_DEV_AUXDATA("ti,omap2-iommu", 0x5d000000, "5d000000.mmu",
|
OF_DEV_AUXDATA("ti,omap2-iommu", 0x5d000000, "5d000000.mmu",
|
||||||
|
|||||||
@@ -1752,7 +1752,6 @@ config ARM64_LSE_ATOMICS
|
|||||||
|
|
||||||
config ARM64_USE_LSE_ATOMICS
|
config ARM64_USE_LSE_ATOMICS
|
||||||
bool "Atomic instructions"
|
bool "Atomic instructions"
|
||||||
depends on JUMP_LABEL
|
|
||||||
default y
|
default y
|
||||||
help
|
help
|
||||||
As part of the Large System Extensions, ARMv8.1 introduces new
|
As part of the Large System Extensions, ARMv8.1 introduces new
|
||||||
|
|||||||
@@ -291,6 +291,8 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
&spdif {
|
&spdif {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spdif_tx_pin>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -166,6 +166,8 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
&spdif {
|
&spdif {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spdif_tx_pin>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -406,6 +406,7 @@
|
|||||||
function = "spi1";
|
function = "spi1";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/omit-if-no-ref/
|
||||||
spdif_tx_pin: spdif-tx-pin {
|
spdif_tx_pin: spdif-tx-pin {
|
||||||
pins = "PH7";
|
pins = "PH7";
|
||||||
function = "spdif";
|
function = "spdif";
|
||||||
@@ -655,10 +656,8 @@
|
|||||||
clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>;
|
clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>;
|
||||||
clock-names = "apb", "spdif";
|
clock-names = "apb", "spdif";
|
||||||
resets = <&ccu RST_BUS_SPDIF>;
|
resets = <&ccu RST_BUS_SPDIF>;
|
||||||
dmas = <&dma 2>;
|
dmas = <&dma 2>, <&dma 2>;
|
||||||
dma-names = "tx";
|
dma-names = "rx", "tx";
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&spdif_tx_pin>;
|
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -145,7 +145,6 @@
|
|||||||
msix: msix@fbe00000 {
|
msix: msix@fbe00000 {
|
||||||
compatible = "al,alpine-msix";
|
compatible = "al,alpine-msix";
|
||||||
reg = <0x0 0xfbe00000 0x0 0x100000>;
|
reg = <0x0 0xfbe00000 0x0 0x100000>;
|
||||||
interrupt-controller;
|
|
||||||
msi-controller;
|
msi-controller;
|
||||||
al,msi-base-spi = <160>;
|
al,msi-base-spi = <160>;
|
||||||
al,msi-num-spis = <160>;
|
al,msi-num-spis = <160>;
|
||||||
|
|||||||
@@ -351,7 +351,6 @@
|
|||||||
msix: msix@fbe00000 {
|
msix: msix@fbe00000 {
|
||||||
compatible = "al,alpine-msix";
|
compatible = "al,alpine-msix";
|
||||||
reg = <0x0 0xfbe00000 0x0 0x100000>;
|
reg = <0x0 0xfbe00000 0x0 0x100000>;
|
||||||
interrupt-controller;
|
|
||||||
msi-controller;
|
msi-controller;
|
||||||
al,msi-base-spi = <336>;
|
al,msi-base-spi = <336>;
|
||||||
al,msi-num-spis = <959>;
|
al,msi-num-spis = <959>;
|
||||||
|
|||||||
@@ -180,9 +180,6 @@
|
|||||||
brcm,num-gphy = <5>;
|
brcm,num-gphy = <5>;
|
||||||
brcm,num-rgmii-ports = <2>;
|
brcm,num-rgmii-ports = <2>;
|
||||||
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <0>;
|
|
||||||
|
|
||||||
ports: ports {
|
ports: ports {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
|||||||
@@ -584,6 +584,7 @@
|
|||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
gpio-controller;
|
gpio-controller;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupts = <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -442,6 +442,7 @@
|
|||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
gpio-controller;
|
gpio-controller;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
gpio-ranges = <&pinmux 0 0 16>,
|
gpio-ranges = <&pinmux 0 0 16>,
|
||||||
<&pinmux 16 71 2>,
|
<&pinmux 16 71 2>,
|
||||||
|
|||||||
@@ -38,8 +38,8 @@ conn_subsys: bus@5b000000 {
|
|||||||
interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
reg = <0x5b010000 0x10000>;
|
reg = <0x5b010000 0x10000>;
|
||||||
clocks = <&sdhc0_lpcg IMX_LPCG_CLK_4>,
|
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";
|
clock-names = "ipg", "ahb", "per";
|
||||||
power-domains = <&pd IMX_SC_R_SDHC_0>;
|
power-domains = <&pd IMX_SC_R_SDHC_0>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
@@ -49,8 +49,8 @@ conn_subsys: bus@5b000000 {
|
|||||||
interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
reg = <0x5b020000 0x10000>;
|
reg = <0x5b020000 0x10000>;
|
||||||
clocks = <&sdhc1_lpcg IMX_LPCG_CLK_4>,
|
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";
|
clock-names = "ipg", "ahb", "per";
|
||||||
power-domains = <&pd IMX_SC_R_SDHC_1>;
|
power-domains = <&pd IMX_SC_R_SDHC_1>;
|
||||||
fsl,tuning-start-tap = <20>;
|
fsl,tuning-start-tap = <20>;
|
||||||
@@ -62,8 +62,8 @@ conn_subsys: bus@5b000000 {
|
|||||||
interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
reg = <0x5b030000 0x10000>;
|
reg = <0x5b030000 0x10000>;
|
||||||
clocks = <&sdhc2_lpcg IMX_LPCG_CLK_4>,
|
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";
|
clock-names = "ipg", "ahb", "per";
|
||||||
power-domains = <&pd IMX_SC_R_SDHC_2>;
|
power-domains = <&pd IMX_SC_R_SDHC_2>;
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
|
|||||||
@@ -294,8 +294,8 @@
|
|||||||
|
|
||||||
pinctrl_i2c4: i2c4grp {
|
pinctrl_i2c4: i2c4grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_I2C4_SCL_I2C4_SCL 0x400001c3
|
MX8MM_IOMUXC_I2C4_SCL_I2C4_SCL 0x40000083
|
||||||
MX8MM_IOMUXC_I2C4_SDA_I2C4_SDA 0x400001c3
|
MX8MM_IOMUXC_I2C4_SDA_I2C4_SDA 0x40000083
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -313,19 +313,19 @@
|
|||||||
|
|
||||||
pinctrl_uart1: uart1grp {
|
pinctrl_uart1: uart1grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SAI2_RXC_UART1_DCE_RX 0x140
|
MX8MM_IOMUXC_SAI2_RXC_UART1_DCE_RX 0x0
|
||||||
MX8MM_IOMUXC_SAI2_RXFS_UART1_DCE_TX 0x140
|
MX8MM_IOMUXC_SAI2_RXFS_UART1_DCE_TX 0x0
|
||||||
MX8MM_IOMUXC_SAI2_RXD0_UART1_DCE_RTS_B 0x140
|
MX8MM_IOMUXC_SAI2_RXD0_UART1_DCE_RTS_B 0x0
|
||||||
MX8MM_IOMUXC_SAI2_TXFS_UART1_DCE_CTS_B 0x140
|
MX8MM_IOMUXC_SAI2_TXFS_UART1_DCE_CTS_B 0x0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_uart2: uart2grp {
|
pinctrl_uart2: uart2grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX 0x140
|
MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX 0x0
|
||||||
MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX 0x140
|
MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX 0x0
|
||||||
MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B 0x140
|
MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B 0x0
|
||||||
MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B 0x140
|
MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B 0x0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -337,40 +337,40 @@
|
|||||||
|
|
||||||
pinctrl_usdhc2: usdhc2grp {
|
pinctrl_usdhc2: usdhc2grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x190
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x90
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
|
pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x194
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x94
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
|
pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x196
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x96
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -277,8 +277,8 @@
|
|||||||
|
|
||||||
pinctrl_i2c4: i2c4grp {
|
pinctrl_i2c4: i2c4grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_I2C4_SCL_I2C4_SCL 0x400001c3
|
MX8MM_IOMUXC_I2C4_SCL_I2C4_SCL 0x40000083
|
||||||
MX8MM_IOMUXC_I2C4_SDA_I2C4_SDA 0x400001c3
|
MX8MM_IOMUXC_I2C4_SDA_I2C4_SDA 0x40000083
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -290,19 +290,19 @@
|
|||||||
|
|
||||||
pinctrl_uart1: uart1grp {
|
pinctrl_uart1: uart1grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SAI2_RXC_UART1_DCE_RX 0x140
|
MX8MM_IOMUXC_SAI2_RXC_UART1_DCE_RX 0x0
|
||||||
MX8MM_IOMUXC_SAI2_RXFS_UART1_DCE_TX 0x140
|
MX8MM_IOMUXC_SAI2_RXFS_UART1_DCE_TX 0x0
|
||||||
MX8MM_IOMUXC_SAI2_RXD0_UART1_DCE_RTS_B 0x140
|
MX8MM_IOMUXC_SAI2_RXD0_UART1_DCE_RTS_B 0x0
|
||||||
MX8MM_IOMUXC_SAI2_TXFS_UART1_DCE_CTS_B 0x140
|
MX8MM_IOMUXC_SAI2_TXFS_UART1_DCE_CTS_B 0x0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_uart2: uart2grp {
|
pinctrl_uart2: uart2grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX 0x140
|
MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX 0x0
|
||||||
MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX 0x140
|
MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX 0x0
|
||||||
MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B 0x140
|
MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B 0x0
|
||||||
MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B 0x140
|
MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B 0x0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -314,40 +314,40 @@
|
|||||||
|
|
||||||
pinctrl_usdhc2: usdhc2grp {
|
pinctrl_usdhc2: usdhc2grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x190
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x90
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
|
pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x194
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x94
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
|
pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x196
|
MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x96
|
||||||
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6
|
MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6
|
MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6
|
MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6
|
MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6
|
MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6
|
||||||
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x019
|
MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12 0x19
|
||||||
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
|
MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0xd0
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -205,7 +205,7 @@
|
|||||||
reg = <0x52>;
|
reg = <0x52>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pinctrl_rtc>;
|
pinctrl-0 = <&pinctrl_rtc>;
|
||||||
interrupts-extended = <&gpio4 1 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts-extended = <&gpio4 1 IRQ_TYPE_LEVEL_LOW>;
|
||||||
trickle-diode-disable;
|
trickle-diode-disable;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -247,8 +247,8 @@
|
|||||||
|
|
||||||
pinctrl_i2c1: i2c1grp {
|
pinctrl_i2c1: i2c1grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3
|
MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x40000083
|
||||||
MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x400001c3
|
MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x40000083
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -237,8 +237,8 @@
|
|||||||
|
|
||||||
pinctrl_i2c1: i2c1grp {
|
pinctrl_i2c1: i2c1grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3
|
MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x40000083
|
||||||
MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x400001c3
|
MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x40000083
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -47,17 +47,6 @@
|
|||||||
gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
|
gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_usb_otg1_vbus: regulator-usb-otg1 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&pinctrl_reg_usb1_en>;
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "usb_otg1_vbus";
|
|
||||||
gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
|
||||||
enable-active-high;
|
|
||||||
regulator-min-microvolt = <5000000>;
|
|
||||||
regulator-max-microvolt = <5000000>;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* off-board header */
|
/* off-board header */
|
||||||
@@ -146,9 +135,10 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
&usbotg1 {
|
&usbotg1 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_usbotg1>;
|
||||||
dr_mode = "otg";
|
dr_mode = "otg";
|
||||||
over-current-active-low;
|
over-current-active-low;
|
||||||
vbus-supply = <®_usb_otg1_vbus>;
|
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -206,14 +196,6 @@
|
|||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pinctrl_reg_usb1_en: regusb1grp {
|
|
||||||
fsl,pins = <
|
|
||||||
MX8MM_IOMUXC_GPIO1_IO10_GPIO1_IO10 0x41
|
|
||||||
MX8MM_IOMUXC_GPIO1_IO12_GPIO1_IO12 0x141
|
|
||||||
MX8MM_IOMUXC_GPIO1_IO13_USB1_OTG_OC 0x41
|
|
||||||
>;
|
|
||||||
};
|
|
||||||
|
|
||||||
pinctrl_spi2: spi2grp {
|
pinctrl_spi2: spi2grp {
|
||||||
fsl,pins = <
|
fsl,pins = <
|
||||||
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6
|
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6
|
||||||
@@ -236,4 +218,11 @@
|
|||||||
MX8MM_IOMUXC_UART3_TXD_UART3_DCE_TX 0x140
|
MX8MM_IOMUXC_UART3_TXD_UART3_DCE_TX 0x140
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pinctrl_usbotg1: usbotg1grp {
|
||||||
|
fsl,pins = <
|
||||||
|
MX8MM_IOMUXC_GPIO1_IO12_GPIO1_IO12 0x141
|
||||||
|
MX8MM_IOMUXC_GPIO1_IO13_USB1_OTG_OC 0x41
|
||||||
|
>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -124,7 +124,6 @@
|
|||||||
amba {
|
amba {
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
#interrupt-cells = <3>;
|
|
||||||
|
|
||||||
compatible = "simple-bus";
|
compatible = "simple-bus";
|
||||||
interrupt-parent = <&gic>;
|
interrupt-parent = <&gic>;
|
||||||
|
|||||||
@@ -124,7 +124,6 @@
|
|||||||
amba {
|
amba {
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
#interrupt-cells = <3>;
|
|
||||||
|
|
||||||
compatible = "simple-bus";
|
compatible = "simple-bus";
|
||||||
interrupt-parent = <&gic>;
|
interrupt-parent = <&gic>;
|
||||||
|
|||||||
@@ -426,14 +426,14 @@
|
|||||||
crypto: crypto@90000 {
|
crypto: crypto@90000 {
|
||||||
compatible = "inside-secure,safexcel-eip97ies";
|
compatible = "inside-secure,safexcel-eip97ies";
|
||||||
reg = <0x90000 0x20000>;
|
reg = <0x90000 0x20000>;
|
||||||
interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
<GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
|
<GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
interrupt-names = "mem", "ring0", "ring1",
|
<GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
"ring2", "ring3", "eip";
|
interrupt-names = "ring0", "ring1", "ring2",
|
||||||
|
"ring3", "eip", "mem";
|
||||||
clocks = <&nb_periph_clk 15>;
|
clocks = <&nb_periph_clk 15>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -133,7 +133,6 @@
|
|||||||
|
|
||||||
odmi: odmi@300000 {
|
odmi: odmi@300000 {
|
||||||
compatible = "marvell,odmi-controller";
|
compatible = "marvell,odmi-controller";
|
||||||
interrupt-controller;
|
|
||||||
msi-controller;
|
msi-controller;
|
||||||
marvell,odmi-frames = <4>;
|
marvell,odmi-frames = <4>;
|
||||||
reg = <0x300000 0x4000>,
|
reg = <0x300000 0x4000>,
|
||||||
|
|||||||
@@ -506,14 +506,14 @@
|
|||||||
CP11X_LABEL(crypto): crypto@800000 {
|
CP11X_LABEL(crypto): crypto@800000 {
|
||||||
compatible = "inside-secure,safexcel-eip197b";
|
compatible = "inside-secure,safexcel-eip197b";
|
||||||
reg = <0x800000 0x200000>;
|
reg = <0x800000 0x200000>;
|
||||||
interrupts = <87 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <88 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<88 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
<89 IRQ_TYPE_LEVEL_HIGH>,
|
<89 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<90 IRQ_TYPE_LEVEL_HIGH>,
|
<90 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<91 IRQ_TYPE_LEVEL_HIGH>,
|
<91 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<92 IRQ_TYPE_LEVEL_HIGH>;
|
<92 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
interrupt-names = "mem", "ring0", "ring1",
|
<87 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
"ring2", "ring3", "eip";
|
interrupt-names = "ring0", "ring1", "ring2", "ring3",
|
||||||
|
"eip", "mem";
|
||||||
clock-names = "core", "reg";
|
clock-names = "core", "reg";
|
||||||
clocks = <&CP11X_LABEL(clk) 1 26>,
|
clocks = <&CP11X_LABEL(clk) 1 26>,
|
||||||
<&CP11X_LABEL(clk) 1 17>;
|
<&CP11X_LABEL(clk) 1 17>;
|
||||||
|
|||||||
@@ -128,7 +128,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
&pio {
|
&pio {
|
||||||
eth_default: eth_default {
|
eth_default: eth-default-pins {
|
||||||
tx_pins {
|
tx_pins {
|
||||||
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GBE_TXD3>,
|
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GBE_TXD3>,
|
||||||
<MT2712_PIN_72_GBE_TXD2__FUNC_GBE_TXD2>,
|
<MT2712_PIN_72_GBE_TXD2__FUNC_GBE_TXD2>,
|
||||||
@@ -155,7 +155,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
eth_sleep: eth_sleep {
|
eth_sleep: eth-sleep-pins {
|
||||||
tx_pins {
|
tx_pins {
|
||||||
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GPIO71>,
|
pinmux = <MT2712_PIN_71_GBE_TXD3__FUNC_GPIO71>,
|
||||||
<MT2712_PIN_72_GBE_TXD2__FUNC_GPIO72>,
|
<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 {
|
pins_iddig {
|
||||||
pinmux = <MT2712_PIN_12_IDDIG_P0__FUNC_IDDIG_A>;
|
pinmux = <MT2712_PIN_12_IDDIG_P0__FUNC_IDDIG_A>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
usb1_id_pins_float: usb1_iddig {
|
usb1_id_pins_float: usb1-iddig-pins {
|
||||||
pins_iddig {
|
pins_iddig {
|
||||||
pinmux = <MT2712_PIN_14_IDDIG_P1__FUNC_IDDIG_B>;
|
pinmux = <MT2712_PIN_14_IDDIG_P1__FUNC_IDDIG_B>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
|
|||||||
@@ -249,10 +249,11 @@
|
|||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
infracfg: syscon@10001000 {
|
infracfg: clock-controller@10001000 {
|
||||||
compatible = "mediatek,mt2712-infracfg", "syscon";
|
compatible = "mediatek,mt2712-infracfg", "syscon";
|
||||||
reg = <0 0x10001000 0 0x1000>;
|
reg = <0 0x10001000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
#reset-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
pericfg: syscon@10003000 {
|
pericfg: syscon@10003000 {
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
|
|
||||||
memory@40000000 {
|
memory@40000000 {
|
||||||
reg = <0 0x40000000 0 0x40000000>;
|
reg = <0 0x40000000 0 0x40000000>;
|
||||||
|
device_type = "memory";
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_1p8v: regulator-1p8v {
|
reg_1p8v: regulator-1p8v {
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
|
|
||||||
memory@40000000 {
|
memory@40000000 {
|
||||||
reg = <0 0x40000000 0 0x20000000>;
|
reg = <0 0x40000000 0 0x20000000>;
|
||||||
|
device_type = "memory";
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_1p8v: regulator-1p8v {
|
reg_1p8v: regulator-1p8v {
|
||||||
|
|||||||
@@ -251,7 +251,7 @@
|
|||||||
clock-names = "hif_sel";
|
clock-names = "hif_sel";
|
||||||
};
|
};
|
||||||
|
|
||||||
cir: cir@10009000 {
|
cir: ir-receiver@10009000 {
|
||||||
compatible = "mediatek,mt7622-cir";
|
compatible = "mediatek,mt7622-cir";
|
||||||
reg = <0 0x10009000 0 0x1000>;
|
reg = <0 0x10009000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_LOW>;
|
interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_LOW>;
|
||||||
@@ -282,16 +282,14 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
apmixedsys: apmixedsys@10209000 {
|
apmixedsys: clock-controller@10209000 {
|
||||||
compatible = "mediatek,mt7622-apmixedsys",
|
compatible = "mediatek,mt7622-apmixedsys";
|
||||||
"syscon";
|
|
||||||
reg = <0 0x10209000 0 0x1000>;
|
reg = <0 0x10209000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
topckgen: topckgen@10210000 {
|
topckgen: clock-controller@10210000 {
|
||||||
compatible = "mediatek,mt7622-topckgen",
|
compatible = "mediatek,mt7622-topckgen";
|
||||||
"syscon";
|
|
||||||
reg = <0 0x10210000 0 0x1000>;
|
reg = <0 0x10210000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
};
|
};
|
||||||
@@ -514,7 +512,6 @@
|
|||||||
<&pericfg CLK_PERI_AUXADC_PD>;
|
<&pericfg CLK_PERI_AUXADC_PD>;
|
||||||
clock-names = "therm", "auxadc";
|
clock-names = "therm", "auxadc";
|
||||||
resets = <&pericfg MT7622_PERI_THERM_SW_RST>;
|
resets = <&pericfg MT7622_PERI_THERM_SW_RST>;
|
||||||
reset-names = "therm";
|
|
||||||
mediatek,auxadc = <&auxadc>;
|
mediatek,auxadc = <&auxadc>;
|
||||||
mediatek,apmixedsys = <&apmixedsys>;
|
mediatek,apmixedsys = <&apmixedsys>;
|
||||||
nvmem-cells = <&thermal_calibration>;
|
nvmem-cells = <&thermal_calibration>;
|
||||||
@@ -734,9 +731,8 @@
|
|||||||
power-domains = <&scpsys MT7622_POWER_DOMAIN_WB>;
|
power-domains = <&scpsys MT7622_POWER_DOMAIN_WB>;
|
||||||
};
|
};
|
||||||
|
|
||||||
ssusbsys: ssusbsys@1a000000 {
|
ssusbsys: clock-controller@1a000000 {
|
||||||
compatible = "mediatek,mt7622-ssusbsys",
|
compatible = "mediatek,mt7622-ssusbsys";
|
||||||
"syscon";
|
|
||||||
reg = <0 0x1a000000 0 0x1000>;
|
reg = <0 0x1a000000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
#reset-cells = <1>;
|
#reset-cells = <1>;
|
||||||
@@ -793,9 +789,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
pciesys: pciesys@1a100800 {
|
pciesys: clock-controller@1a100800 {
|
||||||
compatible = "mediatek,mt7622-pciesys",
|
compatible = "mediatek,mt7622-pciesys";
|
||||||
"syscon";
|
|
||||||
reg = <0 0x1a100800 0 0x1000>;
|
reg = <0 0x1a100800 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
#reset-cells = <1>;
|
#reset-cells = <1>;
|
||||||
@@ -921,12 +916,13 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
hifsys: syscon@1af00000 {
|
hifsys: clock-controller@1af00000 {
|
||||||
compatible = "mediatek,mt7622-hifsys", "syscon";
|
compatible = "mediatek,mt7622-hifsys";
|
||||||
reg = <0 0x1af00000 0 0x70>;
|
reg = <0 0x1af00000 0 0x70>;
|
||||||
|
#clock-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
ethsys: syscon@1b000000 {
|
ethsys: clock-controller@1b000000 {
|
||||||
compatible = "mediatek,mt7622-ethsys",
|
compatible = "mediatek,mt7622-ethsys",
|
||||||
"syscon";
|
"syscon";
|
||||||
reg = <0 0x1b000000 0 0x1000>;
|
reg = <0 0x1b000000 0 0x1000>;
|
||||||
@@ -966,9 +962,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
eth: ethernet@1b100000 {
|
eth: ethernet@1b100000 {
|
||||||
compatible = "mediatek,mt7622-eth",
|
compatible = "mediatek,mt7622-eth";
|
||||||
"mediatek,mt2701-eth",
|
|
||||||
"syscon";
|
|
||||||
reg = <0 0x1b100000 0 0x20000>;
|
reg = <0 0x1b100000 0 0x20000>;
|
||||||
interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_LOW>,
|
interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_LOW>,
|
||||||
<GIC_SPI 224 IRQ_TYPE_LEVEL_LOW>,
|
<GIC_SPI 224 IRQ_TYPE_LEVEL_LOW>,
|
||||||
|
|||||||
@@ -110,6 +110,7 @@
|
|||||||
compatible = "mediatek,mt7986-infracfg", "syscon";
|
compatible = "mediatek,mt7986-infracfg", "syscon";
|
||||||
reg = <0 0x10001000 0 0x1000>;
|
reg = <0 0x10001000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
#reset-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
wed_pcie: wed-pcie@10003000 {
|
wed_pcie: wed-pcie@10003000 {
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "mt8183-kukui.dtsi"
|
#include "mt8183-kukui.dtsi"
|
||||||
|
/* Must come after mt8183-kukui.dtsi to modify cros_ec */
|
||||||
|
#include <arm/cros-ec-keyboard.dtsi>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
panel: panel {
|
panel: panel {
|
||||||
|
|||||||
@@ -372,6 +372,16 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&cros_ec {
|
||||||
|
cbas {
|
||||||
|
compatible = "google,cros-cbas";
|
||||||
|
};
|
||||||
|
|
||||||
|
keyboard-controller {
|
||||||
|
compatible = "google,cros-ec-keyb-switches";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
&qca_wifi {
|
&qca_wifi {
|
||||||
qcom,ath10k-calibration-variant = "GO_KAKADU";
|
qcom,ath10k-calibration-variant = "GO_KAKADU";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -339,6 +339,16 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&cros_ec {
|
||||||
|
cbas {
|
||||||
|
compatible = "google,cros-cbas";
|
||||||
|
};
|
||||||
|
|
||||||
|
keyboard-controller {
|
||||||
|
compatible = "google,cros-ec-keyb-switches";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
&qca_wifi {
|
&qca_wifi {
|
||||||
qcom,ath10k-calibration-variant = "GO_KODAMA";
|
qcom,ath10k-calibration-variant = "GO_KODAMA";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -343,6 +343,16 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&cros_ec {
|
||||||
|
cbas {
|
||||||
|
compatible = "google,cros-cbas";
|
||||||
|
};
|
||||||
|
|
||||||
|
keyboard-controller {
|
||||||
|
compatible = "google,cros-ec-keyb-switches";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
&qca_wifi {
|
&qca_wifi {
|
||||||
qcom,ath10k-calibration-variant = "LE_Krane";
|
qcom,ath10k-calibration-variant = "LE_Krane";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -896,10 +896,6 @@
|
|||||||
google,usb-port-id = <0>;
|
google,usb-port-id = <0>;
|
||||||
};
|
};
|
||||||
|
|
||||||
cbas {
|
|
||||||
compatible = "google,cros-cbas";
|
|
||||||
};
|
|
||||||
|
|
||||||
typec {
|
typec {
|
||||||
compatible = "google,cros-ec-typec";
|
compatible = "google,cros-ec-typec";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
@@ -999,5 +995,4 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
#include <arm/cros-ec-keyboard.dtsi>
|
|
||||||
#include <arm/cros-ec-sbs.dtsi>
|
#include <arm/cros-ec-sbs.dtsi>
|
||||||
|
|||||||
@@ -1554,6 +1554,7 @@
|
|||||||
compatible = "mediatek,mt8183-mfgcfg", "syscon";
|
compatible = "mediatek,mt8183-mfgcfg", "syscon";
|
||||||
reg = <0 0x13000000 0 0x1000>;
|
reg = <0 0x13000000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
power-domains = <&spm MT8183_POWER_DOMAIN_MFG_ASYNC>;
|
||||||
};
|
};
|
||||||
|
|
||||||
gpu: gpu@13040000 {
|
gpu: gpu@13040000 {
|
||||||
|
|||||||
@@ -819,10 +819,6 @@
|
|||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
|
|
||||||
base_detection: cbas {
|
|
||||||
compatible = "google,cros-cbas";
|
|
||||||
};
|
|
||||||
|
|
||||||
cros_ec_pwm: pwm {
|
cros_ec_pwm: pwm {
|
||||||
compatible = "google,cros-ec-pwm";
|
compatible = "google,cros-ec-pwm";
|
||||||
#pwm-cells = <1>;
|
#pwm-cells = <1>;
|
||||||
@@ -907,7 +903,7 @@
|
|||||||
mt6315_6_vbuck1: vbuck1 {
|
mt6315_6_vbuck1: vbuck1 {
|
||||||
regulator-compatible = "vbuck1";
|
regulator-compatible = "vbuck1";
|
||||||
regulator-name = "Vbcpu";
|
regulator-name = "Vbcpu";
|
||||||
regulator-min-microvolt = <300000>;
|
regulator-min-microvolt = <400000>;
|
||||||
regulator-max-microvolt = <1193750>;
|
regulator-max-microvolt = <1193750>;
|
||||||
regulator-enable-ramp-delay = <256>;
|
regulator-enable-ramp-delay = <256>;
|
||||||
regulator-allowed-modes = <0 1 2>;
|
regulator-allowed-modes = <0 1 2>;
|
||||||
@@ -917,7 +913,7 @@
|
|||||||
mt6315_6_vbuck3: vbuck3 {
|
mt6315_6_vbuck3: vbuck3 {
|
||||||
regulator-compatible = "vbuck3";
|
regulator-compatible = "vbuck3";
|
||||||
regulator-name = "Vlcpu";
|
regulator-name = "Vlcpu";
|
||||||
regulator-min-microvolt = <300000>;
|
regulator-min-microvolt = <400000>;
|
||||||
regulator-max-microvolt = <1193750>;
|
regulator-max-microvolt = <1193750>;
|
||||||
regulator-enable-ramp-delay = <256>;
|
regulator-enable-ramp-delay = <256>;
|
||||||
regulator-allowed-modes = <0 1 2>;
|
regulator-allowed-modes = <0 1 2>;
|
||||||
@@ -934,7 +930,7 @@
|
|||||||
mt6315_7_vbuck1: vbuck1 {
|
mt6315_7_vbuck1: vbuck1 {
|
||||||
regulator-compatible = "vbuck1";
|
regulator-compatible = "vbuck1";
|
||||||
regulator-name = "Vgpu";
|
regulator-name = "Vgpu";
|
||||||
regulator-min-microvolt = <606250>;
|
regulator-min-microvolt = <400000>;
|
||||||
regulator-max-microvolt = <800000>;
|
regulator-max-microvolt = <800000>;
|
||||||
regulator-enable-ramp-delay = <256>;
|
regulator-enable-ramp-delay = <256>;
|
||||||
regulator-allowed-modes = <0 1 2>;
|
regulator-allowed-modes = <0 1 2>;
|
||||||
|
|||||||
@@ -1240,6 +1240,7 @@
|
|||||||
reg = <0 0x14001000 0 0x1000>;
|
reg = <0 0x14001000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH 0>;
|
interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||||
clocks = <&mmsys CLK_MM_DISP_MUTEX0>;
|
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>,
|
mediatek,gce-events = <CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_0>,
|
||||||
<CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_1>;
|
<CMDQ_EVENT_DISP_STREAM_DONE_ENG_EVENT_1>;
|
||||||
power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
|
power-domains = <&spm MT8192_POWER_DOMAIN_DISP>;
|
||||||
@@ -1539,7 +1540,7 @@
|
|||||||
mediatek,scp = <&scp>;
|
mediatek,scp = <&scp>;
|
||||||
power-domains = <&spm MT8192_POWER_DOMAIN_VENC>;
|
power-domains = <&spm MT8192_POWER_DOMAIN_VENC>;
|
||||||
clocks = <&vencsys CLK_VENC_SET1_VENC>;
|
clocks = <&vencsys CLK_VENC_SET1_VENC>;
|
||||||
clock-names = "venc-set1";
|
clock-names = "venc_sel";
|
||||||
assigned-clocks = <&topckgen CLK_TOP_VENC_SEL>;
|
assigned-clocks = <&topckgen CLK_TOP_VENC_SEL>;
|
||||||
assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D4>;
|
assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D4>;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -13,3 +13,7 @@
|
|||||||
&ts_10 {
|
&ts_10 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&watchdog {
|
||||||
|
/delete-property/ mediatek,disable-extrst;
|
||||||
|
};
|
||||||
|
|||||||
@@ -33,3 +33,7 @@
|
|||||||
&ts_10 {
|
&ts_10 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&watchdog {
|
||||||
|
/delete-property/ mediatek,disable-extrst;
|
||||||
|
};
|
||||||
|
|||||||
@@ -34,3 +34,7 @@
|
|||||||
&ts_10 {
|
&ts_10 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&watchdog {
|
||||||
|
/delete-property/ mediatek,disable-extrst;
|
||||||
|
};
|
||||||
|
|||||||
@@ -845,7 +845,7 @@
|
|||||||
mt6315_6_vbuck1: vbuck1 {
|
mt6315_6_vbuck1: vbuck1 {
|
||||||
regulator-compatible = "vbuck1";
|
regulator-compatible = "vbuck1";
|
||||||
regulator-name = "Vbcpu";
|
regulator-name = "Vbcpu";
|
||||||
regulator-min-microvolt = <300000>;
|
regulator-min-microvolt = <400000>;
|
||||||
regulator-max-microvolt = <1193750>;
|
regulator-max-microvolt = <1193750>;
|
||||||
regulator-enable-ramp-delay = <256>;
|
regulator-enable-ramp-delay = <256>;
|
||||||
regulator-ramp-delay = <6250>;
|
regulator-ramp-delay = <6250>;
|
||||||
@@ -863,7 +863,7 @@
|
|||||||
mt6315_7_vbuck1: vbuck1 {
|
mt6315_7_vbuck1: vbuck1 {
|
||||||
regulator-compatible = "vbuck1";
|
regulator-compatible = "vbuck1";
|
||||||
regulator-name = "Vgpu";
|
regulator-name = "Vgpu";
|
||||||
regulator-min-microvolt = <625000>;
|
regulator-min-microvolt = <400000>;
|
||||||
regulator-max-microvolt = <1193750>;
|
regulator-max-microvolt = <1193750>;
|
||||||
regulator-enable-ramp-delay = <256>;
|
regulator-enable-ramp-delay = <256>;
|
||||||
regulator-ramp-delay = <6250>;
|
regulator-ramp-delay = <6250>;
|
||||||
|
|||||||
@@ -111,6 +111,7 @@
|
|||||||
compatible = "mediatek,mt6360";
|
compatible = "mediatek,mt6360";
|
||||||
reg = <0x34>;
|
reg = <0x34>;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <1>;
|
||||||
interrupts-extended = <&pio 101 IRQ_TYPE_EDGE_FALLING>;
|
interrupts-extended = <&pio 101 IRQ_TYPE_EDGE_FALLING>;
|
||||||
interrupt-names = "IRQB";
|
interrupt-names = "IRQB";
|
||||||
|
|
||||||
|
|||||||
@@ -1492,6 +1492,7 @@
|
|||||||
compatible = "mediatek,mt8195-vppsys0";
|
compatible = "mediatek,mt8195-vppsys0";
|
||||||
reg = <0 0x14000000 0 0x1000>;
|
reg = <0 0x14000000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
smi_sub_common_vpp0_vpp1_2x1: smi@14010000 {
|
smi_sub_common_vpp0_vpp1_2x1: smi@14010000 {
|
||||||
@@ -1597,6 +1598,7 @@
|
|||||||
compatible = "mediatek,mt8195-vppsys1";
|
compatible = "mediatek,mt8195-vppsys1";
|
||||||
reg = <0 0x14f00000 0 0x1000>;
|
reg = <0 0x14f00000 0 0x1000>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
mediatek,gce-client-reg = <&gce1 SUBSYS_14f0XXXX 0 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
larb5: larb@14f02000 {
|
larb5: larb@14f02000 {
|
||||||
@@ -1982,6 +1984,7 @@
|
|||||||
reg = <0 0x1c01a000 0 0x1000>;
|
reg = <0 0x1c01a000 0 0x1000>;
|
||||||
mboxes = <&gce0 0 CMDQ_THR_PRIO_4>;
|
mboxes = <&gce0 0 CMDQ_THR_PRIO_4>;
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
|
mediatek,gce-client-reg = <&gce0 SUBSYS_1c01XXXX 0xa000 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
larb20: larb@1b010000 {
|
larb20: larb@1b010000 {
|
||||||
@@ -2085,6 +2088,7 @@
|
|||||||
interrupts = <GIC_SPI 658 IRQ_TYPE_LEVEL_HIGH 0>;
|
interrupts = <GIC_SPI 658 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||||
power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
|
power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;
|
||||||
clocks = <&vdosys0 CLK_VDO0_DISP_MUTEX0>;
|
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>;
|
mediatek,gce-events = <CMDQ_EVENT_VDO0_DISP_STREAM_DONE_0>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2024,7 +2024,7 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
phy-handle = <&mgbe0_phy>;
|
phy-handle = <&mgbe0_phy>;
|
||||||
phy-mode = "usxgmii";
|
phy-mode = "10gbase-r";
|
||||||
|
|
||||||
mdio {
|
mdio {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
|||||||
@@ -169,10 +169,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&blsp_dma {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&blsp_i2c2 {
|
&blsp_i2c2 {
|
||||||
/* On Low speed expansion */
|
/* On Low speed expansion */
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|||||||
@@ -1522,7 +1522,7 @@
|
|||||||
clock-names = "bam_clk";
|
clock-names = "bam_clk";
|
||||||
#dma-cells = <1>;
|
#dma-cells = <1>;
|
||||||
qcom,ee = <0>;
|
qcom,ee = <0>;
|
||||||
status = "disabled";
|
qcom,controlled-remotely;
|
||||||
};
|
};
|
||||||
|
|
||||||
blsp1_uart1: serial@78af000 {
|
blsp1_uart1: serial@78af000 {
|
||||||
|
|||||||
@@ -923,6 +923,8 @@ ap_spi_fp: &spi10 {
|
|||||||
vddrf-supply = <&pp1300_l2c>;
|
vddrf-supply = <&pp1300_l2c>;
|
||||||
vddch0-supply = <&pp3300_l10c>;
|
vddch0-supply = <&pp3300_l10c>;
|
||||||
max-speed = <3200000>;
|
max-speed = <3200000>;
|
||||||
|
|
||||||
|
qcom,local-bd-address-broken;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2028,8 +2028,16 @@
|
|||||||
ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
|
ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
|
||||||
<0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
|
<0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
|
||||||
|
|
||||||
interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
interrupt-names = "msi";
|
<GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
interrupt-names = "msi0", "msi1", "msi2", "msi3",
|
||||||
|
"msi4", "msi5", "msi6", "msi7";
|
||||||
#interrupt-cells = <1>;
|
#interrupt-cells = <1>;
|
||||||
interrupt-map-mask = <0 0 0 0x7>;
|
interrupt-map-mask = <0 0 0 0x7>;
|
||||||
interrupt-map = <0 0 0 1 &intc 0 0 0 434 IRQ_TYPE_LEVEL_HIGH>,
|
interrupt-map = <0 0 0 1 &intc 0 0 0 434 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
|||||||
@@ -532,7 +532,7 @@
|
|||||||
&pcie0 {
|
&pcie0 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
|
perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
|
||||||
enable-gpio = <&tlmm 134 GPIO_ACTIVE_HIGH>;
|
wake-gpios = <&tlmm 134 GPIO_ACTIVE_HIGH>;
|
||||||
|
|
||||||
vddpe-3v3-supply = <&pcie0_3p3v_dual>;
|
vddpe-3v3-supply = <&pcie0_3p3v_dual>;
|
||||||
|
|
||||||
|
|||||||
@@ -4049,7 +4049,7 @@
|
|||||||
assigned-clock-rates = <19200000>, <150000000>;
|
assigned-clock-rates = <19200000>, <150000000>;
|
||||||
|
|
||||||
interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&intc GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>,
|
<&pdc_intc 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&pdc_intc 8 IRQ_TYPE_EDGE_BOTH>,
|
<&pdc_intc 8 IRQ_TYPE_EDGE_BOTH>,
|
||||||
<&pdc_intc 9 IRQ_TYPE_EDGE_BOTH>;
|
<&pdc_intc 9 IRQ_TYPE_EDGE_BOTH>;
|
||||||
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
||||||
@@ -4100,7 +4100,7 @@
|
|||||||
assigned-clock-rates = <19200000>, <150000000>;
|
assigned-clock-rates = <19200000>, <150000000>;
|
||||||
|
|
||||||
interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&intc GIC_SPI 487 IRQ_TYPE_LEVEL_HIGH>,
|
<&pdc_intc 7 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&pdc_intc 10 IRQ_TYPE_EDGE_BOTH>,
|
<&pdc_intc 10 IRQ_TYPE_EDGE_BOTH>,
|
||||||
<&pdc_intc 11 IRQ_TYPE_EDGE_BOTH>;
|
<&pdc_intc 11 IRQ_TYPE_EDGE_BOTH>;
|
||||||
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
||||||
|
|||||||
@@ -1822,8 +1822,8 @@
|
|||||||
phys = <&pcie0_lane>;
|
phys = <&pcie0_lane>;
|
||||||
phy-names = "pciephy";
|
phy-names = "pciephy";
|
||||||
|
|
||||||
perst-gpio = <&tlmm 35 GPIO_ACTIVE_HIGH>;
|
perst-gpios = <&tlmm 35 GPIO_ACTIVE_HIGH>;
|
||||||
enable-gpio = <&tlmm 37 GPIO_ACTIVE_HIGH>;
|
wake-gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>;
|
||||||
|
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&pcie0_default_state>;
|
pinctrl-0 = <&pcie0_default_state>;
|
||||||
@@ -1925,7 +1925,7 @@
|
|||||||
phys = <&pcie1_lane>;
|
phys = <&pcie1_lane>;
|
||||||
phy-names = "pciephy";
|
phy-names = "pciephy";
|
||||||
|
|
||||||
perst-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>;
|
perst-gpios = <&tlmm 102 GPIO_ACTIVE_HIGH>;
|
||||||
enable-gpio = <&tlmm 104 GPIO_ACTIVE_HIGH>;
|
enable-gpio = <&tlmm 104 GPIO_ACTIVE_HIGH>;
|
||||||
|
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
@@ -3629,7 +3629,7 @@
|
|||||||
assigned-clock-rates = <19200000>, <200000000>;
|
assigned-clock-rates = <19200000>, <200000000>;
|
||||||
|
|
||||||
interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&intc GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>,
|
<&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&pdc 8 IRQ_TYPE_EDGE_BOTH>,
|
<&pdc 8 IRQ_TYPE_EDGE_BOTH>,
|
||||||
<&pdc 9 IRQ_TYPE_EDGE_BOTH>;
|
<&pdc 9 IRQ_TYPE_EDGE_BOTH>;
|
||||||
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
||||||
@@ -3678,7 +3678,7 @@
|
|||||||
assigned-clock-rates = <19200000>, <200000000>;
|
assigned-clock-rates = <19200000>, <200000000>;
|
||||||
|
|
||||||
interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&intc GIC_SPI 487 IRQ_TYPE_LEVEL_HIGH>,
|
<&pdc 7 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<&pdc 10 IRQ_TYPE_EDGE_BOTH>,
|
<&pdc 10 IRQ_TYPE_EDGE_BOTH>,
|
||||||
<&pdc 11 IRQ_TYPE_EDGE_BOTH>;
|
<&pdc 11 IRQ_TYPE_EDGE_BOTH>;
|
||||||
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
interrupt-names = "hs_phy_irq", "ss_phy_irq",
|
||||||
|
|||||||
@@ -656,8 +656,8 @@
|
|||||||
|
|
||||||
avb0: ethernet@e6800000 {
|
avb0: ethernet@e6800000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6800000 0 0x800>;
|
reg = <0 0xe6800000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -704,8 +704,8 @@
|
|||||||
|
|
||||||
avb1: ethernet@e6810000 {
|
avb1: ethernet@e6810000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6810000 0 0x800>;
|
reg = <0 0xe6810000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -752,7 +752,7 @@
|
|||||||
|
|
||||||
avb2: ethernet@e6820000 {
|
avb2: ethernet@e6820000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6820000 0 0x1000>;
|
reg = <0 0xe6820000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -800,7 +800,7 @@
|
|||||||
|
|
||||||
avb3: ethernet@e6830000 {
|
avb3: ethernet@e6830000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6830000 0 0x1000>;
|
reg = <0 0xe6830000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -848,7 +848,7 @@
|
|||||||
|
|
||||||
avb4: ethernet@e6840000 {
|
avb4: ethernet@e6840000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6840000 0 0x1000>;
|
reg = <0 0xe6840000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -896,7 +896,7 @@
|
|||||||
|
|
||||||
avb5: ethernet@e6850000 {
|
avb5: ethernet@e6850000 {
|
||||||
compatible = "renesas,etheravb-r8a779a0",
|
compatible = "renesas,etheravb-r8a779a0",
|
||||||
"renesas,etheravb-rcar-gen3";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6850000 0 0x1000>;
|
reg = <0 0xe6850000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 382 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 382 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -1019,7 +1019,7 @@
|
|||||||
|
|
||||||
msiof0: spi@e6e90000 {
|
msiof0: spi@e6e90000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6e90000 0 0x0064>;
|
reg = <0 0xe6e90000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 618>;
|
clocks = <&cpg CPG_MOD 618>;
|
||||||
@@ -1034,7 +1034,7 @@
|
|||||||
|
|
||||||
msiof1: spi@e6ea0000 {
|
msiof1: spi@e6ea0000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6ea0000 0 0x0064>;
|
reg = <0 0xe6ea0000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 619>;
|
clocks = <&cpg CPG_MOD 619>;
|
||||||
@@ -1049,7 +1049,7 @@
|
|||||||
|
|
||||||
msiof2: spi@e6c00000 {
|
msiof2: spi@e6c00000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6c00000 0 0x0064>;
|
reg = <0 0xe6c00000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 620>;
|
clocks = <&cpg CPG_MOD 620>;
|
||||||
@@ -1064,7 +1064,7 @@
|
|||||||
|
|
||||||
msiof3: spi@e6c10000 {
|
msiof3: spi@e6c10000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6c10000 0 0x0064>;
|
reg = <0 0xe6c10000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 621>;
|
clocks = <&cpg CPG_MOD 621>;
|
||||||
@@ -1079,7 +1079,7 @@
|
|||||||
|
|
||||||
msiof4: spi@e6c20000 {
|
msiof4: spi@e6c20000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6c20000 0 0x0064>;
|
reg = <0 0xe6c20000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 622>;
|
clocks = <&cpg CPG_MOD 622>;
|
||||||
@@ -1094,7 +1094,7 @@
|
|||||||
|
|
||||||
msiof5: spi@e6c28000 {
|
msiof5: spi@e6c28000 {
|
||||||
compatible = "renesas,msiof-r8a779a0",
|
compatible = "renesas,msiof-r8a779a0",
|
||||||
"renesas,rcar-gen3-msiof";
|
"renesas,rcar-gen4-msiof";
|
||||||
reg = <0 0xe6c28000 0 0x0064>;
|
reg = <0 0xe6c28000 0 0x0064>;
|
||||||
interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>;
|
interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
clocks = <&cpg CPG_MOD 623>;
|
clocks = <&cpg CPG_MOD 623>;
|
||||||
|
|||||||
@@ -337,7 +337,7 @@
|
|||||||
avb0: ethernet@e6800000 {
|
avb0: ethernet@e6800000 {
|
||||||
compatible = "renesas,etheravb-r8a779g0",
|
compatible = "renesas,etheravb-r8a779g0",
|
||||||
"renesas,etheravb-rcar-gen4";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6800000 0 0x800>;
|
reg = <0 0xe6800000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
@@ -384,7 +384,7 @@
|
|||||||
avb1: ethernet@e6810000 {
|
avb1: ethernet@e6810000 {
|
||||||
compatible = "renesas,etheravb-r8a779g0",
|
compatible = "renesas,etheravb-r8a779g0",
|
||||||
"renesas,etheravb-rcar-gen4";
|
"renesas,etheravb-rcar-gen4";
|
||||||
reg = <0 0xe6810000 0 0x800>;
|
reg = <0 0xe6810000 0 0x1000>;
|
||||||
interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
|
interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 362 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 362 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||||
/*
|
/*
|
||||||
* Device Tree Source for the RZ/G2UL SoC
|
* Device Tree Source for the RZ/Five and RZ/G2UL SoCs
|
||||||
*
|
*
|
||||||
* Copyright (C) 2022 Renesas Electronics Corp.
|
* Copyright (C) 2022 Renesas Electronics Corp.
|
||||||
*/
|
*/
|
||||||
@@ -68,36 +68,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
cpus {
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <0>;
|
|
||||||
|
|
||||||
cpu0: cpu@0 {
|
|
||||||
compatible = "arm,cortex-a55";
|
|
||||||
reg = <0>;
|
|
||||||
device_type = "cpu";
|
|
||||||
#cooling-cells = <2>;
|
|
||||||
next-level-cache = <&L3_CA55>;
|
|
||||||
enable-method = "psci";
|
|
||||||
clocks = <&cpg CPG_CORE R9A07G043_CLK_I>;
|
|
||||||
operating-points-v2 = <&cluster0_opp>;
|
|
||||||
};
|
|
||||||
|
|
||||||
L3_CA55: cache-controller-0 {
|
|
||||||
compatible = "cache";
|
|
||||||
cache-unified;
|
|
||||||
cache-size = <0x40000>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
psci {
|
|
||||||
compatible = "arm,psci-1.0", "arm,psci-0.2";
|
|
||||||
method = "smc";
|
|
||||||
};
|
|
||||||
|
|
||||||
soc: soc {
|
soc: soc {
|
||||||
compatible = "simple-bus";
|
compatible = "simple-bus";
|
||||||
interrupt-parent = <&gic>;
|
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
#size-cells = <2>;
|
#size-cells = <2>;
|
||||||
ranges;
|
ranges;
|
||||||
@@ -545,12 +517,6 @@
|
|||||||
sysc: system-controller@11020000 {
|
sysc: system-controller@11020000 {
|
||||||
compatible = "renesas,r9a07g043-sysc";
|
compatible = "renesas,r9a07g043-sysc";
|
||||||
reg = <0 0x11020000 0 0x10000>;
|
reg = <0 0x11020000 0 0x10000>;
|
||||||
interrupts = <SOC_PERIPHERAL_IRQ(42) IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
<SOC_PERIPHERAL_IRQ(43) IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
<SOC_PERIPHERAL_IRQ(44) IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
<SOC_PERIPHERAL_IRQ(45) IRQ_TYPE_LEVEL_HIGH>;
|
|
||||||
interrupt-names = "lpm_int", "ca55stbydone_int",
|
|
||||||
"cm33stbyr_int", "ca55_deny";
|
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -603,16 +569,6 @@
|
|||||||
dma-channels = <16>;
|
dma-channels = <16>;
|
||||||
};
|
};
|
||||||
|
|
||||||
gic: interrupt-controller@11900000 {
|
|
||||||
compatible = "arm,gic-v3";
|
|
||||||
#interrupt-cells = <3>;
|
|
||||||
#address-cells = <0>;
|
|
||||||
interrupt-controller;
|
|
||||||
reg = <0x0 0x11900000 0 0x40000>,
|
|
||||||
<0x0 0x11940000 0 0x60000>;
|
|
||||||
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
|
|
||||||
};
|
|
||||||
|
|
||||||
sdhi0: mmc@11c00000 {
|
sdhi0: mmc@11c00000 {
|
||||||
compatible = "renesas,sdhi-r9a07g043",
|
compatible = "renesas,sdhi-r9a07g043",
|
||||||
"renesas,rcar-gen3-sdhi";
|
"renesas,rcar-gen3-sdhi";
|
||||||
@@ -893,12 +849,4 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
timer {
|
|
||||||
compatible = "arm,armv8-timer";
|
|
||||||
interrupts-extended = <&gic GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
|
||||||
<&gic GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
|
||||||
<&gic GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
|
||||||
<&gic GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -10,3 +10,139 @@
|
|||||||
#define SOC_PERIPHERAL_IRQ(nr) GIC_SPI nr
|
#define SOC_PERIPHERAL_IRQ(nr) GIC_SPI nr
|
||||||
|
|
||||||
#include "r9a07g043.dtsi"
|
#include "r9a07g043.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
cpus {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
cpu0: cpu@0 {
|
||||||
|
compatible = "arm,cortex-a55";
|
||||||
|
reg = <0>;
|
||||||
|
device_type = "cpu";
|
||||||
|
#cooling-cells = <2>;
|
||||||
|
next-level-cache = <&L3_CA55>;
|
||||||
|
enable-method = "psci";
|
||||||
|
clocks = <&cpg CPG_CORE R9A07G043_CLK_I>;
|
||||||
|
operating-points-v2 = <&cluster0_opp>;
|
||||||
|
};
|
||||||
|
|
||||||
|
L3_CA55: cache-controller-0 {
|
||||||
|
compatible = "cache";
|
||||||
|
cache-unified;
|
||||||
|
cache-size = <0x40000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
psci {
|
||||||
|
compatible = "arm,psci-1.0", "arm,psci-0.2";
|
||||||
|
method = "smc";
|
||||||
|
};
|
||||||
|
|
||||||
|
timer {
|
||||||
|
compatible = "arm,armv8-timer";
|
||||||
|
interrupts-extended = <&gic GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<&gic GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<&gic GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<&gic GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&soc {
|
||||||
|
interrupt-parent = <&gic>;
|
||||||
|
|
||||||
|
irqc: interrupt-controller@110a0000 {
|
||||||
|
compatible = "renesas,r9a07g043u-irqc",
|
||||||
|
"renesas,rzg2l-irqc";
|
||||||
|
reg = <0 0x110a0000 0 0x10000>;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
#address-cells = <0>;
|
||||||
|
interrupt-controller;
|
||||||
|
interrupts = <SOC_PERIPHERAL_IRQ(0) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(1) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(2) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(3) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(4) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(5) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(6) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(7) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(8) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(444) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(445) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(446) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(447) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(448) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(449) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(450) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(451) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(452) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(453) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(454) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(455) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(456) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(457) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(458) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(459) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(460) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(461) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(462) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(463) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(464) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(465) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(466) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(467) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(468) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(469) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(470) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(471) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(472) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(473) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(474) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(475) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(25) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(34) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(35) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(36) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(37) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(38) IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(39) IRQ_TYPE_EDGE_RISING>;
|
||||||
|
interrupt-names = "nmi",
|
||||||
|
"irq0", "irq1", "irq2", "irq3",
|
||||||
|
"irq4", "irq5", "irq6", "irq7",
|
||||||
|
"tint0", "tint1", "tint2", "tint3",
|
||||||
|
"tint4", "tint5", "tint6", "tint7",
|
||||||
|
"tint8", "tint9", "tint10", "tint11",
|
||||||
|
"tint12", "tint13", "tint14", "tint15",
|
||||||
|
"tint16", "tint17", "tint18", "tint19",
|
||||||
|
"tint20", "tint21", "tint22", "tint23",
|
||||||
|
"tint24", "tint25", "tint26", "tint27",
|
||||||
|
"tint28", "tint29", "tint30", "tint31",
|
||||||
|
"bus-err", "ec7tie1-0", "ec7tie2-0",
|
||||||
|
"ec7tiovf-0", "ec7tie1-1", "ec7tie2-1",
|
||||||
|
"ec7tiovf-1";
|
||||||
|
clocks = <&cpg CPG_MOD R9A07G043_IA55_CLK>,
|
||||||
|
<&cpg CPG_MOD R9A07G043_IA55_PCLK>;
|
||||||
|
clock-names = "clk", "pclk";
|
||||||
|
power-domains = <&cpg>;
|
||||||
|
resets = <&cpg R9A07G043_IA55_RESETN>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gic: interrupt-controller@11900000 {
|
||||||
|
compatible = "arm,gic-v3";
|
||||||
|
#interrupt-cells = <3>;
|
||||||
|
#address-cells = <0>;
|
||||||
|
interrupt-controller;
|
||||||
|
reg = <0x0 0x11900000 0 0x40000>,
|
||||||
|
<0x0 0x11940000 0 0x60000>;
|
||||||
|
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sysc {
|
||||||
|
interrupts = <SOC_PERIPHERAL_IRQ(42) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(43) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(44) IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<SOC_PERIPHERAL_IRQ(45) IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
interrupt-names = "lpm_int", "ca55stbydone_int",
|
||||||
|
"cm33stbyr_int", "ca55_deny";
|
||||||
|
};
|
||||||
|
|||||||
@@ -698,7 +698,27 @@
|
|||||||
<GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>;
|
<GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 25 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 34 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 35 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 36 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 37 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 38 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
|
||||||
|
interrupt-names = "nmi", "irq0", "irq1", "irq2", "irq3",
|
||||||
|
"irq4", "irq5", "irq6", "irq7",
|
||||||
|
"tint0", "tint1", "tint2", "tint3",
|
||||||
|
"tint4", "tint5", "tint6", "tint7",
|
||||||
|
"tint8", "tint9", "tint10", "tint11",
|
||||||
|
"tint12", "tint13", "tint14", "tint15",
|
||||||
|
"tint16", "tint17", "tint18", "tint19",
|
||||||
|
"tint20", "tint21", "tint22", "tint23",
|
||||||
|
"tint24", "tint25", "tint26", "tint27",
|
||||||
|
"tint28", "tint29", "tint30", "tint31",
|
||||||
|
"bus-err", "ec7tie1-0", "ec7tie2-0",
|
||||||
|
"ec7tiovf-0", "ec7tie1-1", "ec7tie2-1",
|
||||||
|
"ec7tiovf-1";
|
||||||
clocks = <&cpg CPG_MOD R9A07G044_IA55_CLK>,
|
clocks = <&cpg CPG_MOD R9A07G044_IA55_CLK>,
|
||||||
<&cpg CPG_MOD R9A07G044_IA55_PCLK>;
|
<&cpg CPG_MOD R9A07G044_IA55_PCLK>;
|
||||||
clock-names = "clk", "pclk";
|
clock-names = "clk", "pclk";
|
||||||
|
|||||||
@@ -704,7 +704,27 @@
|
|||||||
<GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>,
|
<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>;
|
<GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 25 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 34 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 35 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 36 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 37 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 38 IRQ_TYPE_EDGE_RISING>,
|
||||||
|
<GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
|
||||||
|
interrupt-names = "nmi", "irq0", "irq1", "irq2", "irq3",
|
||||||
|
"irq4", "irq5", "irq6", "irq7",
|
||||||
|
"tint0", "tint1", "tint2", "tint3",
|
||||||
|
"tint4", "tint5", "tint6", "tint7",
|
||||||
|
"tint8", "tint9", "tint10", "tint11",
|
||||||
|
"tint12", "tint13", "tint14", "tint15",
|
||||||
|
"tint16", "tint17", "tint18", "tint19",
|
||||||
|
"tint20", "tint21", "tint22", "tint23",
|
||||||
|
"tint24", "tint25", "tint26", "tint27",
|
||||||
|
"tint28", "tint29", "tint30", "tint31",
|
||||||
|
"bus-err", "ec7tie1-0", "ec7tie2-0",
|
||||||
|
"ec7tiovf-0", "ec7tie1-1", "ec7tie2-1",
|
||||||
|
"ec7tiovf-1";
|
||||||
clocks = <&cpg CPG_MOD R9A07G054_IA55_CLK>,
|
clocks = <&cpg CPG_MOD R9A07G054_IA55_CLK>,
|
||||||
<&cpg CPG_MOD R9A07G054_IA55_PCLK>;
|
<&cpg CPG_MOD R9A07G054_IA55_PCLK>;
|
||||||
clock-names = "clk", "pclk";
|
clock-names = "clk", "pclk";
|
||||||
|
|||||||
@@ -251,6 +251,7 @@
|
|||||||
gpio-controller;
|
gpio-controller;
|
||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupt-parent = <&gpio6>;
|
interrupt-parent = <&gpio6>;
|
||||||
interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
|
interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
|
||||||
|
|
||||||
@@ -311,6 +312,7 @@
|
|||||||
gpio-controller;
|
gpio-controller;
|
||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupt-parent = <&gpio6>;
|
interrupt-parent = <&gpio6>;
|
||||||
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
||||||
};
|
};
|
||||||
@@ -331,6 +333,7 @@
|
|||||||
gpio-controller;
|
gpio-controller;
|
||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupt-parent = <&gpio7>;
|
interrupt-parent = <&gpio7>;
|
||||||
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
|
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
|
||||||
};
|
};
|
||||||
@@ -341,6 +344,7 @@
|
|||||||
gpio-controller;
|
gpio-controller;
|
||||||
#gpio-cells = <2>;
|
#gpio-cells = <2>;
|
||||||
interrupt-controller;
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
interrupt-parent = <&gpio5>;
|
interrupt-parent = <&gpio5>;
|
||||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -607,6 +607,7 @@
|
|||||||
clock-names = "spiclk", "apb_pclk";
|
clock-names = "spiclk", "apb_pclk";
|
||||||
dmas = <&dmac 12>, <&dmac 13>;
|
dmas = <&dmac 12>, <&dmac 13>;
|
||||||
dma-names = "tx", "rx";
|
dma-names = "tx", "rx";
|
||||||
|
num-cs = <2>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&spi0_clk &spi0_csn &spi0_miso &spi0_mosi>;
|
pinctrl-0 = <&spi0_clk &spi0_csn &spi0_miso &spi0_mosi>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
@@ -622,6 +623,7 @@
|
|||||||
clock-names = "spiclk", "apb_pclk";
|
clock-names = "spiclk", "apb_pclk";
|
||||||
dmas = <&dmac 14>, <&dmac 15>;
|
dmas = <&dmac 14>, <&dmac 15>;
|
||||||
dma-names = "tx", "rx";
|
dma-names = "tx", "rx";
|
||||||
|
num-cs = <2>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&spi1_clk &spi1_csn0 &spi1_csn1 &spi1_miso &spi1_mosi>;
|
pinctrl-0 = <&spi1_clk &spi1_csn0 &spi1_csn1 &spi1_miso &spi1_mosi>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
|||||||
@@ -741,11 +741,20 @@
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
|
|
||||||
ports {
|
ports {
|
||||||
hdmi_in: port {
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
hdmi_in: port@0 {
|
||||||
|
reg = <0>;
|
||||||
|
|
||||||
hdmi_in_vop: endpoint {
|
hdmi_in_vop: endpoint {
|
||||||
remote-endpoint = <&vop_out_hdmi>;
|
remote-endpoint = <&vop_out_hdmi>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hdmi_out: port@1 {
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user