Resguardo inicial

This commit is contained in:
lastdragon
2026-09-06 12:53:21 -06:00
parent 662efe3c2a
commit ad2088d178
94853 changed files with 43200404 additions and 0 deletions
@@ -0,0 +1,120 @@
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/slimbus/qcom,slim-ngd.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm SoC SLIMBus Non Generic Device (NGD) Controller
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
- Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
description:
SLIMBus NGD controller is a light-weight driver responsible for communicating
with SLIMBus slaves directly over the bus using messaging interface and
communicating with master component residing on ADSP for bandwidth and
data-channel management
properties:
compatible:
enum:
- qcom,slim-ngd-v1.5.0 # for MSM8996
- qcom,slim-ngd-v2.1.0 # for SDM845
reg:
maxItems: 1
"#address-cells":
const: 1
"#size-cells":
const: 0
dmas:
maxItems: 2
dma-names:
items:
- const: rx
- const: tx
interrupts:
maxItems: 1
iommus:
maxItems: 1
patternProperties:
"^slim@[0-9a-f]+$":
type: object
$ref: slimbus.yaml#
description:
Each subnode represents an instance of NGD
properties:
reg:
maxItems: 1
unevaluatedProperties: false
required:
- compatible
- reg
- "#address-cells"
- "#size-cells"
- dmas
- dma-names
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
slim-ngd@171c0000 {
compatible = "qcom,slim-ngd-v2.1.0";
reg = <0x171c0000 0x2c000>;
interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&slimbam 3>, <&slimbam 4>;
dma-names = "rx", "tx";
iommus = <&apps_smmu 0x1806 0x0>;
#address-cells = <1>;
#size-cells = <0>;
slim@1 {
reg = <1>;
#address-cells = <2>;
#size-cells = <0>;
codec@1,0 {
compatible = "slim217,250";
reg = <1 0>;
slim-ifc-dev = <&wcd9340_ifd>;
#sound-dai-cells = <1>;
interrupts-extended = <&tlmm 54 IRQ_TYPE_LEVEL_HIGH>;
interrupt-controller;
#interrupt-cells = <1>;
#clock-cells = <0>;
clock-frequency = <9600000>;
clock-output-names = "mclk";
qcom,micbias1-microvolt = <1800000>;
qcom,micbias2-microvolt = <1800000>;
qcom,micbias3-microvolt = <1800000>;
qcom,micbias4-microvolt = <1800000>;
#address-cells = <1>;
#size-cells = <1>;
reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
/* Rest of the WCD9340 codec */
};
};
};
@@ -0,0 +1,96 @@
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/slimbus/slimbus.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: SLIM (Serial Low Power Interchip Media) bus
maintainers:
- Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
description:
SLIMbus is a 2-wire bus, and is used to communicate with peripheral
components like audio-codec.
properties:
$nodename:
pattern: "^slim(@.*|-([0-9]|[1-9][0-9]+))?$"
"#address-cells":
const: 2
"#size-cells":
const: 0
patternProperties:
"^.*@[0-9a-f]+,[0-9a-f]+$":
type: object
description: |
Every SLIMbus controller node can contain zero or more child nodes
representing slave devices on the bus. Every SLIMbus slave device is
uniquely determined by the enumeration address containing 4 fields::
Manufacturer ID, Product code, Device index, and Instance value for the
device.
If child node is not present and it is instantiated after device
discovery (slave device reporting itself present).
In some cases it may be necessary to describe non-probeable device
details such as non-standard ways of powering up a device. In such cases,
child nodes for those devices will be present as slaves of the SLIMbus
controller.
properties:
compatible:
pattern: "^slim[0-9a-f]+,[0-9a-f]+$"
reg:
maxItems: 1
description: |
Pair of (device index, instande ID), where::
- Device index, which uniquely identifies multiple devices within a
single component.
- Instance ID, can be used for the cases where multiple devices of
the same type or class are attached to the bus.
required:
- compatible
- reg
additionalProperties: true
required:
- "#address-cells"
- "#size-cells"
additionalProperties: true
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
soc {
#address-cells = <1>;
#size-cells = <1>;
ranges;
controller@28080000 {
compatible = "qcom,slim-ngd-v1.5.0";
reg = <0x091c0000 0x2c000>;
interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&slimbam 3>, <&slimbam 4>;
dma-names = "rx", "tx";
#address-cells = <1>;
#size-cells = <0>;
slim@1 {
reg = <1>;
#address-cells = <2>;
#size-cells = <0>;
codec@1,0 {
compatible = "slim217,1a0";
reg = <1 0>;
};
};
};
};