/openbmc/linux/Documentation/devicetree/bindings/soc/qcom/ |
H A D | qcom,smd-rpm.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/soc/qcom/qcom,smd-rpm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Resource Power Manager (RPM) over SMD/GLINK 10 This driver is used to interface with the Resource Power Manager (RPM) found 11 in various Qualcomm platforms. The RPM allows each component in the system 15 The SMD or GLINK information for the RPM edge should be filled out. See 16 qcom,smd.yaml for the required edge properties. All SMD/GLINK related 17 properties will reside within the RPM node itself. [all …]
|
H A D | qcom,smd.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/soc/qcom/qcom,smd.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Andy Gross <agross@kernel.org> 11 - Bjorn Andersson <bjorn.andersson@linaro.org> 12 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 18 Using the top-level SMD node is deprecated. Instead, the SMD edges are defined 26 const: qcom,smd 29 "^smd-edge|rpm$": [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/regulator/ |
H A D | qcom,smd-rpm-regulator.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/regulator/qcom,smd-rpm-regulator.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: QCOM SMD RPM REGULATOR 10 The Qualcomm RPM over SMD regulator is modelled as a subdevice of the RPM. 11 Because SMD is used as the communication transport mechanism, the RPM 12 resides as a subnode of the SMD. As such, the SMD-RPM regulator requires 13 that the SMD and RPM nodes be present. 15 Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml for [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/remoteproc/ |
H A D | qcom,rpm-proc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/qcom,rpm-proc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Resource Power Manager (RPM) Processor/Subsystem 10 - Bjorn Andersson <andersson@kernel.org> 11 - Konrad Dybcio <konrad.dybcio@linaro.org> 12 - Stephan Gerhold <stephan@gerhold.net> 15 Resource Power Manager (RPM) subsystem found in various Qualcomm platforms: 17 +--------------------------------------------+ [all …]
|
H A D | qcom,smd-edge.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/qcom,smd-edge.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm SMD Edge communication channel nodes 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 13 Qualcomm SMD subnode represents a remote subsystem or a remote processor of 14 some sort - or in SMD language an "edge". The name of the edges are not 17 In turn, subnodes of the "edges" represent devices tied to SMD channels on 19 these nodes are defined by the individual bindings for the SMD devices. [all …]
|
H A D | qcom,glink-rpm-edge.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/qcom,glink-rpm-edge.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm G-Link RPM edge 10 Qualcomm G-Link edge, a FIFO based mechanism for communication with Resource 11 Power Manager (RPM) on various Qualcomm platforms. 14 - Bjorn Andersson <andersson@kernel.org> 18 const: qcom,glink-rpm 31 - description: rpm_hlos mailbox in APCS [all …]
|
H A D | qcom,msm8996-mss-pil.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/qcom,msm8996-mss-pil.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Bjorn Andersson <andersson@kernel.org> 11 - Sibi Sankar <quic_sibis@quicinc.com> 20 - qcom,msm8996-mss-pil 21 - qcom,msm8998-mss-pil 22 - qcom,sdm660-mss-pil 23 - qcom,sdm845-mss-pil [all …]
|
/openbmc/linux/drivers/soc/qcom/ |
H A D | smd-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. 15 #include <linux/soc/qcom/smd-rpm.h> 20 * struct qcom_smd_rpm - state of the rpm device driver 21 * @rpm_channel: reference to the smd channel 22 * @dev: rpm device 25 * @ack_status: result of the rpm request 37 * struct qcom_rpm_header - header for all rpm requests and responses 47 * struct qcom_rpm_request - request message to the rpm 63 * struct qcom_rpm_message - response message from the rpm [all …]
|
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 15 the low-power state for resources related to the remoteproc 26 resource on a RPM-hardened platform must use this database to get 43 be called qcom-cpr 110 Say yes here to support USB-C and battery status on modern Qualcomm 133 purpose of exchanging sector-data between the remote filesystem 139 tristate "Qualcomm RPM Master stats" 142 The RPM Master sleep stats driver provides detailed per-subsystem 143 sleep/wake data, read from the RPM message RAM. It can be used to 144 assess whether all the low-power modes available are entered as [all …]
|
H A D | rpm-proc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* Copyright (c) 2021-2023, Stephan Gerhold <stephan@gerhold.net> */ 13 struct device *dev = &pdev->dev; in rpm_proc_probe() 17 edge_node = of_get_child_by_name(dev->of_node, "smd-edge"); in rpm_proc_probe() 23 "Failed to register smd-edge\n"); in rpm_proc_probe() 49 { .compatible = "qcom,rpm-proc", }, 58 .name = "qcom-rpm-proc", 75 MODULE_DESCRIPTION("Qualcomm RPM processor/subsystem driver");
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 2 CFLAGS_rpmh-rsc.o := -I$(src) 3 obj-$(CONFIG_QCOM_AOSS_QMP) += qcom_aoss.o 4 obj-$(CONFIG_QCOM_GENI_SE) += qcom-geni-se.o 5 obj-$(CONFIG_QCOM_COMMAND_DB) += cmd-db.o 6 obj-$(CONFIG_QCOM_GSBI) += qcom_gsbi.o 7 obj-$(CONFIG_QCOM_MDT_LOADER) += mdt_loader.o 8 obj-$(CONFIG_QCOM_OCMEM) += ocmem.o 9 obj-$(CONFIG_QCOM_PDR_HELPERS) += pdr_interface.o 10 obj-$(CONFIG_QCOM_PMIC_GLINK) += pmic_glink.o [all …]
|
/openbmc/linux/drivers/interconnect/qcom/ |
H A D | smd-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * RPM over SMD communication wrapper for interconnects 9 #include <linux/interconnect-provider.h> 12 #include <linux/soc/qcom/smd-rpm.h> 14 #include "icc-rpm.h" 54 if (clk->branch) in qcom_icc_rpm_set_bus_rate() 60 clk->resource_type, in qcom_icc_rpm_set_bus_rate() 61 clk->clock_id, in qcom_icc_rpm_set_bus_rate() 75 icc_smd_rpm = dev_get_drvdata(pdev->dev.parent); in qcom_icc_rpm_smd_probe() 78 dev_err(&pdev->dev, "unable to retrieve handle to RPM\n"); in qcom_icc_rpm_smd_probe() [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 3 obj-$(CONFIG_INTERCONNECT_QCOM) += interconnect_qcom.o 5 interconnect_qcom-y := icc-common.o 6 icc-bcm-voter-objs := bcm-voter.o 7 qnoc-msm8916-objs := msm8916.o 8 qnoc-msm8939-objs := msm8939.o 9 qnoc-msm8974-objs := msm8974.o 10 qnoc-msm8996-objs := msm8996.o 11 icc-osm-l3-objs := osm-l3.o 12 qnoc-qcm2290-objs := qcm2290.o [all …]
|
H A D | icc-rpm-clocks.c | 1 /* SPDX-License-Identifier: GPL-2.0 */ 6 #include <linux/soc/qcom/smd-rpm.h> 8 #include "icc-rpm.h"
|
H A D | icc-rpm.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 9 #include <linux/soc/qcom/smd-rpm.h> 11 #include <dt-bindings/interconnect/qcom,rpm-icc.h> 13 #include <linux/interconnect-provider.h> 29 * struct rpm_clk_resource - RPM bus clock resource 30 * @resource_type: RPM resource type of the clock resource 41 * struct qcom_icc_provider - Qualcomm specific interconnect provider 49 * @bus_clk: a pointer to a HLOS-owned bus clock 69 * struct qcom_icc_qos - Qualcomm specific interconnect QoS parameters 73 * @ap_owned: indicates if the node is owned by the AP or by the RPM [all …]
|
/openbmc/linux/drivers/rpmsg/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 15 in /dev. They make it possible for user-space programs to send and 23 allows user-space programs to create endpoints with specific service name, 48 tristate "Qualcomm RPM Glink driver" 53 Say y here to enable support for the GLINK RPM communication driver, 54 which serves as a channel for communication with the RPM in GLINK 68 tristate "Qualcomm Shared Memory Driver (SMD)"
|
/openbmc/linux/Documentation/devicetree/bindings/clock/ |
H A D | qcom,rpmcc.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm RPM Clock Controller 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 11 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 14 The clock enumerators are defined in <dt-bindings/clock/qcom,rpmcc.h> and 19 suspend, you need to specify the non-active clock, the one not containing 25 - enum: 26 - qcom,rpmcc-apq8060 [all …]
|
/openbmc/linux/arch/arm/boot/dts/qcom/ |
H A D | qcom-msm8226.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 /dts-v1/; 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 9 #include <dt-bindings/clock/qcom,gcc-msm8974.h> 10 #include <dt-bindings/clock/qcom,mmcc-msm8974.h> 11 #include <dt-bindings/clock/qcom,rpmcc.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/reset/qcom,gcc-msm8974.h> 17 #address-cells = <1>; [all …]
|
H A D | qcom-apq8084.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-apq8084.h> 6 #include <dt-bindings/gpio/gpio.h> 9 #address-cells = <1>; 10 #size-cells = <1>; 13 interrupt-parent = <&intc>; 15 reserved-memory { 16 #address-cells = <1>; [all …]
|
H A D | qcom-msm8974.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/interconnect/qcom,msm8974.h> 5 #include <dt-bindings/interrupt-controller/arm-gic.h> 6 #include <dt-bindings/clock/qcom,gcc-msm8974.h> 7 #include <dt-bindings/clock/qcom,mmcc-msm8974.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/reset/qcom,gcc-msm8974.h> 10 #include <dt-bindings/gpio/gpio.h> 13 #address-cells = <1>; [all …]
|
/openbmc/linux/include/dt-bindings/clock/ |
H A D | qcom,rpmcc.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 9 /* RPM clocks */ 45 /* SMD RPM clocks */
|
/openbmc/linux/arch/arm64/boot/dts/qcom/ |
H A D | msm8953.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 4 #include <dt-bindings/clock/qcom,gcc-msm8953.h> 5 #include <dt-bindings/clock/qcom,rpmcc.h> 6 #include <dt-bindings/gpio/gpio.h> 7 #include <dt-bindings/interrupt-controller/arm-gic.h> 8 #include <dt-bindings/power/qcom-rpmpd.h> 9 #include <dt-bindings/soc/qcom,apr.h> 10 #include <dt-bindings/sound/qcom,q6afe.h> 11 #include <dt-bindings/sound/qcom,q6asm.h> 12 #include <dt-bindings/thermal/thermal.h> [all …]
|
H A D | msm8994.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/qcom,gcc-msm8994.h> 8 #include <dt-bindings/clock/qcom,mmcc-msm8994.h> 9 #include <dt-bindings/clock/qcom,rpmcc.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/power/qcom-rpmpd.h> 14 interrupt-parent = <&intc>; 16 #address-cells = <2>; [all …]
|
/openbmc/linux/drivers/clk/qcom/ |
H A D | clk-smd-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/clk-provider.h> 16 #include <linux/soc/qcom/smd-rpm.h> 18 #include <dt-bindings/clock/qcom,rpmcc.h> 193 .key = cpu_to_le32(r->rpm_key), in clk_smd_rpm_handoff() 195 .value = cpu_to_le32(r->branch ? 1 : INT_MAX), in clk_smd_rpm_handoff() 199 r->rpm_res_type, r->rpm_clk_id, &req, in clk_smd_rpm_handoff() 204 r->rpm_res_type, r->rpm_clk_id, &req, in clk_smd_rpm_handoff() 216 .key = cpu_to_le32(r->rpm_key), in clk_smd_rpm_set_rate_active() 222 r->rpm_res_type, r->rpm_clk_id, &req, in clk_smd_rpm_set_rate_active() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/misc/ |
H A D | qcom,fastrpc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 13 The FastRPC implements an IPC (Inter-Processor Communication) 25 - adsp 26 - mdsp 27 - sdsp 28 - cdsp 30 memory-region: [all …]
|