forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.4 KiB
92 lines
2.4 KiB
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/net/qcom,bam-dmux.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: Qualcomm BAM Data Multiplexer |
|
|
|
maintainers: |
|
- Stephan Gerhold <[email protected]> |
|
|
|
description: | |
|
The BAM Data Multiplexer provides access to the network data channels |
|
of modems integrated into many older Qualcomm SoCs, e.g. Qualcomm MSM8916 |
|
or MSM8974. It is built using a simple protocol layer on top of a DMA engine |
|
(Qualcomm BAM DMA) and bidirectional interrupts to coordinate power control. |
|
|
|
Note that this schema does not directly describe a hardware block but rather |
|
a firmware convention that combines several other hardware blocks (such as the |
|
DMA engine). As such it is specific to a firmware version, not a particular |
|
SoC or hardware version. |
|
|
|
properties: |
|
compatible: |
|
const: qcom,bam-dmux |
|
|
|
interrupts: |
|
description: |
|
Interrupts used by the modem to signal the AP. |
|
Both interrupts must be declared as IRQ_TYPE_EDGE_BOTH. |
|
items: |
|
- description: Power control |
|
- description: Power control acknowledgment |
|
|
|
interrupt-names: |
|
items: |
|
- const: pc |
|
- const: pc-ack |
|
|
|
qcom,smem-states: |
|
$ref: /schemas/types.yaml#/definitions/phandle-array |
|
description: State bits used by the AP to signal the modem. |
|
items: |
|
- description: Power control |
|
- description: Power control acknowledgment |
|
|
|
qcom,smem-state-names: |
|
description: Names for the state bits used by the AP to signal the modem. |
|
items: |
|
- const: pc |
|
- const: pc-ack |
|
|
|
dmas: |
|
items: |
|
- description: TX DMA channel phandle |
|
- description: RX DMA channel phandle |
|
|
|
dma-names: |
|
items: |
|
- const: tx |
|
- const: rx |
|
|
|
required: |
|
- compatible |
|
- interrupts |
|
- interrupt-names |
|
- qcom,smem-states |
|
- qcom,smem-state-names |
|
- dmas |
|
- dma-names |
|
|
|
additionalProperties: false |
|
|
|
examples: |
|
- | |
|
#include <dt-bindings/interrupt-controller/irq.h> |
|
|
|
mpss: remoteproc { |
|
bam-dmux { |
|
compatible = "qcom,bam-dmux"; |
|
|
|
interrupt-parent = <&modem_smsm>; |
|
interrupts = <1 IRQ_TYPE_EDGE_BOTH>, <11 IRQ_TYPE_EDGE_BOTH>; |
|
interrupt-names = "pc", "pc-ack"; |
|
|
|
qcom,smem-states = <&apps_smsm 1>, <&apps_smsm 11>; |
|
qcom,smem-state-names = "pc", "pc-ack"; |
|
|
|
dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>; |
|
dma-names = "tx", "rx"; |
|
}; |
|
};
|
|
|