| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/remoteproc/ |
| 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 …]
|
| 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 …]
|
| 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# 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 14 some sort - or in SMD language an "edge". The name of the edges are not 24 const: smd-edge 29 - qcom,smd-channels 36 - qcom,smd-channels 55 $ref: /schemas/types.yaml#/definitions/phandle-array [all …]
|
| /kernel/linux/linux-6.6/drivers/interconnect/qcom/ |
| 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 70 * @areq_prio: node requests priority [all …]
|
| D | icc-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <linux/interconnect-provider.h> 16 #include "icc-common.h" 17 #include "icc-rpm.h" 55 struct icc_provider *provider = src->provider; in qcom_icc_set_qnoc_qos() 57 struct qcom_icc_node *qn = src->data; in qcom_icc_set_qnoc_qos() 58 struct qcom_icc_qos *qos = &qn->qos; in qcom_icc_set_qnoc_qos() 61 rc = regmap_update_bits(qp->regmap, in qcom_icc_set_qnoc_qos() 62 qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port), in qcom_icc_set_qnoc_qos() 64 qos->areq_prio << QNOC_QOS_MCTL_DFLT_PRIO_SHIFT); in qcom_icc_set_qnoc_qos() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/clock/ |
| D | qcom,rpmcc.txt | 1 Qualcomm RPM Clock Controller Binding 2 ------------------------------------------------ 3 The RPM is a dedicated hardware engine for managing the shared 6 and accepts clock requests, aggregates the requests and turns 10 - compatible : shall contain only one of the following. The generic 13 "qcom,rpmcc-msm8660", "qcom,rpmcc" 14 "qcom,rpmcc-apq8060", "qcom,rpmcc" 15 "qcom,rpmcc-msm8916", "qcom,rpmcc" 16 "qcom,rpmcc-msm8936", "qcom,rpmcc" 17 "qcom,rpmcc-msm8974", "qcom,rpmcc" [all …]
|
| /kernel/linux/linux-5.10/drivers/soc/qcom/ |
| 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 106 purpose of exchanging sector-data between the remote filesystem 112 bool "Qualcomm RPM-Hardened (RPMH) Communication" 115 Support for communication with the hardened-RPM blocks in 117 internal bus to transmit state requests for shared resources. A set 118 of hardware components aggregate requests for these resources and 125 QCOM RPMh Power domain driver to support power-domains with [all …]
|
| 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 23 * @dev: rpm device 26 * @ack_status: result of the rpm request 39 * struct qcom_rpm_header - header for all rpm requests and responses 49 * struct qcom_rpm_request - request message to the rpm 65 * struct qcom_rpm_message - response message from the rpm 69 * @message: textual message from the rpm [all …]
|
| /kernel/linux/linux-6.6/drivers/soc/qcom/ |
| 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 …]
|
| 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 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 67 * @message: textual message from the rpm [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/soc/qcom/ |
| D | qcom,glink.txt | 4 communication between subsystem-pairs on various Qualcomm platforms. Two types 5 of edges can be described by the binding; the GLINK RPM edge and a SMEM based 8 - compatible: 9 Usage: required for glink-rpm 11 Definition: must be "qcom,glink-rpm" 13 - label: 18 - interrupts: 20 Value type: <prop-encoded-array> 24 - qcom,remote-pid: 25 Usage: required for glink-smem [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/qcom/ |
| D | qcom,smd.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 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 29 "^smd-edge|rpm$": 30 $ref: /schemas/remoteproc/qcom,smd-edge.yaml# 34 processor of some sort - or in SMD language an "edge". The name of the [all …]
|
| 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 17 properties will reside within the RPM node itself. 19 The RPM exposes resources to its subnodes. The rpm_requests node must be [all …]
|
| /kernel/linux/linux-5.10/drivers/clk/qcom/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 50 tristate "RPM based Clock Controller" 54 The RPM (Resource Power Manager) is a dedicated hardware engine for 57 memory and accepts clock requests, aggregates the requests and turns 59 Say Y if you want to support the clocks exposed by the RPM on 63 tristate "RPM over SMD based Clock Controller" 67 The RPM (Resource Power Manager) is a dedicated hardware engine for 70 memory and accepts clock requests, aggregates the requests and turns 72 Say Y if you want to support the clocks exposed by the RPM on 80 SoCs. It accepts requests from other hardware subsystems via RSC. [all …]
|
| D | clk-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/clk-provider.h> 19 #include <dt-bindings/mfd/qcom-rpm.h> 20 #include <dt-bindings/clock/qcom,rpmcc.h> 145 struct qcom_rpm *rpm; member 150 struct qcom_rpm *rpm; member 171 * RPM clock. in clk_rpm_handoff() 173 if (r->rpm_clk_id == QCOM_RPM_PLL_4 || in clk_rpm_handoff() 174 r->rpm_clk_id == QCOM_RPM_CXO_BUFFERS) in clk_rpm_handoff() 177 ret = qcom_rpm_write(r->rpm, QCOM_RPM_ACTIVE_STATE, in clk_rpm_handoff() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/i915/gt/uc/ |
| D | selftest_guc.c | 1 // SPDX-License-Identifier: MIT 18 err = -ETIMEDOUT; in request_add_spin() 34 ret = i915_sw_fence_await_dma_fence(&rq->submit, in nop_user_request() 35 &from->fence, 0, in nop_user_request() 62 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in intel_guc_scrub_ctbs() 65 /* Submit requests and inject errors forcing G2H to be dropped */ in intel_guc_scrub_ctbs() 76 ce->drop_schedule_enable = true; in intel_guc_scrub_ctbs() 79 ce->drop_schedule_disable = true; in intel_guc_scrub_ctbs() 82 ce->drop_deregister = true; in intel_guc_scrub_ctbs() 113 intel_gt_handle_error(engine->gt, -1, 0, "selftest reset"); in intel_guc_scrub_ctbs() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/clock/ |
| 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 …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/i915/gt/ |
| D | selftest_reset.c | 1 // SPDX-License-Identifier: MIT 22 struct i915_ggtt *ggtt = gt->ggtt; in __igt_reset_stolen() 23 const struct resource *dsm = >->i915->dsm.stolen; in __igt_reset_stolen() 34 if (!drm_mm_node_allocated(&ggtt->error_capture)) in __igt_reset_stolen() 43 return -ENOMEM; in __igt_reset_stolen() 47 err = -ENOMEM; in __igt_reset_stolen() 52 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in __igt_reset_stolen() 62 if (!(mask & engine->mask)) in __igt_reset_stolen() 83 dma_addr_t dma = (dma_addr_t)dsm->start + (page << PAGE_SHIFT); in __igt_reset_stolen() 87 ggtt->vm.insert_page(&ggtt->vm, dma, in __igt_reset_stolen() [all …]
|
| D | intel_reset.c | 1 // SPDX-License-Identifier: MIT 3 * Copyright © 2008-2018 Intel Corporation 40 struct drm_i915_file_private *file_priv = ctx->file_priv; in client_mark_guilty() 51 prev_hang = xchg(&file_priv->hang_timestamp, jiffies); in client_mark_guilty() 56 atomic_add(score, &file_priv->ban_score); in client_mark_guilty() 58 drm_dbg(&ctx->i915->drm, in client_mark_guilty() 60 ctx->name, score, in client_mark_guilty() 61 atomic_read(&file_priv->ban_score)); in client_mark_guilty() 72 if (intel_context_is_closed(rq->context)) in mark_guilty() 76 ctx = rcu_dereference(rq->context->gem_context); in mark_guilty() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/i915/gt/ |
| D | selftest_reset.c | 1 // SPDX-License-Identifier: MIT 21 struct i915_ggtt *ggtt = >->i915->ggtt; in __igt_reset_stolen() 22 const struct resource *dsm = >->i915->dsm; in __igt_reset_stolen() 33 if (!drm_mm_node_allocated(&ggtt->error_capture)) in __igt_reset_stolen() 42 return -ENOMEM; in __igt_reset_stolen() 46 err = -ENOMEM; in __igt_reset_stolen() 51 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in __igt_reset_stolen() 61 if (!(mask & engine->mask)) in __igt_reset_stolen() 82 dma_addr_t dma = (dma_addr_t)dsm->start + (page << PAGE_SHIFT); in __igt_reset_stolen() 86 ggtt->vm.insert_page(&ggtt->vm, dma, in __igt_reset_stolen() [all …]
|
| D | intel_reset.c | 2 * SPDX-License-Identifier: MIT 4 * Copyright © 2008-2018 Intel Corporation 44 struct intel_engine_cs *engine = rq->engine; in engine_skip_context() 45 struct intel_context *hung_ctx = rq->context; in engine_skip_context() 50 lockdep_assert_held(&engine->active.lock); in engine_skip_context() 51 list_for_each_entry_continue(rq, &engine->active.requests, sched.link) in engine_skip_context() 52 if (rq->context == hung_ctx) { in engine_skip_context() 53 i915_request_set_error_once(rq, -EIO); in engine_skip_context() 60 struct drm_i915_file_private *file_priv = ctx->file_priv; in client_mark_guilty() 71 prev_hang = xchg(&file_priv->hang_timestamp, jiffies); in client_mark_guilty() [all …]
|
| D | intel_gt_pm.c | 2 * SPDX-License-Identifier: MIT 26 int count = atomic_read(>->user_wakeref); in user_forcewake() 34 GEM_BUG_ON(count > atomic_read(>->wakeref.count)); in user_forcewake() 35 atomic_sub(count, >->wakeref.count); in user_forcewake() 37 atomic_add(count, >->wakeref.count); in user_forcewake() 45 struct drm_i915_private *i915 = gt->i915; in __gt_unpark() 62 gt->awake = intel_display_power_get(i915, POWER_DOMAIN_GT_IRQ); in __gt_unpark() 63 GEM_BUG_ON(!gt->awake); in __gt_unpark() 65 intel_rc6_unpark(>->rc6); in __gt_unpark() 66 intel_rps_unpark(>->rps); in __gt_unpark() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/i915/ |
| D | intel_pcode.c | 1 // SPDX-License-Identifier: MIT 3 * Copyright © 2013-2021 Intel Corporation 16 return -ENODEV; in gen6_check_mailbox_status() 18 return -ENXIO; in gen6_check_mailbox_status() 21 return -EOVERFLOW; in gen6_check_mailbox_status() 23 return -ETIMEDOUT; in gen6_check_mailbox_status() 36 return -ENXIO; in gen7_check_mailbox_status() 38 return -ETIMEDOUT; in gen7_check_mailbox_status() 40 return -EINVAL; in gen7_check_mailbox_status() 42 return -ENXIO; in gen7_check_mailbox_status() [all …]
|
| /kernel/linux/linux-6.6/drivers/clk/qcom/ |
| D | clk-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/clk-provider.h> 18 #include <dt-bindings/mfd/qcom-rpm.h> 19 #include <dt-bindings/clock/qcom,rpmcc.h> 96 struct qcom_rpm *rpm; member 101 struct qcom_rpm *rpm; member 122 * RPM clock. in clk_rpm_handoff() 124 if (r->rpm_clk_id == QCOM_RPM_PLL_4 || in clk_rpm_handoff() 125 r->rpm_clk_id == QCOM_RPM_CXO_BUFFERS) in clk_rpm_handoff() 128 ret = qcom_rpm_write(r->rpm, QCOM_RPM_ACTIVE_STATE, in clk_rpm_handoff() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 69 tristate "RPM based Clock Controller" 73 The RPM (Resource Power Manager) is a dedicated hardware engine for 76 memory and accepts clock requests, aggregates the requests and turns 78 Say Y if you want to support the clocks exposed by the RPM on 82 tristate "RPM over SMD based Clock Controller" 86 The RPM (Resource Power Manager) is a dedicated hardware engine for 89 memory and accepts clock requests, aggregates the requests and turns 91 Say Y if you want to support the clocks exposed by the RPM on 99 SoCs. It accepts requests from other hardware subsystems via RSC. [all …]
|