| /drivers/gpu/drm/ |
| A D | drm_gem_shmem_helper.c | 67 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() 186 kfree(shmem); in drm_gem_shmem_free() 213 if (shmem->map_wc) in drm_gem_shmem_get_pages_locked() 256 drm_WARN_ON(shmem->base.dev, drm_gem_is_imported(&shmem->base)); in drm_gem_shmem_pin_locked() 371 shmem->vaddr = vmap(shmem->pages, obj->size >> PAGE_SHIFT, in drm_gem_shmem_vmap_locked() [all …]
|
| A D | drm_fbdev_shmem.c | 47 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_fb_mmap() local 49 if (shmem->map_wc) in drm_fbdev_shmem_fb_mmap() 88 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); in drm_fbdev_shmem_get_page() local 95 page = shmem->pages[i]; // protected by active vmap in drm_fbdev_shmem_get_page() 140 struct drm_gem_shmem_object *shmem; in drm_fbdev_shmem_driver_fbdev_probe() local 156 shmem = to_drm_gem_shmem_obj(buffer->gem); in drm_fbdev_shmem_driver_fbdev_probe() 184 if (!shmem->map_wc) in drm_fbdev_shmem_driver_fbdev_probe()
|
| /drivers/gpu/drm/tests/ |
| A D | drm_gem_shmem_test.c | 46 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 200 struct drm_gem_shmem_object *shmem; in drm_gem_shmem_test_get_pages_sgt() local 212 ret = drm_gem_shmem_pin(shmem); in drm_gem_shmem_test_get_pages_sgt() [all …]
|
| /drivers/firmware/arm_scmi/ |
| A D | shmem.c | 113 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 …]
|
| A D | common.h | 370 void (*tx_prepare)(struct scmi_shared_mem __iomem *shmem, 374 u32 (*read_header)(struct scmi_shared_mem __iomem *shmem); 376 void (*fetch_response)(struct scmi_shared_mem __iomem *shmem, 379 void (*fetch_notification)(struct scmi_shared_mem __iomem *shmem, 382 void (*clear_channel)(struct scmi_shared_mem __iomem *shmem); 383 bool (*poll_done)(struct scmi_shared_mem __iomem *shmem, 385 bool (*channel_free)(struct scmi_shared_mem __iomem *shmem); 386 bool (*channel_intr_enabled)(struct scmi_shared_mem __iomem *shmem); 437 const struct scmi_shared_mem_operations *shmem; member
|
| /drivers/gpu/drm/panfrost/ |
| A D | panfrost_gem_shrinker.c | 22 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 …]
|
| A D | panfrost_gem.c | 308 struct drm_gem_shmem_object *shmem; in panfrost_gem_create() local 315 shmem = drm_gem_shmem_create(dev, size); in panfrost_gem_create() 316 if (IS_ERR(shmem)) in panfrost_gem_create() 317 return ERR_CAST(shmem); in panfrost_gem_create() 319 bo = to_panfrost_bo(&shmem->base); in panfrost_gem_create()
|
| /drivers/firmware/arm_scmi/transports/ |
| A D | mailbox.c | 50 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 …]
|
| A D | smc.c | 63 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()
|
| A D | optee.c | 127 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()
|
| /drivers/net/ethernet/microsoft/mana/ |
| A D | shm_channel.c | 146 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()
|
| /drivers/platform/x86/amd/hfi/ |
| A D | hfi.c | 76 struct amd_shmem_info *shmem; member 157 memcpy_fromio(amd_hfi_data->shmem, pcc_comm_addr, pcct_ext->length); in amd_hfi_fill_metadata() 160 if (amd_hfi_data->shmem->header.signature != PCC_SIGNATURE) { in amd_hfi_fill_metadata() 164 if (amd_hfi_data->shmem->version_number != AMD_HETERO_RANKING_TABLE_VER) { in amd_hfi_fill_metadata() 166 amd_hfi_data->shmem->version_number); in amd_hfi_fill_metadata() 170 for (unsigned int i = 0; i < amd_hfi_data->shmem->n_bitmaps; i++) { in amd_hfi_fill_metadata() 171 u32 bitmap = amd_hfi_data->shmem->table_data[i]; in amd_hfi_fill_metadata() 194 u32 *table = amd_hfi_data->shmem->table_data + in amd_hfi_fill_metadata() 195 amd_hfi_data->shmem->n_bitmaps + in amd_hfi_fill_metadata() 391 amd_hfi_data->shmem = devm_kzalloc(amd_hfi_data->dev, pcct_ext->length, GFP_KERNEL); in amd_hfi_metadata_parser() [all …]
|
| /drivers/net/arcnet/ |
| A D | com90xx.c | 88 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 …]
|
| A D | arc-rimi.c | 126 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()
|
| /drivers/accel/amdxdna/ |
| A D | amdxdna_gem.c | 552 if (IS_ERR(shmem)) in amdxdna_drm_alloc_shmem() 553 return ERR_CAST(shmem); in amdxdna_drm_alloc_shmem() 555 shmem->map_wc = false; in amdxdna_drm_alloc_shmem() 557 abo = to_xdna_obj(&shmem->base); in amdxdna_drm_alloc_shmem() 590 if (IS_ERR(shmem)) { in amdxdna_drm_create_dev_heap() 591 ret = PTR_ERR(shmem); in amdxdna_drm_create_dev_heap() 595 shmem->map_wc = false; in amdxdna_drm_create_dev_heap() 675 if (IS_ERR(shmem)) in amdxdna_drm_create_cmd_bo() 676 return ERR_CAST(shmem); in amdxdna_drm_create_cmd_bo() 678 shmem->map_wc = false; in amdxdna_drm_create_cmd_bo() [all …]
|
| /drivers/firmware/samsung/ |
| A D | exynos-acpm.c | 168 struct acpm_shmem __iomem *shmem; member 546 struct acpm_shmem __iomem *shmem = acpm->shmem; in acpm_channels_init() local 551 acpm->num_chans = readl(&shmem->num_chans); in acpm_channels_init() 557 chans_shmem = acpm->sram_base + readl(&shmem->chans); in acpm_channels_init() 606 struct device_node *shmem; in acpm_probe() local 616 shmem = of_parse_phandle(dev->of_node, "shmem", 0); in acpm_probe() 617 ret = of_address_to_resource(shmem, 0, &res); in acpm_probe() 618 of_node_put(shmem); in acpm_probe() 634 acpm->shmem = acpm->sram_base + match_data->initdata_base; in acpm_probe()
|
| /drivers/gpu/drm/virtio/ |
| A D | virtgpu_object.c | 147 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()
|
| /drivers/mfd/ |
| A D | macsmc.c | 128 memcpy_toio(smc->shmem.iomem, wbuf, wsize); in apple_smc_rw_locked() 133 memcpy_toio(smc->shmem.iomem, wbuf, wsize); in apple_smc_rw_locked() 162 memcpy_fromio(rbuf, smc->shmem.iomem, rsize); in apple_smc_rw_locked() 211 memcpy_fromio(key_info, smc->shmem.iomem, sizeof(key_info)); in apple_smc_get_key_info() 257 memcpy_toio(smc->shmem.iomem, buf, size); in apple_smc_write_atomic() 341 smc->shmem.iova = message; in apple_smc_rtkit_recv_early() 342 smc->shmem.size = SMC_SHMEM_SIZE; in apple_smc_rtkit_recv_early() 343 ret = apple_smc_rtkit_shmem_setup(smc, &smc->shmem); in apple_smc_rtkit_recv_early()
|
| /drivers/gpu/drm/panthor/ |
| A D | panthor_gem.c | 276 struct drm_gem_shmem_object *shmem; in panthor_gem_create_with_handle() local 279 shmem = drm_gem_shmem_create(ddev, *size); in panthor_gem_create_with_handle() 280 if (IS_ERR(shmem)) in panthor_gem_create_with_handle() 281 return PTR_ERR(shmem); in panthor_gem_create_with_handle() 283 bo = to_panthor_bo(&shmem->base); in panthor_gem_create_with_handle() 298 ret = drm_gem_handle_create(file, &shmem->base, handle); in panthor_gem_create_with_handle() 303 drm_gem_object_put(&shmem->base); in panthor_gem_create_with_handle()
|
| /drivers/mailbox/ |
| A D | pcc.c | 298 pcc_hdr = pchan->chan.shmem; in pcc_chan_acknowledge() 315 memcpy_fromio(&pcc_header, pchan->chan.shmem, in write_response() 321 memcpy_fromio(buffer, pchan->chan.shmem, data_len); in write_response() 413 pcc_mchan->shmem = acpi_os_ioremap(pcc_mchan->shmem_base_addr, in pcc_mbox_request_channel() 415 if (!pcc_mchan->shmem) in pcc_mbox_request_channel() 454 if (pcc_mbox_chan->shmem) { in pcc_mbox_free_channel() 455 iounmap(pcc_mbox_chan->shmem); in pcc_mbox_free_channel() 456 pcc_mbox_chan->shmem = NULL; in pcc_mbox_free_channel() 483 memcpy_toio(pcc_mbox_chan->shmem, data, len); in pcc_write_to_buffer()
|
| /drivers/gpu/drm/lima/ |
| A D | lima_gem.c | 113 struct drm_gem_shmem_object *shmem; in lima_gem_create_handle() local 118 shmem = drm_gem_shmem_create(dev, size); in lima_gem_create_handle() 119 if (IS_ERR(shmem)) in lima_gem_create_handle() 120 return PTR_ERR(shmem); in lima_gem_create_handle() 122 obj = &shmem->base; in lima_gem_create_handle() 136 struct sg_table *sgt = drm_gem_shmem_get_pages_sgt(shmem); in lima_gem_create_handle()
|
| /drivers/devfreq/ |
| A D | hisi_uncore_freq.c | 191 struct hisi_uncore_pcc_shmem shmem; in hisi_uncore_cmd_send() local 204 addr = (struct hisi_uncore_pcc_shmem __iomem *)pchan->shmem; in hisi_uncore_cmd_send() 215 shmem.head = (struct acpi_pcct_shared_memory) { in hisi_uncore_cmd_send() 219 shmem.pcc_data.data = *data; in hisi_uncore_cmd_send() 220 memcpy_toio(addr, &shmem, sizeof(shmem)); in hisi_uncore_cmd_send()
|
| /drivers/net/ethernet/8390/ |
| A D | mac8390.c | 738 long shmem = (start_page - WD_START_PG)<<8; in sane_block_output() local 740 memcpy_toio((void __iomem *)dev->mem_start + shmem, buf, count); in sane_block_output() 780 long shmem = (start_page - WD_START_PG)<<8; in dayna_block_output() local 782 dayna_memcpy_tocard(dev, shmem, buf, count); in dayna_block_output() 819 long shmem = (start_page - WD_START_PG)<<8; in slow_sane_block_output() local 821 word_memcpy_tocard(dev->mem_start + shmem, buf, count); in slow_sane_block_output()
|
| /drivers/accel/ivpu/ |
| A D | ivpu_gem.c | 225 struct drm_gem_shmem_object *shmem; in ivpu_bo_alloc() local 236 shmem = drm_gem_shmem_create(&vdev->drm, size); in ivpu_bo_alloc() 237 if (IS_ERR(shmem)) in ivpu_bo_alloc() 238 return ERR_CAST(shmem); in ivpu_bo_alloc() 240 bo = to_ivpu_bo(&shmem->base); in ivpu_bo_alloc()
|
| /drivers/acpi/ |
| A D | acpi_pcc.c | 107 memcpy_toio(data->pcc_chan->shmem, (void *)value, data->ctx.length); in acpi_pcc_address_space_handler() 128 memcpy_fromio(value, data->pcc_chan->shmem, data->ctx.length); in acpi_pcc_address_space_handler()
|