/linux-6.12.1/kernel/dma/ |
D | debug.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copyright (C) 2008 Advanced Micro Devices, Inc. 20 extern void debug_dma_map_sg(struct device *dev, struct scatterlist *sg, 51 struct scatterlist *sg, 55 struct scatterlist *sg, 70 static inline void debug_dma_map_sg(struct device *dev, struct scatterlist *sg, in debug_dma_map_sg() argument 119 struct scatterlist *sg, in debug_dma_sync_sg_for_cpu() argument 125 struct scatterlist *sg, in debug_dma_sync_sg_for_device() argument
|
D | debug.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2008 Advanced Micro Devices, Inc. 8 #define pr_fmt(fmt) "DMA-API: " fmt 12 #include <linux/dma-map-ops.h> 31 #define HASH_FN_MASK (HASH_SIZE - 1) 53 * struct dma_debug_entry - track a dma_map* or dma_alloc_coherent mapping 54 * @list: node on pre-allocated free_entries list 55 * @dev: 'dev' argument to dma_map_{page|single|sg} or dma_alloc_coherent 58 * @type: single, page, sg, coherent 95 /* List of pre-allocated dma_debug_entry's */ [all …]
|
/linux-6.12.1/drivers/gpu/drm/radeon/ |
D | radeon_prime.c | 2 * Copyright 2012 Advanced Micro Devices, Inc. 27 #include <linux/dma-buf.h> 41 return drm_prime_pages_to_sg(obj->dev, bo->tbo.ttm->pages, in radeon_gem_prime_get_sg_table() 42 bo->tbo.ttm->num_pages); in radeon_gem_prime_get_sg_table() 47 struct sg_table *sg) in radeon_gem_prime_import_sg_table() argument 49 struct dma_resv *resv = attach->dmabuf->resv; in radeon_gem_prime_import_sg_table() 50 struct radeon_device *rdev = dev->dev_private; in radeon_gem_prime_import_sg_table() 55 ret = radeon_bo_create(rdev, attach->dmabuf->size, PAGE_SIZE, false, in radeon_gem_prime_import_sg_table() 56 RADEON_GEM_DOMAIN_GTT, 0, sg, resv, &bo); in radeon_gem_prime_import_sg_table() 61 bo->tbo.base.funcs = &radeon_gem_object_funcs; in radeon_gem_prime_import_sg_table() [all …]
|
D | radeon_prime.h | 1 /* radeon_prime.h -- Private header for radeon driver -*- linux-c -*- 3 * Copyright 2012 Advanced Micro Devices, Inc. 38 struct sg_table *sg);
|
D | radeon_object.h | 2 * Copyright 2008 Advanced Micro Devices, Inc. 35 * radeon_mem_type_to_domain - return domain corresponding to mem_type 56 * radeon_bo_reserve - reserve bo 58 * @no_intr: don't return -ERESTARTSYS on pending signal 61 * -ERESTARTSYS: A wait for the buffer to become unreserved was interrupted by 62 * a signal. Release all buffer reservations and return to user-space. 68 r = ttm_bo_reserve(&bo->tbo, !no_intr, false, NULL); in radeon_bo_reserve() 70 if (r != -ERESTARTSYS) in radeon_bo_reserve() 71 dev_err(bo->rdev->dev, "%p reserve failed\n", bo); in radeon_bo_reserve() 79 ttm_bo_unreserve(&bo->tbo); in radeon_bo_unreserve() [all …]
|
/linux-6.12.1/drivers/crypto/ccp/ |
D | ccp-crypto-main.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2013,2017 Advanced Micro Devices, Inc. 19 #include "ccp-crypto.h" 28 MODULE_PARM_DESC(aes_disable, "Disable use of AES - any non-zero value"); 32 MODULE_PARM_DESC(sha_disable, "Disable use of SHA - any non-zero value"); 36 MODULE_PARM_DESC(des3_disable, "Disable use of 3DES - any non-zero value"); 40 MODULE_PARM_DESC(rsa_disable, "Disable use of RSA - any non-zero value"); 83 if (err && (err != -EINPROGRESS) && (err != -EBUSY)) in ccp_crypto_success() 104 if (crypto_cmd->tfm != tmp->tfm) in ccp_crypto_cmd_complete() 116 if (req_queue.backlog == &crypto_cmd->entry) in ccp_crypto_cmd_complete() [all …]
|
D | ccp-crypto-aes-cmac.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2013,2018 Advanced Micro Devices, Inc. 21 #include "ccp-crypto.h" 34 if (rctx->hash_rem) { in ccp_aes_cmac_complete() 36 unsigned int offset = rctx->nbytes - rctx->hash_rem; in ccp_aes_cmac_complete() 38 scatterwalk_map_and_copy(rctx->buf, rctx->src, in ccp_aes_cmac_complete() 39 offset, rctx->hash_rem, 0); in ccp_aes_cmac_complete() 40 rctx->buf_count = rctx->hash_rem; in ccp_aes_cmac_complete() 42 rctx->buf_count = 0; in ccp_aes_cmac_complete() 46 if (req->result && rctx->final) in ccp_aes_cmac_complete() [all …]
|
D | ccp-crypto-sha.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2013,2018 Advanced Micro Devices, Inc. 25 #include "ccp-crypto.h" 37 if (rctx->hash_rem) { in ccp_sha_complete() 39 unsigned int offset = rctx->nbytes - rctx->hash_rem; in ccp_sha_complete() 41 scatterwalk_map_and_copy(rctx->buf, rctx->src, in ccp_sha_complete() 42 offset, rctx->hash_rem, 0); in ccp_sha_complete() 43 rctx->buf_count = rctx->hash_rem; in ccp_sha_complete() 45 rctx->buf_count = 0; in ccp_sha_complete() 49 if (req->result && rctx->final) in ccp_sha_complete() [all …]
|
D | ccp-ops.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2013-2019 Advanced Micro Devices, Inc. 11 #include <linux/dma-mapping.h> 19 #include "ccp-dev.h" 56 #define CCP_NEW_JOBID(ccp) ((ccp->vdata->version == CCP_VERSION(3, 0)) ? \ 61 return atomic_inc_return(&ccp->current_id) & CCP_JOBID_MASK; in ccp_gen_jobid() 66 if (wa->dma_count) in ccp_sg_free() 67 dma_unmap_sg(wa->dma_dev, wa->dma_sg_head, wa->nents, wa->dma_dir); in ccp_sg_free() 69 wa->dma_count = 0; in ccp_sg_free() 73 struct scatterlist *sg, u64 len, in ccp_init_sg_workarea() argument [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_gart.c | 2 * Copyright 2008 Advanced Micro Devices, Inc. 66 * amdgpu_gart_dummy_page_init - init dummy page used by the driver 73 * Returns 0 on sucess, -ENOMEM on failure. 79 if (adev->dummy_page_addr) in amdgpu_gart_dummy_page_init() 81 adev->dummy_page_addr = dma_map_page(&adev->pdev->dev, dummy_page, 0, in amdgpu_gart_dummy_page_init() 83 if (dma_mapping_error(&adev->pdev->dev, adev->dummy_page_addr)) { in amdgpu_gart_dummy_page_init() 84 dev_err(&adev->pdev->dev, "Failed to DMA MAP the dummy page\n"); in amdgpu_gart_dummy_page_init() 85 adev->dummy_page_addr = 0; in amdgpu_gart_dummy_page_init() 86 return -ENOMEM; in amdgpu_gart_dummy_page_init() 92 * amdgpu_gart_dummy_page_fini - free dummy page used by the driver [all …]
|
D | amdgpu_vram_mgr.c | 2 * Copyright 2016 Advanced Micro Devices, Inc. 25 #include <linux/dma-mapping.h> 70 while (head != block->link.next) { in amdgpu_is_vram_mgr_blocks_contiguous() 74 block = list_entry(block->link.next, struct drm_buddy_block, link); in amdgpu_is_vram_mgr_blocks_contiguous() 107 return sysfs_emit(buf, "%llu\n", adev->gmc.real_vram_size); in amdgpu_mem_info_vram_total_show() 124 return sysfs_emit(buf, "%llu\n", adev->gmc.visible_vram_size); in amdgpu_mem_info_vis_vram_total_show() 141 struct ttm_resource_manager *man = &adev->mman.vram_mgr.manager; in amdgpu_mem_info_vram_used_show() 162 amdgpu_vram_mgr_vis_usage(&adev->mman.vram_mgr)); in amdgpu_mem_info_vis_vram_used_show() 180 switch (adev->gmc.vram_vendor) { in amdgpu_mem_info_vram_vendor() 234 !adev->gmc.vram_vendor) in amdgpu_vram_attrs_is_visible() [all …]
|
D | amdgpu_amdkfd_gpuvm.c | 1 // SPDX-License-Identifier: MIT 3 * Copyright 2014-2018 Advanced Micro Devices, Inc. 23 #include <linux/dma-buf.h> 73 #define domain_string(domain) domain_bit_to_string[ffs(domain)-1] 82 list_for_each_entry(entry, &mem->attachments, list) in kfd_mem_is_attached() 83 if (entry->bo_va->base.vm == avm) in kfd_mem_is_attached() 90 * reuse_dmamap() - Check whether adev can share the original 104 return (adev->ram_is_direct_mapped && bo_adev->ram_is_direct_mapped) || in reuse_dmamap() 105 (adev->dev->iommu_group == bo_adev->dev->iommu_group); in reuse_dmamap() 109 * System (TTM + userptr) memory - 15/16th System RAM [all …]
|
/linux-6.12.1/drivers/gpu/drm/xe/ |
D | xe_res_cursor.h | 1 /* SPDX-License-Identifier: GPL-2.0-only OR MIT */ 3 * Copyright 2020 Advanced Micro Devices, Inc. 54 mgr = ttm_manager_type(res->bo->bdev, res->mem_type); in xe_res_get_buddy() 55 return &to_xe_ttm_vram_mgr(mgr)->mm; in xe_res_get_buddy() 59 * xe_res_first - initialize a xe_res_cursor 72 cur->sgl = NULL; in xe_res_first() 76 XE_WARN_ON(start + size > res->size); in xe_res_first() 78 cur->mem_type = res->mem_type; in xe_res_first() 80 switch (cur->mem_type) { in xe_res_first() 88 head = &to_xe_ttm_vram_mgr_resource(res)->blocks; in xe_res_first() [all …]
|
/linux-6.12.1/drivers/tee/amdtee/ |
D | amdtee_if.h | 1 /* SPDX-License-Identifier: MIT */ 4 * Copyright 2019 Advanced Micro Devices, Inc. 8 * This file has definitions related to Host and AMD-TEE Trusted OS interface. 23 * struct memref - memory reference structure 72 * non-contiguous. Below structures are meant to describe a shared memory region 73 * via scatter/gather (sg) list 77 * struct tee_sg_desc - sg descriptor for a physically contiguous buffer 89 * struct tee_sg_list - structure describing a scatter/gather list 90 * @count: [in] number of sg descriptors 92 * @buf: [in] list of sg buffer descriptors [all …]
|
/linux-6.12.1/drivers/vfio/pci/pds/ |
D | lm.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright(c) 2023 Advanced Micro Devices, Inc. */ 23 struct sg_table sg_table; /* SG table for backing pages */
|
D | lm.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2023 Advanced Micro Devices, Inc. */ 32 lm_file->filep = in pds_vfio_get_lm_file() 34 if (IS_ERR(lm_file->filep)) in pds_vfio_get_lm_file() 37 stream_open(lm_file->filep->f_inode, lm_file->filep); in pds_vfio_get_lm_file() 38 mutex_init(&lm_file->lock); in pds_vfio_get_lm_file() 41 get_file(lm_file->filep); in pds_vfio_get_lm_file() 53 p = page_mem - offset_in_page(page_mem); in pds_vfio_get_lm_file() 66 if (sg_alloc_table_from_pages(&lm_file->sg_table, pages, npages, 0, in pds_vfio_get_lm_file() 70 lm_file->size = size; in pds_vfio_get_lm_file() [all …]
|
D | cmds.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2023 Advanced Micro Devices, Inc. */ 30 cmd.client_request.client_id = cpu_to_le16(pds_vfio->client_id); in pds_vfio_client_adminq_cmd() 39 if (err && err != -EAGAIN) in pds_vfio_client_adminq_cmd() 53 snprintf(devname, sizeof(devname), "%s.%d-%u", PDS_VFIO_LM_DEV_NAME, in pds_vfio_register_client_cmd() 54 pci_domain_nr(pdev->bus), in pds_vfio_register_client_cmd() 55 PCI_DEVID(pdev->bus->number, pdev->devfn)); in pds_vfio_register_client_cmd() 65 pds_vfio->client_id = ci; in pds_vfio_register_client_cmd() 80 err = pds_client_unregister(pdsc, pds_vfio->client_id); in pds_vfio_unregister_client_cmd() 82 dev_err(&pdev->dev, "unregister from DSC failed: %pe\n", in pds_vfio_unregister_client_cmd() [all …]
|
D | dirty.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2023 Advanced Micro Devices, Inc. */ 21 return pds_vfio->dirty.is_enabled; in pds_vfio_dirty_is_enabled() 26 pds_vfio->dirty.is_enabled = true; in pds_vfio_dirty_set_enabled() 31 pds_vfio->dirty.is_enabled = false; in pds_vfio_dirty_set_disabled() 39 struct pci_dev *pdev = pds_vfio->vfio_coredev.pdev; in pds_vfio_print_guest_region_info() 40 struct device *pdsc_dev = &pci_physfn(pdev)->dev; in pds_vfio_print_guest_region_info() 64 dev_dbg(&pdev->dev, in pds_vfio_print_guest_region_info() 81 return -ENOMEM; in pds_vfio_dirty_alloc_bitmaps() 86 return -ENOMEM; in pds_vfio_dirty_alloc_bitmaps() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/leds/ |
D | leds-sgm3140.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/leds-sgm3140.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Luca Weiss <luca@z3ntu.xyz> 13 The SGM3140 is a current-regulated charge pump which can regulate two current 17 http://www.sg-micro.com/uploads/soft/20190626/1561535688.pdf 22 - ocs,ocp8110 23 - richtek,rt5033-led 24 - sgmicro,sgm3140 [all …]
|
/linux-6.12.1/drivers/mmc/host/ |
D | alcor.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (C) 2018 Oleksij Rempel <linux@rempel-privat.de> 5 * Driver for Alcor Micro AU6601 and AU6621 controllers 12 * thing what I did. 2018 Oleksij Rempel <linux@rempel-privat.de> 55 struct sg_mapping_iter sg_miter; /* SG state for PIO */ 56 struct scatterlist *sg; member 75 struct alcor_pci_priv *priv = host->alcor_pci; in alcor_rmw8() 89 struct alcor_pci_priv *priv = host->alcor_pci; in alcor_mask_sd_irqs() 96 struct alcor_pci_priv *priv = host->alcor_pci; in alcor_unmask_sd_irqs() 106 struct alcor_pci_priv *priv = host->alcor_pci; in alcor_reset() [all …]
|
D | au1xmmc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/drivers/mmc/host/au1xmmc.c - AU1XX0 MMC driver 5 * Copyright (c) 2005, Advanced Micro Devices, Inc. 9 * Copyright (c) 2003-2004 Embedded Edge, LLC. 11 * Copyright 2002 Hewlett-Packard Company 14 * (drivers/mmc/wbsd.c) Copyright (C) 2004-2005 Pierre Ossman, 25 * If the Au1100-based design is intended to support both MultiMediaCards 26 * and 1- or 4-data bit SecureDigital cards, then the solution is to 27 * connect a weak (560KOhm) pull-up resistor to connector pin 1. 28 * In doing so, a MMC card never enters SPI-mode communications, [all …]
|
/linux-6.12.1/drivers/scsi/megaraid/ |
D | megaraid_mbox.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 6 * Copyright (c) 2003-2004 LSI Logic Corporation. 93 #define MBOX_DEFAULT_SG_SIZE 26 // default sg size supported by all fw 94 #define MBOX_MAX_SG_SIZE 32 // maximum scatter-gather list size 102 #define MBOX_SYNC_DELAY_200 200 // 200 micro-seconds 112 * mbox_ccb_t - command control block specific to mailbox based controllers 117 * @sgl64 : 64-bit scatter-gather list 118 * @sgl32 : 32-bit scatter-gather list 119 * @sgl_dma_h : dma handle for the scatter-gather list 124 * @buf_dma_h : dma handle for buffers w/o sg list [all …]
|
/linux-6.12.1/include/drm/ttm/ |
D | ttm_resource.h | 2 * Copyright 2020 Advanced Micro Devices, Inc. 31 #include <linux/iosys-map.h> 32 #include <linux/dma-fence.h> 53 * enum ttm_lru_item_type - enumerate ttm_lru_item subclasses 63 * struct ttm_lru_item - The TTM lru list node base class 73 * ttm_lru_item_init() - initialize a struct ttm_lru_item 80 item->type = type; in ttm_lru_item_init() 81 INIT_LIST_HEAD(&item->link); in ttm_lru_item_init() 86 return item->type == TTM_LRU_RESOURCE; in ttm_lru_item_is_res() 103 * If the manager can't fulfill the request -ENOSPC should be returned. [all …]
|
/linux-6.12.1/drivers/spi/ |
D | spi-pl022.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2008-2012 ST-Ericsson AB 11 * linux-2.6.17-rc3-mm1/drivers/spi/pxa2xx_spi.c 31 #include <linux/dma-mapping.h> 92 * SSP Control Register 0 - SSP_CR0 110 * SSP Control Register 0 - SSP_CR1 130 * SSP Status Register - SSP_SR 139 * SSP Clock Prescale Register - SSP_CPSR 144 * SSP Interrupt Mask Set/Clear Register - SSP_IMSC 152 * SSP Raw Interrupt Status Register - SSP_RIS [all …]
|
/linux-6.12.1/drivers/gpu/drm/ttm/ |
D | ttm_resource.c | 2 * Copyright 2020 Advanced Micro Devices, Inc. 26 #include <linux/io-mapping.h> 27 #include <linux/iosys-map.h> 40 lockdep_assert_held(&cursor->man->bdev->lru_lock); in ttm_resource_cursor_clear_bulk() 42 cursor->bulk = NULL; in ttm_resource_cursor_clear_bulk() 43 list_del_init(&cursor->bulk_link); in ttm_resource_cursor_clear_bulk() 52 lockdep_assert_held(&cursor->man->bdev->lru_lock); in ttm_resource_cursor_move_bulk_tail() 54 if (WARN_ON_ONCE(bulk != cursor->bulk)) { in ttm_resource_cursor_move_bulk_tail() 55 list_del_init(&cursor->bulk_link); in ttm_resource_cursor_move_bulk_tail() 59 pos = &bulk->pos[cursor->mem_type][cursor->priority]; in ttm_resource_cursor_move_bulk_tail() [all …]
|