NVIDIA DriveOS Linux NSR SDK API Reference

7.0.3.0 Release
nvos_tegra_nonsafety.h File Reference

Go to the source code of this file.

Data Structures

struct  NvOsOsInfoRec
 
struct  NvOsStatTypeRec
 
struct  NvOsSystemTimeRec
 Defines the system time structure. More...
 
struct  NvOsAllocatorRec
 

Macros

#define NVOS_KEY_MAX   128
 The maximum length of a shared resource identifier string. More...
 
#define NVOS_PATH_MAX   256
 The maximum length for a file system path. More...
 
#define NVOS_HAS_MTIME   1
 Indicates that NvOsStatType structure has mtime. More...
 
#define NVOS_HAS_MKDIR   1
 Indicates that NvOs has NvOsMkdir(). More...
 
#define NVOS_HAS_FTRUNCATE   1
 Indicates that NvOs has NvOsFtruncate(). More...
 
#define NVOS_HAS_CONDITION   1
 Indicates that NvOs has condition variables. More...
 

Typedefs

typedef NvU32 NvOsPhysAddr
 A physical address. More...
 

Functions

Memory Operations (Basic)
void NvOsMemcpy (void *dest, const void *src, size_t size)
 Copies memory. More...
 
int NvOsMemcmp (const void *s1, const void *s2, size_t size)
 Compares two memory regions. More...
 
void NvOsMemset (void *s, NvU8 c, size_t size)
 Sets a region of memory to a value. More...
 

Print Operations

#define NV_SHOW_ERRORS   NV_DEBUG
 Prints err if it is an error (does nothing if err==NvSuccess). More...
 
#define NV_SHOW_ERROR(err)   (err)
 
#define NV_ENABLE_DEBUG_PRINTS   0
 Helper macro to go along with NvOsDebugPrintf. More...
 
#define NV_DEBUG_PRINTF(x)   do {} while (NV_FALSE)
 
enum  {
  NVOS_VERB_LVL_0 = 0,
  NVOS_VERB_LVL_1 = 1,
  NVOS_VERB_LVL_2 = 2,
  NVOS_VERB_LVL_3 = 3,
  NVOS_VERB_LVL_4 = 4
}
 
typedef struct NvOsFileRec * NvOsFileHandle
 Printf family. More...
 
NvError NvOsFprintf (NvOsFileHandle stream, const char *format,...)
 Prints a string to a file stream. More...
 
NvS32 NvOsSnprintf (char *str, size_t size, const char *format,...)
 Expands a string into a given string buffer. More...
 
NvError NvOsVfprintf (NvOsFileHandle stream, const char *format, va_list ap)
 Prints a string to a file stream using a va_list. More...
 
NvS32 NvOsVsnprintf (char *str, size_t size, const char *format, va_list ap)
 Expands a string into a string buffer using a va_list. More...
 
void NvOsDebugPrintf (const char *format,...)
 Outputs a message to the debugging console, if present. More...
 
void NvOsLogPrintf (int prio, const char *tag, const char *format,...)
 Same as NvOsDebugPrintf, except takes priority and tag fields. More...
 
void NvOsDebugVprintf (const char *format, va_list ap)
 Same as NvOsDebugPrintf, except takes a va_list. More...
 
NvS32 NvOsDebugNprintf (const char *format,...)
 Same as NvOsDebugPrintf, except returns the number of chars written. More...
 
void NvOsDebugString (const char *str)
 
int NvOsSetVerboseLevel (NvS32 VerbLevel)
 
int NvOsGetVerboseLevel (NvS32 *VerbLevel)
 
void NvOsVerbosePrintf (NvS32 VerbLevel, const char *Fmt,...)
 
NvError NvOsShowError (NvError err, const char *file, int line)
 Prints an error and the line it appeared on. More...
 

OS Version

enum  NvOsOs {
  NvOsOs_Unknown = 0x0UL,
  NvOsOs_Windows = 0x1UL,
  NvOsOs_Linux = 0x2UL,
  NvOsOs_Qnx = 0x4UL,
  NvOsOs_Integrity = 0x5UL,
  NvOsOs_Force32 = 0x7fffffffUL
}
 
enum  NvOsSku {
  NvOsSku_Unknown = 0x0UL,
  NvOsSku_Android = 0x1UL,
  NvOsSku_Force32 = 0x7fffffffUL
}
 
typedef struct NvOsOsInfoRec NvOsOsInfo
 
NvError NvOsGetOsInformation (NvOsOsInfo *pOsInfo)
 Gets the current OS version. More...
 

String Operations

enum  NvOsCodePage {
  NvOsCodePage_Unknown = 0x0UL,
  NvOsCodePage_Utf8 = 0x1UL,
  NvOsCodePage_Utf16 = 0x2UL,
  NvOsCodePage_Windows1252 = 0x3UL,
  NvOsCodePage_Force32 = 0x7fffffffUL
}
 Defines straight-forward mappings to international language encodings. More...
 
void NvOsStrcpy (char *dest, const char *src)
 Copies a string. More...
 
void NvOsStrncpy (char *dest, const char *src, size_t size)
 Copies a string, length-limited. More...
 
size_t NvOsStrlen (const char *s)
 Gets the length of a string. More...
 
size_t NvOsStrnlen (const char *s, size_t size)
 Gets the length of a string. More...
 

File Input/Output

#define NVOS_OPEN_READ   0x1
 Opens a file with read permissions. More...
 
#define NVOS_OPEN_WRITE   0x2
 Opens a file with write persmissions. More...
 
#define NVOS_OPEN_CREATE   0x4
 Creates a file if is not present on the file system. More...
 
#define NVOS_OPEN_APPEND   0x8
 Open file in append mode. More...
 
enum  NvOsSeekEnum {
  NvOsSeek_Set = 0,
  NvOsSeek_Cur = 1,
  NvOsSeek_End = 2,
  NvOsSeek_Force32 = 0x7FFFFFFF
}
 Defines wrappers over stdlib's file stream functions, with some changes to the API. More...
 
enum  NvOsFileType {
  NvOsFileType_Unknown = 0,
  NvOsFileType_File = 1,
  NvOsFileType_Directory = 2,
  NvOsFileType_Fifo = 3,
  NvOsFileType_CharacterDevice = 4,
  NvOsFileType_BlockDevice = 5,
  NvOsFileType_Force32 = 0x7FFFFFFF
}
 
typedef struct NvOsStatTypeRec NvOsStatType
 
NvError NvOsFopen (const char *path, NvU32 flags, NvOsFileHandle *file)
 Opens a file stream. More...
 
NvError NvOsFcloseEx (NvOsFileHandle stream)
 Closes a file stream. More...
 
void NvOsFclose (NvOsFileHandle stream)
 Closes a file stream. More...
 
NvError NvOsFwrite (NvOsFileHandle stream, const void *ptr, size_t size)
 Writes to a file stream. More...
 
NvError NvOsFread (NvOsFileHandle stream, void *ptr, size_t size, size_t *bytes)
 Reads a file stream. More...
 
NvError NvOsFgetc (NvOsFileHandle stream, NvU8 *c)
 Gets a character from a file stream. More...
 
NvError NvOsFseek (NvOsFileHandle file, NvS64 offset, NvOsSeekEnum whence)
 Changes the file position pointer. More...
 
NvError NvOsFtell (NvOsFileHandle file, NvU64 *position)
 Gets the current file position pointer. More...
 
NvError NvOsStat (const char *filename, NvOsStatType *stat)
 Gets file information. More...
 
NvError NvOsFstat (NvOsFileHandle file, NvOsStatType *stat)
 Gets file information from an already open file. More...
 
NvError NvOsFflush (NvOsFileHandle stream)
 Flushes any pending writes to the file stream. More...
 
NvError NvOsFsync (NvOsFileHandle stream)
 Commits any pending writes to storage media. More...
 
NvError NvOsFremove (const char *filename)
 Removes a file from the storage media. More...
 
NvError NvOsFtruncate (NvOsFileHandle stream, NvU64 length)
 Causes the file to have a size of length bytes. More...
 

Directories

typedef struct NvOsDirRec * NvOsDirHandle
 A handle to a directory. More...
 
NvError NvOsOpendir (const char *path, NvOsDirHandle *dir)
 Opens a directory. More...
 
NvError NvOsReaddir (NvOsDirHandle dir, char *name, size_t size)
 Gets the next entry in the directory. More...
 
void NvOsClosedir (NvOsDirHandle dir)
 Closes the directory. More...
 
NvError NvOsMkdir (char *dirname)
 Creates the directory. More...
 
NvError NvOsGetConfigU32 (const char *name, NvU32 *value)
 Retrieves an unsigned integer variable from the config store. More...
 
NvError NvOsGetConfigString (const char *name, char *value, NvU32 size)
 Retrieves a string variable from the config store. More...
 
NvError NvOsGetSysConfigString (const char *name, char *value, NvU32 size)
 Retrieves a string variable from the config store, with a persist.sys prefix. More...
 

Memory Allocation

#define NVOS_MEM_NONE   0x0U
 Specifies no memory flags. More...
 
#define NVOS_MEM_READ   0x1U
 Specifies the memory may be read. More...
 
#define NVOS_MEM_WRITE   0x2U
 Specifies the memory may be written to. More...
 
#define NVOS_MEM_EXECUTE   0x4U
 Specifies the memory may be executed. More...
 
#define NVOS_MEM_GLOBAL_ADDR   0x8U
 The memory must be visible by all processes, this is only valid for WinCE 5.0. More...
 
#define NVOS_MEM_READ_WRITE   (NVOS_MEM_READ | NVOS_MEM_WRITE)
 The memory may be both read and writen. More...
 
#define NVOS_MEM_MMAP_FIXED   0x40U
 Specifies the memory must be mapped as fixed for mmap. More...
 
#define NVOS_MEM_MMAP_LAZY   0x80U
 Support MAP_LAZY for mmap in QNX. More...
 
#define NVOS_MEM_MMAP_POPULATE   0x100U
 Support MAP_POPULATE for mmap. More...
 
enum  NvOsMemAttribute {
  NvOsMemAttribute_Uncached = 0,
  NvOsMemAttribute_WriteBack = 1,
  NvOsMemAttribute_WriteCombined = 2,
  NvOsMemAttribute_InnerWriteBack = 3,
  NvOsMemAttribute_Secured = 4,
  NvOsMemAttribute_DeviceMemory = 5,
  NvOsMemAttribute_SO_DeviceMemory = 6,
  NvOsMemAttribute_End = 7,
  NvOsMemAttribute_Force32 = 0x7FFFFFFF
}
 Defines memory attributes. More...
 
typedef struct NvOsSharedMemRec * NvOsSharedMemHandle
 An opaque handle returned by shared memory allocations. More...
 
voidNvOsAlloc (size_t size)
 Dynamically allocates memory. More...
 
voidNvOsAllocAlign (size_t align, size_t size)
 Dynamically allocates memory with specific alignment. More...
 
voidNvOsRealloc (void *ptr, size_t size)
 Re-sizes a previous dynamic allocation. More...
 
void NvOsFree (void *ptr)
 Frees a dynamic memory allocation. More...
 
NvError NvOsSharedMemAlloc (const char *key, size_t size, NvOsSharedMemHandle *descriptor)
 Dynamically allocates multiprocess shared memory. More...
 
NvError NvOsSharedMemHandleFromFd (int fd, NvOsSharedMemHandle *descriptor)
 Enables sharing NvOsSharedMemHandle memory that was created by a call to NvOsSharedMemAlloc(). More...
 
NvError NvOsSharedMemGetFd (NvOsSharedMemHandle descriptor, int *fd)
 Extracts the file descriptor from a handle. More...
 
NvError NvOsSharedMemMap (NvOsSharedMemHandle descriptor, size_t offset, size_t size, void **ptr)
 Maps a shared memory region into the process virtual memory. More...
 
void NvOsSharedMemUnmap (void *ptr, size_t size)
 Unmaps a mapped region of shared memory. More...
 
void NvOsSharedMemFree (NvOsSharedMemHandle descriptor)
 Frees shared memory from NvOsSharedMemAlloc(). More...
 
NvError NvOsPhysicalMemMap (NvOsPhysAddr phys, size_t size, NvOsMemAttribute attrib, NvU32 flags, void **ptr)
 Maps computer resources into user space. More...
 
void NvOsPhysicalMemUnmap (void *ptr, size_t size)
 Releases resources previously allocated by NvOsPhysicalMemMap(). More...
 

Page Allocator

enum  NvOsPageFlags {
  NvOsPageFlags_Contiguous = 0,
  NvOsPageFlags_NonContiguous = 1,
  NvOsMemFlags_Forceword = 0x7ffffff
}
 Low-level memory allocation of the external system memory. More...
 
typedef struct NvOsPageAllocRec * NvOsPageAllocHandle
 
NvError NvOsPageAlloc (size_t size, NvOsMemAttribute attrib, NvOsPageFlags flags, NvU32 protect, NvOsPageAllocHandle *descriptor)
 Allocates memory via the page allocator. More...
 
void NvOsPageFree (NvOsPageAllocHandle descriptor)
 Frees pages from NvOsPageAlloc(). More...
 
NvError NvOsPageMap (NvOsPageAllocHandle descriptor, size_t offset, size_t size, void **ptr)
 Maps pages into the virtual address space. More...
 
void NvOsPageUnmap (NvOsPageAllocHandle descriptor, void *ptr, size_t size)
 Unmaps the virtual address from NvOsPageMap(). More...
 
NvOsPhysAddr NvOsPageAddress (NvOsPageAllocHandle descriptor, size_t offset)
 Returns the physical address given an offset. More...
 

Dynamic Library Handling

typedef struct NvOsLibraryRec * NvOsLibraryHandle
 A handle to a dynamic library. More...
 
NvError NvOsLibraryLoad (const char *name, NvOsLibraryHandle *library)
 Load a dynamic library. More...
 
voidNvOsLibraryGetSymbol (NvOsLibraryHandle library, const char *symbol)
 Gets an address of a symbol in a dynamic library. More...
 
void NvOsLibraryUnload (NvOsLibraryHandle library)
 Unloads a dynamic library. More...
 
NvError NvOsLibraryUnloadEx (NvOsLibraryHandle library)
 Unloads a dynamic library. More...
 

Syncronization Objects and Thread Management

#define NVOS_INVALID_TLS_INDEX   0xFFFFFFFF
 A TLS index that is guaranteed to be invalid. More...
 
#define NVOS_TLS_CNT   4
 
enum  NvOsThreadPriorityType {
  NvOsThreadPriorityType_Normal = 1,
  NvOsThreadPriorityType_NearInterrupt = 2,
  NvOsThreadPriorityType_Native = 3,
  NvOsThreadPriorityType_Last = 4,
  NvOsThreadPriorityType_Force32 = 0x7FFFFFFF
}
 
typedef struct NvOsMutexRec * NvOsMutexHandle
 
typedef struct NvOsIntrMutexRec * NvOsIntrMutexHandle
 
typedef struct NvOsConditionRec * NvOsConditionHandle
 
typedef struct NvOsSemaphoreRec * NvOsSemaphoreHandle
 
typedef struct NvOsThreadRec * NvOsThreadHandle
 
typedef void(* NvOsThreadFunction) (void *args)
 Entry point for a thread. More...
 
typedef NvU32 NvOsTlsKeyHandle
 A NvOsTlsKey Handle. More...
 
void NvOsSleepMS (NvU32 msec)
 Unschedules the calling thread for at least the given number of milliseconds. More...
 
void NvOsWaitUS (NvU32 usec)
 Stalls the calling thread for at least the given number of microseconds. More...
 
NvError NvOsSleepUS (NvU32 usec)
 
NvError NvOsSleepNS (NvU32 nsec)
 
NvError NvOsBusyWaitUS (NvU32 usec)
 Stalls the calling thread for at least the given number of microseconds. More...
 
NvError NvOsBusyWaitNS (NvU32 nsec)
 
NvError NvOsMutexCreate (NvOsMutexHandle *mutex)
 Allocates a new process-local mutex. More...
 
void NvOsMutexLock (NvOsMutexHandle mutex)
 Locks the given unlocked mutex. More...
 
NvError NvOsMutexLockEx (NvOsMutexHandle mutex)
 Locks the given unlocked mutex. More...
 
void NvOsMutexUnlock (NvOsMutexHandle mutex)
 Unlocks a locked mutex. More...
 
NvError NvOsMutexUnlockEx (NvOsMutexHandle mutex)
 Unlocks a locked mutex. More...
 
void NvOsMutexDestroy (NvOsMutexHandle mutex)
 Frees the resources held by a mutex. More...
 
NvError NvOsMutexDestroyEx (NvOsMutexHandle mutex)
 Frees the resources held by a mutex. More...
 
NvError NvOsIntrMutexCreate (NvOsIntrMutexHandle *mutex)
 Creates a mutex that is safe to aquire in an ISR. More...
 
void NvOsIntrMutexLock (NvOsIntrMutexHandle mutex)
 Aquire an ISR-safe mutex. More...
 
void NvOsIntrMutexUnlock (NvOsIntrMutexHandle mutex)
 Releases an ISR-safe mutex. More...
 
void NvOsIntrMutexDestroy (NvOsIntrMutexHandle mutex)
 Destroys an ISR-safe mutex. More...
 
NvError NvOsConditionCreate (NvOsConditionHandle *cond)
 Creates a condition variable. More...
 
NvError NvOsConditionDestroy (NvOsConditionHandle cond)
 Frees resources held by the condition variable. More...
 
NvError NvOsConditionBroadcast (NvOsConditionHandle cond)
 Unblocks all threads currently blocked on the specified condition variable. More...
 
NvError NvOsConditionSignal (NvOsConditionHandle cond)
 Unblocks atleast one of the threads that are blocked on the specified condition variable. More...
 
NvError NvOsConditionWait (NvOsConditionHandle cond, NvOsMutexHandle mutex)
 Atomically releases the mutex and causes the calling thread to block on the condition variable. More...
 
NvError NvOsConditionWaitTimeout (NvOsConditionHandle cond, NvOsMutexHandle mutex, NvU32 microsecs)
 Atomically releases the mutex and causes the calling thread to block on the condition variable with a timeout. More...
 
NvError NvOsSemaphoreCreate (NvOsSemaphoreHandle *semaphore, NvU32 value)
 Creates a counting semaphore. More...
 
NvError NvOsSemaphoreClone (NvOsSemaphoreHandle orig, NvOsSemaphoreHandle *semaphore)
 Creates a duplicate semaphore from the given semaphore. More...
 
void NvOsSemaphoreWait (NvOsSemaphoreHandle semaphore)
 Waits until the semaphore value becomes non-zero, then decrements the value and returns. More...
 
NvError NvOsSemaphoreWaitEx (NvOsSemaphoreHandle semaphore)
 Waits until the semaphore value becomes non-zero, then decrements the value and returns. More...
 
NvError NvOsSemaphoreWaitTimeout (NvOsSemaphoreHandle semaphore, NvU32 msec)
 Waits for the given semaphore value to become non-zero with timeout. More...
 
void NvOsSemaphoreSignal (NvOsSemaphoreHandle semaphore)
 Increments the semaphore value. More...
 
NvError NvOsSemaphoreSignalEx (NvOsSemaphoreHandle semaphore)
 Increments the semaphore value. More...
 
void NvOsSemaphoreDestroy (NvOsSemaphoreHandle semaphore)
 Frees resources held by the semaphore. More...
 
NvError NvOsSemaphoreDestroyEx (NvOsSemaphoreHandle semaphore)
 Frees resources held by the semaphore. More...
 
NvError NvOsThreadCreate (NvOsThreadFunction function, void *args, NvOsThreadHandle *thread)
 Creates a thread. More...
 
NvError NvOsInterruptPriorityThreadCreate (NvOsThreadFunction function, void *args, NvOsThreadHandle *thread)
 Creates a near interrupt priority thread. More...
 
const char * NvOsThreadGetName (NvOsThreadHandle thread)
 Returns the name of the given thread. More...
 
NvError NvOsThreadSetName (NvOsThreadHandle thread, const char *name)
 Assigns the given name to the given thread. More...
 
void NvOsThreadJoin (NvOsThreadHandle thread)
 Waits for the given thread to exit. More...
 
NvError NvOsThreadJoinEx (NvOsThreadHandle thread)
 Waits for the given thread to exit. More...
 
void NvOsThreadYield (void)
 Yields to another runnable thread. More...
 
NvU64 NvOsGetCurrentThreadId (void)
 Returns current thread ID. More...
 
voidNvOsAtomicCompareExchangePtr (void **pTarget, void *OldValue, void *NewValue)
 Atomically compares the contents of a pointer-sized memory location with a value, and if they match, updates it to a new value. More...
 
NvS32 NvOsAtomicCompareExchange32 (NvS32 *pTarget, NvS32 OldValue, NvS32 NewValue)
 Atomically compares the contents of a 32-bit memory location with a value, and if they match, updates it to a new value. More...
 
NvS32 NvOsAtomicExchange32 (NvS32 *pTarget, NvS32 Value)
 Atomically swaps the contents of a 32-bit memory location with a value. More...
 
NvS32 NvOsAtomicExchangeAdd32 (NvS32 *pTarget, NvS32 Value)
 Atomically increments the contents of a 32-bit memory location by a specified amount. More...
 
NvOsTlsKeyHandle NvOsTlsAlloc (void)
 Allocates a thread-local storage variable. More...
 
NvOsTlsKeyHandle NvOsTlsAllocWithDestructor (void(*destructor)(void *))
 Allocates a thread-local storage variable, with destructor when thread exits. More...
 
void NvOsTlsFree (NvOsTlsKeyHandle TlsIndex)
 Frees a thread-local storage variable. More...
 
voidNvOsTlsGet (NvOsTlsKeyHandle TlsIndex)
 Gets the value of a thread-local storage variable. More...
 
void NvOsTlsSet (NvOsTlsKeyHandle TlsIndex, void *Value)
 Sets the value of a thread-local storage variable. More...
 
NvError NvOsTlsAddTerminator (void(*func)(void *), void *context)
 Registers a function that should be called when the thread terminates to clean up any structures stored in thread-local storage. More...
 
NvBool NvOsTlsRemoveTerminator (void(*func)(void *), void *context)
 Checks the list of existing terminator functions for one that matches both the function and the data, and then removes that function from the list. More...
 

Time Functions

typedef struct NvOsSystemTimeRec NvOsSystemTime
 Defines the system time structure. More...
 
NvError NvOsGetSystemTime (NvOsSystemTime *hNvOsSystemtime)
 Gets system realtime clock. More...
 
NvU32 NvOsGetTimeMS (void)
 
NvU64 NvOsGetTimeUS (void)
 
NvU64 NvOsGetTimeNS (void)
 

CPU Cache

Cache operations for both instruction and data cache, implemented per processor.

enum  NvOsCallstackType {
  NvOsCallstackType_NoStack = 1,
  NvOsCallstackType_HexStack = 2,
  NvOsCallstackType_SymbolStack = 3,
  NvOsCallstackType_Last = 4,
  NvOsCallstackType_Force32 = 0x7FFFFFFF
}
 
typedef void(* NvOsInterruptHandler) (void *args)
 Interrupt handler function. More...
 
typedef struct NvOsInterruptRec * NvOsInterruptHandle
 Interrupt handler type. More...
 
typedef void *(* NvOsAllocFunc) (struct NvOsAllocatorRec *, size_t size)
 
typedef void *(* NvOsAllocAlignFunc) (struct NvOsAllocatorRec *, size_t align, size_t size)
 
typedef void *(* NvOsReallocFunc) (struct NvOsAllocatorRec *, void *ptr, size_t size)
 
typedef void(* NvOsFreeFunc) (struct NvOsAllocatorRec *, void *ptr)
 
typedef struct NvOsAllocatorRec NvOsAllocator
 
typedef struct NvCallstackRec NvCallstack
 
typedef void(* NvOsDumpCallback) (void *context, const char *line)
 
void NvOsDataCacheWriteback (void)
 Writes back the entire data cache. More...
 
void NvOsDataCacheWritebackInvalidate (void)
 Writes back and invalidates the entire data cache. More...
 
void NvOsDataCacheWritebackRange (void *start, NvU32 length)
 Writes back a range of the data cache. More...
 
void NvOsDataCacheWritebackInvalidateRange (void *start, NvU32 length)
 Writes back and invlidates a range of the data cache. More...
 
void NvOsInstrCacheInvalidate (void)
 Invalidates the entire instruction cache. More...
 
void NvOsInstrCacheInvalidateRange (void *start, NvU32 length)
 Invalidates a range of the instruction cache. More...
 
NvBool NvOsIsMemoryOfGivenType (NvOsMemAttribute Attrib, NvU32 Addr)
 Checks and returns whether the given memory address is within memory of given attribute. More...
 
void NvOsFlushWriteCombineBuffer (void)
 Flushes the CPU's write combine buffer. More...
 
NvError NvOsInterruptRegister (NvU32 IrqListSize, const NvU32 *pIrqList, const NvOsInterruptHandler *pIrqHandlerList, void *context, NvOsInterruptHandle *handle, NvBool InterruptEnable)
 Registers the interrupt handler with the IRQ number. More...
 
void NvOsInterruptUnregister (NvOsInterruptHandle handle)
 Unregisters the interrupt handler from the associated IRQ number. More...
 
NvError NvOsInterruptEnable (NvOsInterruptHandle handle)
 Enables the interrupt handler with the IRQ number. More...
 
void NvOsInterruptDone (NvOsInterruptHandle handle)
 Called when the ISR/IST is done handling the interrupt. More...
 
void NvOsInterruptMask (NvOsInterruptHandle handle, NvBool mask)
 Mask/unmask an interrupt. More...
 
struct NvOsAllocatorRecNvOsGetCurrentAllocator (void)
 
void NvOsDumpToDebugPrintf (void *context, const char *line)
 
NvCallstackNvOsCallstackCreate (NvOsCallstackType stackType)
 
void NvOsCallstackDestroy (NvCallstack *callstack)
 
NvU32 NvOsCallstackGetHeight (NvCallstack *stack)
 
void NvOsCallstackGetFrame (char *buf, NvU32 len, NvCallstack *stack, NvU32 level)
 
void NvOsCallstackDump (NvCallstack *stack, NvU32 skip, NvOsDumpCallback callBack, void *context)
 
NvU32 NvOsCallstackHash (NvCallstack *stack)
 
NvBool NvOsCallstackContainsPid (NvCallstack *stack, NvU32 pid)
 
void NvOsGetProcessInfo (char *buf, NvU32 len)
 
static NV_INLINE void NvOsDebugCallstack (NvU32 skip)
 
int NvOsSetFpsTarget (int target)
 To be deprecated. More...
 
int NvOsModifyFpsTarget (int fd, int target)
 To be deprecated. More...
 
void NvOsCancelFpsTarget (int fd)
 To be deprecated. More...
 
NvU32 NvOsReadReg (NvU64 Reg, NvU32 Off)
 
void NvOsWriteReg (NvU64 reg, NvU32 off, NvU32 val)
 
NvError NvOsMapRegSpace (NvU64 *VirtReg, NvU32 Base, NvU32 Size)
 
NvError NvOsUnMapRegSpace (NvU64 *VirtReg, NvU32 Base, NvU32 Size)
 
int NvOsDebugExternalLogInit (void)
 This function does slog initialization for current executing context. More...