Home
last modified time | relevance | path

Searched full:ocmem (Results 1 – 25 of 29) sorted by relevance

12

/openbmc/linux/drivers/soc/qcom/
H A Docmem.c3 * The On Chip Memory (OCMEM) allocator allows various clients to allocate
4 * memory from OCMEM based on performance, latency and power requirements.
24 #include <soc/qcom/ocmem.h>
53 struct ocmem { struct
101 static inline void ocmem_write(struct ocmem *ocmem, u32 reg, u32 data) in ocmem_write() argument
103 writel(data, ocmem->mmio + reg); in ocmem_write()
106 static inline u32 ocmem_read(struct ocmem *ocmem, u32 reg) in ocmem_read() argument
108 return readl(ocmem->mmio + reg); in ocmem_read()
111 static void update_ocmem(struct ocmem *ocmem) in update_ocmem() argument
117 for (i = 0; i < ocmem->config->num_regions; i++) { in update_ocmem()
[all …]
H A DKconfig82 tristate "Qualcomm On Chip Memory (OCMEM) driver"
86 The On Chip Memory (OCMEM) allocator allows various clients to
87 allocate memory from OCMEM based on performance, latency and power
H A DMakefile8 obj-$(CONFIG_QCOM_OCMEM) += ocmem.o
/openbmc/linux/include/soc/qcom/
H A Docmem.h3 * 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
/openbmc/linux/Documentation/devicetree/bindings/sram/
H A Dqcom,ocmem.yaml4 $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
19 - qcom,msm8226-ocmem # v1.1.0
20 - qcom,msm8974-ocmem # v1.4.0
25 - description: OCMEM address range
71 - qcom,msm8974-ocmem
104 compatible = "qcom,msm8974-ocmem";
/openbmc/linux/drivers/gpu/drm/msm/adreno/
H A Da4xx_gpu.h18 /* if OCMEM is used for GMEM: */
19 struct adreno_ocmem ocmem; member
H A Da3xx_gpu.h21 /* if OCMEM is used for GMEM: */
22 struct adreno_ocmem ocmem; member
H A Dadreno_gpu.c18 #include <soc/qcom/ocmem.h>
1015 struct ocmem *ocmem; in adreno_gpu_ocmem_init() local
1017 ocmem = of_get_ocmem(dev); in adreno_gpu_ocmem_init()
1018 if (IS_ERR(ocmem)) { in adreno_gpu_ocmem_init()
1019 if (PTR_ERR(ocmem) == -ENODEV) { in adreno_gpu_ocmem_init()
1021 * Return success since either the ocmem property was in adreno_gpu_ocmem_init()
1022 * not specified in device tree, or ocmem support is in adreno_gpu_ocmem_init()
1028 return PTR_ERR(ocmem); in adreno_gpu_ocmem_init()
1031 ocmem_hdl = ocmem_allocate(ocmem, OCMEM_GRAPHICS, adreno_gpu->info->gmem); in adreno_gpu_ocmem_init()
1035 adreno_ocmem->ocmem = ocmem; in adreno_gpu_ocmem_init()
[all …]
H A Da3xx_gpu.c247 /* 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()
564 adreno_gpu, &a3xx_gpu->ocmem); in a3xx_gpu_init()
590 ocmem_icc_path = devm_of_icc_get(&pdev->dev, "ocmem"); in a3xx_gpu_init()
593 /* allow -ENODATA, ocmem icc is optional */ in a3xx_gpu_init()
H A Dadreno_gpu.h177 struct ocmem *ocmem; member
427 struct adreno_ocmem *ocmem);
428 void adreno_gpu_ocmem_cleanup(struct adreno_ocmem *ocmem);
H A Da4xx_gpu.c240 (unsigned int)(a4xx_gpu->ocmem.base >> 14)); in a4xx_hw_init()
380 adreno_gpu_ocmem_cleanup(&a4xx_gpu->ocmem); in a4xx_destroy()
692 &a4xx_gpu->ocmem); in a4xx_gpu_init()
717 ocmem_icc_path = devm_of_icc_get(&pdev->dev, "ocmem"); in a4xx_gpu_init()
720 /* allow -ENODATA, ocmem icc is optional */ in a4xx_gpu_init()
H A Da6xx_gmu.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Dadreno_common.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Dadreno_pm4.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Da2xx.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Da3xx.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Da4xx.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
H A Da5xx.xml.h21 - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 byte…
/openbmc/linux/Documentation/devicetree/bindings/display/msm/
H A Dgpu.yaml61 - const: ocmem
75 phandle to the On Chip Memory (OCMEM) that's present on some a3xx and
77 Documentation/devicetree/bindings/sram/qcom,ocmem.yaml
251 ocmem@fdd00000 {
252 compatible = "qcom,msm8974-ocmem";
/openbmc/linux/drivers/firmware/
H A Dqcom_scm.c987 * qcom_scm_ocmem_lock_available() - is OCMEM lock/unlock interface available
997 * qcom_scm_ocmem_lock() - call OCMEM lock interface to assign an OCMEM
1001 * @offset: OCMEM offset
1002 * @size: OCMEM size
1023 * qcom_scm_ocmem_unlock() - call OCMEM unlock interface to release an OCMEM
1027 * @offset: OCMEM offset
1028 * @size: OCMEM size
/openbmc/linux/arch/arm64/boot/dts/qcom/
H A Dmsm8992.dtsi28 &ocmem {
H A Dmsm8994.dtsi1075 ocmem: sram@fdd00000 { label
1076 compatible = "qcom,msm8974-ocmem";
/openbmc/linux/drivers/interconnect/qcom/
H A Dmsm8974.c26 * Peripheral | On Chip | Memory (OCMEM)
407 /* Virtual NoC is needed for connection to OCMEM */
/openbmc/linux/arch/arm/boot/dts/qcom/
H A Dqcom-msm8226.dtsi788 compatible = "qcom,msm8226-ocmem";
H A Dqcom-msm8974.dtsi2117 interconnect-names = "gfx-mem", "ocmem";
2141 compatible = "qcom,msm8974-ocmem";

12