/linux-6.14.4/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 <[email protected]> 18 const: qcom,glink-rpm 30 - 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 <[email protected]> 11 - Konrad Dybcio <[email protected]> 12 - Stephan Gerhold <[email protected]> 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 <[email protected]> 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 …]
|
/linux-6.14.4/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 47 * @ab_coeff: a percentage-based coefficient for compensating the AB calculations 48 * @ib_coeff: an inverse-percentage-based coefficient for compensating the IB calculations 51 * @bus_clk: a pointer to a HLOS-owned bus clock [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 …]
|
D | msm8974.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved. 15 * |----------+-----------------------------------+-----------| 19 * |------------+-+-----------| |------------+-+-----------| 23 * |--------------+-+---------------------------------+-+-------------| 27 * |------------+-------------| |------------+-------------| 30 #include <dt-bindings/interconnect/qcom,msm8974.h> 35 #include <linux/interconnect-provider.h> 42 #include "icc-rpm.h" 188 * struct msm8974_icc_provider - Qualcomm specific interconnect provider [all …]
|
/linux-6.14.4/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 <[email protected]> 11 - Bjorn Andersson <[email protected]> 12 - Krzysztof Kozlowski <[email protected]> 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 …]
|
/linux-6.14.4/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 84 and instances handled by the remote DSPs. This is a kernel-space 124 Say yes here to support USB-C and battery status on modern Qualcomm 147 purpose of exchanging sector-data between the remote filesystem 153 tristate "Qualcomm RPM Master stats" 156 The RPM Master sleep stats driver provides detailed per-subsystem 157 sleep/wake data, read from the RPM message RAM. It can be used to 158 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 …]
|
/linux-6.14.4/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 …]
|
D | intel_gsc_uc.c | 1 // SPDX-License-Identifier: MIT 24 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in gsc_work() 26 spin_lock_irq(gt->irq_lock); in gsc_work() 27 actions = gsc->gsc_work_actions; in gsc_work() 28 gsc->gsc_work_actions = 0; in gsc_work() 29 spin_unlock_irq(gt->irq_lock); in gsc_work() 36 else if (ret != -EEXIST) in gsc_work() 43 * Since this worker also handles proxy requests, we can't in gsc_work() 53 if (intel_uc_uses_huc(>->uc) && in gsc_work() 54 intel_huc_is_authenticated(>->uc.huc, INTEL_HUC_AUTH_BY_GUC)) in gsc_work() [all …]
|
/linux-6.14.4/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 <[email protected]> 11 - Krzysztof Kozlowski <[email protected]> 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 …]
|
/linux-6.14.4/Documentation/devicetree/bindings/interconnect/ |
D | qcom,rpm-common.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/interconnect/qcom,rpm-common.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm RPMh Network-On-Chip Interconnect 10 - Konrad Dybcio <[email protected]> 13 RPM interconnect providers support for managing system bandwidth requirements 14 through manual requests based on either predefined values or as indicated by 19 '#interconnect-cells': 21 - const: 2 [all …]
|
/linux-6.14.4/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 41 struct drm_i915_file_private *file_priv = ctx->file_priv; in client_mark_guilty() 52 prev_hang = xchg(&file_priv->hang_timestamp, jiffies); in client_mark_guilty() 57 atomic_add(score, &file_priv->ban_score); in client_mark_guilty() 59 drm_dbg(&ctx->i915->drm, in client_mark_guilty() 61 ctx->name, score, in client_mark_guilty() 62 atomic_read(&file_priv->ban_score)); in client_mark_guilty() 73 if (intel_context_is_closed(rq->context)) in mark_guilty() 77 ctx = rcu_dereference(rq->context->gem_context); in mark_guilty() [all …]
|
D | intel_gt_pm.c | 1 // SPDX-License-Identifier: MIT 30 int count = atomic_read(>->user_wakeref); in user_forcewake() 39 GEM_BUG_ON(count > atomic_read(>->wakeref.count)); in user_forcewake() 40 atomic_sub(count, >->wakeref.count); in user_forcewake() 42 atomic_add(count, >->wakeref.count); in user_forcewake() 50 write_seqcount_begin(>->stats.lock); in runtime_begin() 51 gt->stats.start = ktime_get(); in runtime_begin() 52 gt->stats.active = true; in runtime_begin() 53 write_seqcount_end(>->stats.lock); in runtime_begin() 60 write_seqcount_begin(>->stats.lock); in runtime_end() [all …]
|
D | intel_gt.c | 1 // SPDX-License-Identifier: MIT 7 #include <drm/intel/intel-gtt.h> 42 spin_lock_init(gt->irq_lock); in intel_gt_common_init_early() 44 INIT_LIST_HEAD(>->closed_vma); in intel_gt_common_init_early() 45 spin_lock_init(>->closed_lock); in intel_gt_common_init_early() 47 init_llist_head(>->watchdog.list); in intel_gt_common_init_early() 48 INIT_WORK(>->watchdog.work, intel_gt_watchdog_work); in intel_gt_common_init_early() 57 intel_wopcm_init_early(>->wopcm); in intel_gt_common_init_early() 58 intel_uc_init_early(>->uc); in intel_gt_common_init_early() 59 intel_rps_init_early(>->rps); in intel_gt_common_init_early() [all …]
|
/linux-6.14.4/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 …]
|
D | i915_driver.c | 1 /* i915_drv.c -- i830,i845,i855,i865,i915 driver -*- linux-c -*- 22 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 120 * requests (and thus managing bo) once the task has been completed in i915_workqueues_init() 122 * need high-priority retirement, such as waiting for an explicit in i915_workqueues_init() 125 * It is also used for periodic low-priority events, such as in i915_workqueues_init() 126 * idle-timers and recording error state. in i915_workqueues_init() 132 dev_priv->wq = alloc_ordered_workqueue("i915", 0); in i915_workqueues_init() 133 if (dev_priv->wq == NULL) in i915_workqueues_init() 136 dev_priv->display.hotplug.dp_wq = alloc_ordered_workqueue("i915-dp", 0); in i915_workqueues_init() 137 if (dev_priv->display.hotplug.dp_wq == NULL) in i915_workqueues_init() [all …]
|
/linux-6.14.4/drivers/clk/qcom/ |
D | clk-rpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <linux/clk-provider.h> 19 #include <dt-bindings/mfd/qcom-rpm.h> 20 #include <dt-bindings/clock/qcom,rpmcc.h> 97 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() 129 r->rpm_clk_id, &value, 1); in clk_rpm_handoff() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 131 tristate "RPM based Clock Controller" 134 The RPM (Resource Power Manager) is a dedicated hardware engine for 137 memory and accepts clock requests, aggregates the requests and turns 139 Say Y if you want to support the clocks exposed by the RPM on 143 tristate "RPM over SMD based Clock Controller" 146 The RPM (Resource Power Manager) is a dedicated hardware engine for 149 memory and accepts clock requests, aggregates the requests and turns 151 Say Y if you want to support the clocks exposed by the RPM on 159 SoCs. It accepts requests from other hardware subsystems via RSC. [all …]
|
/linux-6.14.4/arch/arm/boot/dts/qcom/ |
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 …]
|
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> 15 #include <dt-bindings/thermal/thermal.h> [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/qcom/ |
D | ipq6018.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 9 #include <dt-bindings/clock/qcom,gcc-ipq6018.h> 10 #include <dt-bindings/reset/qcom,gcc-ipq6018.h> 11 #include <dt-bindings/clock/qcom,apss-ipq.h> 12 #include <dt-bindings/thermal/thermal.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 17 interrupt-parent = <&intc>; 20 sleep_clk: sleep-clk { [all …]
|