This change adds the entries of qusb phys and usb bam in yaml format. Change-Id: I5697f28cf786ab6cc61c462a164ff4b0e4e68aac Signed-off-by: Rajkumar Patel <quic_rajkpate@quicinc.com>
190 lines
5.4 KiB
YAML
190 lines
5.4 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: "http://devicetree.org/schemas/soc/qcom/qcom,usb-bam.yaml#"
|
|
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
|
|
|
title: MSM USB Bus Access Manager (BAM)
|
|
|
|
maintainers:
|
|
- Abdul Salam <quic_asalam@quicinc.com>
|
|
|
|
description:
|
|
This describes the device used to interface the USB controller
|
|
with the Smart Peripheral Subsystem (SPS). The BAM serves to
|
|
connect USB directly with other peer peripherals in the system
|
|
and is statically configured with a number of unidirectional pipes.
|
|
|
|
properties:
|
|
compatible:
|
|
const: qcom,usb-bam-msm
|
|
|
|
reg:
|
|
description: pair of physical base addresses and region size of BAM device
|
|
|
|
interrupts:
|
|
description: IRQ line for BAM device
|
|
maxItems: 1
|
|
|
|
qcom,usb-bam-num-pipes:
|
|
description: max number of pipes that can be used
|
|
|
|
qcom,usb-bam-fifo-baseaddr:
|
|
description: |
|
|
base address for bam pipe's data and descriptor
|
|
fifos. This can be on chip memory (ocimem). This
|
|
property is required if sub-node's mem-type is ocimem or usb private mem.
|
|
|
|
qcom,disable-clk-gating:
|
|
description: If present then disable BAM clock gating.
|
|
|
|
qcom,usb-bam-override-threshold:
|
|
description: |
|
|
If present then the default 512 byte threshold
|
|
is overridden. This threshold configures the threshold value for Read/Write
|
|
event generation by the BAM towards another BAM.
|
|
|
|
qcom,usb-bam-max-mbps-highspeed:
|
|
description: |
|
|
max mbps in high speed connection
|
|
for either rx or tx direction.
|
|
|
|
qcom,usb-bam-max-mbps-superspeed:
|
|
description: |
|
|
max mbps in super speed connection
|
|
for either rx or tx direction.
|
|
|
|
qcom,reset-bam-on-connect:
|
|
description: |
|
|
If present then BAM is RESET before connecting
|
|
pipe. This may be required if BAM peripheral is also reset before connect.
|
|
|
|
qcom,reset-bam-on-disconnect:
|
|
description: If present then BAM is RESET after disconnecting pipes.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- qcom,usb-bam-num-pipes
|
|
|
|
additionalProperties: false
|
|
|
|
patternProperties:
|
|
"^qcom,pipe[0-9]+$":
|
|
type: object
|
|
description: A number of USB BAM pipe parameters are represented as sub-nodes
|
|
|
|
properties:
|
|
label:
|
|
description: |
|
|
a string describing uniquely the usb bam pipe. The string can be
|
|
constracted as follows- <core>-<peer>-<direction>-<pipe num>.
|
|
core options- hsusb, ssusb/dwc3, hsic
|
|
peer options- qdss, ipa
|
|
direction options- in (from peer to usb), out (from usb to peer)
|
|
pipe num options- 0..127
|
|
|
|
qcom,usb-bam-mem-type:
|
|
description: |
|
|
Type of memory used by this PIPE. Can be one of
|
|
0 - Uses SPS's dedicated pipe memory
|
|
1 - System RAM allocated by driver
|
|
2 - OCI memory residing @ 'qcom,usb-bam-fifo-baseaddr'
|
|
|
|
qcom,dir:
|
|
description: |
|
|
pipe direction
|
|
0 - from usb (out)
|
|
1 - to usb (in)
|
|
|
|
qcom,pipe-num:
|
|
description: pipe number
|
|
|
|
qcom,peer-bam:
|
|
description: |
|
|
peer BAM can be one of
|
|
0 - QDSS_P_BAM
|
|
1 - IPA_P_BAM
|
|
|
|
qcom,data-fifo-size:
|
|
description: data fifo size
|
|
|
|
qcom,descriptor-fifo-size:
|
|
description: descriptor fifo size
|
|
|
|
qcom,peer-bam-physical-address:
|
|
description: |
|
|
peer BAM's physical address.
|
|
Not specified for IPA and used only for qdss connection
|
|
|
|
qcom,dst-bam-pipe-index:
|
|
description: destination BAM pipe index
|
|
|
|
qcom,src-bam-pipe-index:
|
|
description: source BAM pipe index
|
|
|
|
qcom,data-fifo-offset:
|
|
description: data fifo offset address
|
|
|
|
qcom,descriptor-fifo-offset:
|
|
description: descriptor fifo offset address
|
|
|
|
qcom,pipe-connection-type:
|
|
description: |
|
|
type of pipe connection. Can be one of
|
|
0 - BAM2BAM (default if not specified)
|
|
1 - SYS2BAM (only supported on UL)
|
|
|
|
required:
|
|
- label
|
|
- qcom,usb-bam-mem-type
|
|
- qcom,dir
|
|
- qcom,pipe-num
|
|
- qcom,peer-bam
|
|
- qcom,data-fifo-size
|
|
- qcom,descriptor-fifo-size
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
qcom,usbbam@f9a44000 {
|
|
compatible = "qcom,usb-bam-msm";
|
|
reg = <0xf9a44000 0x11000>;
|
|
interrupts = <0 135 0>;
|
|
qcom,usb-bam-num-pipes = <16>;
|
|
qcom,ignore-core-reset-ack;
|
|
qcom,disable-clk-gating;
|
|
qcom,usb-bam-max-mbps-highspeed = <400>;
|
|
qcom,usb-bam-max-mbps-superspeed = <3600>;
|
|
qcom,bam-type = <1>;
|
|
qcom,bam-mode = <0>;
|
|
|
|
qcom,pipe0 {
|
|
label = "hsusb-ipa-out-0";
|
|
qcom,usb-bam-mem-type = <0>;
|
|
qcom,dir = <0>;
|
|
qcom,pipe-num = <0>;
|
|
qcom,peer-bam = <2>;
|
|
qcom,src-bam-pipe-index = <1>;
|
|
qcom,data-fifo-offset = <0x2200>;
|
|
qcom,data-fifo-size = <0x1e00>;
|
|
qcom,descriptor-fifo-offset = <0x2100>;
|
|
qcom,descriptor-fifo-size = <0x100>;
|
|
};
|
|
qcom,pipe1 {
|
|
label = "hsusb-ipa-in-0";
|
|
qcom,usb-bam-mem-type = <0>;
|
|
qcom,dir = <1>;
|
|
qcom,pipe-num = <0>;
|
|
qcom,peer-bam = <2>;
|
|
qcom,dst-bam-pipe-index = <0>;
|
|
qcom,data-fifo-offset = <0x300>;
|
|
qcom,data-fifo-size = <0x1e00>;
|
|
qcom,descriptor-fifo-offset = <0>;
|
|
qcom,descriptor-fifo-size = <0x300>;
|
|
};
|
|
};
|
|
...
|