mirror of
https://github.com/torvalds/linux.git
synced 2026-04-19 07:13:56 -04:00
Pull ARM devicetree updates from Arnd Bergmann:
"These are the devicetree updates for Arm and RISC-V based SoCs, mainly
from Qualcomm, NXP/Freescale, Aspeed, TI, Rockchips, Samsung, ST and
Starfive.
Only a few new SoC got added:
- TI AM62P5, a variant of the existing Sitara AM62x family
- Intel Agilex5, an FPGFA platform that includes an Cortex-A76/A55
SoC.
- Qualcomm ipq5018 is used in wireless access points
- Qualcomm SM4450 (Snapdragon 4 Gen 2) is a new low-end mobile phone
platform.
In total, 29 machines get added, which is low because of the summer
break. These cover SoCs from Aspeed, Broadcom, NXP, Samsung, ST,
Allwinner, Amlogic, Intel, Qualcomm, Rockchip, TI and T-Head. Most of
these are development and reference boards.
Despite not adding a lot of new machines, there are over 700 patches
in total, most of which are cleanups and minor fixes"
* tag 'soc-dt-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (735 commits)
arm64: dts: use capital "OR" for multiple licenses in SPDX
ARM: dts: use capital "OR" for multiple licenses in SPDX
arm64: dts: qcom: sdm845-db845c: Mark cont splash memory region as reserved
ARM: dts: qcom: apq8064: add support to gsbi4 uart
riscv: dts: change TH1520 files to dual license
riscv: dts: thead: add BeagleV Ahead board device tree
dt-bindings: riscv: Add BeagleV Ahead board compatibles
ARM: dts: stm32: add SCMI PMIC regulators on stm32mp135f-dk board
ARM: dts: stm32: STM32MP13x SoC exposes SCMI regulators
dt-bindings: rcc: stm32: add STM32MP13 SCMI regulators IDs
ARM: dts: stm32: support display on stm32f746-disco board
ARM: dts: stm32: rename mmc_vcard to vcc-3v3 on stm32f746-disco
ARM: dts: stm32: add pin map for LTDC on stm32f7
ARM: dts: stm32: add ltdc support on stm32f746 MCU
arm64: dts: qcom: sm6350: Hook up PDC as wakeup-parent of TLMM
arm64: dts: qcom: sdm670: Hook up PDC as wakeup-parent of TLMM
arm64: dts: qcom: sa8775p: Hook up PDC as wakeup-parent of TLMM
arm64: dts: qcom: sc8280xp: Hook up PDC as wakeup-parent of TLMM
arm64: dts: qcom: sdm670: Add PDC
riscv: dts: starfive: fix jh7110 qspi sort order
...
169 lines
4.5 KiB
YAML
169 lines
4.5 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/net/can/bosch,m_can.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Bosch MCAN controller
|
|
|
|
description: Bosch MCAN controller for CAN bus
|
|
|
|
maintainers:
|
|
- Chandrasekar Ramakrishnan <rcsekar@samsung.com>
|
|
|
|
allOf:
|
|
- $ref: can-controller.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
const: bosch,m_can
|
|
|
|
reg:
|
|
items:
|
|
- description: M_CAN registers map
|
|
- description: message RAM
|
|
|
|
reg-names:
|
|
items:
|
|
- const: m_can
|
|
- const: message_ram
|
|
|
|
interrupts:
|
|
items:
|
|
- description: interrupt line0
|
|
- description: interrupt line1
|
|
minItems: 1
|
|
|
|
interrupt-names:
|
|
items:
|
|
- const: int0
|
|
- const: int1
|
|
minItems: 1
|
|
|
|
clocks:
|
|
items:
|
|
- description: peripheral clock
|
|
- description: bus clock
|
|
|
|
clock-names:
|
|
items:
|
|
- const: hclk
|
|
- const: cclk
|
|
|
|
bosch,mram-cfg:
|
|
description: |
|
|
Message RAM configuration data.
|
|
Multiple M_CAN instances can share the same Message RAM
|
|
and each element(e.g Rx FIFO or Tx Buffer and etc) number
|
|
in Message RAM is also configurable, so this property is
|
|
telling driver how the shared or private Message RAM are
|
|
used by this M_CAN controller.
|
|
|
|
The format should be as follows:
|
|
<offset sidf_elems xidf_elems rxf0_elems rxf1_elems rxb_elems txe_elems txb_elems>
|
|
The 'offset' is an address offset of the Message RAM where
|
|
the following elements start from. This is usually set to
|
|
0x0 if you're using a private Message RAM. The remain cells
|
|
are used to specify how many elements are used for each FIFO/Buffer.
|
|
|
|
M_CAN includes the following elements according to user manual:
|
|
11-bit Filter 0-128 elements / 0-128 words
|
|
29-bit Filter 0-64 elements / 0-128 words
|
|
Rx FIFO 0 0-64 elements / 0-1152 words
|
|
Rx FIFO 1 0-64 elements / 0-1152 words
|
|
Rx Buffers 0-64 elements / 0-1152 words
|
|
Tx Event FIFO 0-32 elements / 0-64 words
|
|
Tx Buffers 0-32 elements / 0-576 words
|
|
|
|
Please refer to 2.4.1 Message RAM Configuration in Bosch
|
|
M_CAN user manual for details.
|
|
$ref: /schemas/types.yaml#/definitions/int32-array
|
|
items:
|
|
- description: The 'offset' is an address offset of the Message RAM where
|
|
the following elements start from. This is usually set to 0x0 if
|
|
you're using a private Message RAM.
|
|
default: 0
|
|
- description: 11-bit Filter 0-128 elements / 0-128 words
|
|
minimum: 0
|
|
maximum: 128
|
|
- description: 29-bit Filter 0-64 elements / 0-128 words
|
|
minimum: 0
|
|
maximum: 64
|
|
- description: Rx FIFO 0 0-64 elements / 0-1152 words
|
|
minimum: 0
|
|
maximum: 64
|
|
- description: Rx FIFO 1 0-64 elements / 0-1152 words
|
|
minimum: 0
|
|
maximum: 64
|
|
- description: Rx Buffers 0-64 elements / 0-1152 words
|
|
minimum: 0
|
|
maximum: 64
|
|
- description: Tx Event FIFO 0-32 elements / 0-64 words
|
|
minimum: 0
|
|
maximum: 32
|
|
- description: Tx Buffers 0-32 elements / 0-576 words
|
|
minimum: 0
|
|
maximum: 32
|
|
minItems: 1
|
|
|
|
power-domains:
|
|
description:
|
|
Power domain provider node and an args specifier containing
|
|
the can device id value.
|
|
maxItems: 1
|
|
|
|
can-transceiver:
|
|
$ref: can-transceiver.yaml#
|
|
|
|
phys:
|
|
maxItems: 1
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- reg-names
|
|
- clocks
|
|
- clock-names
|
|
- bosch,mram-cfg
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
// Example with interrupts
|
|
#include <dt-bindings/clock/imx6sx-clock.h>
|
|
can@20e8000 {
|
|
compatible = "bosch,m_can";
|
|
reg = <0x020e8000 0x4000>, <0x02298000 0x4000>;
|
|
reg-names = "m_can", "message_ram";
|
|
interrupts = <0 114 0x04>, <0 114 0x04>;
|
|
interrupt-names = "int0", "int1";
|
|
clocks = <&clks IMX6SX_CLK_CANFD>,
|
|
<&clks IMX6SX_CLK_CANFD>;
|
|
clock-names = "hclk", "cclk";
|
|
bosch,mram-cfg = <0x0 0 0 32 0 0 0 1>;
|
|
|
|
can-transceiver {
|
|
max-bitrate = <5000000>;
|
|
};
|
|
};
|
|
|
|
- |
|
|
// Example with timer polling
|
|
#include <dt-bindings/clock/imx6sx-clock.h>
|
|
can@20e8000 {
|
|
compatible = "bosch,m_can";
|
|
reg = <0x020e8000 0x4000>, <0x02298000 0x4000>;
|
|
reg-names = "m_can", "message_ram";
|
|
clocks = <&clks IMX6SX_CLK_CANFD>,
|
|
<&clks IMX6SX_CLK_CANFD>;
|
|
clock-names = "hclk", "cclk";
|
|
bosch,mram-cfg = <0x0 0 0 32 0 0 0 1>;
|
|
|
|
can-transceiver {
|
|
max-bitrate = <5000000>;
|
|
};
|
|
};
|
|
|
|
...
|