| /kernel/linux/linux-6.6/drivers/net/ipa/ |
| D | ipa_uc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2018-2022 Linaro Ltd. 12 #include "ipa.h" 17 * DOC: The IPA embedded microcontroller 19 * The IPA incorporates a microcontroller that is able to do some additional 29 * A 128 byte block of structured memory within the IPA SRAM is used together 31 * AP and the IPA microcontroller. Each side writes data to the shared area 33 * to the interrupt. Some information found in the shared area is currently 34 * unused. All remaining space in the shared area is reserved, and must not [all …]
|
| D | ipa_mem.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2023 Linaro Ltd. 10 #include <linux/dma-mapping.h> 15 #include "ipa.h" 29 const struct ipa_mem *ipa_mem_find(struct ipa *ipa, enum ipa_mem_id mem_id) in ipa_mem_find() argument 33 for (i = 0; i < ipa->mem_count; i++) { in ipa_mem_find() 34 const struct ipa_mem *mem = &ipa->mem[i]; in ipa_mem_find() 36 if (mem->id == mem_id) in ipa_mem_find() 47 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_mem_zero_region_add() local [all …]
|
| D | ipa_mem.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2023 Linaro Ltd. 9 struct ipa; 13 * DOC: IPA Local Memory 15 * The IPA has a block of shared memory, divided into regions used for 18 * The regions within the shared block are bounded by an offset (relative to 19 * the "ipa-shared" memory range) and size found in the IPA_SHARED_MEM_SIZE 22 * Each region is optionally preceded by one or more 32-bit "canary" values. 23 * These are meant to detect out-of-range writes (if they become corrupted). [all …]
|
| D | ipa_qmi_msg.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 * Copyright (C) 2018-2022 Linaro Ltd. 14 /* Request/response/indication QMI message ids used for IPA. Receiving 17 #define IPA_QMI_INDICATION_REGISTER 0x20 /* modem -> AP request */ 18 #define IPA_QMI_INIT_DRIVER 0x21 /* AP -> modem request */ 19 #define IPA_QMI_INIT_COMPLETE 0x22 /* AP -> modem indication */ 20 #define IPA_QMI_DRIVER_INIT_COMPLETE 0x35 /* modem -> AP request */ 27 #define IPA_QMI_INDICATION_REGISTER_REQ_SZ 20 /* -> server handle */ 28 #define IPA_QMI_INDICATION_REGISTER_RSP_SZ 7 /* <- server handle */ 29 #define IPA_QMI_INIT_DRIVER_REQ_SZ 162 /* client handle -> */ [all …]
|
| D | ipa_cmd.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2022 Linaro Ltd. 10 #include <linux/dma-direction.h> 15 struct ipa; 21 * enum ipa_cmd_opcode: IPA immediate commands 27 * @IPA_CMD_HDR_INIT_LOCAL: Initialize IPA-local header memory 28 * @IPA_CMD_REGISTER_WRITE: Register write performed by IPA 30 * @IPA_CMD_DMA_SHARED_MEM: DMA command performed by IPA 50 * ipa_cmd_table_init_valid() - Validate a memory region holding a table [all …]
|
| D | ipa_table.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2018-2023 Linaro Ltd. 15 #include <linux/dma-mapping.h> 17 #include "ipa.h" 28 * DOC: IPA Filter and Route Tables 30 * The IPA has tables defined in its local (IPA-resident) memory that define 32 * endian 64-bit "slot" that holds the address of a rule definition. (The 38 * by all IPA hardware (IPA v4.2 doesn't support hashed tables). 41 * an object (such as a route or filter table) in IPA-resident memory must [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ipa/ |
| D | ipa_uc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2018-2020 Linaro Ltd. 11 #include "ipa.h" 16 * DOC: The IPA embedded microcontroller 18 * The IPA incorporates a microcontroller that is able to do some additional 28 * A 128 byte block of structured memory within the IPA SRAM is used together 30 * AP and the IPA microcontroller. Each side writes data to the shared area 32 * to the interrupt. Some information found in the shared area is currently 33 * unused. All remaining space in the shared area is reserved, and must not [all …]
|
| D | ipa_mem.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2020 Linaro Ltd. 10 #include <linux/dma-mapping.h> 15 #include "ipa.h" 33 struct ipa *ipa = container_of(trans->gsi, struct ipa, gsi); in ipa_mem_zero_region_add() local 34 dma_addr_t addr = ipa->zero_addr; in ipa_mem_zero_region_add() 36 if (!mem->size) in ipa_mem_zero_region_add() 39 ipa_cmd_dma_shared_mem_add(trans, mem->offset, mem->size, addr, true); in ipa_mem_zero_region_add() 43 * ipa_mem_setup() - Set up IPA AP and modem shared memory areas [all …]
|
| D | ipa_mem.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2020 Linaro Ltd. 9 struct ipa; 13 * DOC: IPA Local Memory 15 * The IPA has a block of shared memory, divided into regions used for 18 * The regions within the shared block are bounded by an offset (relative to 19 * the "ipa-shared" memory range) and size found in the IPA_SHARED_MEM_SIZE 22 * Each region is optionally preceded by one or more 32-bit "canary" values. 23 * These are meant to detect out-of-range writes (if they become corrupted). [all …]
|
| D | ipa_qmi_msg.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 * Copyright (C) 2018-2020 Linaro Ltd. 14 /* Request/response/indication QMI message ids used for IPA. Receiving 17 #define IPA_QMI_INDICATION_REGISTER 0x20 /* modem -> AP request */ 18 #define IPA_QMI_INIT_DRIVER 0x21 /* AP -> modem request */ 19 #define IPA_QMI_INIT_COMPLETE 0x22 /* AP -> modem indication */ 20 #define IPA_QMI_DRIVER_INIT_COMPLETE 0x35 /* modem -> AP request */ 27 #define IPA_QMI_INDICATION_REGISTER_REQ_SZ 12 /* -> server handle */ 28 #define IPA_QMI_INDICATION_REGISTER_RSP_SZ 7 /* <- server handle */ 29 #define IPA_QMI_INIT_DRIVER_REQ_SZ 162 /* client handle -> */ [all …]
|
| D | ipa_cmd.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2020 Linaro Ltd. 10 #include <linux/dma-direction.h> 15 struct ipa; 21 * enum ipa_cmd_opcode: IPA immediate commands 24 * The numeric values here are the opcodes for IPA v3.5.1 hardware. 43 * struct ipa_cmd_info - information needed for an IPA immediate command 57 * ipa_cmd_table_valid() - Validate a memory region holding a table 58 * @ipa: - IPA pointer [all …]
|
| D | ipa_data.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2019-2020 Linaro Ltd. 16 * DOC: IPA/GSI Configuration Data 18 * Boot-time configuration data is used to define the configuration of the 19 * IPA and GSI resources to use for a given platform. This data is supplied 24 * Resources are data structures used internally by the IPA hardware. The 28 * Endpoint configuration data defines properties of both IPA endpoints and 30 * communication path between the IPA and a particular execution environment 35 * An endpoint is an IPA construct representing a single channel anywhere [all …]
|
| D | ipa_table.c | 1 // SPDX-License-Identifier: GPL-2.0 3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. 4 * Copyright (C) 2018-2020 Linaro Ltd. 15 #include <linux/dma-mapping.h> 17 #include "ipa.h" 28 * DOC: IPA Filter and Route Tables 30 * The IPA has tables defined in its local (IPA-resident) memory that define 32 * endian 64-bit "slot" that holds the address of a rule definition. (The 38 * by all IPA hardware (IPA v4.2 doesn't support hashed tables). 41 * an object (such as a route or filter table) in IPA-resident memory must [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/net/ |
| D | qcom,ipa.yaml | 1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/net/qcom,ipa.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm IP Accelerator (IPA) 10 - Alex Elder <elder@kernel.org> 13 This binding describes the Qualcomm IPA. The IPA is capable of offloading 17 The IPA sits between multiple independent "execution environments," 18 including the Application Processor (AP) and the modem. The IPA presents 20 The GSI is an integral part of the IPA, but it is logically isolated [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/ |
| D | qcom,ipa.yaml | 1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/net/qcom,ipa.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm IP Accelerator (IPA) 10 - Alex Elder <elder@kernel.org> 13 This binding describes the Qualcomm IPA. The IPA is capable of offloading 17 The IPA sits between multiple independent "execution environments," 18 including the Application Processor (AP) and the modem. The IPA presents 20 The GSI is an integral part of the IPA, but it is logically isolated [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/qcom/ |
| D | qcom,smp2p.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 Shared Memory Point 2 Point 10 - Andy Gross <agross@kernel.org> 11 - Bjorn Andersson <bjorn.andersson@linaro.org> 12 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 15 The Shared Memory Point to Point (SMP2P) protocol facilitates communication 16 of a single 32-bit value between two processors. Each value has a single 35 $ref: /schemas/types.yaml#/definitions/phandle-array [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/qcom/ |
| D | qcom-sdx65.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 9 #include <dt-bindings/clock/qcom,gcc-sdx65.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 15 #include <dt-bindings/interconnect/qcom,sdx65.h> 18 #address-cells = <1>; 19 #size-cells = <1>; [all …]
|
| D | qcom-sdx55.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 9 #include <dt-bindings/clock/qcom,gcc-sdx55.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interconnect/qcom,sdx55.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> 15 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 18 #address-cells = <1>; 19 #size-cells = <1>; [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/interconnect/ |
| D | qcom,rpm.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm RPM Network-On-Chip Interconnect 10 - Georgi Djakov <georgi.djakov@linaro.org> 15 the RPM shared memory device. 23 - qcom,msm8916-bimc 24 - qcom,msm8916-pcnoc 25 - qcom,msm8916-snoc 26 - qcom,msm8939-bimc [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/kvm/ |
| D | reset.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2012,2013 - ARM Ltd 7 * Copyright (C) 2012 - Virtual Open Systems and Columbia University 82 return -EINVAL; in kvm_vcpu_enable_sve() 84 vcpu->arch.sve_max_vl = kvm_sve_max_vl; in kvm_vcpu_enable_sve() 98 * vcpu->arch.sve_state as necessary. 107 vl = vcpu->arch.sve_max_vl; in kvm_vcpu_finalize_sve() 110 * Responsibility for these properties is shared between in kvm_vcpu_finalize_sve() 112 * set_sve_vls(). Double-check here just to be sure: in kvm_vcpu_finalize_sve() 116 return -EIO; in kvm_vcpu_finalize_sve() [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/kvm/ |
| D | reset.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2012,2013 - ARM Ltd 7 * Copyright (C) 2012 - Virtual Open Systems and Columbia University 128 return -EINVAL; in kvm_vcpu_enable_sve() 132 return -EINVAL; in kvm_vcpu_enable_sve() 134 vcpu->arch.sve_max_vl = kvm_sve_max_vl; in kvm_vcpu_enable_sve() 141 vcpu->arch.flags |= KVM_ARM64_GUEST_HAS_SVE; in kvm_vcpu_enable_sve() 148 * vcpu->arch.sve_state as necessary. 155 vl = vcpu->arch.sve_max_vl; in kvm_vcpu_finalize_sve() 158 * Responsibility for these properties is shared between in kvm_vcpu_finalize_sve() [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/include/asm/ |
| D | kvm_arm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) 2012,2013 - ARM Ltd 125 * We configure the Stage-2 page tables to always restrict the IPA space to be 144 * ----------------------------------------- 146 * ------------------------------------------ 147 * | Level: 0 | 2 | - | 148 * ------------------------------------------ 150 * ------------------------------------------ 152 * ------------------------------------------ 153 * | Level: 3 | - | 0 | [all …]
|
| /kernel/linux/linux-6.6/drivers/tee/optee/ |
| D | optee_msg.h | 1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */ 3 * Copyright (c) 2015-2021, Linaro Limited 12 * This file defines the OP-TEE message protocol (ABI) used to communicate 13 * with an instance of OP-TEE running in secure world. 21 * Part 1 - formatting of messages 49 * Pointer to a list of pages used to register user-defined SHM buffer. 52 * list of page addresses. OP-TEE core can reconstruct contiguous buffer from 64 * uint64_t pages_array[OPTEE_MSG_NONCONTIG_PAGE_SIZE/sizeof(uint64_t) - 1]; 98 * Page size used in non-contiguous buffer entries 105 * struct optee_msg_param_tmem - temporary memory reference parameter [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/qcom/ |
| D | sm6350.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 7 #include <dt-bindings/clock/qcom,dispcc-sm6350.h> 8 #include <dt-bindings/clock/qcom,gcc-sm6350.h> 9 #include <dt-bindings/clock/qcom,gpucc-sm6350.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/clock/qcom,sm6350-camcc.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interconnect/qcom,icc.h> 15 #include <dt-bindings/interconnect/qcom,osm-l3.h> [all …]
|
| /kernel/linux/linux-5.10/drivers/tee/optee/ |
| D | optee_msg.h | 1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */ 3 * Copyright (c) 2015-2019, Linaro Limited 12 * This file defines the OP-TEE message protocol (ABI) used to communicate 13 * with an instance of OP-TEE running in secure world. 19 * tee-supplicant. 23 * Part 1 - formatting of messages 48 * Pointer to a list of pages used to register user-defined SHM buffer. 51 * list of page addresses. OP-TEE core can reconstruct contiguous buffer from 63 * uint64_t pages_array[OPTEE_MSG_NONCONTIG_PAGE_SIZE/sizeof(uint64_t) - 1]; 97 * Page size used in non-contiguous buffer entries [all …]
|