Home
last modified time | relevance | path

Searched refs:shmem (Results 1 – 25 of 101) sorted by relevance

12345

/linux-6.15/drivers/gpu/drm/
H A Ddrm_gem_shmem_helper.c67 shmem = kzalloc(sizeof(*shmem), GFP_KERNEL); in __drm_gem_shmem_create()
68 if (!shmem) in __drm_gem_shmem_create()
70 obj = &shmem->base; in __drm_gem_shmem_create()
105 return shmem; in __drm_gem_shmem_create()
170 if (shmem->sgt) { in drm_gem_shmem_free()
176 if (shmem->pages) in drm_gem_shmem_free()
185 kfree(shmem); in drm_gem_shmem_free()
213 if (shmem->map_wc) in drm_gem_shmem_get_pages()
258 drm_WARN_ON(shmem->base.dev, drm_gem_is_imported(&shmem->base)); in drm_gem_shmem_pin_locked()
365 shmem->vaddr = vmap(shmem->pages, obj->size >> PAGE_SHIFT, in drm_gem_shmem_vmap()
[all …]
H A Ddrm_fbdev_shmem.c46 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_fb_mmap() local
48 if (shmem->map_wc) in drm_fbdev_shmem_fb_mmap()
87 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_get_page() local
94 page = shmem->pages[i]; // protected by active vmap in drm_fbdev_shmem_get_page()
139 struct drm_gem_shmem_object *shmem; in drm_fbdev_shmem_driver_fbdev_probe() local
155 shmem = to_drm_gem_shmem_obj(buffer->gem); in drm_fbdev_shmem_driver_fbdev_probe()
183 if (!shmem->map_wc) in drm_fbdev_shmem_driver_fbdev_probe()
/linux-6.15/drivers/gpu/drm/tests/
H A Ddrm_gem_shmem_test.c46 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_obj_create() local
54 drm_gem_shmem_free(shmem); in drm_gem_shmem_test_obj_create()
66 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_obj_create_private() local
120 drm_gem_shmem_free(shmem); in drm_gem_shmem_test_obj_create_private()
131 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_pin_pages() local
142 ret = drm_gem_shmem_pin(shmem); in drm_gem_shmem_test_pin_pages()
150 drm_gem_shmem_unpin(shmem); in drm_gem_shmem_test_pin_pages()
164 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_vmap() local
186 drm_gem_shmem_vunmap(shmem, &map); in drm_gem_shmem_test_vmap()
212 ret = drm_gem_shmem_pin(shmem); in drm_gem_shmem_test_get_pages_sgt()
[all …]
/linux-6.15/include/drm/
H A Ddrm_gem_shmem_helper.h121 return (shmem->madv > 0) && in drm_gem_shmem_is_purgeable()
122 !shmem->vmap_use_count && shmem->sgt && in drm_gem_shmem_is_purgeable()
123 !shmem->base.dma_buf && !drm_gem_is_imported(&shmem->base); in drm_gem_shmem_is_purgeable()
151 drm_gem_shmem_free(shmem); in drm_gem_shmem_object_free()
168 drm_gem_shmem_print_info(shmem, p, indent); in drm_gem_shmem_object_print_info()
182 return drm_gem_shmem_pin_locked(shmem); in drm_gem_shmem_object_pin()
196 drm_gem_shmem_unpin_locked(shmem); in drm_gem_shmem_object_unpin()
213 return drm_gem_shmem_get_sg_table(shmem); in drm_gem_shmem_object_get_sg_table()
232 return drm_gem_shmem_vmap(shmem, map); in drm_gem_shmem_object_vmap()
248 drm_gem_shmem_vunmap(shmem, map); in drm_gem_shmem_object_vunmap()
[all …]
/linux-6.15/drivers/firmware/arm_scmi/
H A Dshmem.c113 if (!(ioread32(&shmem->channel_status) & in shmem_tx_prepare()
122 iowrite32(0x0, &shmem->channel_status); in shmem_tx_prepare()
124 &shmem->flags); in shmem_tx_prepare()
125 iowrite32(sizeof(shmem->msg_header) + xfer->tx.len, &shmem->length); in shmem_tx_prepare()
133 return ioread32(&shmem->msg_header); in shmem_read_header()
140 size_t len = ioread32(&shmem->length); in shmem_fetch_response()
154 size_t len = ioread32(&shmem->length); in shmem_fetch_notification()
178 return ioread32(&shmem->channel_status) & in shmem_poll_done()
185 return (ioread32(&shmem->channel_status) & in shmem_channel_free()
209 if (!shmem) in shmem_setup_iomap()
[all …]
H A Dcommon.h363 void (*tx_prepare)(struct scmi_shared_mem __iomem *shmem,
367 u32 (*read_header)(struct scmi_shared_mem __iomem *shmem);
369 void (*fetch_response)(struct scmi_shared_mem __iomem *shmem,
372 void (*fetch_notification)(struct scmi_shared_mem __iomem *shmem,
375 void (*clear_channel)(struct scmi_shared_mem __iomem *shmem);
376 bool (*poll_done)(struct scmi_shared_mem __iomem *shmem,
378 bool (*channel_free)(struct scmi_shared_mem __iomem *shmem);
379 bool (*channel_intr_enabled)(struct scmi_shared_mem __iomem *shmem);
430 const struct scmi_shared_mem_operations *shmem; member
/linux-6.15/arch/riscv/kvm/
H A Dvcpu_sbi_sta.c21 vcpu->arch.sta.shmem = INVALID_GPA; in kvm_riscv_vcpu_sbi_sta_reset()
27 gpa_t shmem = vcpu->arch.sta.shmem; in kvm_riscv_vcpu_record_steal_time() local
38 if (shmem == INVALID_GPA) in kvm_riscv_vcpu_record_steal_time()
46 gfn = shmem >> PAGE_SHIFT; in kvm_riscv_vcpu_record_steal_time()
50 vcpu->arch.sta.shmem = INVALID_GPA; in kvm_riscv_vcpu_record_steal_time()
90 gpa_t shmem; in kvm_sbi_sta_steal_time_set_shmem() local
105 shmem = shmem_phys_lo; in kvm_sbi_sta_steal_time_set_shmem()
122 vcpu->arch.sta.shmem = shmem; in kvm_sbi_sta_steal_time_set_shmem()
191 vcpu->arch.sta.shmem = reg_val; in kvm_riscv_vcpu_set_reg_sbi_sta()
194 vcpu->arch.sta.shmem = reg_val; in kvm_riscv_vcpu_set_reg_sbi_sta()
[all …]
H A Dnacl.c17 void __kvm_riscv_nacl_hfence(void *shmem, in __kvm_riscv_nacl_hfence() argument
27 entp = shmem + SBI_NACL_SHMEM_HFENCE_ENTRY_CONFIG(i); in __kvm_riscv_nacl_hfence()
45 entp = shmem + SBI_NACL_SHMEM_HFENCE_ENTRY_CONFIG(i); in __kvm_riscv_nacl_hfence()
47 entp = shmem + SBI_NACL_SHMEM_HFENCE_ENTRY_PNUM(i); in __kvm_riscv_nacl_hfence()
49 entp = shmem + SBI_NACL_SHMEM_HFENCE_ENTRY_PCOUNT(i); in __kvm_riscv_nacl_hfence()
92 if (!nacl->shmem) in kvm_riscv_nacl_exit()
95 free_pages((unsigned long)nacl->shmem, in kvm_riscv_nacl_exit()
97 nacl->shmem = NULL; in kvm_riscv_nacl_exit()
147 nacl->shmem = page_to_virt(shmem_page); in kvm_riscv_nacl_init()
/linux-6.15/drivers/gpu/drm/panfrost/
H A Dpanfrost_gem_shrinker.c22 struct drm_gem_shmem_object *shmem; in panfrost_gem_shrinker_count() local
28 list_for_each_entry(shmem, &pfdev->shrinker_list, madv_list) { in panfrost_gem_shrinker_count()
29 if (drm_gem_shmem_is_purgeable(shmem)) in panfrost_gem_shrinker_count()
30 count += shmem->base.size >> PAGE_SHIFT; in panfrost_gem_shrinker_count()
50 if (!dma_resv_trylock(shmem->base.resv)) in panfrost_gem_purge()
57 dma_resv_unlock(shmem->base.resv); in panfrost_gem_purge()
68 struct drm_gem_shmem_object *shmem, *tmp; in panfrost_gem_shrinker_scan() local
77 if (drm_gem_shmem_is_purgeable(shmem) && in panfrost_gem_shrinker_scan()
78 panfrost_gem_purge(&shmem->base)) { in panfrost_gem_shrinker_scan()
79 freed += shmem->base.size >> PAGE_SHIFT; in panfrost_gem_shrinker_scan()
[all …]
H A Dpanfrost_gem.c270 struct drm_gem_shmem_object *shmem; in panfrost_gem_create() local
277 shmem = drm_gem_shmem_create(dev, size); in panfrost_gem_create()
278 if (IS_ERR(shmem)) in panfrost_gem_create()
279 return ERR_CAST(shmem); in panfrost_gem_create()
281 bo = to_panfrost_bo(&shmem->base); in panfrost_gem_create()
/linux-6.15/drivers/firmware/arm_scmi/transports/
H A Dmailbox.c50 core->shmem->tx_prepare(smbox->shmem, m, smbox->cinfo, in tx_prepare()
68 !core->shmem->channel_free(smbox->shmem)) { in rx_callback()
71 core->shmem->read_header(smbox->shmem), in rx_callback()
77 core->shmem->read_header(smbox->shmem), NULL); in rx_callback()
203 smbox->shmem = core->shmem->setup_iomap(cinfo, dev, tx, NULL, in mailbox_chan_setup()
205 if (IS_ERR(smbox->shmem)) in mailbox_chan_setup()
312 core->shmem->fetch_response(smbox->shmem, xfer, smbox->io_ops->fromio); in mailbox_fetch_response()
320 core->shmem->fetch_notification(smbox->shmem, max_len, xfer, in mailbox_fetch_notification()
330 core->shmem->clear_channel(smbox->shmem); in mailbox_clear_channel()
332 if (!core->shmem->channel_intr_enabled(smbox->shmem)) in mailbox_clear_channel()
[all …]
H A Dsmc.c63 struct scmi_shared_mem __iomem *shmem; member
82 core->shmem->read_header(scmi_info->shmem), NULL); in smc_msg_done_isr()
149 scmi_info->shmem = core->shmem->setup_iomap(cinfo, dev, tx, &res, in smc_chan_setup()
151 if (IS_ERR(scmi_info->shmem)) in smc_chan_setup()
152 return PTR_ERR(scmi_info->shmem); in smc_chan_setup()
160 void __iomem *ptr = (void __iomem *)scmi_info->shmem + size - 8; in smc_chan_setup()
235 core->shmem->tx_prepare(scmi_info->shmem, xfer, cinfo, in smc_send_message()
260 core->shmem->fetch_response(scmi_info->shmem, xfer, in smc_fetch_response()
H A Doptee.c127 struct scmi_shared_mem __iomem *shmem; member
328 core->shmem->clear_channel(channel->req.shmem); in scmi_optee_clear_channel()
353 channel->req.shmem = core->shmem->setup_iomap(cinfo, dev, true, NULL, in setup_static_shmem()
355 if (IS_ERR(channel->req.shmem)) in setup_static_shmem()
356 return PTR_ERR(channel->req.shmem); in setup_static_shmem()
469 core->shmem->tx_prepare(channel->req.shmem, xfer, cinfo, in scmi_optee_send_message()
489 core->shmem->fetch_response(channel->req.shmem, xfer, in scmi_optee_fetch_response()
/linux-6.15/drivers/net/ethernet/microsoft/mana/
H A Dshm_channel.c146 u64 *shmem; in mana_smc_setup_hwc() local
186 shmem = (u64 *)ptr; in mana_smc_setup_hwc()
188 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc()
194 shmem = (u64 *)ptr; in mana_smc_setup_hwc()
196 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc()
202 shmem = (u64 *)ptr; in mana_smc_setup_hwc()
204 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc()
210 shmem = (u64 *)ptr; in mana_smc_setup_hwc()
212 *shmem = frame_addr & PAGE_FRAME_L48_MASK; in mana_smc_setup_hwc()
/linux-6.15/drivers/accel/amdxdna/
H A Damdxdna_gem.c271 if (IS_ERR(shmem)) in amdxdna_drm_alloc_shmem()
272 return ERR_CAST(shmem); in amdxdna_drm_alloc_shmem()
274 shmem->map_wc = false; in amdxdna_drm_alloc_shmem()
276 abo = to_xdna_obj(&shmem->base); in amdxdna_drm_alloc_shmem()
308 if (IS_ERR(shmem)) { in amdxdna_drm_create_dev_heap()
309 ret = PTR_ERR(shmem); in amdxdna_drm_create_dev_heap()
313 shmem->map_wc = false; in amdxdna_drm_create_dev_heap()
411 if (IS_ERR(shmem)) in amdxdna_drm_create_cmd_bo()
412 return ERR_CAST(shmem); in amdxdna_drm_create_cmd_bo()
414 shmem->map_wc = false; in amdxdna_drm_create_cmd_bo()
[all …]
/linux-6.15/Documentation/devicetree/bindings/mailbox/
H A Dmailbox.txt26 - shmem : List of phandle pointing to the shared memory(SHM) area between the
39 Example with shared memory(shmem):
49 cl_shmem: shmem@0 {
50 compatible = "client-shmem";
58 shmem = <&cl_shmem>;
/linux-6.15/Documentation/devicetree/bindings/reserved-memory/
H A Dnvidia,tegra264-bpmp-shmem.yaml4 $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra264-bpmp-shmem.yaml#
17 The sub-node is named shmem@<address>.
24 const: nvidia,tegra264-bpmp-shmem
41 dram_cpu_bpmp_mail: shmem@f1be0000 {
42 compatible = "nvidia,tegra264-bpmp-shmem";
/linux-6.15/Documentation/devicetree/bindings/firmware/
H A Darm,scmi.yaml106 shmem:
351 shmem:
379 - shmem
393 - shmem
413 shmem = <&cpu_scp_lpri0>,
433 shmem = <&cpu_scp_hpri0>,
509 compatible = "arm,scmi-shmem";
514 compatible = "arm,scmi-shmem";
519 compatible = "arm,scmi-shmem";
524 compatible = "arm,scmi-shmem";
[all …]
H A Dgoogle,gs101-acpm-ipc.yaml30 shmem:
40 - shmem
49 shmem = <&apm_sram>;
/linux-6.15/drivers/gpu/drm/panthor/
H A Dpanthor_gem.c221 struct drm_gem_shmem_object *shmem; in panthor_gem_create_with_handle() local
224 shmem = drm_gem_shmem_create(ddev, *size); in panthor_gem_create_with_handle()
225 if (IS_ERR(shmem)) in panthor_gem_create_with_handle()
226 return PTR_ERR(shmem); in panthor_gem_create_with_handle()
228 bo = to_panthor_bo(&shmem->base); in panthor_gem_create_with_handle()
241 ret = drm_gem_handle_create(file, &shmem->base, handle); in panthor_gem_create_with_handle()
246 drm_gem_object_put(&shmem->base); in panthor_gem_create_with_handle()
/linux-6.15/arch/arm64/boot/dts/arm/
H A Djuno-scmi.dtsi49 shmem = <&cpu_scp_lpri0 &cpu_scp_lpri1>;
63 shmem = <&cpu_scp_hpri0 &cpu_scp_hpri1>;
205 compatible = "arm,scmi-shmem";
210 compatible = "arm,scmi-shmem";
215 compatible = "arm,scmi-shmem";
220 compatible = "arm,scmi-shmem";
/linux-6.15/drivers/net/arcnet/
H A Dcom90xx.c88 static int shmem; variable
93 module_param(shmem, int, 0);
107 if (!io && !irq && !shmem && !*device && com90xx_skip_probe) in com90xx_probe()
131 if (shmem) in com90xx_probe()
132 shmems[numshmems++] = shmem; in com90xx_probe()
473 release_mem_region(shmem, MIRROR_SIZE); in com90xx_found()
485 check_mirror(shmem - MIRROR_SIZE, MIRROR_SIZE) == 0 && in com90xx_found()
489 first_mirror = shmem - mirror_size; in com90xx_found()
494 last_mirror = shmem + mirror_size; in com90xx_found()
503 release_mem_region(shmem, MIRROR_SIZE); in com90xx_found()
[all …]
H A Darc-rimi.c126 unsigned long first_mirror, last_mirror, shmem; in arcrimi_found() local
146 shmem = dev->mem_start; in arcrimi_found()
159 check_mirror(shmem - MIRROR_SIZE, MIRROR_SIZE) == 0 && in arcrimi_found()
160 check_mirror(shmem - 2 * MIRROR_SIZE, MIRROR_SIZE) == 1) in arcrimi_found()
163 first_mirror = shmem - mirror_size; in arcrimi_found()
168 last_mirror = shmem + mirror_size; in arcrimi_found()
194 release_mem_region(shmem, MIRROR_SIZE); in arcrimi_found()
/linux-6.15/drivers/firmware/samsung/
H A Dexynos-acpm.c168 struct acpm_shmem __iomem *shmem; member
553 struct acpm_shmem __iomem *shmem = acpm->shmem; in acpm_channels_init() local
558 acpm->num_chans = readl(&shmem->num_chans); in acpm_channels_init()
564 chans_shmem = acpm->sram_base + readl(&shmem->chans); in acpm_channels_init()
613 struct device_node *shmem; in acpm_probe() local
623 shmem = of_parse_phandle(dev->of_node, "shmem", 0); in acpm_probe()
624 ret = of_address_to_resource(shmem, 0, &res); in acpm_probe()
625 of_node_put(shmem); in acpm_probe()
641 acpm->shmem = acpm->sram_base + match_data->initdata_base; in acpm_probe()
/linux-6.15/drivers/gpu/drm/virtio/
H A Dvirtgpu_object.c147 struct virtio_gpu_object_shmem *shmem; in virtio_gpu_create_object() local
150 shmem = kzalloc(sizeof(*shmem), GFP_KERNEL); in virtio_gpu_create_object()
151 if (!shmem) in virtio_gpu_create_object()
154 dshmem = &shmem->base.base; in virtio_gpu_create_object()

12345