File: dma_util.pyx

package info (click to toggle)
rdma-core 56.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 17,196 kB
  • sloc: ansic: 171,361; python: 13,724; sh: 2,774; perl: 1,465; makefile: 73
file content (30 lines) | stat: -rw-r--r-- 766 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# SPDX-License-Identifier: (GPL-2.0 OR Linux-OpenIB)
# Copyright (c) 2021 Nvidia, Inc. All rights reserved. See COPYING file

#cython: language_level=3

from libc.stdint cimport uintptr_t, uint64_t, uint32_t

cdef extern from 'util/udma_barrier.h':
    cdef void udma_to_device_barrier()
    cdef void udma_from_device_barrier()

cdef extern from 'util/mmio.h':
   cdef void mmio_write64_be(void *addr, uint64_t val)
   cdef void mmio_write32_be(void *addr, uint32_t val)


def udma_to_dev_barrier():
    udma_to_device_barrier()


def udma_from_dev_barrier():
    udma_from_device_barrier()


def mmio_write64_as_be(addr, val):
    mmio_write64_be(<void*><uintptr_t> addr, val)


def mmio_write32_as_be(addr, val):
    mmio_write32_be(<void*><uintptr_t> addr, val)