section 9 · Kernel routines 🧠
87928 pages · page 79 of 440
D (continued)
- dma_buf_attach_revocable(9)check if a DMA-buf importer implements revoke semantics.✨
- dma_buf_begin_cpu_access(9)Must be called before accessing a dma_buf from the cpu in the kernel context. Calls begin_cpu_access to allow exporter-specific preparations. Coherency is only guaranteed in the specified range for…✨
- dma_buf_detach(9)Remove the given attachment from dmabuf's attachments list✨
- dma_buf_dynamic_attach(9)Add the device to dma_buf's attachments list✨
- dma_buf_end_cpu_access(9)Must be called after accessing a dma_buf from the cpu in the kernel context. Calls end_cpu_access to allow exporter- specific actions. Coherency is only guaranteed in the specified range for the…✨
- dma_buf_export(9)Creates a new dma_buf, and associates an anon file with this buffer, so it can be exported. Also connect the allocator specific data and ops to the buffer. Additionally, provide a name string for…✨
- dma_buf_fd(9)returns a file descriptor for the given struct dma_buf✨
- dma_buf_fd_install(9)install a reserved fd for a dma-buf✨
- dma_buf_free_sgt(9)unmaps the buffer✨
- dma_buf_get(9)returns the struct dma_buf related to an fd✨
- dma_buf_invalidate_mappings(9)notify attachments that DMA-buf is moving✨
- dma_buf_is_dynamic(9)check if a DMA-buf uses dynamic mappings.✨
- dma_buf_iter_begin(9)begin iteration through global list of all DMA buffers✨
- dma_buf_iter_next(9)continue iteration through global list of all DMA buffers✨
- dma_buf_map_attachment(9)Returns the scatterlist table of the attachment; mapped into _device_ address space. Is a wrapper for map_dma_buf() of the dma_buf_ops.✨
- dma_buf_map_attachment_unlocked(9)Returns the scatterlist table of the attachment; mapped into _device_ address space. Is a wrapper for map_dma_buf() of the dma_buf_ops.✨
- dma_buf_mmap(9)Setup up a userspace mmap with the given vma✨
- dma_buf_phys_vec_to_sgt(9)Returns the scatterlist table of the attachment from arrays of physical vectors. This funciton is intended for MMIO memory only.✨
- dma_buf_pin(9)Lock down the DMA-buf✨
- dma_buf_put(9)decreases refcount of the buffer✨
- dma_buf_set_name(9)Set a name to a specific dma_buf to track the usage. It could support changing the name of the dma-buf if the same piece of memory is used for multiple purpose between different devices.✨
- dma_buf_unmap_attachment(9)unmaps and decreases usecount of the buffer;might deallocate the scatterlist associated. Is a wrapper for unmap_dma_buf() of dma_buf_ops.✨
- dma_buf_unmap_attachment_unlocked(9)unmaps and decreases usecount of the buffer;might deallocate the scatterlist associated. Is a wrapper for unmap_dma_buf() of dma_buf_ops.✨
- dma_buf_unpin(9)Unpin a DMA-buf✨
- dma_buf_vmap(9)Create virtual mapping for the buffer object into kernel address space. Same restrictions as for vmap and friends apply.✨
- dma_buf_vmap_unlocked(9)Create virtual mapping for the buffer object into kernel address space. Same restrictions as for vmap and friends apply.✨
- dma_buf_vunmap(9)Unmap a vmap obtained by dma_buf_vmap.✨
- dma_buf_vunmap_unlocked(9)Unmap a vmap obtained by dma_buf_vmap.✨
- dma_can_mmap(9)check if a given device supports dma_mmap_*✨
- dma_chan_get(9)try to grab a DMA channel's parent driver module✨
- dma_chan_is_local(9)checks if the channel is in the same NUMA-node as the CPU✨
- dma_chan_put(9)drop a reference to a DMA channel's parent driver module✨
- dma_channel_rebalance(9)redistribute the available channels✨
- dma_contiguous_get_area_by_idx(9)Get contiguous area at given index✨
- dma_contiguous_reserve(9)reserve area(s) for contiguous memory handling✨
- dma_contiguous_reserve_area(9)reserve custom contiguous area✨
- dma_cookie_assign(9)assign a DMA engine cookie to the descriptor✨
- dma_cookie_complete(9)complete a descriptor✨
- dma_cookie_init(9)initialize the cookies for a DMA channel✨
- dma_cookie_status(9)report cookie status✨
- dma_cookie_t(9)an opaque DMA cookie✨
- dma_direct_set_offset(9)Assign scalar offset for a single DMA range.✨
- dma_fence_add_callback(9)add a callback to be called when the fence is signaled✨
- dma_fence_allocate_private_stub(9)return a private, signaled fence✨
- dma_fence_array_alloc(9)Allocate a custom fence array✨
- dma_fence_array_create(9)Create a custom fence array✨
- dma_fence_array_for_each(9)iterate over all fences in array✨
- dma_fence_array_init(9)Init a custom fence array✨
- dma_fence_assert_held(9)lockdep assertion that fence is locked✨
- dma_fence_begin_signalling(9)begin a critical DMA fence signalling section✨
- dma_fence_chain_alloc(9)Returns a new &struct dma_fence_chain object or %NULL on failure.✨
- dma_fence_chain_contained(9)return the contained fence✨
- dma_fence_chain_find_seqno(9)find fence chain node by seqno✨
- dma_fence_chain_for_each(9)iterate over all fences in chain✨
- dma_fence_chain_free(9)Frees an allocated but not used &struct dma_fence_chain object.✨
- dma_fence_chain_get_prev(9)use RCU to get a reference to the previous fence✨
- dma_fence_chain_init(9)initialize a fence chain✨
- dma_fence_chain_walk(9)chain walking function✨
- dma_fence_check_and_signal(9)signal the fence if it's not yet signaled✨
- dma_fence_check_and_signal_locked(9)signal the fence if it's not yet signaled✨
- dma_fence_context_alloc(9)allocate an array of fence contexts✨
- dma_fence_dedup_array(9)Sort and deduplicate an array of dma_fence pointers✨
- dma_fence_default_wait(9)default sleep until the fence gets signaled or until timeout elapses✨
- dma_fence_describe(9)Dump fence description into seq_file✨
- dma_fence_driver_name(9)Access the driver name✨
- dma_fence_enable_signaling(9)enable signaling on fence✨
- dma_fence_end_signalling(9)end a critical DMA fence signalling section✨
- dma_fence_free(9)default release function for &dma_fence.✨
- dma_fence_get(9)increases refcount of the fence✨
- dma_fence_get_rcu(9)get a fence from a dma_resv_list with rcu read lock✨
- dma_fence_get_rcu_safe(9)acquire a reference to an RCU tracked fence✨
- dma_fence_get_status(9)returns the status upon completion✨
- dma_fence_get_status_locked(9)returns the status upon completion✨
- dma_fence_get_stub(9)return a signaled fence✨
- dma_fence_init(9)Initialize a custom fence.✨
- dma_fence_init64(9)Initialize a custom fence with 64-bit seqno support.✨
- dma_fence_is_array(9)check if a fence is from the array subclass✨
- dma_fence_is_chain(9)check if a fence is from the chain subclass✨
- dma_fence_is_container(9)check if a fence is a container for other fences✨
- dma_fence_is_later(9)return if f1 is chronologically later than f2✨
- dma_fence_is_later_or_same(9)return true if f1 is later or same as f2✨
- dma_fence_is_signaled(9)Return an indication if the fence is signaled yet.✨
- dma_fence_is_signaled_locked(9)Return an indication if the fence is signaled yet.✨
- dma_fence_later(9)return the chronologically later fence✨
- dma_fence_lock_irqsave(9)irqsave lock the fence✨
- dma_fence_match_context(9)Check if all fences are from the given context✨
- dma_fence_put(9)decreases refcount of the fence✨
- dma_fence_release(9)default release function for fences✨
- dma_fence_remove_callback(9)remove a callback from the signaling list✨
- dma_fence_set_deadline(9)set desired fence-wait deadline hint✨
- dma_fence_set_error(9)flag an error condition on the fence✨
- dma_fence_signal(9)signal completion of a fence✨
- dma_fence_signal_locked(9)signal completion of a fence✨
- dma_fence_signal_timestamp(9)signal completion of a fence✨
- dma_fence_signal_timestamp_locked(9)signal completion of a fence✨
- dma_fence_spinlock(9)return pointer to the spinlock protecting the fence✨
- dma_fence_timeline_name(9)Access the timeline name✨
- dma_fence_timestamp(9)helper to get the completion timestamp of a fence✨
- dma_fence_unlock_irqrestore(9)unlock the fence and irqrestore✨
- dma_fence_unwrap_first(9)return the first fence from fence containers✨
- dma_fence_unwrap_for_each(9)iterate over all fences in containers✨
- dma_fence_unwrap_merge(9)unwrap and merge fences✨
- dma_fence_unwrap_next(9)return the next fence from a fence containers✨
- dma_fence_wait(9)sleep until the fence gets signaled✨
- dma_fence_wait_any_timeout(9)sleep until any fence gets signaled or until timeout elapses✨
- dma_fence_wait_timeout(9)sleep until the fence gets signaled or until timeout elapses✨
- dma_fence_was_initialized(9)test if fence was initialized✨
- dma_fence_work_commit_imm(9)Commit the fence, and if possible execute locally.✨
- dma_filter_fn(9)callback filter for dma_request_channel✨
- dma_find_channel(9)find a channel to carry out the operation✨
- dma_free_contiguous(9)release allocated pages✨
- dma_free_rx_skbufs(9)free RX dma buffers✨
- dma_free_rx_xskbufs(9)free RX dma buffers from XSK pool✨
- dma_free_tx_skbufs(9)free TX dma buffers✨
- dma_get_seg_boundary_nr_pages(9)return the segment boundary in "page" units✨
- dma_get_slave_channel(9)try to get specific channel exclusively✨
- dma_heap_add(9)adds a heap to dmabuf heaps✨
- dma_heap_get_drvdata(9)get per-heap driver data✨
- dma_heap_get_name(9)get heap name✨
- DMA_HEAP_IOCTL_ALLOC - allocate memory from pool(9)✨
- dma_info_to_prot(9)Translate DMA API directions and attributes to IOMMU API page flags.✨
- dma_iova_destroy(9)Finish a DMA mapping transaction✨
- dma_iova_free(9)Free an IOVA space✨
- dma_iova_link(9)Link a range of IOVA space✨
- dma_iova_sync(9)Sync IOTLB✨
- dma_iova_try_alloc(9)Try to allocate an IOVA space✨
- dma_iova_unlink(9)Unlink a range of IOVA space✨
- dma_issue_pending_all(9)flush all pending operations across all channels✨
- dma_map_host_va(9)DMA mapping of the given host virtual address.✨
- dma_map_inbufs(9)DMA map input sglist and creates sglist component for N5 device.✨
- dma_map_sg_attrs(9)Map the given buffer for DMA✨
- dma_map_sgtable(9)Map the given buffer for DMA✨
- dma_mmap_attrs(9)map a coherent DMA allocation into user space✨
- dma_mmap_from_dev_coherent(9)mmap memory from the device coherent pool✨
- dma_need_unmap(9)does this device need dma_unmap_* operations✨
- dma_pool_alloc(9)get a block of coherent memory✨
- dma_pool_create_node(9)Creates a pool of coherent DMA memory blocks.✨
- dma_pool_destroy(9)destroys a pool of dma memory blocks.✨
- dma_pool_free(9)put block back into dma pool✨
- dma_pool_zalloc(9)Get a zero-initialized block of DMA coherent memory.✨
- dma_port_alloc(9)Finds DMA control port from a switch pointed by route✨
- dma_port_flash_read(9)Read from active flash region✨
- dma_port_flash_update_auth(9)Starts flash authenticate cycle✨
- dma_port_flash_update_auth_status(9)Reads status of update auth command✨
- dma_port_flash_write(9)Write to non-active flash region✨
- dma_port_free(9)Release DMA control port structure✨
- dma_port_power_cycle(9)Power cycles the switch✨
- dma_region_check_iova(9)check if memory area is fully contained in the region✨
- dma_release_from_contiguous(9)release allocated pages✨
- dma_release_from_dev_coherent(9)free memory to device coherent memory pool✨
- dma_request_chan(9)try to allocate an exclusive slave channel✨
- dma_request_chan_by_mask(9)allocate a channel satisfying certain capabilities✨
- dma_resv_add_fence(9)Add a fence to the dma_resv obj✨
- dma_resv_copy_fences(9)Copy all fences from src to dst.✨
- dma_resv_describe(9)Dump description of the resv object into seq_file✨
- dma_resv_fini(9)destroys a reservation object✨
- dma_resv_for_each_fence(9)fence iterator✨
- dma_resv_for_each_fence_unlocked(9)unlocked fence iterator✨
- dma_resv_get_fences(9)Get an object's fences fences without update side lock held✨
- dma_resv_get_singleton(9)Get a single fence for all the fences✨
- dma_resv_init(9)initialize a reservation object✨
- dma_resv_is_locked(9)is the reservation object locked✨
- dma_resv_iter_begin(9)initialize a dma_resv_iter object✨
- dma_resv_iter_end(9)cleanup a dma_resv_iter object✨
- dma_resv_iter_first(9)first fence from a locked dma_resv object✨
- dma_resv_iter_first_unlocked(9)first fence in an unlocked dma_resv obj.✨
- dma_resv_iter_is_restarted(9)test if this is the first fence after a restart✨
- dma_resv_iter_next(9)next fence from a locked dma_resv object✨
- dma_resv_iter_next_unlocked(9)next fence in an unlocked dma_resv obj.✨
- dma_resv_iter_usage(9)Return the usage of the current fence✨
- dma_resv_lock(9)lock the reservation object✨
- dma_resv_lock_interruptible(9)lock the reservation object✨
- dma_resv_lock_slow(9)slowpath lock the reservation object✨
- dma_resv_lock_slow_interruptible(9)slowpath lock the reservation object, interruptible✨
- dma_resv_locking_ctx(9)returns the context used to lock the object✨
- dma_resv_replace_fences(9)replace fences in the dma_resv obj✨
- dma_resv_reserve_fences(9)Reserve space to add fences to a dma_resv object.✨
- dma_resv_reset_max_fences(9)reset fences for debugging✨
- dma_resv_set_deadline(9)Set a deadline on reservation's objects fences✨
- dma_resv_test_signaled(9)Test if a reservation object's fences have been signaled.✨
- dma_resv_trylock(9)trylock the reservation object✨
- dma_resv_unlock(9)unlock the reservation object✨
- dma_resv_usage_rw(9)helper for implicit sync✨
- dma_resv_wait_timeout(9)Wait on reservation's objects fences✨
- dma_run_dependencies(9)process dependent operations on the target channel✨
- dma_sb_lpar_to_bus(9)Translate an lpar address to ioc mapped bus address.✨
- dma_sb_map_area(9)Map an area of memory into a device dma region.✨
- dma_sb_map_area_linear(9)Map an area of memory into a device dma region.✨
- dma_sb_map_pages(9)Maps dma pages into the io controller bus address space.✨
- dma_sb_region_create(9)Create a device dma region.✨
- dma_sb_region_create_linear(9)Setup a linear dma mapping for a device.✨
- dma_sb_region_free_linear(9)Free a linear dma mapping for a device.✨
- dma_sb_unmap_area(9)Unmap an area of memory from a device dma region.✨
- dma_sync_sgtable_for_cpu(9)Synchronize the given buffer for CPU access✨
- dma_sync_sgtable_for_device(9)Synchronize the given buffer for DMA✨
- dma_tasklet(9)DMA IRQ tasklet✨
- dma_unmap_host_va(9)DMA unmapping of the given host virtual address.✨
- dma_unmap_sgtable(9)Unmap the given buffer for DMA✨
- dma_use_iova(9)check if the IOVA API is used for this state✨
- dma_wait_for_async_tx(9)spin wait for a transaction to complete✨
💅
getting it ready, bestie…