| /Linux-v6.1/drivers/soc/qcom/ |
| D | ocmem.c | 3 * The On Chip Memory (OCMEM) allocator allows various clients to allocate 4 * memory from OCMEM based on performance, latency and power requirements. 23 #include <soc/qcom/ocmem.h> 52 struct ocmem { struct 104 static inline void ocmem_write(struct ocmem *ocmem, u32 reg, u32 data) in ocmem_write() argument 106 writel(data, ocmem->mmio + reg); in ocmem_write() 109 static inline u32 ocmem_read(struct ocmem *ocmem, u32 reg) in ocmem_read() argument 111 return readl(ocmem->mmio + reg); in ocmem_read() 114 static void update_ocmem(struct ocmem *ocmem) in update_ocmem() argument 120 for (i = 0; i < ocmem->config->num_regions; i++) { in update_ocmem() [all …]
|
| D | Kconfig | 81 tristate "Qualcomm On Chip Memory (OCMEM) driver" 85 The On Chip Memory (OCMEM) allocator allows various clients to 86 allocate memory from OCMEM based on performance, latency and power
|
| D | Makefile | 9 obj-$(CONFIG_QCOM_OCMEM) += ocmem.o
|
| /Linux-v6.1/include/soc/qcom/ |
| D | ocmem.h | 3 * The On Chip Memory (OCMEM) allocator allows various clients to allocate 4 * memory from OCMEM based on performance, latency and power requirements. 28 struct ocmem; 38 struct ocmem *of_get_ocmem(struct device *dev); 39 struct ocmem_buf *ocmem_allocate(struct ocmem *ocmem, enum ocmem_client client, 41 void ocmem_free(struct ocmem *ocmem, enum ocmem_client client, 46 static inline struct ocmem *of_get_ocmem(struct device *dev) in of_get_ocmem() 51 static inline struct ocmem_buf *ocmem_allocate(struct ocmem *ocmem, in ocmem_allocate() argument 58 static inline void ocmem_free(struct ocmem *ocmem, enum ocmem_client client, in ocmem_free() argument
|
| /Linux-v6.1/Documentation/devicetree/bindings/sram/ |
| D | qcom,ocmem.yaml | 4 $id: http://devicetree.org/schemas/sram/qcom,ocmem.yaml# 7 title: On Chip Memory (OCMEM) that is present on some Qualcomm Snapdragon SoCs. 13 The On Chip Memory (OCMEM) is typically used by the GPU, camera/video, and 18 const: qcom,msm8974-ocmem 23 - description: OCMEM address range 79 compatible = "qcom,msm8974-ocmem";
|
| /Linux-v6.1/Documentation/devicetree/bindings/display/msm/ |
| D | gpu.yaml | 58 - const: ocmem 72 phandle to the On Chip Memory (OCMEM) that's present on some a3xx and 74 Documentation/devicetree/bindings/sram/qcom,ocmem.yaml 200 ocmem@fdd00000 { 201 compatible = "qcom,msm8974-ocmem";
|
| /Linux-v6.1/drivers/gpu/drm/msm/adreno/ |
| D | a4xx_gpu.h | 18 /* if OCMEM is used for GMEM: */ 19 struct adreno_ocmem ocmem; member
|
| D | a3xx_gpu.h | 21 /* if OCMEM is used for GMEM: */ 22 struct adreno_ocmem ocmem; member
|
| D | adreno_gpu.c | 18 #include <soc/qcom/ocmem.h> 993 struct ocmem *ocmem; in adreno_gpu_ocmem_init() local 995 ocmem = of_get_ocmem(dev); in adreno_gpu_ocmem_init() 996 if (IS_ERR(ocmem)) { in adreno_gpu_ocmem_init() 997 if (PTR_ERR(ocmem) == -ENODEV) { in adreno_gpu_ocmem_init() 999 * Return success since either the ocmem property was in adreno_gpu_ocmem_init() 1000 * not specified in device tree, or ocmem support is in adreno_gpu_ocmem_init() 1006 return PTR_ERR(ocmem); in adreno_gpu_ocmem_init() 1009 ocmem_hdl = ocmem_allocate(ocmem, OCMEM_GRAPHICS, adreno_gpu->gmem); in adreno_gpu_ocmem_init() 1013 adreno_ocmem->ocmem = ocmem; in adreno_gpu_ocmem_init() [all …]
|
| D | a3xx_gpu.c | 247 /* Set the OCMEM base address for A330, etc */ in a3xx_hw_init() 248 if (a3xx_gpu->ocmem.hdl) { in a3xx_hw_init() 250 (unsigned int)(a3xx_gpu->ocmem.base >> 14)); in a3xx_hw_init() 381 adreno_gpu_ocmem_cleanup(&a3xx_gpu->ocmem); in a3xx_destroy() 553 adreno_gpu, &a3xx_gpu->ocmem); in a3xx_gpu_init() 579 ocmem_icc_path = devm_of_icc_get(&pdev->dev, "ocmem"); in a3xx_gpu_init() 582 /* allow -ENODATA, ocmem icc is optional */ in a3xx_gpu_init()
|
| D | adreno_gpu.h | 124 struct ocmem *ocmem; member 317 struct adreno_ocmem *ocmem); 318 void adreno_gpu_ocmem_cleanup(struct adreno_ocmem *ocmem);
|
| D | a4xx_gpu.c | 240 (unsigned int)(a4xx_gpu->ocmem.base >> 14)); in a4xx_hw_init() 380 adreno_gpu_ocmem_cleanup(&a4xx_gpu->ocmem); in a4xx_destroy() 682 &a4xx_gpu->ocmem); in a4xx_gpu_init() 707 ocmem_icc_path = devm_of_icc_get(&pdev->dev, "ocmem"); in a4xx_gpu_init() 710 /* allow -ENODATA, ocmem icc is optional */ in a4xx_gpu_init()
|
| D | a6xx_gmu.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | adreno_common.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | adreno_pm4.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | a2xx.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | a3xx.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | a4xx.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | a5xx.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| D | a6xx.xml.h | 21 - /home/robclark/tmp/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, fr…
|
| /Linux-v6.1/drivers/firmware/ |
| D | qcom_scm.c | 969 * qcom_scm_ocmem_lock_available() - is OCMEM lock/unlock interface available 979 * qcom_scm_ocmem_lock() - call OCMEM lock interface to assign an OCMEM 983 * @offset: OCMEM offset 984 * @size: OCMEM size 1005 * qcom_scm_ocmem_unlock() - call OCMEM unlock interface to release an OCMEM 1009 * @offset: OCMEM offset 1010 * @size: OCMEM size
|
| /Linux-v6.1/arch/arm64/boot/dts/qcom/ |
| D | msm8992.dtsi | 27 &ocmem {
|
| D | msm8994.dtsi | 1068 ocmem: sram@fdd00000 { label 1069 compatible = "qcom,msm8974-ocmem";
|
| /Linux-v6.1/drivers/interconnect/qcom/ |
| D | msm8974.c | 26 * Peripheral | On Chip | Memory (OCMEM) 408 /* Virtual NoC is needed for connection to OCMEM */
|
| /Linux-v6.1/arch/arm/boot/dts/ |
| D | qcom-msm8974.dtsi | 1638 interconnect-names = "gfx-mem", "ocmem"; 1662 compatible = "qcom,msm8974-ocmem";
|