<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://switchbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ByLaws</id>
	<title>Nintendo Switch Brew - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://switchbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ByLaws"/>
	<link rel="alternate" type="text/html" href="https://switchbrew.org/wiki/Special:Contributions/ByLaws"/>
	<updated>2026-04-30T19:43:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11261</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11261"/>
		<updated>2021-10-23T20:43:33Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: /* NVHOST_IOCTL_CHANNEL_SUBMIT */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [11.0.0+] 0xA83B ([1.0.0-2.3.0] 0x2B, [3.0.0+] 0xA82B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer &#039;&#039;&#039;Path&#039;&#039;&#039;. Returns two output u32s &#039;&#039;&#039;FdOut&#039;&#039;&#039; and &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Fd&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes an input Process handle, an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the TransferMemory with perm == 0 and size == 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;EvtId&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039; and an output Event handle.&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_id, bit27-16 contain syncpt_id. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_id, bit31-4 contains syncpt_id.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes an input TransferMemory handle and two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;HMem&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMem&#039;&#039;&#039; is a [[#/dev/nvmap|/dev/nvmap]] memory handle.&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns an output [[#NvDrvStatus]] and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aruid&#039;&#039;&#039; must [[IPC_Marshalling|match]] the current [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, two type-0x21 input buffers and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and two type-0x22 output buffers. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Official user-processes now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open_2|Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetPid|GetPid]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetPid ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Pid&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#DebugFSOpen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#DebugFSClose]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetDebugFSValue]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetDebugFSValue]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DebugFSOpen ==&lt;br /&gt;
Takes an input Process handle. Returns an output u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DebugFSClose ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;, a type-0x5 input buffer &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and two type-0x5 input buffers &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and &#039;&#039;&#039;InValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_2|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetEventHandle|GetEventHandle]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#ControlNotification|ControlNotification]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#SetNotificationPerm|SetNotificationPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCoreDumpPerm|SetCoreDumpPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] [[#GetAruid|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#Reset|Reset]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetEventHandle ==&lt;br /&gt;
No input. Returns an output Event handle and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ControlNotification ==&lt;br /&gt;
Takes an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetNotificationPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCoreDumpPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Reset ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_3|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetAruid_2|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] [[#ReadNextBlock|ReadNextBlock]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ReadNextBlock ==&lt;br /&gt;
Takes a type-0x6 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains all known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char name[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char key[0x41];&lt;br /&gt;
    __out char value[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of a syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;          // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT ===&lt;br /&gt;
Waits on a syncpt using events. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((((&#039;&#039;&#039;id&#039;&#039;&#039; &amp;amp; 0xFFF) &amp;lt;&amp;lt; 0x10) | 0x10000000) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE ===&lt;br /&gt;
Waits on a syncpt using a specific event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;id&#039;&#039;&#039; * 0x10) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 id;&lt;br /&gt;
    __in    u32 thresh;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_id; out=syncpt_value&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT ===&lt;br /&gt;
Allocates a new syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT ===&lt;br /&gt;
Frees an existing syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH ===&lt;br /&gt;
Frees multiple syncpt events. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 event_id_mask;      // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __inout u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __in u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;  // 0 if the handle wasn&#039;t yet freed&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=WAS_UNCACHED (if flags bit 1 was set when NVMAP_IOC_ALLOC was called)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC084441C || Inout || 132 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441D || Inout || 24 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
= Channels =&lt;br /&gt;
Channels are a concept for NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
    u32 reserved[3];&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   u32 fence_thresholds[];                // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= NvDrvPermission =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvPermission&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvError =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvError&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvDrvStatus =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvStatus&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| FreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| AllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumFreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumAllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x10&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11260</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11260"/>
		<updated>2021-10-23T20:16:01Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: /* NVHOST_IOCTL_CHANNEL_SUBMIT */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [11.0.0+] 0xA83B ([1.0.0-2.3.0] 0x2B, [3.0.0+] 0xA82B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer &#039;&#039;&#039;Path&#039;&#039;&#039;. Returns two output u32s &#039;&#039;&#039;FdOut&#039;&#039;&#039; and &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Fd&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes an input Process handle, an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the TransferMemory with perm == 0 and size == 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;EvtId&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039; and an output Event handle.&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_id, bit27-16 contain syncpt_id. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_id, bit31-4 contains syncpt_id.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes an input TransferMemory handle and two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;HMem&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMem&#039;&#039;&#039; is a [[#/dev/nvmap|/dev/nvmap]] memory handle.&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns an output [[#NvDrvStatus]] and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aruid&#039;&#039;&#039; must [[IPC_Marshalling|match]] the current [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, two type-0x21 input buffers and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and two type-0x22 output buffers. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Official user-processes now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open_2|Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetPid|GetPid]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetPid ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Pid&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#DebugFSOpen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#DebugFSClose]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetDebugFSValue]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetDebugFSValue]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DebugFSOpen ==&lt;br /&gt;
Takes an input Process handle. Returns an output u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DebugFSClose ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;, a type-0x5 input buffer &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and two type-0x5 input buffers &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and &#039;&#039;&#039;InValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_2|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetEventHandle|GetEventHandle]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#ControlNotification|ControlNotification]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#SetNotificationPerm|SetNotificationPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCoreDumpPerm|SetCoreDumpPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] [[#GetAruid|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#Reset|Reset]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetEventHandle ==&lt;br /&gt;
No input. Returns an output Event handle and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ControlNotification ==&lt;br /&gt;
Takes an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetNotificationPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCoreDumpPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Reset ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_3|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetAruid_2|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] [[#ReadNextBlock|ReadNextBlock]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ReadNextBlock ==&lt;br /&gt;
Takes a type-0x6 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains all known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char name[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char key[0x41];&lt;br /&gt;
    __out char value[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of a syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;          // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT ===&lt;br /&gt;
Waits on a syncpt using events. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((((&#039;&#039;&#039;id&#039;&#039;&#039; &amp;amp; 0xFFF) &amp;lt;&amp;lt; 0x10) | 0x10000000) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE ===&lt;br /&gt;
Waits on a syncpt using a specific event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;id&#039;&#039;&#039; * 0x10) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 id;&lt;br /&gt;
    __in    u32 thresh;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_id; out=syncpt_value&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT ===&lt;br /&gt;
Allocates a new syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT ===&lt;br /&gt;
Frees an existing syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH ===&lt;br /&gt;
Frees multiple syncpt events. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 event_id_mask;      // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __inout u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __in u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;  // 0 if the handle wasn&#039;t yet freed&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=WAS_UNCACHED (if flags bit 1 was set when NVMAP_IOC_ALLOC was called)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC084441C || Inout || 132 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441D || Inout || 24 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
= Channels =&lt;br /&gt;
Channels are a concept for NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
    u32 reserved[3];&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   u32 syncpt_thresholds[];               // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= NvDrvPermission =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvPermission&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvError =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvError&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvDrvStatus =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvStatus&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| FreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| AllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumFreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumAllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x10&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11259</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11259"/>
		<updated>2021-10-23T18:08:51Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: /* NVHOST_IOCTL_CHANNEL_SUBMIT */ Fix syncpoint struct sizing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [11.0.0+] 0xA83B ([1.0.0-2.3.0] 0x2B, [3.0.0+] 0xA82B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer &#039;&#039;&#039;Path&#039;&#039;&#039;. Returns two output u32s &#039;&#039;&#039;FdOut&#039;&#039;&#039; and &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Fd&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes an input Process handle, an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the TransferMemory with perm == 0 and size == 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;EvtId&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039; and an output Event handle.&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_id, bit27-16 contain syncpt_id. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_id, bit31-4 contains syncpt_id.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes an input TransferMemory handle and two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;HMem&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMem&#039;&#039;&#039; is a [[#/dev/nvmap|/dev/nvmap]] memory handle.&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns an output [[#NvDrvStatus]] and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aruid&#039;&#039;&#039; must [[IPC_Marshalling|match]] the current [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, two type-0x21 input buffers and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and two type-0x22 output buffers. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Official user-processes now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open_2|Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetPid|GetPid]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetPid ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Pid&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#DebugFSOpen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#DebugFSClose]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetDebugFSValue]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetDebugFSValue]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DebugFSOpen ==&lt;br /&gt;
Takes an input Process handle. Returns an output u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DebugFSClose ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;, a type-0x5 input buffer &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and two type-0x5 input buffers &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and &#039;&#039;&#039;InValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_2|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetEventHandle|GetEventHandle]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#ControlNotification|ControlNotification]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#SetNotificationPerm|SetNotificationPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCoreDumpPerm|SetCoreDumpPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] [[#GetAruid|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#Reset|Reset]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetEventHandle ==&lt;br /&gt;
No input. Returns an output Event handle and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ControlNotification ==&lt;br /&gt;
Takes an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetNotificationPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCoreDumpPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Reset ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_3|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetAruid_2|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] [[#ReadNextBlock|ReadNextBlock]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ReadNextBlock ==&lt;br /&gt;
Takes a type-0x6 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains all known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char name[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char key[0x41];&lt;br /&gt;
    __out char value[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of a syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;          // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT ===&lt;br /&gt;
Waits on a syncpt using events. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((((&#039;&#039;&#039;id&#039;&#039;&#039; &amp;amp; 0xFFF) &amp;lt;&amp;lt; 0x10) | 0x10000000) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE ===&lt;br /&gt;
Waits on a syncpt using a specific event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;id&#039;&#039;&#039; * 0x10) | &#039;&#039;&#039;event_id&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 id;&lt;br /&gt;
    __in    u32 thresh;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_id; out=syncpt_value&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT ===&lt;br /&gt;
Allocates a new syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT ===&lt;br /&gt;
Frees an existing syncpt event.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_id;           // 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH ===&lt;br /&gt;
Frees multiple syncpt events. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 event_id_mask;      // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __inout u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __in u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;  // 0 if the handle wasn&#039;t yet freed&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=WAS_UNCACHED (if flags bit 1 was set when NVMAP_IOC_ALLOC was called)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC084441C || Inout || 132 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441D || Inout || 24 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
= Channels =&lt;br /&gt;
Channels are a concept for NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
    u32 reserved[3];&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   struct fence fences[];                 // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= NvDrvPermission =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvPermission&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvError =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvError&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvDrvStatus =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvStatus&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| FreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| AllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumFreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumAllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x10&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11044</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11044"/>
		<updated>2021-07-07T12:55:27Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: /* NVMAP_IOC_FREE */  Fix incorrect comment about flags&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [11.0.0+] 0xA83B ([1.0.0-2.3.0] 0x2B, [3.0.0+] 0xA82B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer &#039;&#039;&#039;Path&#039;&#039;&#039;. Returns two output u32s &#039;&#039;&#039;FdOut&#039;&#039;&#039; and &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Fd&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes an input Process handle, an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the TransferMemory with perm == 0 and size == 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;EvtId&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039; and an output Event handle.&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_slot, bit27-16 contain syncpt_number. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_slot, bit31-4 contains syncpt_number.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes an input TransferMemory handle and two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;HMem&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMem&#039;&#039;&#039; is a [[#/dev/nvmap|/dev/nvmap]] memory handle.&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns an output [[#NvDrvStatus]] and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aruid&#039;&#039;&#039; must [[IPC_Marshalling|match]] the current [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, two type-0x21 input buffers and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and two type-0x22 output buffers. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Official user-processes now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open_2|Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetPid|GetPid]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetPid ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Pid&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#DebugFSOpen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#DebugFSClose]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetDebugFSValue]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetDebugFSValue]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DebugFSOpen ==&lt;br /&gt;
Takes an input Process handle. Returns an output u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DebugFSClose ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;, a type-0x5 input buffer &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and two type-0x5 input buffers &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and &#039;&#039;&#039;InValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_2|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetEventHandle|GetEventHandle]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#ControlNotification|ControlNotification]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#SetNotificationPerm|SetNotificationPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCoreDumpPerm|SetCoreDumpPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] [[#GetAruid|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#Reset|Reset]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetEventHandle ==&lt;br /&gt;
No input. Returns an output Event handle and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ControlNotification ==&lt;br /&gt;
Takes an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetNotificationPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCoreDumpPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Reset ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_3|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetAruid_2|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] [[#ReadNextBlock|ReadNextBlock]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ReadNextBlock ==&lt;br /&gt;
Takes a type-0x6 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains all known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char domain_str[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char param_str[0x41];&lt;br /&gt;
    __out char config_str[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of an event. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT ===&lt;br /&gt;
Waits on an event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;syncpt_id&#039;&#039;&#039; &amp;lt;&amp;lt; 0x10) | 0x10000000).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC ===&lt;br /&gt;
Waits on an event (async version). If waiting fails, returns error code 0x0B (BadValue).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT ===&lt;br /&gt;
Registers an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT ===&lt;br /&gt;
Unregisters an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS ===&lt;br /&gt;
Frees events. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 events;             // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __inout u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __in u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;  // 0 if the handle wasn&#039;t yet freed&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=WAS_UNCACHED (if flags bit 1 was set when NVMAP_IOC_ALLOC was called)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC084441C || Inout || 132 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441D || Inout || 24 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
= Channels =&lt;br /&gt;
Channels are a concept for NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   struct fence fences[];                 // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= NvDrvPermission =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvPermission&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvError =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvError&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvDrvStatus =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvStatus&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| FreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| AllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumFreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumAllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x10&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11012</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=11012"/>
		<updated>2021-07-05T14:13:41Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Fix NVMAP_IOC_ALLOC align param to be __inout&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [11.0.0+] 0xA83B ([1.0.0-2.3.0] 0x2B, [3.0.0+] 0xA82B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#NvDrvPermission|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer &#039;&#039;&#039;Path&#039;&#039;&#039;. Returns two output u32s &#039;&#039;&#039;FdOut&#039;&#039;&#039; and &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Fd&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes an input Process handle, an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the TransferMemory with perm == 0 and size == 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;EvtId&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039; and an output Event handle.&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_slot, bit27-16 contain syncpt_number. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_slot, bit31-4 contains syncpt_number.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes an input TransferMemory handle and two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;HMem&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMem&#039;&#039;&#039; is a [[#/dev/nvmap|/dev/nvmap]] memory handle.&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns an output [[#NvDrvStatus]] and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aruid&#039;&#039;&#039; must [[IPC_Marshalling|match]] the current [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, two type-0x21 input buffers and a type-0x22 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes two input u32s &#039;&#039;&#039;Fd&#039;&#039;&#039; and &#039;&#039;&#039;Iocode&#039;&#039;&#039;, a type-0x21 input buffer and two type-0x22 output buffers. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Official user-processes now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open_2|Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetPid|GetPid]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes an input TransferMemory handle and an input u32 &#039;&#039;&#039;Size&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetPid ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Pid&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#DebugFSOpen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#DebugFSClose]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetDebugFSValue]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetDebugFSValue]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DebugFSOpen ==&lt;br /&gt;
Takes an input Process handle. Returns an output u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== DebugFSClose ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039;, a type-0x5 input buffer &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and a type-0x6 output buffer &#039;&#039;&#039;OutValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetDebugFSValue ==&lt;br /&gt;
Takes an input u32 &#039;&#039;&#039;Handle&#039;&#039;&#039; and two type-0x5 input buffers &#039;&#039;&#039;InKeyBuf&#039;&#039;&#039; and &#039;&#039;&#039;InValueBuf&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_2|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetEventHandle|GetEventHandle]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#ControlNotification|ControlNotification]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#SetNotificationPerm|SetNotificationPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCoreDumpPerm|SetCoreDumpPerm]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] [[#GetAruid|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#Reset|Reset]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetEventHandle ==&lt;br /&gt;
No input. Returns an output Event handle and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ControlNotification ==&lt;br /&gt;
Takes an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetNotificationPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCoreDumpPerm ==&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an input bool &#039;&#039;&#039;Enable&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Reset ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize_3|Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetAruid_2|GetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] [[#ReadNextBlock|ReadNextBlock]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetAruid ==&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;Aruid&#039;&#039;&#039; and an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== ReadNextBlock ==&lt;br /&gt;
Takes a type-0x6 output buffer. Returns an output u32 &#039;&#039;&#039;Err&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains all known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char domain_str[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char param_str[0x41];&lt;br /&gt;
    __out char config_str[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of an event. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT ===&lt;br /&gt;
Waits on an event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;syncpt_id&#039;&#039;&#039; &amp;lt;&amp;lt; 0x10) | 0x10000000).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC ===&lt;br /&gt;
Waits on an event (async version). If waiting fails, returns error code 0x0B (BadValue).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT ===&lt;br /&gt;
Registers an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT ===&lt;br /&gt;
Unregisters an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS ===&lt;br /&gt;
Frees events. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 events;             // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __inout u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __in u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=NOT_FREED_YET&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
= Channels =&lt;br /&gt;
Channels are a concept for NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   struct fence fences[];                 // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= NvDrvPermission =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvPermission&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvError =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvError&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= NvDrvStatus =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::NvDrvStatus&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| FreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| AllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumFreeSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| MinimumAllocatableSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x10&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=11009</id>
		<title>Audio services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=11009"/>
		<updated>2021-06-25T15:32:41Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Correct details of how hwopus Ex params are passed over IPC&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= audout:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioOuts|ListAudioOuts]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#OpenAudioOut|OpenAudioOut]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#ListAudioOutsAuto|ListAudioOutsAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#OpenAudioOutAuto|OpenAudioOutAuto]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioOuts ==&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of [[#AudioOutInfo]]. Returns an u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOut ==&lt;br /&gt;
Takes a PID-descriptor, a type-0x5 input buffer &#039;&#039;&#039;NameIn&#039;&#039;&#039;, a type-0x6 output buffer &#039;&#039;&#039;NameOut&#039;&#039;&#039;, an input [[#AudioOutParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IAudioOut]] and an output [[#AudioOutParameterInternal]].&lt;br /&gt;
&lt;br /&gt;
== ListAudioOutsAuto ==&lt;br /&gt;
Same as [[#ListAudioOuts]], but takes a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOutAuto ==&lt;br /&gt;
Same as [[#OpenAudioOut]], but takes a type-0x21 input buffer and a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== IAudioOut ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOut&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioOutState|GetAudioOutState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendAudioOutBuffer|AppendAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedAudioOutBuffers|GetReleasedAudioOutBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsAudioOutBuffer|ContainsAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#AppendAudioOutBufferAuto|AppendAudioOutBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetReleasedAudioOutBuffersAuto|GetReleasedAudioOutBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [4.0.0+] [[#GetAudioOutBufferCount|GetAudioOutBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [4.0.0+] [[#GetAudioOutPlayedSampleCount|GetAudioOutPlayedSampleCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] [[#FlushAudioOutBuffers|FlushAudioOutBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [6.0.0+] [[#SetAudioOutVolume|SetAudioOutVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [6.0.0+] [[#GetAudioOutVolume|GetAudioOutVolume]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutState ===&lt;br /&gt;
No input. Returns an output [[#AudioOutState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
Starts audio playback using data from appended buffers.&lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
Stops audio playback. This waits for audio playback to finish before returning.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#AudioOutBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;AudioBuffer&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AudioBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendAudioOutBuffer]] of audio buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsAudioOutBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;AudioBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBufferAuto ===&lt;br /&gt;
Same as [[#AppendAudioOutBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedAudioOutBuffer]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutBufferCount ===&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;AudioOutBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutPlayedSampleCount ===&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;AudioOutPlayedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== FlushAudioOutBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioOutVolume ===&lt;br /&gt;
Takes an input float &#039;&#039;&#039;AudioOutVolume&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutVolume ===&lt;br /&gt;
No input. Returns an output float &#039;&#039;&#039;AudioOutVolume&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= audin:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioIns|ListAudioIns]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#OpenAudioIn|OpenAudioIn]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#ListAudioInsAuto|ListAudioInsAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#OpenAudioInAuto|OpenAudioInAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [3.0.0+] [[#ListAudioInsAutoFiltered|ListAudioInsAutoFiltered]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [5.0.0+] [[#OpenAudioInProtocolSpecified|OpenAudioInProtocolSpecified]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioIns ==&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of [[#AudioInInfo]]. Returns an u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioIn ==&lt;br /&gt;
Takes a PID-descriptor, a type-0x5 input buffer &#039;&#039;&#039;NameIn&#039;&#039;&#039;, a type-0x6 output buffer &#039;&#039;&#039;NameOut&#039;&#039;&#039;, an input [[#AudioInParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IAudioIn]] and an an output [[#AudioInParameterInternal]].&lt;br /&gt;
&lt;br /&gt;
== ListAudioInsAuto ==&lt;br /&gt;
Same as [[#ListAudioIns]], but takes a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioInAuto ==&lt;br /&gt;
Same as [[#OpenAudioIn]], but takes a type-0x21 input buffer and a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== ListAudioInsAutoFiltered ==&lt;br /&gt;
Same as [[#ListAudioInsAuto]].&lt;br /&gt;
&lt;br /&gt;
== OpenAudioInProtocolSpecified ==&lt;br /&gt;
Same as [[#OpenAudioIn]], but takes an additional input u64 &#039;&#039;&#039;Protocol&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== IAudioIn ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioIn&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioInState|GetAudioInState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start_2|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop_2|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendAudioInBuffer|AppendAudioInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent_2|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedAudioInBuffers|GetReleasedAudioInBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsAudioInBuffer|ContainsAudioInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#AppendUacInBuffer|AppendUacInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#AppendAudioInBufferAuto|AppendAudioInBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] [[#GetReleasedAudioInBuffersAuto|GetReleasedAudioInBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#AppendUacInBufferAuto|AppendUacInBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] [[#GetAudioInBufferCount|GetAudioInBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [4.0.0+] [[#SetDeviceGain|SetDeviceGain]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [4.0.0+] [[#GetDeviceGain|GetDeviceGain]]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [6.0.0+] [[#FlushAudioInBuffers|FlushAudioInBuffers]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioInState ===&lt;br /&gt;
No input. Returns an output [[#AudioInState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioInBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#AudioInBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioInBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;AudioBuffer&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AudioBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendAudioInBuffer]] of audio buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsAudioInBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;AudioBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendUacInBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an &#039;&#039;&#039;UacInBuffer&#039;&#039;&#039;, an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039; and an input Event handle. No output.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioInBufferAuto ===&lt;br /&gt;
Same as [[#AppendAudioInBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioInBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedAudioInBuffer]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== AppendUacInBufferAuto ===&lt;br /&gt;
Same as [[#AppendUacInBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioInBufferCount ===&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;AudioInBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== SetDeviceGain ===&lt;br /&gt;
Takes an input float &#039;&#039;&#039;DeviceGain&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetDeviceGain ===&lt;br /&gt;
No input. Returns an output float &#039;&#039;&#039;DeviceGain&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== FlushAudioInBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= audrec:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenFinalOutputRecorder]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== OpenFinalOutputRecorder ==&lt;br /&gt;
Takes an input [[#FinalOutputRecorderParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IFinalOutputRecorder]] and an output [[#FinalOutputRecorderParameterInternal]]. &lt;br /&gt;
&lt;br /&gt;
== IFinalOutputRecorder ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetFinalOutputRecorderState|GetFinalOutputRecorderState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start_3|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop_3|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendFinalOutputRecorderBuffer|AppendFinalOutputRecorderBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent_3|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedFinalOutputRecorderBuffers|GetReleasedFinalOutputRecorderBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsFinalOutputRecorderBuffer|ContainsFinalOutputRecorderBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#GetFinalOutputRecorderBufferEndTime|GetFinalOutputRecorderBufferEndTime]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#AppendFinalOutputRecorderBufferAuto|AppendFinalOutputRecorderBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] [[#GetReleasedFinalOutputRecorderBuffersAuto|GetReleasedFinalOutputRecorderBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [6.0.0+] [[#FlushFinalOutputRecorderBuffers|FlushFinalOutputRecorderBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [9.0.0+] [[#AttachWorkBuffer|AttachWorkBuffer]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetFinalOutputRecorderState ===&lt;br /&gt;
No input. Returns an output [[#FinalOutputRecorderState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
=== AppendFinalOutputRecorderBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#FinalOutputRecorderBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedFinalOutputRecorderBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;FinalOutputRecorderBuffer&#039;&#039;&#039;. Returns two output u64s &#039;&#039;&#039;Count&#039;&#039;&#039; and &#039;&#039;&#039;Released&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FinalOutputRecorderBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendFinalOutputRecorderBuffer]] of recorder buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsFinalOutputRecorderBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;FinalOutputRecorderBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetFinalOutputRecorderBufferEndTime ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;FinalOutputRecorderBufferPointer&#039;&#039;&#039;. Returns an output u64 &#039;&#039;&#039;Released&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendFinalOutputRecorderBufferAuto ===&lt;br /&gt;
Same as [[#AppendFinalOutputRecorderBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedFinalOutputRecorderBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedFinalOutputRecorderBuffers]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== FlushFinalOutputRecorderBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AttachWorkBuffer ===&lt;br /&gt;
Takes an input [[#FinalOutputRecorderWorkBufferParameterInternal]]. No output.&lt;br /&gt;
&lt;br /&gt;
= auddev =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSnoopManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [6.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || EnableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 1 || DisableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 6 || GetDspUsage&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= audren:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || OpenAudioRenderer&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetWorkBufferSize&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceService]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] OpenAudioRendererForManualExecution&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetAudioDeviceServiceWithRevisionInfo&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceService ===&lt;br /&gt;
Takes an input u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]], returns an output [[#IAudioDevice]].&lt;br /&gt;
&lt;br /&gt;
== IAudioRenderer ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRenderer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetSampleRate]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetSampleCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetMixBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetState]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RequestUpdate&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Start&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Stop&lt;br /&gt;
|-&lt;br /&gt;
| 7 || QuerySystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#GetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] RequestUpdateAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] ExecuteAudioRendererRendering&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetSampleRate ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;SampleRate&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetSampleCount ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;SampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetMixBufferCount ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;MixBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetState ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;State&#039;&#039;&#039; (0=Started, 1=Stopped).&lt;br /&gt;
&lt;br /&gt;
=== SetRenderingTimeLimit ===&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;RenderingTimeLimit&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetRenderingTimeLimit ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;RenderingTimeLimit&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== IAudioDevice ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDevice&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioDeviceName]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetActiveAudioDeviceName&lt;br /&gt;
|-&lt;br /&gt;
| 4 || QueryAudioDeviceSystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 5 || GetActiveChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [3.0.0+] [[#ListAudioDeviceNameAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#SetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] GetActiveAudioDeviceNameAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] QueryAudioDeviceInputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] QueryAudioDeviceOutputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [5.0.0+] GetAudioSystemMasterVolumeSetting&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceName ===&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceNameAuto ===&lt;br /&gt;
Takes a type-0x22 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
= audout:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [4.0.0+] SetProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audin:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audrec:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audren:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RegisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 5 || UnregisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [4.0.0+] GetProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [4.0.0+] SetProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audout:d, audin:d, audrec:d, audren:d =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioInManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioRendererManagerForDebugger&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
These were removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#RequestSuspend]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#RequestResume]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== RequestSuspend ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== RequestResume ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
= audctl =&lt;br /&gt;
This is &amp;quot;nn::audioctrl::detail::IAudioController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || GetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetTargetVolumeMin&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetTargetVolumeMax&lt;br /&gt;
|-&lt;br /&gt;
| 4 || IsTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 5 || SetTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 6 || IsTargetConnected&lt;br /&gt;
|-&lt;br /&gt;
| 7 || SetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 8 || GetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 9 || GetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 10 || SetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 11 || SetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 12 || GetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 13 || GetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 14 || SetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 15 || SetOutputTarget&lt;br /&gt;
|-&lt;br /&gt;
| 16 || SetInputTargetForceEnabled&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [3.0.0+] SetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [3.0.0+] GetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 19 || [3.0.0+] AcquireAudioVolumeUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 20 || [3.0.0+] AcquireAudioOutputDeviceUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 21 || [3.0.0+] GetAudioOutputTargetForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 22 || [3.0.0+] NotifyHeadphoneVolumeWarningDisplayedEvent&lt;br /&gt;
|-&lt;br /&gt;
| 23 || [4.0.0+] SetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 24 || [4.0.0+] GetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 25 || [4.0.0+] GetAudioVolumeDataForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 26 || [4.0.0+] [[#UpdateHeadphoneSettings]]&lt;br /&gt;
|-&lt;br /&gt;
| 27 || [7.0.0+] SetVolumeMappingTableForDev&lt;br /&gt;
|-&lt;br /&gt;
| 28 || [10.0.0+] GetAudioOutputChannelCountForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 29 || [10.0.0+] BindAudioOutputChannelCountUpdateEventForPlayReport&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== UpdateHeadphoneSettings ===&lt;br /&gt;
Takes one input bool. No output.&lt;br /&gt;
NS calls this with the result of IParentalControlService::IsRestrictionEnabled[https://switchbrew.org/wiki/Parental_Control_services#IParentalControlService].&lt;br /&gt;
&lt;br /&gt;
= codecctl =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::ICodecController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service no longer exists in [3.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Finalize]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Sleep]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Wake]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetVolumeMax]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetVolumeMin]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#GetActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#BindHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [[#IsHeadphoneMicJackInserted]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [[#ClearHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [[#IsRequested]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Finalize ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Sleep ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Wake ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== SetVolume ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Volume&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetVolumeMax ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;VolumeMax&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetVolumeMin ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;VolumeMin&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetActiveTarget ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetActiveTarget ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== BindHeadphoneMicJackInterrupt ==&lt;br /&gt;
No input. Returns an event handle.&lt;br /&gt;
&lt;br /&gt;
== IsHeadphoneMicJackInserted ==&lt;br /&gt;
No input. Returns a bool.&lt;br /&gt;
&lt;br /&gt;
== ClearHeadphoneMicJackInterrupt ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== IsRequested ==&lt;br /&gt;
No input. Returns a bool.&lt;br /&gt;
&lt;br /&gt;
= hwopus =&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenHardwareOpusDecoder]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetWorkBufferSize]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#OpenHardwareOpusDecoderForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#GetWorkBufferSizeForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [12.0.0+] OpenHardwareOpusDecoderEx&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [12.0.0+] GetWorkBufferSizeEx&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [12.0.0+] OpenHardwareOpusDecoderForMultiStreamEx&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [12.0.0+] GetWorkBufferSizeForMultiStreamEx&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Official sw can use either software libopus, or hwopus (libopus running on the ADSP) via &amp;quot;nn::codec::HardwareOpus*&amp;quot; (separate from the former).&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoder ==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSize ==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParameters]] struct. The user-process initializes this struct the same way as [[#GetWorkBufferSizeForMultiStream]], except that an u8-array specified by the user is copied to +0x10 with size &#039;&#039;&#039;ChannelCount&#039;&#039;&#039;, when &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; above 0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParameters]] struct.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderEx ==&lt;br /&gt;
Takes a struct [[#OpusParametersEx]] and a u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
When &#039;&#039;UseLargeFrameSize&#039;&#039; in the parameter struct is 1 a larger output buffer that can store 120ms opus frames is used vs the default of 40ms.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeEx ==&lt;br /&gt;
Takes a struct [[#OpusParametersEx]]. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderForMultiStreamEx ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParametersEx]] struct. When &#039;&#039;UseLargeFrameSize&#039;&#039; is 1 a larger output buffer that can store 120ms opus frames is used vs the default of 40ms.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeForMultiStreamEx ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParametersEx]] struct.&lt;br /&gt;
&lt;br /&gt;
== IHardwareOpusDecoder ==&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [4.0.0+] [[#DecodeInterleavedOld]] ([1.0.0-3.0.2] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetContext]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [4.0.0+] [[#DecodeInterleavedForMultiStreamOld]] ([3.0.0-3.0.2] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#SetContextForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [6.0.0+] [[#DecodeInterleavedWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [6.0.0+] [[#DecodeInterleavedForMultiStreamWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedForMultiStreamWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [6.0.0+] DecodeInterleavedWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [6.0.0+] DecodeInterleavedForMultiStreamWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [7.0.0+] [[#DecodeInterleaved]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [7.0.0+] [[#DecodeInterleavedForMultiStream]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContext ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder. The input buffer is unused.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContextForMultiStream ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleaved ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStream ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
= auddebug =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDebugManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service doesn&#039;t exist in retail units.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || ProfilerStart&lt;br /&gt;
|-&lt;br /&gt;
| 1 || ProfilerStop&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CpuProfilerStart&lt;br /&gt;
|-&lt;br /&gt;
| 3 || CpuProfilerStop&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= aud:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSystemManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [11.0.0+]. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RegisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 1 || UnregisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 2 || RequestSuspendAudio&lt;br /&gt;
|-&lt;br /&gt;
| 3 || RequestResumeAudio&lt;br /&gt;
|-&lt;br /&gt;
| 4 || GetAudioOutputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 5 || SetAudioOutputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 6 || GetAudioInputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 7 || SetAudioInputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 8 || GetAudioOutputProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SetAudioOutputProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= aud:d =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSystemManagerForDebugger&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [11.0.0+]. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendAudioForDebug&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeAudioForDebug&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= SampleFormat =&lt;br /&gt;
This is &amp;quot;nn::audio::SampleFormat&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Invalid&lt;br /&gt;
|-&lt;br /&gt;
| 1 || PcmInt8&lt;br /&gt;
|-&lt;br /&gt;
| 2 || PcmInt16&lt;br /&gt;
|-&lt;br /&gt;
| 3 || PcmInt24&lt;br /&gt;
|-&lt;br /&gt;
| 4 || PcmInt32&lt;br /&gt;
|-&lt;br /&gt;
| 5 || PcmFloat&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Adpcm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutState =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInState =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderState =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutInfo =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutInfo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x100&lt;br /&gt;
| Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInInfo =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInInfo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x100&lt;br /&gt;
| Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x2&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| 0x2&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x2&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| 0x2&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::AudioOutParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::AudioInParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Released&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x28&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::FinalOutputRecorderParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderWorkBufferParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::FinalOutputRecorderWorkBufferParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusParametersEx =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| UseLargeFrameSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Padding&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusMultiStreamParameters =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of streams&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of stereo streams&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x100&lt;br /&gt;
| u8 array of channel mappings&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusMultiStreamParametersEx =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of streams&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of stereo streams&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x4&lt;br /&gt;
| UseLargeFrameSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| 0x4&lt;br /&gt;
| Padding&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x100&lt;br /&gt;
| u8 array of channel mappings&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=10987</id>
		<title>Audio services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=10987"/>
		<updated>2021-06-11T15:41:42Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Add details about new 12.0.0 opus funcs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= audout:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioOuts|ListAudioOuts]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#OpenAudioOut|OpenAudioOut]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#ListAudioOutsAuto|ListAudioOutsAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#OpenAudioOutAuto|OpenAudioOutAuto]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioOuts ==&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of [[#AudioOutInfo]]. Returns an u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOut ==&lt;br /&gt;
Takes a PID-descriptor, a type-0x5 input buffer &#039;&#039;&#039;NameIn&#039;&#039;&#039;, a type-0x6 output buffer &#039;&#039;&#039;NameOut&#039;&#039;&#039;, an input [[#AudioOutParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IAudioOut]] and an output [[#AudioOutParameterInternal]].&lt;br /&gt;
&lt;br /&gt;
== ListAudioOutsAuto ==&lt;br /&gt;
Same as [[#ListAudioOuts]], but takes a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOutAuto ==&lt;br /&gt;
Same as [[#OpenAudioOut]], but takes a type-0x21 input buffer and a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== IAudioOut ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOut&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioOutState|GetAudioOutState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendAudioOutBuffer|AppendAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedAudioOutBuffers|GetReleasedAudioOutBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsAudioOutBuffer|ContainsAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#AppendAudioOutBufferAuto|AppendAudioOutBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetReleasedAudioOutBuffersAuto|GetReleasedAudioOutBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [4.0.0+] [[#GetAudioOutBufferCount|GetAudioOutBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [4.0.0+] [[#GetAudioOutPlayedSampleCount|GetAudioOutPlayedSampleCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] [[#FlushAudioOutBuffers|FlushAudioOutBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [6.0.0+] [[#SetAudioOutVolume|SetAudioOutVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [6.0.0+] [[#GetAudioOutVolume|GetAudioOutVolume]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutState ===&lt;br /&gt;
No input. Returns an output [[#AudioOutState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
Starts audio playback using data from appended buffers.&lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
Stops audio playback. This waits for audio playback to finish before returning.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#AudioOutBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;AudioBuffer&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AudioBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendAudioOutBuffer]] of audio buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsAudioOutBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;AudioBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBufferAuto ===&lt;br /&gt;
Same as [[#AppendAudioOutBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedAudioOutBuffer]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutBufferCount ===&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;AudioOutBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutPlayedSampleCount ===&lt;br /&gt;
No input. Returns an output u64 &#039;&#039;&#039;AudioOutPlayedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== FlushAudioOutBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioOutVolume ===&lt;br /&gt;
Takes an input float &#039;&#039;&#039;AudioOutVolume&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutVolume ===&lt;br /&gt;
No input. Returns an output float &#039;&#039;&#039;AudioOutVolume&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= audin:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioIns|ListAudioIns]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#OpenAudioIn|OpenAudioIn]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#ListAudioInsAuto|ListAudioInsAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#OpenAudioInAuto|OpenAudioInAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [3.0.0+] [[#ListAudioInsAutoFiltered|ListAudioInsAutoFiltered]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [5.0.0+] [[#OpenAudioInProtocolSpecified|OpenAudioInProtocolSpecified]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioIns ==&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of [[#AudioInInfo]]. Returns an u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioIn ==&lt;br /&gt;
Takes a PID-descriptor, a type-0x5 input buffer &#039;&#039;&#039;NameIn&#039;&#039;&#039;, a type-0x6 output buffer &#039;&#039;&#039;NameOut&#039;&#039;&#039;, an input [[#AudioInParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IAudioIn]] and an an output [[#AudioInParameterInternal]].&lt;br /&gt;
&lt;br /&gt;
== ListAudioInsAuto ==&lt;br /&gt;
Same as [[#ListAudioIns]], but takes a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioInAuto ==&lt;br /&gt;
Same as [[#OpenAudioIn]], but takes a type-0x21 input buffer and a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== ListAudioInsAutoFiltered ==&lt;br /&gt;
Same as [[#ListAudioInsAuto]].&lt;br /&gt;
&lt;br /&gt;
== OpenAudioInProtocolSpecified ==&lt;br /&gt;
Same as [[#OpenAudioIn]], but takes an additional input u64 &#039;&#039;&#039;Protocol&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== IAudioIn ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioIn&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioInState|GetAudioInState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start_2|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop_2|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendAudioInBuffer|AppendAudioInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent_2|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedAudioInBuffers|GetReleasedAudioInBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsAudioInBuffer|ContainsAudioInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#AppendUacInBuffer|AppendUacInBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#AppendAudioInBufferAuto|AppendAudioInBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] [[#GetReleasedAudioInBuffersAuto|GetReleasedAudioInBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#AppendUacInBufferAuto|AppendUacInBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] [[#GetAudioInBufferCount|GetAudioInBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [4.0.0+] [[#SetDeviceGain|SetDeviceGain]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [4.0.0+] [[#GetDeviceGain|GetDeviceGain]]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [6.0.0+] [[#FlushAudioInBuffers|FlushAudioInBuffers]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioInState ===&lt;br /&gt;
No input. Returns an output [[#AudioInState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioInBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#AudioInBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioInBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;AudioBuffer&#039;&#039;&#039;. Returns an output u32 &#039;&#039;&#039;Count&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AudioBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendAudioInBuffer]] of audio buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsAudioInBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;AudioBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendUacInBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an &#039;&#039;&#039;UacInBuffer&#039;&#039;&#039;, an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039; and an input Event handle. No output.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioInBufferAuto ===&lt;br /&gt;
Same as [[#AppendAudioInBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioInBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedAudioInBuffer]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== AppendUacInBufferAuto ===&lt;br /&gt;
Same as [[#AppendUacInBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioInBufferCount ===&lt;br /&gt;
No input. Returns an output u32 &#039;&#039;&#039;AudioInBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== SetDeviceGain ===&lt;br /&gt;
Takes an input float &#039;&#039;&#039;DeviceGain&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetDeviceGain ===&lt;br /&gt;
No input. Returns an output float &#039;&#039;&#039;DeviceGain&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== FlushAudioInBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= audrec:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenFinalOutputRecorder]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== OpenFinalOutputRecorder ==&lt;br /&gt;
Takes an input [[#FinalOutputRecorderParameter]], an input Process handle and an input [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]. Returns an [[#IFinalOutputRecorder]] and an output [[#FinalOutputRecorderParameterInternal]]. &lt;br /&gt;
&lt;br /&gt;
== IFinalOutputRecorder ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetFinalOutputRecorderState|GetFinalOutputRecorderState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Start_3|Start]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Stop_3|Stop]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendFinalOutputRecorderBuffer|AppendFinalOutputRecorderBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent_3|RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedFinalOutputRecorderBuffers|GetReleasedFinalOutputRecorderBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsFinalOutputRecorderBuffer|ContainsFinalOutputRecorderBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#GetFinalOutputRecorderBufferEndTime|GetFinalOutputRecorderBufferEndTime]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#AppendFinalOutputRecorderBufferAuto|AppendFinalOutputRecorderBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] [[#GetReleasedFinalOutputRecorderBuffersAuto|GetReleasedFinalOutputRecorderBuffersAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [6.0.0+] [[#FlushFinalOutputRecorderBuffers|FlushFinalOutputRecorderBuffers]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [9.0.0+] [[#AttachWorkBuffer|AttachWorkBuffer]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetFinalOutputRecorderState ===&lt;br /&gt;
No input. Returns an output [[#FinalOutputRecorderState]].&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
No input/output. &lt;br /&gt;
&lt;br /&gt;
=== Stop ===&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
=== AppendFinalOutputRecorderBuffer ===&lt;br /&gt;
Takes a type-0x5 input buffer containing an [[#FinalOutputRecorderBuffer]] and an input u64 &#039;&#039;&#039;BufferClientPtr&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
No input. Returns an output Event handle.&lt;br /&gt;
&lt;br /&gt;
The event is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedFinalOutputRecorderBuffers ===&lt;br /&gt;
Takes a type-0x6 output buffer &#039;&#039;&#039;FinalOutputRecorderBuffer&#039;&#039;&#039;. Returns two output u64s &#039;&#039;&#039;Count&#039;&#039;&#039; and &#039;&#039;&#039;Released&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FinalOutputRecorderBuffer&#039;&#039;&#039; will be filled with the identifiers from [[#AppendFinalOutputRecorderBuffer]] of recorder buffers that have been released.&lt;br /&gt;
&lt;br /&gt;
=== ContainsFinalOutputRecorderBuffer ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;FinalOutputRecorderBufferPointer&#039;&#039;&#039;. Returns an output bool &#039;&#039;&#039;Contains&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetFinalOutputRecorderBufferEndTime ===&lt;br /&gt;
Takes an input u64 &#039;&#039;&#039;FinalOutputRecorderBufferPointer&#039;&#039;&#039;. Returns an output u64 &#039;&#039;&#039;Released&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AppendFinalOutputRecorderBufferAuto ===&lt;br /&gt;
Same as [[#AppendFinalOutputRecorderBuffer]], but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedFinalOutputRecorderBuffersAuto ===&lt;br /&gt;
Same as [[#GetReleasedFinalOutputRecorderBuffers]], but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== FlushFinalOutputRecorderBuffers ===&lt;br /&gt;
No input. Returns an output bool &#039;&#039;&#039;Pending&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== AttachWorkBuffer ===&lt;br /&gt;
Takes an input [[#FinalOutputRecorderWorkBufferParameterInternal]]. No output.&lt;br /&gt;
&lt;br /&gt;
= auddev =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSnoopManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [6.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || EnableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 1 || DisableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 6 || GetDspUsage&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= audren:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || OpenAudioRenderer&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetWorkBufferSize&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceService]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] OpenAudioRendererForManualExecution&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetAudioDeviceServiceWithRevisionInfo&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceService ===&lt;br /&gt;
Takes an input u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]], returns an output [[#IAudioDevice]].&lt;br /&gt;
&lt;br /&gt;
== IAudioRenderer ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRenderer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetSampleRate]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetSampleCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetMixBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetState]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RequestUpdate&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Start&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Stop&lt;br /&gt;
|-&lt;br /&gt;
| 7 || QuerySystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#GetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] RequestUpdateAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] ExecuteAudioRendererRendering&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetSampleRate ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;SampleRate&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetSampleCount ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;SampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetMixBufferCount ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;MixBufferCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== GetState ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;State&#039;&#039;&#039; (0=Started, 1=Stopped).&lt;br /&gt;
&lt;br /&gt;
=== SetRenderingTimeLimit ===&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;RenderingTimeLimit&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetRenderingTimeLimit ===&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;RenderingTimeLimit&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== IAudioDevice ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDevice&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioDeviceName]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetActiveAudioDeviceName&lt;br /&gt;
|-&lt;br /&gt;
| 4 || QueryAudioDeviceSystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 5 || GetActiveChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [3.0.0+] [[#ListAudioDeviceNameAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#SetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] GetActiveAudioDeviceNameAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] QueryAudioDeviceInputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] QueryAudioDeviceOutputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [5.0.0+] GetAudioSystemMasterVolumeSetting&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceName ===&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceNameAuto ===&lt;br /&gt;
Takes a type-0x22 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
= audout:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [4.0.0+] SetProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audin:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audrec:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audren:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspend&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RegisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 5 || UnregisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [4.0.0+] GetProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [4.0.0+] SetProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspend/RequestResume no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audout:d, audin:d, audrec:d, audren:d =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioInManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioRendererManagerForDebugger&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
These were removed with [11.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#RequestSuspend]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#RequestResume]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== RequestSuspend ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== RequestResume ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
= audctl =&lt;br /&gt;
This is &amp;quot;nn::audioctrl::detail::IAudioController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || GetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetTargetVolumeMin&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetTargetVolumeMax&lt;br /&gt;
|-&lt;br /&gt;
| 4 || IsTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 5 || SetTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 6 || IsTargetConnected&lt;br /&gt;
|-&lt;br /&gt;
| 7 || SetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 8 || GetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 9 || GetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 10 || SetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 11 || SetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 12 || GetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 13 || GetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 14 || SetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 15 || SetOutputTarget&lt;br /&gt;
|-&lt;br /&gt;
| 16 || SetInputTargetForceEnabled&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [3.0.0+] SetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [3.0.0+] GetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 19 || [3.0.0+] AcquireAudioVolumeUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 20 || [3.0.0+] AcquireAudioOutputDeviceUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 21 || [3.0.0+] GetAudioOutputTargetForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 22 || [3.0.0+] NotifyHeadphoneVolumeWarningDisplayedEvent&lt;br /&gt;
|-&lt;br /&gt;
| 23 || [4.0.0+] SetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 24 || [4.0.0+] GetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 25 || [4.0.0+] GetAudioVolumeDataForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 26 || [4.0.0+] [[#UpdateHeadphoneSettings]]&lt;br /&gt;
|-&lt;br /&gt;
| 27 || [7.0.0+] SetVolumeMappingTableForDev&lt;br /&gt;
|-&lt;br /&gt;
| 28 || [10.0.0+] GetAudioOutputChannelCountForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 29 || [10.0.0+] BindAudioOutputChannelCountUpdateEventForPlayReport&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== UpdateHeadphoneSettings ===&lt;br /&gt;
Takes one input bool. No output.&lt;br /&gt;
NS calls this with the result of IParentalControlService::IsRestrictionEnabled[https://switchbrew.org/wiki/Parental_Control_services#IParentalControlService].&lt;br /&gt;
&lt;br /&gt;
= codecctl =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::ICodecController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service no longer exists in [3.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Finalize]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Sleep]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Wake]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetVolumeMax]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetVolumeMin]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#GetActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#BindHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [[#IsHeadphoneMicJackInserted]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [[#ClearHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [[#IsRequested]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Finalize ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Sleep ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== Wake ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== SetVolume ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Volume&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetVolumeMax ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;VolumeMax&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetVolumeMin ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;VolumeMin&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetActiveTarget ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;. No output.&lt;br /&gt;
&lt;br /&gt;
== GetActiveTarget ==&lt;br /&gt;
No input. Returns an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== BindHeadphoneMicJackInterrupt ==&lt;br /&gt;
No input. Returns an event handle.&lt;br /&gt;
&lt;br /&gt;
== IsHeadphoneMicJackInserted ==&lt;br /&gt;
No input. Returns a bool.&lt;br /&gt;
&lt;br /&gt;
== ClearHeadphoneMicJackInterrupt ==&lt;br /&gt;
No input/output.&lt;br /&gt;
&lt;br /&gt;
== IsRequested ==&lt;br /&gt;
No input. Returns a bool.&lt;br /&gt;
&lt;br /&gt;
= hwopus =&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenHardwareOpusDecoder]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetWorkBufferSize]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#OpenHardwareOpusDecoderForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#GetWorkBufferSizeForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [12.0.0+] OpenHardwareOpusDecoderEx&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [12.0.0+] GetWorkBufferSizeEx&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [12.0.0+] OpenHardwareOpusDecoderForMultiStreamEx&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [12.0.0+] GetWorkBufferSizeForMultiStreamEx&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Official sw can use either software libopus, or hwopus (libopus running on the ADSP) via &amp;quot;nn::codec::HardwareOpus*&amp;quot; (separate from the former).&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoder ==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSize ==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParameters]] struct. The user-process initializes this struct the same way as [[#GetWorkBufferSizeForMultiStream]], except that an u8-array specified by the user is copied to +0x10 with size &#039;&#039;&#039;ChannelCount&#039;&#039;&#039;, when &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; above 0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParameters]] struct.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderEx ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusParametersEx]] struct. When &#039;&#039;UseLargeFrameSize&#039;&#039; is 1 a larger output buffer that can store 120ms opus frames is used vs the default of 40ms.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeEx ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusParametersEx]] struct.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderForMultiStreamEx ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParametersEx]] struct. When &#039;&#039;UseLargeFrameSize&#039;&#039; is 1 a larger output buffer that can store 120ms opus frames is used vs the default of 40ms.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeForMultiStreamEx ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#OpusMultiStreamParametersEx]] struct.&lt;br /&gt;
&lt;br /&gt;
== IHardwareOpusDecoder ==&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [4.0.0+] [[#DecodeInterleavedOld]] ([1.0.0-3.0.2] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetContext]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [4.0.0+] [[#DecodeInterleavedForMultiStreamOld]] ([3.0.0-3.0.2] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#SetContextForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [6.0.0+] [[#DecodeInterleavedWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [6.0.0+] [[#DecodeInterleavedForMultiStreamWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedForMultiStreamWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [6.0.0+] DecodeInterleavedWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [6.0.0+] DecodeInterleavedForMultiStreamWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [7.0.0+] [[#DecodeInterleaved]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [7.0.0+] [[#DecodeInterleavedForMultiStream]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContext ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder. The input buffer is unused.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContextForMultiStream ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleaved ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStream ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
= auddebug =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDebugManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service doesn&#039;t exist in retail units.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || ProfilerStart&lt;br /&gt;
|-&lt;br /&gt;
| 1 || ProfilerStop&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CpuProfilerStart&lt;br /&gt;
|-&lt;br /&gt;
| 3 || CpuProfilerStop&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= aud:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSystemManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [11.0.0+]. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RegisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 1 || UnregisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 2 || RequestSuspendAudio&lt;br /&gt;
|-&lt;br /&gt;
| 3 || RequestResumeAudio&lt;br /&gt;
|-&lt;br /&gt;
| 4 || GetAudioOutputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 5 || SetAudioOutputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 6 || GetAudioInputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 7 || SetAudioInputProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 8 || GetAudioOutputProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SetAudioOutputProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= aud:d =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSystemManagerForDebugger&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [11.0.0+]. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendAudioForDebug&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeAudioForDebug&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= SampleFormat =&lt;br /&gt;
This is &amp;quot;nn::audio::SampleFormat&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Invalid&lt;br /&gt;
|-&lt;br /&gt;
| 1 || PcmInt8&lt;br /&gt;
|-&lt;br /&gt;
| 2 || PcmInt16&lt;br /&gt;
|-&lt;br /&gt;
| 3 || PcmInt24&lt;br /&gt;
|-&lt;br /&gt;
| 4 || PcmInt32&lt;br /&gt;
|-&lt;br /&gt;
| 5 || PcmFloat&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Adpcm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutState =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInState =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderState =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderState&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Started&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Stopped&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutInfo =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutInfo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x100&lt;br /&gt;
| Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInInfo =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInInfo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x100&lt;br /&gt;
| Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x2&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| 0x2&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x2&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| 0x2&lt;br /&gt;
| Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::AudioOutParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::AudioInParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioOutBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioOutBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= AudioInBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::AudioInBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderBuffer =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderBuffer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| Released&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x8&lt;br /&gt;
| Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| 0x8&lt;br /&gt;
| Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x28&lt;br /&gt;
| 0x8&lt;br /&gt;
| Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderParameter =&lt;br /&gt;
This is &amp;quot;nn::audio::FinalOutputRecorderParameter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::FinalOutputRecorderParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleFormat&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| State&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= FinalOutputRecorderWorkBufferParameterInternal =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::FinalOutputRecorderWorkBufferParameterInternal&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x8&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusParametersEx =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| UseLargeFrameSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Padding&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusMultiStreamParameters =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of streams&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of stereo streams&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x100&lt;br /&gt;
| u8 array of channel mappings&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= OpusMultiStreamParametersEx =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| SampleRate&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| ChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of streams&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of stereo streams&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x4&lt;br /&gt;
| UseLargeFrameSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| 0x4&lt;br /&gt;
| Padding&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| 0x100&lt;br /&gt;
| u8 array of channel mappings&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=10952</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=10952"/>
		<updated>2021-05-21T20:19:51Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Detail remap_op flags&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Switch uses a customized NVIDIA driver.&lt;br /&gt;
&lt;br /&gt;
= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Main NVIDIA driver service.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0xA82B ([1.0.0-2.3.0] 0x2B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#Permissions|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer for the device-path. Returns the output 32bit &#039;&#039;&#039;fd&#039;&#039;&#039; and the u32 &#039;&#039;&#039;error_code&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes a 32bit &#039;&#039;&#039;fd&#039;&#039;&#039;, an u32 &#039;&#039;&#039;ioctl_cmd&#039;&#039;&#039;, a type-0x21 input buffer, and a type-0x22 output buffer. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes a 32bit &#039;&#039;&#039;fd&#039;&#039;&#039;. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes two copy-handles (&#039;&#039;&#039;current_process&#039;&#039;&#039; and &#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and an input u32 (&#039;&#039;&#039;transfer_memory_size&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the transfer-memory with perm = 0 and size 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s (&#039;&#039;&#039;fd&#039;&#039;&#039; and &#039;&#039;&#039;event_id&#039;&#039;&#039;), with the second word immediately after the first one. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;) and a copy-handle (&#039;&#039;&#039;event_handle&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_slot, bit27-16 contain syncpt_number. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_slot, bit31-4 contains syncpt_number.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes a copy-handle (&#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and two input u32s (&#039;&#039;&#039;fd&#039;&#039;&#039; and &#039;&#039;&#039;nvmap_handle&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns 0x10-bytes and an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 which must [[IPC_Marshalling|match]] the user-process PID ([[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an u64 which must [[IPC_Marshalling|match]] the user-process PID ([[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input or output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes a copy-handle (&#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and an input u32 (&#039;&#039;&#039;transfer_memory_size&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes a type-0x21 buffer, a type-0x22 buffer, a type-0x21 buffer, and two input u32s. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes a type-0x21 buffer, a type-0x22 buffer, another type-0x22 buffer, and two input u32s. Returns an output u32 (error_code). &lt;br /&gt;
Cmdhdr_word1 is 0x100B instead of 0xC0B.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
Official user-processes starting with 3.0.0 now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= Permissions =&lt;br /&gt;
Each nvdrv service is initialized with a bitfield that controls access to nodes and other operations.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| NvDrvPermission_Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| NvDrvPermission_GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| NvDrvPermission_GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| NvDrvPermission_VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| NvDrvPermission_VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| NvDrvPermission_VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| NvDrvPermission_TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| NvDrvPermission_JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| NvDrvPermission_Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| NvDrvPermission_ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NvDrvPermission_NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nodes [[#/dev/nvmap|/dev/nvmap]], [[#/dev/nvhost-ctrl|/dev/nvhost-ctrl]] and [[#/dev/nverpt-ctrl|/dev/nverpt-ctrl]] are always accessible.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char domain_str[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char param_str[0x41];&lt;br /&gt;
    __out char config_str[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of an event. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT ===&lt;br /&gt;
Waits on an event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;syncpt_id&#039;&#039;&#039; &amp;lt;&amp;lt; 0x10) | 0x10000000).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC ===&lt;br /&gt;
Waits on an event (async version). If waiting fails, returns error code 0x0B (BadValue).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT ===&lt;br /&gt;
Registers an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT ===&lt;br /&gt;
Unregisters an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS ===&lt;br /&gt;
Frees events. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 events;             // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __in u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __inout u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=NOT_FREED_YET&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // bit2: cacheable&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== Channels ==&lt;br /&gt;
Channels are a concept for  NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Channel Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   struct fence fences[];                 // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Open&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetPid&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenDebugFS]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#CloseDebugFS]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetDebugFSValue&lt;br /&gt;
|-&lt;br /&gt;
| 4 || SetDebugFSValue&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== OpenDebugFS ==&lt;br /&gt;
Takes a process handle. Returns a u32 &#039;&#039;&#039;fd&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== CloseDebugFS ==&lt;br /&gt;
Takes a u32 &#039;&#039;&#039;fd&#039;&#039;&#039; and closes it.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes a u32 &#039;&#039;&#039;fd&#039;&#039;&#039; and reads debug contents into a type-6 buffer.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Initialize&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetEventHandle&lt;br /&gt;
|-&lt;br /&gt;
| 2 || ControlNotification&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetNotificationPerm&lt;br /&gt;
|-&lt;br /&gt;
| 4 || SetCoreDumpPerm&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] GetAruid&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Reset&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Initialize&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetAruid&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] ReadNextBlock&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Errors =&lt;br /&gt;
Most nvidia driver commands return an error code apart from the normal return code.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || NvError_Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NvError_NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NvError_NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NvError_NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || NvError_BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || NvError_Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || NvError_InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || NvError_ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || NvError_InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || NvError_InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || NvError_InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || NvError_BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || NvError_AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || NvError_Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || NvError_ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || NvError_CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || NvError_OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || NvError_InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || NvError_InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || NvError_BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || NvError_InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || NvError_SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || NvError_DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || NvError_DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || NvError_DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || NvError_DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || NvError_DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || NvError_DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || NvError_DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || NvError_DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || NvError_DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || NvError_DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || NvError_DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || NvError_DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || NvError_DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || NvError_DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || NvError_FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || NvError_FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || NvError_EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || NvError_FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || NvError_DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || NvError_EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || NvError_ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || NvError_InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || NvError_LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || NvError_SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || NvError_MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || NvError_IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || NvError_AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || NvError_DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || NvError_KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || NvError_FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || NvError_PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || NvError_ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Panic =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
== Gpfifo Panic ==&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=NV_services&amp;diff=10951</id>
		<title>NV services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=NV_services&amp;diff=10951"/>
		<updated>2021-05-21T17:24:58Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Update NVGPU_AS_IOCTL_REMAP with clearer info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Switch uses a customized NVIDIA driver.&lt;br /&gt;
&lt;br /&gt;
= nvdrv, nvdrv:a, nvdrv:s, nvdrv:t =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Main NVIDIA driver service.&lt;br /&gt;
&lt;br /&gt;
Each service is used by:&lt;br /&gt;
* &amp;quot;nvdrv&amp;quot;: Applications.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0xA82B ([1.0.0-2.3.0] 0x2B).&lt;br /&gt;
* &amp;quot;nvdrv:a&amp;quot;: Applets.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0x10A9 ([1.0.0-2.3.0] 0xA9).&lt;br /&gt;
* &amp;quot;nvdrv:s&amp;quot;: Sysmodules.&lt;br /&gt;
** [[#Permissions|Permission]] mask is [3.0.0+] 0x439E ([1.0.0-2.3.0] 0x39E).&lt;br /&gt;
* &amp;quot;nvdrv:t&amp;quot;: Factory.&lt;br /&gt;
** [[#Permissions|Permission]] mask is 0xFFFFFFFF.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Open]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#Ioctl]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#Close]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#QueryEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#MapSharedMem]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetAruidWithoutCheck]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetAruid]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#DumpStatus]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] [[#InitializeDevtools]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] [[#Ioctl2]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] [[#Ioctl3]]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [3.0.0+] [[#SetGraphicsFirmwareMemoryMarginEnabled]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Open ==&lt;br /&gt;
Takes a type-0x5 input buffer for the device-path. Returns the output 32bit &#039;&#039;&#039;fd&#039;&#039;&#039; and the u32 &#039;&#039;&#039;error_code&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Ioctl ==&lt;br /&gt;
Takes a 32bit &#039;&#039;&#039;fd&#039;&#039;&#039;, an u32 &#039;&#039;&#039;ioctl_cmd&#039;&#039;&#039;, a type-0x21 input buffer, and a type-0x22 output buffer. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
The addr/size for send/recv buffers are only set when the associated direction bit is set in the ioctl cmd (addr/size = 0 otherwise).&lt;br /&gt;
&lt;br /&gt;
== Close ==&lt;br /&gt;
Takes a 32bit &#039;&#039;&#039;fd&#039;&#039;&#039;. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes two copy-handles (&#039;&#039;&#039;current_process&#039;&#039;&#039; and &#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and an input u32 (&#039;&#039;&#039;transfer_memory_size&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
Webkit applet creates the transfer-memory with perm = 0 and size 0x300000.&lt;br /&gt;
&lt;br /&gt;
== QueryEvent ==&lt;br /&gt;
Takes two input u32s (&#039;&#039;&#039;fd&#039;&#039;&#039; and &#039;&#039;&#039;event_id&#039;&#039;&#039;), with the second word immediately after the first one. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;) and a copy-handle (&#039;&#039;&#039;event_handle&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
QueryEvent is only supported on (and implemented differently on):&lt;br /&gt;
* /dev/nvhost-gpu&lt;br /&gt;
** 1: SmException_BptIntReport&lt;br /&gt;
** 2: SmException_BptPauseReport&lt;br /&gt;
** 3: ErrorNotifierEvent&lt;br /&gt;
* /dev/nvhost-ctrl: Used to get events for SyncPts.&lt;br /&gt;
** If bit31-28 is 1, then lower 16-bits contain event_slot, bit27-16 contain syncpt_number. &lt;br /&gt;
** If bit31-28 is 0, then lower 4-bits contain event_slot, bit31-4 contains syncpt_number.&lt;br /&gt;
* /dev/nvhost-ctrl-gpu&lt;br /&gt;
** 1: Returns error_event_handle.&lt;br /&gt;
** 2: Returns unknown event.&lt;br /&gt;
* /dev/nvhost-dbg-gpu&lt;br /&gt;
** Ignores event_id.&lt;br /&gt;
&lt;br /&gt;
== MapSharedMem ==&lt;br /&gt;
Takes a copy-handle (&#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and two input u32s (&#039;&#039;&#039;fd&#039;&#039;&#039; and &#039;&#039;&#039;nvmap_handle&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== GetStatus ==&lt;br /&gt;
Takes no input. Returns 0x10-bytes and an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== SetAruidWithoutCheck ==&lt;br /&gt;
Takes an input u64 which must [[IPC_Marshalling|match]] the user-process PID ([[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== SetAruid ==&lt;br /&gt;
Takes a PID-descriptor and an u64 which must [[IPC_Marshalling|match]] the user-process PID ([[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]]). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== DumpStatus ==&lt;br /&gt;
No input or output.&lt;br /&gt;
&lt;br /&gt;
== InitializeDevtools ==&lt;br /&gt;
Takes a copy-handle (&#039;&#039;&#039;transfer_memory&#039;&#039;&#039;) and an input u32 (&#039;&#039;&#039;transfer_memory_size&#039;&#039;&#039;). Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Ioctl2 ==&lt;br /&gt;
Takes a type-0x21 buffer, a type-0x22 buffer, a type-0x21 buffer, and two input u32s. Returns an output u32 (&#039;&#039;&#039;error_code&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Ioctl3 ==&lt;br /&gt;
Takes a type-0x21 buffer, a type-0x22 buffer, another type-0x22 buffer, and two input u32s. Returns an output u32 (error_code). &lt;br /&gt;
Cmdhdr_word1 is 0x100B instead of 0xC0B.&lt;br /&gt;
&lt;br /&gt;
== SetGraphicsFirmwareMemoryMarginEnabled ==&lt;br /&gt;
Takes an input u64. No output.&lt;br /&gt;
&lt;br /&gt;
This sets a boolean value based on the input u64 and the value of the &amp;quot;nv!nv_graphics_firmware_memory_margin&amp;quot; system configuration, but only for &amp;quot;nvdrv&amp;quot; (the other services default to false).&lt;br /&gt;
&lt;br /&gt;
Official user-processes starting with 3.0.0 now use this at the end of nvdrv service init with value 0x1.&lt;br /&gt;
&lt;br /&gt;
= Permissions =&lt;br /&gt;
Each nvdrv service is initialized with a bitfield that controls access to nodes and other operations.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!  Bits&lt;br /&gt;
!  Name&lt;br /&gt;
!  Description&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| NvDrvPermission_Gpu&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| NvDrvPermission_GpuDebug&lt;br /&gt;
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| NvDrvPermission_GpuSchedule&lt;br /&gt;
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| NvDrvPermission_VIC&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-vic]].&lt;br /&gt;
|-&lt;br /&gt;
| 4&lt;br /&gt;
| NvDrvPermission_VideoEncoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-msenc]].&lt;br /&gt;
|-&lt;br /&gt;
| 5&lt;br /&gt;
| NvDrvPermission_VideoDecoder&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvdec]].&lt;br /&gt;
|-&lt;br /&gt;
| 6&lt;br /&gt;
| NvDrvPermission_TSEC &lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-tsec]].&lt;br /&gt;
|-&lt;br /&gt;
| 7&lt;br /&gt;
| NvDrvPermission_JPEG&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-nvjpg]].&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| NvDrvPermission_Display&lt;br /&gt;
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].&lt;br /&gt;
|-&lt;br /&gt;
| 9&lt;br /&gt;
| NvDrvPermission_ImportMemory&lt;br /&gt;
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| NvDrvPermission_NoCheckedAruid&lt;br /&gt;
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].&lt;br /&gt;
|-&lt;br /&gt;
| 11&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]]. &lt;br /&gt;
|-&lt;br /&gt;
| 12&lt;br /&gt;
|&lt;br /&gt;
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 13&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 14&lt;br /&gt;
|&lt;br /&gt;
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].&lt;br /&gt;
|-&lt;br /&gt;
| 15&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nodes [[#/dev/nvmap|/dev/nvmap]], [[#/dev/nvhost-ctrl|/dev/nvhost-ctrl]] and [[#/dev/nverpt-ctrl|/dev/nverpt-ctrl]] are always accessible.&lt;br /&gt;
&lt;br /&gt;
= Ioctls =&lt;br /&gt;
The ioctl number is generated with the following primitive (see Linux kernel):&lt;br /&gt;
&lt;br /&gt;
 #define _IOC(inout, group, num, len) \&lt;br /&gt;
    (inout | ((len &amp;amp; IOCPARM_MASK) &amp;lt;&amp;lt; 16) | ((group) &amp;lt;&amp;lt; 8) | (num))&lt;br /&gt;
&lt;br /&gt;
The following table contains known ioctls.&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080014 || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040015 || In || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_INCR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0016 || Inout || 12 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080017 || In || 8 || [[#NVHOST_IOCTL_CTRL_MODULE_MUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180018 || Inout || 24 || [[#NVHOST_IOCTL_CTRL_MODULE_REGRDWR]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100019 || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAITEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008001A || Inout || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC183001B || Inout || 387 || [[#NVHOST_IOCTL_CTRL_GET_CONFIG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_INCR ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAIT ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 thresh;&lt;br /&gt;
    __in s32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_MUTEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 lock;        // (0==unlock; 1==lock)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_MODULE_REGRDWR ===&lt;br /&gt;
Identical to Linux driver. Uses 32-bit version and doesn&#039;t work.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 id;&lt;br /&gt;
    __in u32 num_offsets;&lt;br /&gt;
    __in u32 block_size;&lt;br /&gt;
    __in u32 offsets;&lt;br /&gt;
    __in u32 values;&lt;br /&gt;
    __in u32 write;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __in  u32 thresh;&lt;br /&gt;
    __in  s32 timeout;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_CONFIG ===&lt;br /&gt;
Returns configured settings. Not available in production mode.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in char domain_str[0x41];       // &amp;quot;nv&amp;quot;&lt;br /&gt;
    __in char param_str[0x41];&lt;br /&gt;
    __out char config_str[0x101];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT ===&lt;br /&gt;
Clears the wait signal of an event. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT ===&lt;br /&gt;
Waits on an event. If waiting fails, returns error code 0x05 (Timeout) and sets &#039;&#039;&#039;value&#039;&#039;&#039; to ((&#039;&#039;&#039;syncpt_id&#039;&#039;&#039; &amp;lt;&amp;lt; 0x10) | 0x10000000).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    s32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_EVENT_WAIT_ASYNC ===&lt;br /&gt;
Waits on an event (async version). If waiting fails, returns error code 0x0B (BadValue).&lt;br /&gt;
&lt;br /&gt;
Depending on &#039;&#039;&#039;threshold&#039;&#039;&#039;, an &#039;&#039;&#039;event_slot&#039;&#039;&#039; may be returned for using with other event ioctls.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 syncpt_id;&lt;br /&gt;
    __in    u32 threshold;&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __inout u32 value;           // in=event_slot (ignored); out=syncpt_value or event_slot&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_REGISTER_EVENT ===&lt;br /&gt;
Registers an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_UNREGISTER_EVENT ===&lt;br /&gt;
Unregisters an event. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 event_slot;         // ranges from 0x00 to 0x3F&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENTS ===&lt;br /&gt;
Frees events. Exclusive to the Switch. &lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 events;             // 64-bit bitfield where each bit represents one event&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CTRL_GET_MAX_EVENT_FIFO_CHANNEL ===&lt;br /&gt;
If event FIFO is enabled, returns the maximum channel number. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 max_channel;       // 0x00 (FIFO disabled) or 0x60 (FIFO enabled)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvmap ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080101 || Inout || 8 || [[#NVMAP_IOC_CREATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000102 || - || 0 || [[#NVMAP_IOC_CLAIM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080103 || Inout || 8 || [[#NVMAP_IOC_FROM_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0200104 || Inout || 32 || [[#NVMAP_IOC_ALLOC]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0180105 || Inout || 24 || [[#NVMAP_IOC_FREE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280106 || Inout || 40 || [[#NVMAP_IOC_MMAP]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280107 || Inout || 40 || [[#NVMAP_IOC_WRITE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0280108 || Inout || 40 || [[#NVMAP_IOC_READ]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC00C0109 || Inout || 12 || [[#NVMAP_IOC_PARAM]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010A || Inout || 16 || [[#NVMAP_IOC_PIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010010B || Inout || 16 || [[#NVMAP_IOC_UNPIN_MULT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010C || Inout || 8 || [[#NVMAP_IOC_CACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010D || Inout || 4 || [[#NVMAP_IOC_GET_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008010E || Inout || 8 || [[#NVMAP_IOC_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004010F || Inout || 4 || [[#NVMAP_IOC_FROM_IVC_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040110 || In || 4 || [[#NVMAP_IOC_SET_ALLOCATION_TAG_LABEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000111 || - || 0 || [[#NVMAP_IOC_RESERVE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100112 || In || 16 || [[#NVMAP_IOC_EXPORT_FOR_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100113 || In || 16 || [[#NVMAP_IOC_IS_OWNED_BY_ARUID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100114 || In || 16 || [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CREATE ===&lt;br /&gt;
Creates an nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 size;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CLAIM ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_ID ===&lt;br /&gt;
Get handle to an existing nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 id;&lt;br /&gt;
    __out u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_ALLOC ===&lt;br /&gt;
Allocate memory for the nvmap object. Nintendo extended this one with 16 bytes, and changed it from in to inout.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 handle;&lt;br /&gt;
    __in u32 heapmask;&lt;br /&gt;
    __in u32 flags;    // (0=read-only, 1=read-write)&lt;br /&gt;
    __in u32 align;&lt;br /&gt;
    __in u8  kind;&lt;br /&gt;
    u8       pad[7];&lt;br /&gt;
    __inout u64 addr;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FREE ===&lt;br /&gt;
This one is completely custom. Partly because the Linux driver passed the handle as the ioctl &amp;quot;arg-ptr&amp;quot;, and HIPC can&#039;t handle that voodoo.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u32       pad;&lt;br /&gt;
    __out u64 address;&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
    __out u32 flags;    // 1=NOT_FREED_YET&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_MMAP ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_WRITE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_READ ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PARAM ===&lt;br /&gt;
Returns info about a nvmap object. Identical to Linux driver, but extended with further params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    __in  u32 param;  // 1=SIZE, 2=ALIGNMENT, 3=BASE (returns error), 4=HEAP (always 0x40000000), 5=KIND, 6=COMPR (unused)&lt;br /&gt;
    __out u32 result;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_PIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_UNPIN_MULT ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_CACHE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_GET_ID ===&lt;br /&gt;
Returns an id for a nvmap object. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 id; //~0 indicates error&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_FROM_IVC_ID ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_SET_ALLOCATION_TAG_LABEL ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_RESERVE ===&lt;br /&gt;
Returns [[#Errors|NotSupported]].&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_EXPORT_FOR_ARUID ===&lt;br /&gt;
Binds a nvmap object to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_IS_OWNED_BY_ARUID ===&lt;br /&gt;
Checks if a nvmap object is bound to an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID ===&lt;br /&gt;
Unbinds a nvmap object from an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u64 aruid;&lt;br /&gt;
    __in  u32 handle;&lt;br /&gt;
    u8        pad[4];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080216&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0xC0040216) || Inout || 8&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS&amp;lt;/br&amp;gt;([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| ([1.0.0-3.0.0] 0xC0040217) || ([1.0.0-3.0.0] Inout) || ([1.0.0-3.0.0] 4) || ([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_OUT_EVENT)&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100218 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD0_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0100219 || Inout || 16 || NVDISP_CTRL_GET_VBLANK_HEAD1_EVENT&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0040220 || Inout || 4 || NVDISP_CTRL_SUSPEND&lt;br /&gt;
|-&lt;br /&gt;
| 0x80010224 || Out || 1 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040201 || In || 4 || NVDISP_GET_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040202 || In || 4 || NVDISP_PUT_WINDOW&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4C80203 || In || 1224 || NVDISP_FLIP&lt;br /&gt;
|-&lt;br /&gt;
| 0x80380204 || Out || 56 || NVDISP_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40380205 || Out || 56 || NVDISP_SET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x430C0206 || In || 780 || NVDISP_SET_LUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010207 || In || 1 || NVDISP_CONFIG_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040208 || Out || 4 || NVDISP_GET_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x80040209 || Out || 4 || NVDISP_GET_HEAD_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038020A || Inout || 56 || NVDISP_VALIDATE_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x4018020B || In || 24 || NVDISP_SET_CSC&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020C || Inout || 4 || NVDISP_GET_VBLANK_SYNCPT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8040020D || Out || 64 || NVDISP_GET_UNDERFLOWS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC99A020E || Inout || 2458 || NVDISP_SET_CMU&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004020F || Inout || 4 || NVDISP_DPMS&lt;br /&gt;
|-&lt;br /&gt;
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME&lt;br /&gt;
|-&lt;br /&gt;
| 0xEBFC0215 || Inout || 11260 || NVDISP_GET_MODE_DB&lt;br /&gt;
|-&lt;br /&gt;
| 0xC003021A || Inout || 3 || NVDISP_PANEL_GET_VENDOR_ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C021B || Out || 60 || NVDISP_GET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0x403C021C || In || 60 || NVDISP_SET_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC03C021D || Inout || 60 || NVDISP_VALIDATE_MODE2&lt;br /&gt;
|-&lt;br /&gt;
| 0xEF20021E || Inout || 12064 || NVDISP_GET_MODE_DB2&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004021F || Inout || 4 || NVDISP_GET_WINMASK&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080221 || Out || 8 || [10.0.0+] [[#NVDISP_GET_BACKLIGHT_RANGE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040222 || In || 4 || [10.0.0+] [[#NVDISP_SET_BACKLIGHT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040223 || In || 4 || [11.0.0+] &lt;br /&gt;
|-&lt;br /&gt;
| 0x401C0225 || In || 28 || [11.0.0+] [[#NVDISP_SEND_PANEL_MSG]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC01C0226 || Inout || 28 || [11.0.0+] [[#NVDISP_GET_PANEL_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_BACKLIGHT_RANGE ===&lt;br /&gt;
Returns the minimum and maximum values for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 min;&lt;br /&gt;
    __out u32 max;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SET_BACKLIGHT ===&lt;br /&gt;
Sets the value for the intensity of the display&#039;s backlight.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 val;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_SEND_PANEL_MSG ===&lt;br /&gt;
Sends raw data to the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (1=unk, 2=I2CWR, 4=MOTWR, 7=AUXWR)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __in u32 msg[4];       // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVDISP_GET_PANEL_DATA ===&lt;br /&gt;
Receives raw data from the display panel over DPAUX.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;          // DPAUX AUXCTL command (3=I2CRD, 5=MOTRD, 6=AUXRD)&lt;br /&gt;
    __in u32 addr;         // DPAUX AUXADDR&lt;br /&gt;
    __in u32 size;         // message size&lt;br /&gt;
    __out u32 msg[4];      // raw AUXDATA message&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvcec-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010301 || In || 1 || NVCEC_CTRL_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0302 || Out || 76 || NVCEC_CTRL_GET_PADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040303 || In || 4 || NVCEC_CTRL_SET_LADDR&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0304 || Inout || 76 || NVCEC_CTRL_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC04C0305 || Inout || 76 || NVCEC_CTRL_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0306 || Out || 76 || NVCEC_CTRL_GET_CONNECTION_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0x804C0307 || Out || 76 || NVCEC_CTRL_GET_WRITE_STATUS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhdcp_up-ctrl ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880401 || Inout || 1160 || NVHDCP_READ_STATUS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC4880402 || Inout || 1160 || NVHDCP_READ_M&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010403 || In || 1 || NVHDCP_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080404 || Inout || 8 || NVHDCP_CTRL_STATE_TRANSIT_EVENT_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0010405 || Inout || 1 || NVHDCP_CTRL_STATE_CB&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvdcutil-disp0, /dev/nvdcutil-disp1 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE&lt;br /&gt;
|-&lt;br /&gt;
| 0x42040503 || In || 1056 || NVDCUTIL_VIRTUAL_EDID_SET_DATA&lt;br /&gt;
|-&lt;br /&gt;
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010505 || In || 1 || NVDCUTIL_BEGIN_TELEMETRY_TEST&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C0506 || In || 12 || NVDCUTIL_DSI_PACKET_TEST_SHORT_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40F80507 || In || 248 || NVDCUTIL_DSI_PACKET_TEST_LONG_WRITE&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0F40508 || Inout || 244 || NVDCUTIL_DSI_PACKET_TEST_READ&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010509 || In || 1 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_EN&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020050A || Inout || 32 || [10.0.0+] NVDCUTIL_DP_ELECTRIC_TEST_SETTINGS&lt;br /&gt;
|-&lt;br /&gt;
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== /dev/nvsched-ctrl ==&lt;br /&gt;
This is a customized scheduler device.&lt;br /&gt;
&lt;br /&gt;
The way this device is exposed and configured is exclusive to the Switch, since other sources don&#039;t have an actual interface for the scheduler.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000601 || - || 0 || [[#NVSCHED_CTRL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000602 || - || 0 || [[#NVSCHED_CTRL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180603 || In || 24 || [[#NVSCHED_CTRL_ADD_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180604 || In || 24 || [[#NVSCHED_CTRL_UPDATE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080605 || In || 8 || [[#NVSCHED_CTRL_REMOVE_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080606 || Out || 8 || [[#NVSCHED_CTRL_GET_ID]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80080607 || Out || 8 || [[#NVSCHED_CTRL_ADD_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40180608 || In || 24 || [[#NVSCHED_CTRL_UPDATE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100609 || In || 16 || [[#NVSCHED_CTRL_LINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010060A || In || 16 || [[#NVSCHED_CTRL_UNLINK_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060B || In || 8 || [[#NVSCHED_CTRL_REMOVE_RUNLIST]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8001060C || Out || 1 || [[#NVSCHED_CTRL_HAS_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8020060D&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 0x8010060D) || Out || 32&amp;lt;/br&amp;gt;([1.0.0-3.0.0] 16) || [[#NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x400C060E || In || 12 || [[#NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008060F || In || 8 || [[#NVSCHED_CTRL_DETACH_APPLICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100610 || In || 16 || NVSCHED_CTRL_SET_APPLICATION_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40100611 || In || 16 || NVSCHED_CTRL_SET_RUNLIST_MAX_DEBT&lt;br /&gt;
|-&lt;br /&gt;
| 0x40010612 || In || 1 || NVSCHED_CTRL_OVERRUN_EVENTS_ENABLE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ENABLE ===&lt;br /&gt;
Enables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DISABLE ===&lt;br /&gt;
Disables the scheduler.&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_APPLICATION ===&lt;br /&gt;
Adds a new application to the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_APPLICATION ===&lt;br /&gt;
Updates the application parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_APPLICATION ===&lt;br /&gt;
Removes the application from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_ID ===&lt;br /&gt;
Returns the ID of the last scheduled object.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_ADD_RUNLIST ===&lt;br /&gt;
Creates a new runlist and returns it&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UPDATE_RUNLIST ===&lt;br /&gt;
Updates the runlist parameters in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 priority;&lt;br /&gt;
    __in u64 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_LINK_RUNLIST ===&lt;br /&gt;
Links a runlist to a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_UNLINK_RUNLIST ===&lt;br /&gt;
Unlinks a runlist from a given application in the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_REMOVE_RUNLIST ===&lt;br /&gt;
Removes the runlist from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 runlist_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_HAS_OVERRUN_EVENT ===&lt;br /&gt;
Returns a boolean to tell if the scheduler has an overrun event or not.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 has_overrun;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_GET_NEXT_OVERRUN_EVENT ===&lt;br /&gt;
Returns the overrun event&#039;s data from the scheduler.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 runlist_id;&lt;br /&gt;
    __out u64 debt;&lt;br /&gt;
    __out u64 unk0;           // 3.0.0+ only&lt;br /&gt;
    __out u64 unk1;           // 3.0.0+ only&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_PUT_CONDUCTOR_FLIP_FENCE ===&lt;br /&gt;
Installs a fence swap event?&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 fence_id;&lt;br /&gt;
    __in u32 fence_thresh;&lt;br /&gt;
    __in u32 swap_interval;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVSCHED_CTRL_DETACH_APPLICATION ===&lt;br /&gt;
Places the given application in detached state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 application_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nverpt-ctrl ==&lt;br /&gt;
Added in firmware version 3.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1280701 || Inout || 296 || [[#NVERPT_TELEMETRY_SUBMIT_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xCF580702 || Inout || 3928 || [[#NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DATA ===&lt;br /&gt;
Sends test data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 TestU64;&lt;br /&gt;
    __in u32 TestU32;&lt;br /&gt;
    __in u8  padding0[4];&lt;br /&gt;
    __in s64 TestI64;&lt;br /&gt;
    __in s32 TestI32;&lt;br /&gt;
    __in u8  TestString[32];&lt;br /&gt;
    __in u8  TestU8Array[8];&lt;br /&gt;
    __in u32 TestU8Array_size;&lt;br /&gt;
    __in u32 TestU32Array[8];&lt;br /&gt;
    __in u32 TestU32Array_size;&lt;br /&gt;
    __in u64 TestU64Array[8];&lt;br /&gt;
    __in u32 TestU64Array_size;&lt;br /&gt;
    __in s32 TestI32Array[8];&lt;br /&gt;
    __in u32 TestI32Array_size;&lt;br /&gt;
    __in s64 TestI64Array[8];&lt;br /&gt;
    __in u32 TestI64Array_size;&lt;br /&gt;
    __in u16 TestU16;&lt;br /&gt;
    __in u8  TestU8;&lt;br /&gt;
    __in s16 TestI16;&lt;br /&gt;
    __in s8  TestI8;&lt;br /&gt;
    __in u8  padding1[5];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVERPT_TELEMETRY_SUBMIT_DISPLAY_DATA ===&lt;br /&gt;
Sends display data for creating a new [[Error_Report_services|Error Report]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 CodecType;&lt;br /&gt;
    __in u32 DecodeBuffers;&lt;br /&gt;
    __in u32 FrameWidth;&lt;br /&gt;
    __in u32 FrameHeight;&lt;br /&gt;
    __in u8  ColorPrimaries;&lt;br /&gt;
    __in u8  TransferCharacteristics;&lt;br /&gt;
    __in u8  MatrixCoefficients;&lt;br /&gt;
    __in u8  padding;&lt;br /&gt;
    __in u32 DisplayWidth;&lt;br /&gt;
    __in u32 DisplayHeight;&lt;br /&gt;
    __in u32 DARWidth;&lt;br /&gt;
    __in u32 DARHeight;&lt;br /&gt;
    __in u32 ColorFormat;&lt;br /&gt;
    __in u32 ColorSpace[8];&lt;br /&gt;
    __in u32 ColorSpace_size;&lt;br /&gt;
    __in u32 SurfaceLayout[8];&lt;br /&gt;
    __in u32 SurfaceLayout_size;&lt;br /&gt;
    __in u8  ErrorString[64];       // must be &amp;quot;Error detected = 0x1000000&amp;quot;&lt;br /&gt;
    __in u32 VideoDecState;&lt;br /&gt;
    __in u8  VideoLog[3712];&lt;br /&gt;
    __in u32 VideoLog_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-as-gpu ==&lt;br /&gt;
Each fd opened to this device creates an address space. An address space is then later bound with a channel.&lt;br /&gt;
&lt;br /&gt;
Once a nvgpu channel has been bound to an address space it cannot be unbound. There is no support for allowing an nvgpu channel to change from one address space to another (or from one to none).&lt;br /&gt;
                                                                                                                              &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044101 || In || 4 || [[#NVGPU_AS_IOCTL_BIND_CHANNEL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184102 || Inout || 24 || [[#NVGPU_AS_IOCTL_ALLOC_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104103 || Inout || 16 || [[#NVGPU_AS_IOCTL_FREE_SPACE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184104 || Inout || 24 || [[#NVGPU_AS_IOCTL_MAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084105 || Inout || 8 || [[#NVGPU_AS_IOCTL_UNMAP_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0284106 || Inout || 40 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40104107 || In || 16 || [[#NVGPU_AS_IOCTL_ALLOC_AS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0404108 || Inout || 64 || [[#NVGPU_AS_IOCTL_GET_VA_REGIONS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40284109 || In || 40 || [[#NVGPU_AS_IOCTL_ALLOC_AS_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MODIFY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_BIND_CHANNEL ===&lt;br /&gt;
Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 channel_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_SPACE ===&lt;br /&gt;
Reserves pages in the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
    u32      padding;&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_FREE_SPACE ===&lt;br /&gt;
Frees pages from the device address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
    __in u32 pages;&lt;br /&gt;
    __in u32 page_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER ===&lt;br /&gt;
Maps a memory region in the device address space. Identical to Linux driver pretty much.&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 flags;        // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    u32         reserved;&lt;br /&gt;
    __in    u32 dmabuf_fd;    // nvmap handle&lt;br /&gt;
    __inout u32 page_size;    // 0 means don&#039;t care&lt;br /&gt;
    union {&lt;br /&gt;
      __out u64 offset;&lt;br /&gt;
      __in  u64 align;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MAP_BUFFER_EX ===&lt;br /&gt;
Maps a memory region in the device address space with extra params.&lt;br /&gt;
&lt;br /&gt;
Unaligned size will cause a [[#Panic]].&lt;br /&gt;
&lt;br /&gt;
On success, the mapped memory region is granted the [[SVC#MemoryAttribute|DeviceShared]] attribute.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_UNMAP_BUFFER ===&lt;br /&gt;
Unmaps a memory region from the device address space.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 offset;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u64 reserved;        // ignored; passes 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_GET_VA_REGIONS ===&lt;br /&gt;
Nintendo&#039;s custom implementation to get rid of pointer in struct.&lt;br /&gt;
&lt;br /&gt;
  struct va_region {&lt;br /&gt;
    u64 offset;&lt;br /&gt;
    u32 page_size;&lt;br /&gt;
    u32 reserved;&lt;br /&gt;
    u64 pages;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    u64           buf_addr;    // (contained output user ptr on linux, ignored)&lt;br /&gt;
    __inout u32   buf_size;    // forced to 2*sizeof(struct va_region)&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
    __out struct  va_region regions[2];&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_ALLOC_AS_EX ===&lt;br /&gt;
Nintendo&#039;s custom implementation for allocating an address space with extra params.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 big_page_size;   // depends on GPU&#039;s available_big_page_sizes; 0=default&lt;br /&gt;
    __in s32 as_fd;           // ignored; passes 0&lt;br /&gt;
    __in u32 flags;           // passes 0&lt;br /&gt;
    __in u32 reserved;        // ignored; passes 0&lt;br /&gt;
    __in u64 va_range_start;&lt;br /&gt;
    __in u64 va_range_end;&lt;br /&gt;
    __in u64 va_range_split;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_MODIFY ===&lt;br /&gt;
Modifies a memory region in the device address space.&lt;br /&gt;
&lt;br /&gt;
    struct {&lt;br /&gt;
    __in      u32 flags;          // bit0: fixed_offset, bit2: cacheable&lt;br /&gt;
    __in      u32 kind;           // -1 is default&lt;br /&gt;
    __in      u32 dmabuf_fd;      // nvmap handle&lt;br /&gt;
    __inout   u32 page_size;      // 0 means don&#039;t care&lt;br /&gt;
    __in      u64 buffer_offset;&lt;br /&gt;
    __in      u64 mapping_size;&lt;br /&gt;
    __inout   u64 offset;&lt;br /&gt;
    __in      u64 unk0;&lt;br /&gt;
    __in      u32 unk1;&lt;br /&gt;
    u32           reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_AS_IOCTL_REMAP ===&lt;br /&gt;
Nintendo&#039;s custom implementation of address space remapping for sparse pages.&lt;br /&gt;
&lt;br /&gt;
  struct remap_op {&lt;br /&gt;
    __in u16 flags;                   // 0 or 4&lt;br /&gt;
    __in u16 kind;           &lt;br /&gt;
    __in u32 mem_handle;&lt;br /&gt;
    __in u32 mem_offset_in_big_pages;&lt;br /&gt;
    __in u32 virt_offset_in_big_pages;    // (alloc_space_offset &amp;gt;&amp;gt; 0x10)&lt;br /&gt;
    __in u32 num_pages;               // alloc_space_pages&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
    __in struct remap_op entries[];&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-dbg-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084401 || In || 8 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4402 || Inout || Variable || NVGPU_DBG_GPU_IOCTL_REG_OPS&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084403 || In || 8 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044404 || In || 4 || NVGPU_DBG_GPU_IOCTL_POWERGATE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044405 || In || 4 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044406 || In || 4 || NVGPU_DBG_GPU_IOCTL_SUSPEND_RESUME_ALL_SMS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184407 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084408 || In || 8 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084409 || In || 8 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008440A || In || 8 || NVGPU_DBG_GPU_IOCTL_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8008440B || Out || 8 || NVGPU_DBG_GPU_IOCTL_GET_TIMEOUT&lt;br /&gt;
|-&lt;br /&gt;
| 0x8004440C || Out || 4 || NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT_SIZE&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000440D || None || 0 || [[#NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440E || Inout || 24 || NVGPU_DBG_GPU_IOCTL_ACCESS_FB_MEMORY&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018440F || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PDES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104410 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184411 || Inout || 24 || NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_NUM_PTES&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104412 || Inout || 16 || [[#NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0684413 || Inout || 104 || NVGPU_DBG_GPU_IOCTL_GET_COMPTAG_INFO&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184414 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184415 || Inout || 24 || [[#NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104416 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104417 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_COMPTAGS&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104418 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_RESERVE_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104419 || Inout || 16 || NVGPU_DBG_GPU_IOCTL_FREE_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018441A || Inout || 24 || NVGPU_DBG_GPU_IOCTL_LAZY_ALLOC_RESERVED_PA&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441B || Inout || 32 || [11.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020441E || Inout || 32 || [11.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GR_CONTEXT ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PDES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PTES ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_READ_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_DBG_GPU_IOCTL_WRITE_COMPTAGS ===&lt;br /&gt;
Uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-prof-gpu ==&lt;br /&gt;
Returns [[#Errors|NotSupported]] on Open unless nn::settings::detail::GetDebugModeFlag is set.&lt;br /&gt;
&lt;br /&gt;
This device is identical to [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]].&lt;br /&gt;
&lt;br /&gt;
== /dev/nvhost-ctrl-gpu ==&lt;br /&gt;
This device is for global (context independent) operations on the gpu.  &lt;br /&gt;
                                                                                                                                               &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Direction || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044701 || Out || 4 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80284702 || Out || 40 || [[#NVGPU_GPU_IOCTL_ZCULL_GET_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x402C4703 || In || 44 || [[#NVGPU_GPU_IOCTL_ZBC_SET_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0344704 || Inout || 52 || [[#NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0B04705 || Inout || 176 || [[#NVGPU_GPU_IOCTL_GET_CHARACTERISTICS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0184706 || Inout || 24 || [[#NVGPU_GPU_IOCTL_GET_TPC_MASKS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084707 || In || 8 || [[#NVGPU_GPU_IOCTL_FLUSH_L2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470D || In || 8 || [[#NVGPU_GPU_IOCTL_INVAL_ICACHE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008470E || In || 8 || [[#NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4010470F || In || 16 || [[#NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0304710&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 0xC0084710) || Inout || 48&amp;lt;/br&amp;gt;([1.0.0-6.1.0] 8) || [[#NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084711 || Out || 8 || [[#NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084712 || Out || 8 || [[#NVGPU_GPU_IOCTL_NUM_VSMS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044713 || Inout || 4 || [[#NVGPU_GPU_IOCTL_VSMS_MAPPING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084714 || Out || 8 || [[#NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80044715 || Out || 4 || [[#NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084716 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084717 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_CG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084718 || In || 8 || [[#NVGPU_GPU_IOCTL_SET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0084719 || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_PG_CONTROLS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x8018471A || Out || 24 || [[#NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC008471B || Inout || 8 || [[#NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010471C || Inout || 16 || [[#NVGPU_GPU_IOCTL_GET_GPU_TIME]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC108471D || Inout || 264 || [[#NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ===&lt;br /&gt;
Returns the GPU&#039;s ZCULL context size. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZCULL_GET_INFO ===&lt;br /&gt;
Returns GPU&#039;s ZCULL information. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 width_align_pixels;&lt;br /&gt;
    __out u32 height_align_pixels;&lt;br /&gt;
    __out u32 pixel_squares_by_aliquots;&lt;br /&gt;
    __out u32 aliquot_total;&lt;br /&gt;
    __out u32 region_byte_multiplier;&lt;br /&gt;
    __out u32 region_header_size;&lt;br /&gt;
    __out u32 subregion_header_size;&lt;br /&gt;
    __out u32 subregion_width_align_pixels;&lt;br /&gt;
    __out u32 subregion_height_align_pixels;&lt;br /&gt;
    __out u32 subregion_count;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_SET_TABLE ===&lt;br /&gt;
Sets the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u32 color_ds[4];&lt;br /&gt;
    __in u32 color_l2[4];&lt;br /&gt;
    __in u32 depth;&lt;br /&gt;
    __in u32 format;&lt;br /&gt;
    __in u32 type;         // 1=color, 2=depth&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE ===&lt;br /&gt;
Queries the active ZBC table. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __out u32 color_ds[4];&lt;br /&gt;
    __out u32 color_l2[4];&lt;br /&gt;
    __out u32 depth;&lt;br /&gt;
    __out u32 ref_cnt;&lt;br /&gt;
    __out u32 format;&lt;br /&gt;
    __out u32 type;&lt;br /&gt;
    __inout u32 index_size;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ===&lt;br /&gt;
Returns the GPU characteristics. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct gpu_characteristics {&lt;br /&gt;
    u32 arch;                       // 0x120 (NVGPU_GPU_ARCH_GM200)&lt;br /&gt;
    u32 impl;                       // 0xB (NVGPU_GPU_IMPL_GM20B) or 0xE (NVGPU_GPU_IMPL_GM20B_B)&lt;br /&gt;
    u32 rev;                        // 0xA1 (Revision A1)&lt;br /&gt;
    u32 num_gpc;                    // 0x1&lt;br /&gt;
    u64 l2_cache_size;              // 0x40000&lt;br /&gt;
    u64 on_board_video_memory_size; // 0x0 (not used)&lt;br /&gt;
    u32 num_tpc_per_gpc;            // 0x2&lt;br /&gt;
    u32 bus_type;                   // 0x20 (NVGPU_GPU_BUS_TYPE_AXI)&lt;br /&gt;
    u32 big_page_size;              // 0x20000&lt;br /&gt;
    u32 compression_page_size;      // 0x20000&lt;br /&gt;
    u32 pde_coverage_bit_count;     // 0x1B&lt;br /&gt;
    u32 available_big_page_sizes;   // 0x30000&lt;br /&gt;
    u32 gpc_mask;                   // 0x1&lt;br /&gt;
    u32 sm_arch_sm_version;         // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_spa_version;        // 0x503 (Maxwell Generation 5.0.3)&lt;br /&gt;
    u32 sm_arch_warp_count;         // 0x80&lt;br /&gt;
    u32 gpu_va_bit_count;           // 0x28&lt;br /&gt;
    u32 reserved;                   // NULL&lt;br /&gt;
    u64 flags;                      // 0x55 (HAS_SYNCPOINTS | SUPPORT_SPARSE_ALLOCS | SUPPORT_CYCLE_STATS | SUPPORT_CYCLE_STATS_SNAPSHOT)&lt;br /&gt;
    u32 twod_class;                 // 0x902D (FERMI_TWOD_A)&lt;br /&gt;
    u32 threed_class;               // 0xB197 (MAXWELL_B)&lt;br /&gt;
    u32 compute_class;              // 0xB1C0 (MAXWELL_COMPUTE_B)&lt;br /&gt;
    u32 gpfifo_class;               // 0xB06F (MAXWELL_CHANNEL_GPFIFO_A)&lt;br /&gt;
    u32 inline_to_memory_class;     // 0xA140 (KEPLER_INLINE_TO_MEMORY_B)&lt;br /&gt;
    u32 dma_copy_class;             // 0xB0B5 (MAXWELL_DMA_COPY_A)&lt;br /&gt;
    u32 max_fbps_count;             // 0x1&lt;br /&gt;
    u32 fbp_en_mask;                // 0x0 (disabled)&lt;br /&gt;
    u32 max_ltc_per_fbp;            // 0x2&lt;br /&gt;
    u32 max_lts_per_ltc;            // 0x1&lt;br /&gt;
    u32 max_tex_per_tpc;            // 0x0 (not supported)&lt;br /&gt;
    u32 max_gpc_count;              // 0x1&lt;br /&gt;
    u32 rop_l2_en_mask_0;           // 0x21D70 (fuse_status_opt_rop_l2_fbp_r)&lt;br /&gt;
    u32 rop_l2_en_mask_1;           // 0x0&lt;br /&gt;
    u64 chipname;                   // 0x6230326D67 (&amp;quot;gm20b&amp;quot;)&lt;br /&gt;
    u64 gr_compbit_store_base_hw;   // 0x0 (not supported)&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __inout u64 gpu_characteristics_buf_size;   // must not be NULL, but gets overwritten with 0xA0=max_size&lt;br /&gt;
    __in    u64 gpu_characteristics_buf_addr;   // ignored, but must not be NULL&lt;br /&gt;
    __out struct gpu_characteristics gc;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_MASKS ===&lt;br /&gt;
Returns the TPC mask value for each GPC. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
[3.0.0+] Uses either [[#Ioctl|Ioctl]] or [[#Ioctl3|Ioctl3]].&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 mask_buf_size;       // ignored, but must not be NULL&lt;br /&gt;
    __in u32 reserved[3];&lt;br /&gt;
    __out u64 mask_buf;           // receives one 32-bit TPC mask per GPC (GPC 0 and GPC 1)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_FLUSH_L2 ===&lt;br /&gt;
Flushes the GPU L2 cache.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 flush;          // l2_flush | l2_invalidate &amp;lt;&amp;lt; 1 | fb_flush &amp;lt;&amp;lt; 2&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_INVAL_ICACHE ===&lt;br /&gt;
Invalidates the GPU instruction cache. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_MMU_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU MMU debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 state;&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_SM_DEBUG_MODE ===&lt;br /&gt;
Sets the GPU SM debug mode. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in s32 channel_fd;&lt;br /&gt;
    __in u32 enable;&lt;br /&gt;
    __in u64 sms;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_WAIT_FOR_PAUSE ===&lt;br /&gt;
Waits until all valid warps on the GPU SM are paused and returns their current state.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 pwarpstate;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
[6.1.0+] This command was modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 sm0_valid_warps;&lt;br /&gt;
    __out u64 sm0_trapped_warps;&lt;br /&gt;
    __out u64 sm0_paused_warps;&lt;br /&gt;
    __out u64 sm1_valid_warps;&lt;br /&gt;
    __out u64 sm1_trapped_warps;&lt;br /&gt;
    __out u64 sm1_paused_warps;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_TPC_EXCEPTION_EN_STATUS ===&lt;br /&gt;
Returns a mask value describing all active TPC exceptions. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 tpc_exception_en_sm_mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_NUM_VSMS ===&lt;br /&gt;
Returns the number of GPU SM units present. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 num_vsms;&lt;br /&gt;
    __out u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_VSMS_MAPPING ===&lt;br /&gt;
Returns mapping information on each GPU SM unit. Modified to return inline data instead of using a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u8 sm0_gpc_index;&lt;br /&gt;
    __out u8 sm0_tpc_index;&lt;br /&gt;
    __out u8 sm1_gpc_index;&lt;br /&gt;
    __out u8 sm1_tpc_index;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_ZBC_GET_ACTIVE_SLOT_MASK ===&lt;br /&gt;
Returns the mask value for a ZBC slot.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 slot;       // always 0x07&lt;br /&gt;
    __out u32 mask;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_GPU_LOAD ===&lt;br /&gt;
Returns the GPU load value from the PMU.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 pmu_gpu_load;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_CG_CONTROLS ===&lt;br /&gt;
Sets the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __in u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CG_CONTROLS ===&lt;br /&gt;
Returns the clock gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cg_mask;&lt;br /&gt;
    __out u32 cg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_SET_PG_CONTROLS ===&lt;br /&gt;
Sets the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __in u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_PG_CONTROLS ===&lt;br /&gt;
Returns the power gate control value.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 pg_mask;&lt;br /&gt;
    __out u32 pg_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_PMU_GET_ELPG_RESIDENCY_GATING ===&lt;br /&gt;
Returns the GPU PMU ELPG residency gating values.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 pg_ingating_time_us;&lt;br /&gt;
    __out u64 pg_ungating_time_us;&lt;br /&gt;
    __out u64 pg_gating_cnt;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_ERROR_CHANNEL_USER_DATA ===&lt;br /&gt;
Returns user specific data from the error channel, if one exists.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_GPU_TIME ===&lt;br /&gt;
Returns the timestamp from the GPU&#039;s nanosecond timer (PTIMER). Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 gpu_timestamp;      // raw GPU counter (PTIMER) value&lt;br /&gt;
    __out u64 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO ===&lt;br /&gt;
Returns CPU/GPU timestamp pairs for correlation analysis. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct time_correlation_sample {&lt;br /&gt;
   u64 cpu_timestamp;                                  // from CPU&#039;s CNTPCT_EL0 register&lt;br /&gt;
   u64 gpu_timestamp;                                  // from GPU&#039;s PTIMER registers&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __out struct time_correlation_sample samples[16];   // timestamp pairs&lt;br /&gt;
   __in u32     count;                                 // number of pairs to read&lt;br /&gt;
   __in u32     source_id;                             // cpu clock source id (must be 1)&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== Channels ==&lt;br /&gt;
Channels are a concept for  NVIDIA hardware blocks that share a common interface.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Path || Name&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-gpu || GPU&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-msenc || Video Encoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvdec || Video Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-nvjpg || JPEG Decoder&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-vic || Video Image Compositor&lt;br /&gt;
|-&lt;br /&gt;
| /dev/nvhost-display || Display&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Channel Ioctls ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Value || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0001 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080002 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080003 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_WAITBASE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080004 || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_MODMUTEX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40040007 || 4 || [[#NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080008 || 8 || [[#NVHOST_IOCTL_CHANNEL_SET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0009 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??000A || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00000013 || 0 || [[#NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0080023&amp;lt;/br&amp;gt;([1.0.0-7.0.1] 0xC0080014) || 8 || [[#NVHOST_IOCTL_CHANNEL_GET_CLK_RATE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0024 || Variable || [[#NVHOST_IOCTL_CHANNEL_SUBMIT_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0025 || Variable || [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084805 || 8 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40184806 || 24 || [[#NVGPU_IOCTL_CHANNEL_WAIT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0044807 || 4 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4808 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104809 || 16 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4008480A || 8 || [[#NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC010480B || 16 || [[#NVGPU_IOCTL_CHANNEL_ZCULL_BIND]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018480C || 24 || [[#NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x4004480D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_PRIORITY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480E || 0 || [[#NVGPU_IOCTL_CHANNEL_ENABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x0000480F || 0 || [[#NVGPU_IOCTL_CHANNEL_DISABLE]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004810 || 0 || [[#NVGPU_IOCTL_CHANNEL_PREEMPT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0104817 || 16 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x40204818 || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0??4819 || Variable || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC020481A || 32 || [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481B || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC018481C || 24 || [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY]]&lt;br /&gt;
|-&lt;br /&gt;
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]]&lt;br /&gt;
|- style=&amp;quot;border-top: double&amp;quot;&lt;br /&gt;
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT ===&lt;br /&gt;
Submits data to the channel.&lt;br /&gt;
&lt;br /&gt;
  struct cmdbuf {&lt;br /&gt;
    u32 mem;&lt;br /&gt;
    u32 offset;&lt;br /&gt;
    u32 words;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc {&lt;br /&gt;
    u32 cmdbuf_mem;&lt;br /&gt;
    u32 cmdbuf_offset;&lt;br /&gt;
    u32 target;&lt;br /&gt;
    u32 target_offset;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct reloc_shift {&lt;br /&gt;
    u32 shift;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct syncpt_incr {&lt;br /&gt;
    u32 syncpt_id;&lt;br /&gt;
    u32 syncpt_incrs;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_cmdbufs;&lt;br /&gt;
    __in    u32 num_relocs;&lt;br /&gt;
    __in    u32 num_syncpt_incrs;&lt;br /&gt;
    __in    u32 num_fences;&lt;br /&gt;
    __in    struct cmdbuf cmdbufs[];               // depends on num_cmdbufs&lt;br /&gt;
    __in    struct reloc relocs[];                 // depends on num_relocs&lt;br /&gt;
    __in    struct reloc_shift reloc_shifts[];     // depends on num_relocs&lt;br /&gt;
    __in    struct syncpt_incr syncpt_incrs[];     // depends on num_syncpt_incrs&lt;br /&gt;
    __out   struct fence fences[];                 // depends on num_fences&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ===&lt;br /&gt;
Returns the current syncpoint value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 syncpt_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_WAITBASE ===&lt;br /&gt;
Returns the current waitbase value for a given module. Always returns 0.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
    __out   u32 waitbase_value;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_MODMUTEX ===&lt;br /&gt;
Stubbed. Does a debug print and returns 0.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_SUBMIT_TIMEOUT ===&lt;br /&gt;
Sets the submit timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_CLK_RATE ===&lt;br /&gt;
Sets the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_pin&#039;&#039;&#039; internally to pin a given number of nvmap handles to an appropriate device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to map&lt;br /&gt;
    u32 phys_addr_out;                // returned device physical address mapped to the handle&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to map&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to map is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER ===&lt;br /&gt;
Uses &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally to unpin a given number of nvmap handles from their device physical address.&lt;br /&gt;
&lt;br /&gt;
  struct handle {&lt;br /&gt;
    u32 handle_id_in;                 // nvmap handle to unmap&lt;br /&gt;
    u32 reserved;                     // ignored&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 num_handles;          // number of nvmap handles to unmap&lt;br /&gt;
    __in    u32 reserved;             // ignored&lt;br /&gt;
    __in    u8  is_compr;             // memory to unmap is compressed&lt;br /&gt;
    __in    u8  padding[3];           // ignored&lt;br /&gt;
    __inout struct handle handles[];  // depends on num_handles&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ===&lt;br /&gt;
Sets the global timeout value for the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 timeout;&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_GET_CLK_RATE ===&lt;br /&gt;
Returns the clock rate value for a given module. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out   u32 clk_rate;&lt;br /&gt;
    __in    u32 module_id;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_SUBMIT_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_SUBMIT|NVHOST_IOCTL_CHANNEL_SUBMIT]].&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_MAP_CMD_BUFFER]], but calls &#039;&#039;&#039;nvmap_unpin&#039;&#039;&#039; internally in case of error.&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX ===&lt;br /&gt;
Same as [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER|NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ===&lt;br /&gt;
Binds a nvmap object to this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 nvmap_fd;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMEOUT ===&lt;br /&gt;
Sets the timeout value for the GPU channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeout;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO ===&lt;br /&gt;
Allocates gpfifo entries. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 num_entries;&lt;br /&gt;
    __in u32 flags;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_WAIT ===&lt;br /&gt;
Waits on channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 type;            // wait type (0=notifier, 1=semaphore)&lt;br /&gt;
    __in u32 timeout;         // wait timeout value&lt;br /&gt;
    __in u32 dmabuf_fd;       // nvmap handle&lt;br /&gt;
    __in u32 offset;          // nvmap memory offset&lt;br /&gt;
    __in u32 payload;         // payload data (semaphore only)&lt;br /&gt;
    __in u32 padding;         // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS ===&lt;br /&gt;
Maps memory for the cycle stats buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO ===&lt;br /&gt;
Submits a gpfifo object. Modified to take inline entry objects instead of a pointer.&lt;br /&gt;
&lt;br /&gt;
  struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct gpfifo_entry {&lt;br /&gt;
    u64 entry;                               // gpu_iova | (unk_2bits &amp;lt;&amp;lt; 40) | (size &amp;lt;&amp;lt; 42) | (unk_flag &amp;lt;&amp;lt; 63)&lt;br /&gt;
  };&lt;br /&gt;
  &lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u64 gpfifo;                      // (ignored) pointer to gpfifo fence structs&lt;br /&gt;
    __in    u32 num_entries;                 // number of fence objects being submitted&lt;br /&gt;
    __in    u32 flags;&lt;br /&gt;
    __inout struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
    __in    struct gpfifo_entry entries[];   // depends on num_entries&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX ===&lt;br /&gt;
Allocates a graphics context object. Modified to ignore object&#039;s ID.&lt;br /&gt;
&lt;br /&gt;
You can only have one object context allocated at a time. You must have bound an address space before using this.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in  u32 class_num;    // 0x902D=2d, 0xB197=3d, 0xB1C0=compute, 0xA140=kepler, 0xB0B5=DMA, 0xB06F=channel_gpfifo&lt;br /&gt;
    __in  u32 flags;        // bit0: LOCKBOOST_ZERO&lt;br /&gt;
    __out u64 obj_id;       // (ignored) used for FREE_OBJ_CTX ioctl, which is not supported&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVHOST_IOCTL_CHANNEL_FREE_OBJ_CTX ===&lt;br /&gt;
Frees a graphics context object. Not supported.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 obj_id;       // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ZCULL_BIND ===&lt;br /&gt;
Binds a ZCULL context to the channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
 struct {&lt;br /&gt;
    __in u64 gpu_va;&lt;br /&gt;
    __in u32 mode;         // 0=global, 1=no_ctxsw, 2=separate_buffer, 3=part_of_regular_buf&lt;br /&gt;
    __in u32 reserved;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER ===&lt;br /&gt;
Initializes the error notifier for this channel. Unlike for the Linux kernel, the Switch driver cannot write to an arbitrary userspace buffer. Thus new ioctls have been introduced to fetch the error information rather than using a shared memory buffer.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 offset;   // ignored&lt;br /&gt;
    __in u64 size;     // ignored&lt;br /&gt;
    __in u32 mem;      // must be non-zero to initialize, zero to de-initialize&lt;br /&gt;
    __in u32 reserved; // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_PRIORITY ===&lt;br /&gt;
Changes channel&#039;s priority. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 priority;    // 0x32 is low, 0x64 is medium and 0x96 is high&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ENABLE ===&lt;br /&gt;
Enables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_DISABLE ===&lt;br /&gt;
Disables the current channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_PREEMPT ===&lt;br /&gt;
Clears the FIFO pipe for this channel. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_FORCE_RESET ===&lt;br /&gt;
Forces the channel to reset. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL ===&lt;br /&gt;
Controls event notifications.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 cmd;    // 0=disable, 1=enable, 2=clear&lt;br /&gt;
    __in u32 id;     // same id&#039;s as for [[#QueryEvent]]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT ===&lt;br /&gt;
Controls the cycle stats snapshot buffer. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in    u32 cmd;         // command to handle (0=flush, 1=attach, 2=detach)&lt;br /&gt;
    __in    u32 dmabuf_fd;   // nvmap handle&lt;br /&gt;
    __inout u32 extra;       // extra payload data/result&lt;br /&gt;
    __in    u32 padding;     // ignored&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO ===&lt;br /&gt;
Returns information on the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u32 error_info[32];    // first word is an error code (0=no_error, 1=gr_error, 2=gr_error, 3=invalid, 4=invalid)&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_ERROR_NOTIFICATION ===&lt;br /&gt;
Returns the current error notification caught by the error notifier. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 timestamp;    // fetched straight from armGetSystemTick&lt;br /&gt;
    __out u32 info32;       // error code&lt;br /&gt;
    __out u16 info16;       // additional error info&lt;br /&gt;
    __out u16 status;       // always 0xFFFF&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX ===&lt;br /&gt;
Allocates gpfifo entries with additional parameters. Exclusive to the Switch.&lt;br /&gt;
&lt;br /&gt;
 struct fence {&lt;br /&gt;
    u32 id;&lt;br /&gt;
    u32 thresh;&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct {&lt;br /&gt;
   __in    u32 num_entries;&lt;br /&gt;
   __in    u32 num_jobs;&lt;br /&gt;
   __in    u32 flags;&lt;br /&gt;
   __out   struct fence fence_out;          // returned new fence object for others to wait on&lt;br /&gt;
   __in    u32 reserved[3];                 // ignored&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX|NVGPU_IOCTL_CHANNEL_ALLOC_GPFIFO_EX]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2 ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO2_RETRY ===&lt;br /&gt;
Same as [[#NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY|NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO_RETRY]], but uses [[#Ioctl2|Ioctl2]].&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_TIMESLICE ===&lt;br /&gt;
Changes channel&#039;s timeslice. Identical to Linux driver.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u32 timeslice;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_SET_USER_DATA ===&lt;br /&gt;
Sets user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __in u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
=== NVGPU_IOCTL_CHANNEL_GET_USER_DATA ===&lt;br /&gt;
Returns user specific data.&lt;br /&gt;
&lt;br /&gt;
  struct {&lt;br /&gt;
    __out u64 data;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
= nvmemp =&lt;br /&gt;
This is &amp;quot;nv::MemoryProfiler::IMemoryProfiler&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
/dev/nvhost-ctrl sends the ioctl NVHOST_IOCTL_CTRL_GET_CONFIG to check the config &amp;quot;nv!NV_MEMORY_PROFILER&amp;quot;. If config_str returns &amp;quot;1&amp;quot;, the application attempts to use nvmemp.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Open&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetPid&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvdrvdbg =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugFSServices&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#OpenDebugFS]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#CloseDebugFS]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetDebugFSKeys]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetDebugFSValue&lt;br /&gt;
|-&lt;br /&gt;
| 4 || SetDebugFSValue&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== OpenDebugFS ==&lt;br /&gt;
Takes a process handle. Returns a u32 &#039;&#039;&#039;fd&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== CloseDebugFS ==&lt;br /&gt;
Takes a u32 &#039;&#039;&#039;fd&#039;&#039;&#039; and closes it.&lt;br /&gt;
&lt;br /&gt;
== GetDebugFSKeys ==&lt;br /&gt;
Takes a u32 &#039;&#039;&#039;fd&#039;&#039;&#039; and reads debug contents into a type-6 buffer.&lt;br /&gt;
&lt;br /&gt;
= nvgem:c =&lt;br /&gt;
This is &amp;quot;nv::gemcontrol::INvGemControl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Initialize&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetEventHandle&lt;br /&gt;
|-&lt;br /&gt;
| 2 || ControlNotification&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetNotificationPerm&lt;br /&gt;
|-&lt;br /&gt;
| 4 || SetCoreDumpPerm&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [1.0.0-4.1.0] GetAruid&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Reset&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvgem:cd =&lt;br /&gt;
This is &amp;quot;nv::gemcoredump::INvGemCoreDump&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Initialize&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetAruid&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [1.0.0-8.1.0] ReadNextBlock&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [8.0.0+]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [8.0.0+]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvdbg:d =&lt;br /&gt;
This is &amp;quot;nns::nvdrv::INvDrvDebugSvcServices&amp;quot;. This was added with [10.0.0+].&lt;br /&gt;
&lt;br /&gt;
This service has no commands.&lt;br /&gt;
&lt;br /&gt;
= Errors =&lt;br /&gt;
Most nvidia driver commands return an error code apart from the normal return code.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0 || NvError_Success&lt;br /&gt;
|-&lt;br /&gt;
| 0x1 || NvError_NotImplemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x2 || NvError_NotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x3 || NvError_NotInitialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x4 || NvError_BadParameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x5 || NvError_Timeout&lt;br /&gt;
|-&lt;br /&gt;
| 0x6 || NvError_InsufficientMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x7 || NvError_ReadOnlyAttribute&lt;br /&gt;
|-&lt;br /&gt;
| 0x8 || NvError_InvalidState&lt;br /&gt;
|-&lt;br /&gt;
| 0x9 || NvError_InvalidAddress&lt;br /&gt;
|-&lt;br /&gt;
| 0xA || NvError_InvalidSize&lt;br /&gt;
|-&lt;br /&gt;
| 0xB || NvError_BadValue&lt;br /&gt;
|-&lt;br /&gt;
| 0xD || NvError_AlreadyAllocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xE || NvError_Busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xF || NvError_ResourceError&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || NvError_CountMismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || NvError_OverFlow&lt;br /&gt;
|-&lt;br /&gt;
| 0x1000 || NvError_InsufficientTransferMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10000 || NvError_InsufficientVideoMemory&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || NvError_BadSurfaceColorScheme&lt;br /&gt;
|-&lt;br /&gt;
| 0x10002 || NvError_InvalidSurface&lt;br /&gt;
|-&lt;br /&gt;
| 0x10003 || NvError_SurfaceNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20000 || NvError_DispInitFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20001 || NvError_DispAlreadyAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20002 || NvError_DispTooManyDisplays&lt;br /&gt;
|-&lt;br /&gt;
| 0x20003 || NvError_DispNoDisplaysAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x20004 || NvError_DispModeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20005 || NvError_DispNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x20006 || NvError_DispAttachDissallowed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20007 || NvError_DispTypeNotSupported&lt;br /&gt;
|-&lt;br /&gt;
| 0x20008 || NvError_DispAuthenticationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x20009 || NvError_DispNotAttached&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000A || NvError_DispSamePwrState&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000B || NvError_DispEdidFailure&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000C || NvError_DispDsiReadAckError&lt;br /&gt;
|-&lt;br /&gt;
| 0x2000D || NvError_DispDsiReadInvalidResp&lt;br /&gt;
|-&lt;br /&gt;
| 0x30000 || NvError_FileWriteFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30001 || NvError_FileReadFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30002 || NvError_EndOfFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x30003 || NvError_FileOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30004 || NvError_DirOperationFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x30005 || NvError_EndOfDirList&lt;br /&gt;
|-&lt;br /&gt;
| 0x30006 || NvError_ConfigVarNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30007 || NvError_InvalidConfigVar&lt;br /&gt;
|-&lt;br /&gt;
| 0x30008 || NvError_LibraryNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30009 || NvError_SymbolNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000A || NvError_MemoryMapFailed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3000F || NvError_IoctlFailed                        &lt;br /&gt;
|-&lt;br /&gt;
| 0x30010 || NvError_AccessDenied&lt;br /&gt;
|-&lt;br /&gt;
| 0x30011 || NvError_DeviceNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30012 || NvError_KernelDriverNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30013 || NvError_FileNotFound&lt;br /&gt;
|-&lt;br /&gt;
| 0x30014 || NvError_PathAlreadyExists&lt;br /&gt;
|-&lt;br /&gt;
| 0xA000E || NvError_ModuleNotPresent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Panic =&lt;br /&gt;
In some cases, a panic may occur. NV forces a crash by doing:&lt;br /&gt;
 (void *)0 = 0xCAFE;&lt;br /&gt;
End result is that the system hangs with a white-screen.&lt;br /&gt;
&lt;br /&gt;
== Gpfifo Panic ==&lt;br /&gt;
When the gpfifo data in the gpu_va buffers specified by the submitted gpfifo entries is invalid(?), eventually the user-process will be force-terminated after using the submit-gpfifo ioctl. It&#039;s unknown how exactly this is done.&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=System_Settings&amp;diff=10930</id>
		<title>System Settings</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=System_Settings&amp;diff=10930"/>
		<updated>2021-05-11T19:31:47Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Add summary of the nv_gmmu_va_page_split setting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Data sourced from 0100000000000818 archive.&lt;br /&gt;
&lt;br /&gt;
= account =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |na_license_verification_enabled&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |na_required_for_network_service&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |user_qualification_verification_enabled&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= account.daemon =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |background_awaking_periodicity&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 10800 (0x2a30)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |initial_schedule_delay&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |long_sleep_detection_threshold&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 1468800 (0x166980)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |na_info_refresh_interval&lt;br /&gt;
| 2.0.0-5.0.0&lt;br /&gt;
| 46800 (0xb6d0)&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.1-5.1.0&lt;br /&gt;
| 72000 (0x11940)&lt;br /&gt;
|-&lt;br /&gt;
| 6.0.0-7.0.1&lt;br /&gt;
| 46800 (0xb6d0)&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 457200 (0x6f9f0)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |na_verification_url_retry_interval&lt;br /&gt;
| 9.0.0-9.2.0&lt;br /&gt;
| 18000 (0x4650)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |profile_sync_interval&lt;br /&gt;
| 2.0.0-5.0.0&lt;br /&gt;
| 18000 (0x4650)&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.1-5.1.0&lt;br /&gt;
| 172800 (0x2a300)&lt;br /&gt;
|-&lt;br /&gt;
| 6.0.0-9.2.0&lt;br /&gt;
| 18000 (0x4650)&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 457200 (0x6f9f0)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |schedule_periodicity&lt;br /&gt;
| 2.0.0-9.2.0&lt;br /&gt;
| 3600 (0xe10)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= am.debug =&lt;br /&gt;
This class does not exist on retail firmware.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dev_function&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Not set on retail firmware. Enables a few IPC commands and allows OpenSystem/OverlayAppletProxy when there is already a system/overlay applet.&lt;br /&gt;
|-&lt;br /&gt;
| abort_on_sa_lost || || ||&lt;br /&gt;
|-&lt;br /&gt;
| abort_on_oa_lost || || ||&lt;br /&gt;
|-&lt;br /&gt;
| gpu_error_kill_app || || ||&lt;br /&gt;
|-&lt;br /&gt;
| negative_transition_layer || || ||&lt;br /&gt;
|-&lt;br /&gt;
| home_long_pressed_time_ms || || ||&lt;br /&gt;
|-&lt;br /&gt;
| cpu_boost_always_no_boost || ? || || Only used when [[Settings_services#GetDebugModeFlag]] returns 1.&lt;br /&gt;
|-&lt;br /&gt;
| disable_force_terminate_application || 9.0.0+ || || Used by [[Applet_Manager_services#IsForceTerminateApplicationDisabledForDebug|IsForceTerminateApplicationDisabledForDebug]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= am.display =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |force_immediate_update_caller_applet_capture&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |frame_buffer_sharing_level&lt;br /&gt;
| 4.0.0-4.1.0&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 2 (0x2)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transition_layer_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= am.gpu =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |gpu_scheduling_bg_app_us&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| 4834 (0x12e2)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 104500 (0x19834)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_bg_la_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_bg_sa_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |gpu_scheduling_fg_app_us&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| 16500 (0x4074)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 116166 (0x1c5c6)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_fg_la_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 11666 (0x2d92)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_fg_sa_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 11666 (0x2d92)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |gpu_scheduling_frame_time_us&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| 17000 (0x4268)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 116666 (0x1c7ba)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_hidden_bg_la_us&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_hidden_fg_la_us&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 5000 (0x1388)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_oa_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 500 (0x1f4)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_scheduling_partial_fg_la_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 2000 (0x7d0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= am.pfcfg =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles. This class did not exist before 11.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vr_display_coordinate_x&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x0 (0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vr_display_coordinate_y&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x0 (0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vr_display_height&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x2D0 (720)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vr_display_width&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x500 (1280)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= apm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |battery_draining_enabled&lt;br /&gt;
| 1.0.0-7.0.1&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |performance_mode_policy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;auto&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sdev_cpu_overclock_enabled&lt;br /&gt;
| 3.0.0-9.2.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sdev_throttling_additional_delay_us&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 16000 (0x3e80)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sdev_throttling_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= audio =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |adsp_log_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |builtin_microphone_volume&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |audin_log_enabled&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |audout_log_enabled&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |audren_log_enabled&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dev_feature_for_volume_mapping_table_enabled&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |hwopus_log_enabled&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |suppress_additional_mic_check&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |suspend_for_debugger_enabled&lt;br /&gt;
| 1.0.0-3.0.2&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |uac_enabled&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |uac_speaker_enabled&lt;br /&gt;
| 3.0.0-3.0.2&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= bcat =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |production_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |system_save_data_creation_for_development&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= bgtc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |battery_threshold_save&lt;br /&gt;
| 2.0.0-2.3.0&lt;br /&gt;
| 30 (0x1e)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 20 (0x14)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |battery_threshold_stop&lt;br /&gt;
| 2.0.0-2.3.0&lt;br /&gt;
| 15 (0xf)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 20 (0x14)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_battery_saver&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_halfawake&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |leaving_halfawake_margin&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 3 (0x3)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |minimum_interval_normal&lt;br /&gt;
| 2.0.0-6.2.0&lt;br /&gt;
| 1800 (0x708)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 1200 (0x4b0)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |minimum_interval_save&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 86400 (0x15180)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= btp =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles. This class did not exist before 11.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bt_mcu_name&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| &amp;quot;Robson&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= bluetooth_config =&lt;br /&gt;
This class was added to the PlatformConfig* titles with 12.0.0+.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skip_boot&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= boot =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |boot_devmenuapp_installer&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |force_maintenance&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |use_htc_gen2&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= bpc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_quasi_off&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= bsp0 =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tm_transport&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;USB&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |usb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;UDS&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= btm =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name0&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;NintendoGamepad&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name1&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;Joy-Con&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name2&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;Pro Controller&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name3&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;Lic Pro Controller&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name4&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;NES Controller&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name5&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;HVC Controller&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name6&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;SNES Controller&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name7&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name8&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_pairing_device_name9&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= capsrv =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |album_directory_path&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &amp;quot;d:/Album&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_directory_change&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_movie_file_support&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_movie_filehash_verification&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_movie_filesign_verification&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_screenshot_file_support&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_album_screenshot_filedata_verification&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_extra_movie_save_nand_storage&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_album_file_with_size_zero&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |screenshot_layerstack&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;screenshot&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= contents_delivery =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |acceptable_application_delivery_protocol_version&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_delivery_protocol_version&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_debug_api&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |required_system_version_to_deliver_application&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |system_delivery_protocol_version&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |updatable_firmware_group_string&lt;br /&gt;
| 8.0.0-8.1.0&lt;br /&gt;
| &amp;quot;1,3,4&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 9.0.0&lt;br /&gt;
| &amp;quot;1,3,4,8,23&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 9.1.0&lt;br /&gt;
| &amp;quot;1,3,4,8,23,127&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= creport =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |crash_screen_shot&lt;br /&gt;
| 9.0.0-9.2.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= cs =&lt;br /&gt;
This class does not exist before 12.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_application_control&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_audio_server&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_dev_server&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_hid_server&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_remote_video_server&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_screen_shot_command&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_virtual_temperature_command&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= dauth =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |_dummy&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= devmenu =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_update_requried&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |development_mode&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_application_foreground_at_sleep_finish&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_application_update&lt;br /&gt;
| 2.0.0-5.1.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_exhibition_mode&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_health_warning&lt;br /&gt;
| ?+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_htc_generation_switch&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_resume_all&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |user_index_at_launch&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| -1 (0xffffffff)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= eclct =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |analytics_override&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |analytics_pollperiod&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 86400 (0x15180)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= erpt =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |production_mode&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= eth =&lt;br /&gt;
This class did not exist before 10.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |enable_eee&lt;br /&gt;
| 10.0.0-10.2.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= err =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |applet_auto_close&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= es =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |device_registration_type&lt;br /&gt;
| 7.0.0-7.0.1&lt;br /&gt;
| &amp;quot;ecc&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| &amp;quot;auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |unnecessary_prepurchase_record_margin_sec&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 604800 (0x93a80)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= eupld =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |upload_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= fatal =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |quest_reboot_interval_second&lt;br /&gt;
| 4.1.0+&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |show_extra_info&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transition_to_fatal&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= friends =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |background_processing&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |global_allocator_is_cache_enable&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |global_allocator_metrics_header_enable&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= gpu_core_dump =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= hdcp =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |authentication_timeout_ms&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 12000 (0x2ee0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |stub_emulation&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= hid_debug =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ble_disabled&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disabled_features_per_id&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |dscale_disabled&lt;br /&gt;
| 6.0.0-6.0.1&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 6.1.0+&lt;br /&gt;
| false&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |emulate_firmware_update_failure&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |emulate_future_device&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |emulate_mcu_hardware_error&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enables_debugpad&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enables_rail&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |firmware_update_failure_emulation_mode&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |force_handheld&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |manages_devices&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |manages_touch_ic_i2c&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= htc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disconnection_emulation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= idle =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dim_level_percent_lcd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dim_level_percent_tv&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 70 (0x46)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_0&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x2d&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_1&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x78&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles. &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_2&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0xf0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles. &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_3&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x12c&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles. &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_4&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x12c&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles. &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |handheld_dim_time_level_5&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x12c&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= jit_debug =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_jit_debug&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= lbl =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |als_projection_type&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |backlight_control_type&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| PlatformConfigCopper = 0x0, PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko = 0x1&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_brightness_mapping_1st_coefficient&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 1000 (0x3e8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_brightness_mapping_2nd_coefficient&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_brightness_mapping_3rd_coefficient&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 20 (0x14)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_brightness_mapping_enabled&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_max_dsi_brightness&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |force_disable_als&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |module_enabled&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vr_brightness_transition_frame&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= lm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_sd_card_logging&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sd_card_log_output_directory&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;NxBinLogs&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= migration =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ldn_connection_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 1800 (0x708)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_data_migration_transfer_accept_message_timeout_seconds&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 15 (0xf)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_data_migration_wait_acceptance_timeout_seconds&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 1800 (0x708)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transfer_large_data_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 3600 (0xe10)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transfer_low_speed_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transfer_messaging_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 100 (0x64)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transfer_small_data_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ui_acceptance_wait_timeout_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 900 (0x384)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= mii =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_db_test_mode_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_img_db_test_mode_enabled&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nd =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |development_function_enabled&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ndim =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles. This class did not exist before 12.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |assert_wlan_state&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= news =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |system_version&lt;br /&gt;
| 2.0.0-2.3.0&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 3.0.0-3.0.2&lt;br /&gt;
| 2 (0x2)&lt;br /&gt;
|-&lt;br /&gt;
| 4.0.0-4.1.0&lt;br /&gt;
| 3 (0x3)&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| 4 (0x4)&lt;br /&gt;
|-&lt;br /&gt;
| 6.0.0-7.0.1&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0-9.2.0&lt;br /&gt;
| 6 (0x6)&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0-10.2.0&lt;br /&gt;
| 7 (0x7)&lt;br /&gt;
|-&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 8 (0x8)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |db_version&lt;br /&gt;
| 10.0.0-10.2.0&lt;br /&gt;
| 2&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nfc =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |millau_h_compatibility_wait&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nfp =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |not_locked_tag&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |play_report&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ngc.t =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_reload_enabled&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |functionality_override_enabled&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nifm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |apply_config_timeout&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 30000 (0x7530)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |connection_test_timeout&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 45000 (0xafc8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ethernet_adapter_standby_time&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 10000 (0x2710)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_communication_control_enabled_for_test&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nim.install =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |apply_delta_stress_storage&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_come_back_after&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_come_back_after_second&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |edge_token_expiration_margin_seconds&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 600 (0x258)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |prefer_delta_evenif_inefficient&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |simulate_eci_delay_response&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |simulate_eci_still_unavailable_response&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skip_downloadable_check&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |system_update_task_meta_version&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 1 (0x1)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |download_common_ticket_from_tigers&lt;br /&gt;
| 10.1.0-11.0.1&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |use_debug_edge_token&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nim.pfcfg =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles. This class did not exist before 12.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |allow_dummy_device_id&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= notification.presenter =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |alarm_pattern_total_repeat_count&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 15 (0xf)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |alarm_pattern_with_vibration_repeat_count&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |connection_retry_count&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |connection_timeout_in_milliseconds&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 4000 (0xfa0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_presentation_delay_seconds&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_debug_presentation_enabled&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |notification_led_timeout_in_seconds&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |snooze_count&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 2 (0x2)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |snooze_interval_in_seconds&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= npns =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |background_processing&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |logmanager_redirection&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| &amp;quot;false;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_max_try_count&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_periodic_interval&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 10800 (0x2a30)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_processing_timeout&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 30 (0x1e)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |test_mode&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.applet =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |overlay_applet_id&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0x010000000000100c&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shop_applet_id&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;0x010000000000100b&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |system_applet_id&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0x0100000000001000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |devmenu_id&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Only exists on devunits, ProgramId for DevMenu.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |devoverlaydisp_id&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Only exists on devunits, ProgramId for dev Overlay-applet.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.application =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_id_on_blacklist&lt;br /&gt;
| 5.0.0-10.2.0&lt;br /&gt;
| &amp;quot;0x0000000000000000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_license_flags_for_debug&lt;br /&gt;
| 8.0.0-11.0.1&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_version_on_blacklist&lt;br /&gt;
| 5.0.0-10.2.0&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |assign_all_device_linked_elicenses&lt;br /&gt;
| 6.0.0-11.0.1&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_deletable_application_id_on_not_enough_space&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| &amp;quot;0x010025400aece000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_update_policy_from_bcat_enabled&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cleanup_add_on_content_with_no_rights_result_value&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cleanup_cache_storage_enabled&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_account_restricted_rights&lt;br /&gt;
| 6.0.0-11.0.1&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |initial_waiting_time_of_assigning_elicenses_for_device&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 900 (0x384)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |max_waiting_time_of_assigning_elicenses_for_device&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 90000 (0x15f90)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |preomia_application_id&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;0x010070000E3C0000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |redirected_rom_storage_id_for_debug&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |wait_time_after_signal_for_account_notifier&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x5&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |wait_time_after_signal_for_dynamic_rights_observer&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 15 (0xf)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.autoboot =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enabled&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.gamecard =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |check_erase_history_flag&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mount_gamecard_result_value&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |try_gamecard_access_result_value&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.notification =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_auto_update_waiting_limit&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_system_update_waiting_limit&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_version_list_waiting_limit&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_waiting_limit&lt;br /&gt;
| 3.0.0-8.1.0&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_download_task_list&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_download_ticket&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_network_update&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_random_wait&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_request_on_cold_boot&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_send_rights_usage_status_request&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_sync_elicense_request&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_version_list&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |result_value_to_register_nt_for_dynamic_rights&lt;br /&gt;
| 6.0.0-8.1.0&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_interval&lt;br /&gt;
| 2.0.0-4.1.0&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_interval_max&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 900 (0x384)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_interval_min&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |version_list_waiting_limit&lt;br /&gt;
| 4.0.0-5.1.0&lt;br /&gt;
| 900 (0x384)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |version_list_waiting_limit_bias&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 48 (0x30)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |version_list_waiting_limit_min&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 1800 (0x708)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.promotion =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_update_promotion_info_from_bcat&lt;br /&gt;
| 8.0.0-11.0.1&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |promotion_info_from_bcat_enabled&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.pseudodeviceid =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |reset_pseudo_device_id&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.rights =&lt;br /&gt;
This class did not exist before 11.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |application_license_flags_for_debug&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x80000000&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |assign_all_device_linked_elicenses&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_account_restricted_rights&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dummy&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |next_available_time_of_unexpected_error&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x12C&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |register_na_ids_as_valid_accounts_forcibly_even_if_not_exist&lt;br /&gt;
| 11.0.0-11.0.1&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skip_account_validation_on_rights_check&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.sdcard =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cleanup_sdcard_result_value&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |compare_sdcard&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mount_sdcard&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.systemupdate =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |firmware_variation&lt;br /&gt;
| 8.0.0-8.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigIcosaMariko: 0x1&lt;br /&gt;
PlatformConfigHoag: 0x2&lt;br /&gt;
&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 9.0.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x4&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|-&lt;br /&gt;
| 9.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x5&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |t_firmware_variation&lt;br /&gt;
| 9.0.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigIcosaMariko: 0x3&lt;br /&gt;
PlatformConfigCopper/PlatformConfigHoag: 0xff&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 9.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x6&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |updatable_firmware_group_id&lt;br /&gt;
| 8.0.0-8.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigIcosaMariko: 0x1&lt;br /&gt;
PlatformConfigHoag: 0x2&lt;br /&gt;
&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 9.0.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x4&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|-&lt;br /&gt;
| 9.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x5&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |t_updatable_firmware_group_id&lt;br /&gt;
| 9.0.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigIcosaMariko: 0x3&lt;br /&gt;
PlatformConfigCopper/PlatformConfigHoag: 0xff&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 9.1.0&lt;br /&gt;
| PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko: 0x5&lt;br /&gt;
PlatformConfigCopper: 0xff&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ns.ticket =&lt;br /&gt;
This class no longer exists as of 11.0.0+.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |next_available_time_of_unexpected_error&lt;br /&gt;
| 4.0.0-10.2.0&lt;br /&gt;
| 300 (0x12c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nsd =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |environment_identifier&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;lp1&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fqdn_without_domain_exchange_00&lt;br /&gt;
| ?+&lt;br /&gt;
| &amp;quot;api.sect.srv.nintendo.net&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |setting_url&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;&amp;quot;https://api.sect.srv.nintendo.net/v1/setting&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |test_mode&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ntc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |autonomic_correction_failed_retry_interval_seconds&lt;br /&gt;
| 1.0.0-2.3.0&lt;br /&gt;
| 3600 (0xe10)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 1800 (0x708)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |autonomic_correction_immediate_try_count_max&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 4 (0x4)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |autonomic_correction_immediate_try_interval_milliseconds&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 5000 (0x1388)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |autonomic_correction_interval_seconds&lt;br /&gt;
| 1.0.0-2.1.0&lt;br /&gt;
| 864000 (0xd2f00)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.2.0+&lt;br /&gt;
| 432000 (0x69780)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_autonomic_correction_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nv =&lt;br /&gt;
{| class=&amp;quot;wikitable mw-collapsible mw-collapsed&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |00008600&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0007b25e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0083e1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |01621887&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |03134743&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0356afd0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0356afd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0356afd2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0356afd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |094313&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x04dc09&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x111133&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x1aa483&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x1cb1cf&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x1cb1d0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x1e3221&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x300fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x301fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x302fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x3eec59&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x46b3ed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dc6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dd0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x523dd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x5344bb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x555237&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x58a234&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x7b4428&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dc0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dc1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dc2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dc3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x923dd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x9abdc5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0x9abdc6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xaaa36c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb09da5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb0b348&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xb0b349&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xbb558f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xbd10fb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xc32ad3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xce2348&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xcfd81f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xe0036b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xe01f2d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xe17212&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xeae966&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xed4f82&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xf12335&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |0xf12336&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |10261989&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1042d483&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |10572898&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |115631&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |12950094&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1314f311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1314f312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |13279512&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |13813496&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |14507179&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |15694569&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |16936964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |17aa230c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |182054&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |18273275&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |18273276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1854d03b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |18add00d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |19156670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |19286545&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1a298e9f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1acf43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1bda43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |1c3b92&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |21509920&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |215323457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2165ad&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2165ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |21be9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |233264316&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |234557580&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |23cd0e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |24189123&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2443266&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |25025519&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |255e39&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2583364&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2888c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |28ca3e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |29871243&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2a1f64&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2dc432&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2de437&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2f3bb89c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |2fd652&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3001ac&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |31298772&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |313233&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |31f7d603&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |320ce4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |32153248&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |32153249&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |335bca&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |342abb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |34dfe6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |34dfe7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |34dfe8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |34dfe9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |35201578&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |359278&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |37f53a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |38144972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |38542646&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3b74c9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3c136f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3cf72823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3d7af029&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |3ff34782&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4129618&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4189fac3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |420bd4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |42a699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |441369&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4458713e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4554b6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |457425&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4603b207&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |46574957&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |46574958&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |46813529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |46f1e13d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |47534c43&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |48550336&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |48576893&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |48576894&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4889ac02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |49005740&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |49867584&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |49960973&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4a5341&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4f4e48&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4f8a0a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |50299698&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |50299699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |50361291&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |5242ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |53d30c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |56347a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |563a95f1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |573823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |58027529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |5d2d63&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |5f7e3b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |60461793&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |60d355&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |616627aa&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |62317182&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6253fa2e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |64100768&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |64100769&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |64100770&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |647395&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |66543234&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |67674763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |67739784&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |68fb9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |69801276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6af9fa2f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6af9fa3f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6af9fa4f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6bd8c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6c7691&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6d4296ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6dd7e7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6dd7e8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |6fe11ec1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |716511763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |72504593&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |73304097&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |73314098&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |74095213&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |74095213a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |74095213b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |74095214&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |748f9649&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |75494732&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |78452832&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |784561&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |78e16b9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |79251225&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |7c128b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |7ccd93&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |7df8d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |800c2310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |80546710&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |80772310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |808ee280&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |81131154&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |81274457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8292291f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |83498426&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |84993794&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |84995585&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |84a0a0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |852142&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |85612309&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |85612310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |85612311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |85612312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8623ff27&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |87364952&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |87f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |886748&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |89894423&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8ad8a75&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8ad8ad00&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8bb815&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8bb817&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8bb818&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8bb819&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8e640cd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8f34971a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8f773984&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |8f7a7d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |902486209&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |90482571&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |91214835&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |912848290&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |915e56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92179063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92179064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92179065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92179066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92350358&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92809063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92809064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92809065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92809066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |92920143&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |93a89b12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |93a89c0b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |94812574&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |95282304&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |95394027&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |959b1f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9638af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |96fd59&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275667&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275668&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275669&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f627566a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f627566b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f627566d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f627566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f627566f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f6275671&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |97f727566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |98480775&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |98480776&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |98480777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |992431&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9aa29065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9af32c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9af32d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9af32e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9c108b71&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |9f279065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_00008600&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0007b25e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0083e1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_01621887&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_03134743&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0356afd0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0356afd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0356afd2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0356afd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_094313&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x04dc09&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x111133&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x1aa483&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x1cb1cf&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x1cb1d0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x1e3221&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x300fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x301fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x302fc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x3eec59&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x46b3ed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dc6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dd0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x523dd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x5344bb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x555237&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x58a234&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x7b4428&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dc0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dc1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dc2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dc3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x923dd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x9abdc5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0x9abdc6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xaaa36c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb09da5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb0b348&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xb0b349&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xbb558f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xbd10fb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xc32ad3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xce2348&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xcfd81f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xe0036b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xe01f2d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xe17212&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xeae966&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xed4f82&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xf12335&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_0xf12336&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_10261989&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1042d483&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_10572898&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_115631&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_12950094&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1314f311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1314f312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_13279512&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_13813496&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_14507179&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_15694569&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_16936964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_17aa230c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_182054&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_18273275&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_18273276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1854d03b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_18add00d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_19156670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_19286545&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1a298e9f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1acf43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1bda43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_1c3b92&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_21509920&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_215323457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2165ad&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2165ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_21be9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_233264316&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_234557580&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_23cd0e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_24189123&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2443266&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_25025519&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_255e39&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2583364&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2888c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_28ca3e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_29871243&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2a1f64&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2dc432&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2de437&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2f3bb89c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_2fd652&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3001ac&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_31298772&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_313233&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_31f7d603&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_320ce4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_32153248&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_32153249&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_335bca&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_342abb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_34dfe6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_34dfe7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_34dfe8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_34dfe9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_35201578&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_359278&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_37f53a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_38144972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_38542646&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3b74c9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3c136f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3cf72823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3d7af029&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_3ff34782&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4129618&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4189fac3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_420bd4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_42a699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_441369&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4458713e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4554b6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_457425&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4603b207&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_46574957&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_46574958&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_46813529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_46f1e13d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_47534c43&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_48550336&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_48576893&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_48576894&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4889ac02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_49005740&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_49867584&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_49960973&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4a5341&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4f4e48&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_4f8a0a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_50299698&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_50299699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_50361291&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_5242ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_53d30c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_56347a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_563a95f1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_573823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_58027529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_5d2d63&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_5f7e3b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_60461793&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_60d355&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_616627aa&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_62317182&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6253fa2e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_64100768&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_64100769&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_64100770&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_647395&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_66543234&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_67674763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_67739784&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_68fb9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_69801276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6af9fa2f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6af9fa3f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6af9fa4f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6bd8c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6c7691&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6d4296ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6dd7e7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6dd7e8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_6fe11ec1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_716511763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_72504593&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_73304097&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_73314098&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_74095213&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_74095213a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_74095213b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_74095214&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_748f9649&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_75494732&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_78452832&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_784561&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_78e16b9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_79251225&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_7c128b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_7ccd93&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_7df8d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_800c2310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_80546710&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_80772310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_808ee280&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_81131154&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_81274457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8292291f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_83498426&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_84993794&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_84995585&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_84a0a0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_852142&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_85612309&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_85612310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_85612311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_85612312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8623ff27&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_87364952&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_87f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_886748&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_89894423&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8ad8a75&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8ad8ad00&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8bb815&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8bb817&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8bb818&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8bb819&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8e640cd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8f34971a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8f773984&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_8f7a7d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_902486209&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_90482571&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_91214835&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_912848290&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_915e56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92179063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92179064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92179065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92179066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92350358&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92809063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92809064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92809065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92809066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_92920143&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_93a89b12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_93a89c0b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_94812574&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_95282304&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_95394027&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_959b1f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9638af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_96fd59&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275667&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275668&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275669&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f627566a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f627566b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f627566d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f627566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f627566f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f6275671&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_97f727566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_98480775&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_98480776&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_98480777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_992431&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9aa29065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9af32c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9af32d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9af32e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9c108b71&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_9f279065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a01bc728&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a13b46c80&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a22eb0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a2fb451e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a3456abe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a7044887&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a7149200&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_a766215670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_aalinegamma&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_aalinetweaks&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ab34ee01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ab34ee02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ab34ee03&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ac0274&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_af73c63e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_af73c63f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_af9927&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_afoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_allocdeviceevents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_app_softimage&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_app_supportbits2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_applicationkey&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_appreturnonlybasicglsltype&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_assumetextureismipmappedatcreation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_b1fb0f01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_b3edd5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_b40d9e03d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_b7f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_b812c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ba14ba1a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ba14ba1b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_bd7559&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_bd755a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_bd755c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_bd755d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_be58bb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_be92cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_beefcba3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_beefcba4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c023777f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c09dc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c0d340&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c2ff374c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c5e9d7a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c5e9d7a4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c5e9d7b4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_c618f9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ca345840&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cachedisable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_channelpriorityoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cleardatastorevidmem&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cmdbufmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cmdbufminwords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cmdbufsizewords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_conformantblitframebufferscissor&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_conformantincompletetextures&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_copybuffermethod&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cubemapaniso&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_cubemapfiltering&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d0e9a4d7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d13733f12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d1b399&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d2983c32&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d2983c33&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d2e71b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d377dc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d377dd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d489f4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d4bce1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518cd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d518d5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d59eda&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d83cbd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_d8e777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_debug_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_debug_options&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_devshmpageableallocations&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_df1f9812&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_df783c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_diagenable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_disallowcemask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_disallowz16&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_dlmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e0bfec&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e433456d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e435563f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e4cd9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e5c972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e639ef&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_e802af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_eae964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_earlytexturehwallocation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_eb92a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ebca56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_expert_detail_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_expert_output_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_expert_report_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_extensionstringnvarch&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_extensionstringversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f00f1938&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f10736&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f1846870&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f33bc370&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f392a874&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_f49ae8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fa345cce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fa35cc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_faa14a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_faf8a723&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fastgs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fbf4ac45&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fbo_blit_ignore_srgb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_fc64c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ff54ec97&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_ff54ec98&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_forceexitprocessdetach&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_forcerequestedesversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_glsynctovblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_gvitimeoutcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_hcctrl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_hwstate_per_ctx&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_machinecachelimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_maxframesallowed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_memmgrcachedalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_memmgrcachedalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_memmgrsysheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_memmgrsysheapalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_memmgrvidheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_mosaic_clip_to_subdev&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_mosaic_clip_to_subdev_h_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_mosaic_clip_to_subdev_v_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_overlaymergeblittimerms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_perfmon_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_pixbar_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_qualityenhancements&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_r27s18q28&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_r2d7c1d8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_renderer&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_renderqualityflags&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_s3tcquality&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shader_disk_cache_path&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shader_disk_cache_read_only&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shaderatomics&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shadercacheinitsize&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shaderobjects&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shaderportabilitywarnings&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_shaderwarningsaserrors&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_skiptexturehostcopies&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_sli_dli_control&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_sparsetexture&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_spinlooptimeout&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_sync_to_vblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_sysheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_sysmemtexturepromotion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_targetflushcount&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_tearingfreeswappresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_texclampbehavior&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_texlodbias&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_texmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_textureprecache&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_threadcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_threadcontrol2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_usegvievents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_vbomemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_vertexlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_vidheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_vpipe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_vpipeformatbloatlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_wglmessageboxonabort&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_writeinfolog&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_writeprogramobjectassembly&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_writeprogramobjectsource&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_xnvadapterpresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yield&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunction&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunctionfast&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunctionslow&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunctionwaitfordcqueue&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunctionwaitforframe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_yieldfunctionwaitforgpu&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__gl_zbctableaddhysteresis&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_debug_filename&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_debug_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_debug_options&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_version_major_override&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |__glslc_version_minor_override&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a01bc728&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a13b46c80&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a22eb0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a2fb451e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a3456abe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a7044887&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a7149200&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |a766215670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aac_drc_boost&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aac_drc_cut&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aac_drc_enc_target_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aac_drc_heavy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aac_drc_reference_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aalinegamma&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |aalinetweaks&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ab34ee01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ab34ee02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ab34ee03&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ac0274&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |af73c63e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |af73c63f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |af9927&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |afoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |allocdeviceevents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |app_softimage&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |app_supportbits2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |applicationkey&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |appreturnonlybasicglsltype&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |assumetextureismipmappedatcreation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |b1fb0f01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |b3edd5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |b40d9e03d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |b7f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |b812c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ba14ba1a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ba14ba1b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bd7559&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bd755a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bd755c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bd755d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |be58bb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |be92cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |beefcba3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |beefcba4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c023777f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c09dc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c0d340&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c2ff374c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c5e9d7a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c5e9d7a4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c5e9d7b4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |c618f9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ca345840&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cachedisable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cast.on&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cde&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |channelpriorityoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cleardatastorevidmem&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cmdbufmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cmdbufminwords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cmdbufsizewords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |conformantblitframebufferscissor&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |conformantincompletetextures&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |copybuffermethod&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cubemapaniso&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cubemapfiltering&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_auto_boost&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_cache_disable&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_cache_maxsize&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_cache_path&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_devcode_path&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_device_max_connections&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_device_order&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_device_waits_on_exception&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_disable_fast_ecc&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_disable_process_error_mode&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_enable_p2p_no_uva&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_force_ptx_jit&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_launch_blocking&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_managed_force_device_alloc&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_set_watchdog&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_va_reservation_chunk_size&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cuda_visible_devices&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d0e9a4d7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d13733f12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d1b399&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d2983c32&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d2983c33&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d2e71b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d377dc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d377dd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d489f4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d4bce1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518cd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d518d5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d59eda&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d83cbd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |d8e777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dc_scaling_limit_h_d&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x780&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dc_scaling_limit_h_n&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x2ac&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dc_scaling_limit_v_d&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x438&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dc_scaling_limit_v_n&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x1c8&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_options&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |devshmpageableallocations&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |df1f9812&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |df783c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |diagenable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disallowcemask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disallowz16&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dlmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e0bfec&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e433456d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e435563f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e4cd9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e5c972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e639ef&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |e802af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |eae964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |earlytexturehwallocation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |eb92a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ebca56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable-noaud&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable-noavs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable-prof&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable-sxesmode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable-ulld&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |expert_detail_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |expert_output_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |expert_report_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |extensionstringnvarch&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |extensionstringversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f00f1938&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f10736&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f1846870&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f33bc370&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f392a874&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |f49ae8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fa345cce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fa35cc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |faa14a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |faf8a723&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fastgs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fbf4ac45&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fbo_blit_ignore_srgb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |fc64c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ff54ec97&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ff54ec98&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |forceexitprocessdetach&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |forcerequestedesversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |glsynctovblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_debug_mode&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_stay_on&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gpu_timeout_ms_max&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |gvitimeoutcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |hcctrl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |hwstate_per_ctx&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |libandroid_enable_log&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |machinecachelimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |maxframesallowed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |media.aac_51_output_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |memmgrcachedalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |memmgrcachedalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |memmgrsysheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |memmgrsysheapalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |memmgrvidheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mosaic_clip_to_subdev&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mosaic_clip_to_subdev_h_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mosaic_clip_to_subdev_v_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_decompression&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_emc_dvfs_test&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_emc_init_rate_hz&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_gmmu_va_page_split&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The size in bits of the default VA range to be used with big pages with the rest of the VA range being for small pages.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_gmmu_va_range&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The end of the default VA range in bits.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_graphics_firmware_memory_margin&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_memory_profiler&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_pllcx_always_on&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_pllcx_safe_div&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_usb_plls_hw_ctrl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nv_winsys&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvblit.dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvblit.profile&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvblit.twod&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvblit.vic&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvddk_vic_prevent_use&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvdisp_bl_ctrl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvdisp_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvdisp_enable_ts&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| nvdisp_hdcp_compliance&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |nvhdcp_max_retries&lt;br /&gt;
| 3.0.0-3.0.2&lt;br /&gt;
| &amp;quot;5&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |nvhdcp_timeout_ms&lt;br /&gt;
| 3.0.0-3.0.2&lt;br /&gt;
| &amp;quot;12000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvhost_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |nvhost_vic_memory_policy&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.control_modeset&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.dump_config&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.dump_layerlist&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.dump_windows&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.enable_disp_trans&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.ftrace_enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.hdcp_enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.hidden_window_mask0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.hidden_window_mask1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.immediate_modeset&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.imp_enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.no_egl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.no_scratchblit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.no_vic&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.null_display&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.scan_props&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.swap_interval&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvidia.hwc.war_1515812&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvmap_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvn_no_vsync_capability&lt;br /&gt;
| 2.2.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvn_through_opengl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_enable_log&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_flip_policy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_hotplug_autoswitch&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_prefer_primary_layer&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_service_priority&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_service_threads&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_swap_interval&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_track_perf&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvnflinger_virtualdisplay_policy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;60hz&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_36lvajow&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_554expuw&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_59ct6eds&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_6aqelj8y&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_6trs9rwi&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_apapy18r&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_channel_interleave&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_channel_priority&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_channel_timeslice&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_ci4wetrn&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_default_device_index&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_disable_compression&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_dm7xllka&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_dummy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_eepyr4lp&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_gjwknsbf&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_gt1cb8jb&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_help&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_isewvh0s&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_lfkct7ht&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_liy1nc6l&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_m5qebtld&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_maiapsxj&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nbbeyqfm&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_disable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_do_nfa_partial_map&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_ecc_overrides&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_force_immediate_unmap&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_force_scg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_as_get_va_regions&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_channel_abort&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_cyclestats&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_fixed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_gpu_characteristics&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_ioctl_mutex&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_l3&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_map_buffer_ex&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_probe_dgpu&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_probe_igpu&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_robustness&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_sparse&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_syncpoints&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_tsg&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_zbc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_no_zcull&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_nvgpu_wrap_channels_in_tsgs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_omdtirby&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_ometcz6b&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_osawipsf&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_prevent_use&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_trace&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_uzfvtuhi&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_v5tz4s00&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_vgeey2dw&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_xatkicfl&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_xzoebcw9&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_yrghr5g6&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvrm_gpu_zugirozd&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvsched_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvsched_force_enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvsched_force_log&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvwsi_dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nvwsi_fill&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0356afd0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0356afd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0356afd2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0356afd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dc0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dc1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dc2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dc3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x923dd3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x9abdc5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0x9abdc6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0xbd10fb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_0xce2348&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_10261989&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1042d483&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_10572898&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_115631&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_12950094&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1314f311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1314f312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_13279512&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_13813496&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_14507179&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_15694569&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_16936964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_17aa230c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_182054&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_18273275&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_18273276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1854d03b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_18add00d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_19156670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_19286545&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1a298e9f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1acf43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1bda43fe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_1c3b92&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_21509920&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_215323457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2165ad&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2165ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_21be9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_233264316&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_234557580&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_23cd0e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_24189123&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2443266&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_25025519&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_255e39&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2583364&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2888c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_28ca3e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_29871243&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2a1f64&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2dc432&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2de437&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2f3bb89c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_2fd652&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3001ac&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_31298772&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_313233&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_31f7d603&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_320ce4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_32153248&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_32153249&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_335bca&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_342abb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_34dfe6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_34dfe7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_34dfe8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_34dfe9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_35201578&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_359278&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_37f53a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_38144972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_38542646&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3b74c9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3c136f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3cf72823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3d7af029&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_3ff34782&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4129618&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4189fac3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_420bd4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_42a699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_441369&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4458713e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4554b6&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_457425&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4603b207&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_46574957&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_46574958&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_46813529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_46f1e13d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_47534c43&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_48550336&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_48576893&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_48576894&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4889ac02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_49005740&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_49867584&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_49960973&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4a5341&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4f4e48&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_4f8a0a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_50299698&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_50299699&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_50361291&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_5242ae&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_53d30c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_56347a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_563a95f1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_573823&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_58027529&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_5d2d63&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_5f7e3b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_60461793&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_60d355&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_616627aa&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_62317182&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6253fa2e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_64100768&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_64100769&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_64100770&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_647395&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_66543234&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_67674763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_67739784&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_68fb9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_69801276&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6af9fa2f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6af9fa3f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6af9fa4f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6bd8c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6c7691&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6d4296ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6dd7e7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6dd7e8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_6fe11ec1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_716511763&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_72504593&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_73304097&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_73314098&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_74095213&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_74095213a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_74095213b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_74095214&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_748f9649&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_75494732&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_78452832&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_784561&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_78e16b9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_79251225&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_7c128b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_7ccd93&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_7df8d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_800c2310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_80546710&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_80772310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_808ee280&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_81131154&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_81274457&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8292291f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_83498426&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_84993794&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_84995585&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_84a0a0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_852142&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_85612309&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_85612310&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_85612311&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_85612312&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8623ff27&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_87364952&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_87f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_886748&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_89894423&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8ad8a75&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8ad8ad00&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8bb815&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8bb817&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8bb818&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8bb819&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8e640cd1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8f34971a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8f773984&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_8f7a7d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_902486209&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_90482571&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_91214835&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_912848290&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_915e56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92179063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92179064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92179065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92179066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92350358&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92809063&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92809064&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92809065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92809066&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_92920143&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_93a89b12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_93a89c0b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_94812574&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_95282304&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_95394027&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_959b1f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9638af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_96fd59&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275667&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275668&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275669&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f627566a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f627566b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f627566d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f627566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f627566f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f6275671&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_97f727566e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_98480775&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_98480776&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_98480777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_992431&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9aa29065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9af32c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9af32d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9af32e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9c108b71&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_9f279065&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a01bc728&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a13b46c80&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a22eb0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a2fb451e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a3456abe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a7044887&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a7149200&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_a766215670&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_aalinegamma&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_aalinetweaks&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ab34ee01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ab34ee02&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ab34ee03&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ac0274&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_af73c63e&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_af73c63f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_af9927&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_afoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_allocdeviceevents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_app_softimage&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_app_supportbits2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_applicationkey&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_appreturnonlybasicglsltype&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_assumetextureismipmappedatcreation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_b1fb0f01&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_b3edd5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_b40d9e03d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_b7f6275666&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_b812c1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ba14ba1a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ba14ba1b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_bd7559&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_bd755a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_bd755c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_bd755d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_be58bb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_be92cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_beefcba3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_beefcba4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c023777f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c09dc8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c0d340&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c2ff374c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c5e9d7a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c5e9d7a4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c5e9d7b4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_c618f9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ca345840&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cachedisable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_channelpriorityoverride&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cleardatastorevidmem&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cmdbufmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cmdbufminwords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cmdbufsizewords&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_conformantblitframebufferscissor&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_conformantincompletetextures&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_copybuffermethod&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cubemapaniso&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_cubemapfiltering&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d0e9a4d7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d13733f12&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d1b399&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d2983c32&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d2983c33&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d2e71b&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d377dc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d377dd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d489f4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d4bce1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518cb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518cd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518ce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d0&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d1&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d518d5&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d59eda&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d83cbd&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_d8e777&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_debug_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_debug_options&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_devshmpageableallocations&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_df1f9812&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_df783c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_diagenable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_disallowcemask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_disallowz16&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_dlmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e0bfec&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e433456d&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e435563f&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e4cd9c&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e5c972&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e639ef&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_e802af&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_eae964&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_earlytexturehwallocation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_eb92a3&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ebca56&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_expert_detail_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_expert_output_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_expert_report_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_extensionstringnvarch&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_extensionstringversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f00f1938&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f10736&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f1846870&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f33bc370&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f392a874&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_f49ae8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fa345cce&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fa35cc4&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_faa14a&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_faf8a723&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fastgs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fbf4ac45&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fbo_blit_ignore_srgb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_fc64c7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ff54ec97&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_ff54ec98&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_forceexitprocessdetach&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_forcerequestedesversion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_glsynctovblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_gvitimeoutcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_hcctrl&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_hwstate_per_ctx&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_machinecachelimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_maxframesallowed&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_memmgrcachedalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_memmgrcachedalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_memmgrsysheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_memmgrsysheapalloclimitratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_memmgrvidheapalloclimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_mosaic_clip_to_subdev&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_mosaic_clip_to_subdev_h_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_mosaic_clip_to_subdev_v_overlap&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_overlaymergeblittimerms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_perfmon_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_pixbar_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_qualityenhancements&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_r27s18q28&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_r2d7c1d8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_renderer&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_renderqualityflags&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_s3tcquality&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shader_disk_cache_path&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shader_disk_cache_read_only&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shaderatomics&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shadercacheinitsize&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shaderobjects&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shaderportabilitywarnings&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_shaderwarningsaserrors&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_skiptexturehostcopies&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_sli_dli_control&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_sparsetexture&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_spinlooptimeout&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_sync_to_vblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_sysheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_sysmemtexturepromotion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_targetflushcount&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_tearingfreeswappresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_texclampbehavior&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_texlodbias&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_texmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_textureprecache&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_threadcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_threadcontrol2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_usegvievents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_vbomemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_vertexlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_vidheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_vpipe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_vpipeformatbloatlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_wglmessageboxonabort&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_writeinfolog&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_writeprogramobjectassembly&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_writeprogramobjectsource&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_xnvadapterpresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yield&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunction&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunctionfast&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunctionslow&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunctionwaitfordcqueue&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunctionwaitforframe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_yieldfunctionwaitforgpu&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ogl_zbctableaddhysteresis&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |overlaymergeblittimerms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |perfmon_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.sys.display.resolution&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.composite.fallb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.composite.policy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.composite.range&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.compositor&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.compositor.virt&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.compression&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.cursor.enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.didim.enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.didim.normal&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.didim.video&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.disp.heads&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.gamma_correction&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.gpu_mapping_cache&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.grlayout&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.2020.10&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.2020.fake&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.2020.force&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.autorotate&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.hdr.fake&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.ignore_ratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.limit.clock&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.only_16_9&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.range&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.resolution&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.underscan&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.yuv.422&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.yuv.444&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.yuv.enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hdmi.yuv.force&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.hwc.nvdc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.idle.minimum_fps&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.panel.rotation&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.scan_props&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.stb.mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |persist.tegra.zbc_override&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |pixbar_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |qualityenhancements&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |r27s18q28&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |r2d7c1d8&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |renderer&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |renderqualityflags&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |rmos_debug_mask&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |rmos_set_production_mode&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |s3tcquality&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shader_disk_cache_path&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shader_disk_cache_read_only&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shaderatomics&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shadercacheinitsize&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shaderobjects&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shaderportabilitywarnings&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |shaderwarningsaserrors&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skiptexturehostcopies&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sli_dli_control&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sparsetexture&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |spinlooptimeout&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sync_to_vblank&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sysheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sysmemtexturepromotion&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |targetflushcount&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tearingfreeswappresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tegra.refresh&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |texclampbehavior&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |texlodbias&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |texmemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |textureprecache&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |threadcontrol&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |threadcontrol2&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.avp.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.buffer.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.dec.prof&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.deint.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.dfs.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.ffprof.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.game.stream&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.general.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.input.dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.seeking.logs&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tvmr.ts_pulldown&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |usegvievents&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vbomemoryspaceenables&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vcc_debug_ip&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vcc_verbose_level&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vertexlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |viccomposer.filter&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |viccomposer.highpriority&lt;br /&gt;
| 7.0.0-7.0.1&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0-8.1.0&lt;br /&gt;
| &amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |viccomposer.normalpriority&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |videostats-enable&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vidheapreuseratio&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vpipe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vpipeformatbloatlimit&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |wglmessageboxonabort&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |writeinfolog&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |writeprogramobjectassembly&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |writeprogramobjectsource&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |xnvadapterpresent&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yield&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunction&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunctionfast&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunctionslow&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunctionwaitfordcqueue&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunctionwaitforframe&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |yieldfunctionwaitforgpu&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |zbctableaddhysteresis&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= nvservices =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |external_display_full_dp_lanes&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |internal_display_vddpn_control&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper = false, PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko = true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= olsc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |autonomy_registration_interval_seconds&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 46800 (0xb6d0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |default_auto_download_global_setting&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |default_auto_upload_global_setting&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_global_transfer_task_autonomy_registration_enabled&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_on_event_transfer_task_registration_enabled&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_periodic_transfer_task_registration_enabled&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |long_sleep_detection_seconds&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 1468800 (0x166980)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |network_connection_polling_interval_seconds&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 10800 (0x2a30)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |network_service_license_info_cache_expiration_seconds&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 457200 (0x6f9f0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |network_trouble_detection_span_seconds&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |network_trouble_detection_threshold&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 3 (0x3)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |postponed_transfer_task_processing_interval_seconds&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 46800 (0xb6d0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_backoff_scale&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_backoff_unit_seconds&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 127 (0x7f)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_lost_connection_interval_seconds&lt;br /&gt;
| 6.0.0-6.2.0&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_offset_seconds&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 600 (0x258)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_primary_save_data_preservation_enabled&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_save_data_backup_policy_check_required&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= omm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |backlight_off_ms_on_handheld_switch&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 150 (0x96)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |charging_sign_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 3000 (0xbb8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dsi_fatal_handling&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dsi_fatal_handling_invalidation&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_crda_fw_update_supported&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = false, PlatformConfigIcosa/PlatformConfigIcosaMariko = true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |hdcp_failed_emulation&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |low_battery_sign_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 3000 (0xbb8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |operation_mode_policy&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;auto&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sign_fade_in_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sign_fade_out_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 400 (0x190)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sign_wait_layer_visible_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 100 (0x64)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_fade_in_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 50 (0x32)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |sleep_fade_out_ms&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| 200 (0xc8)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 100 (0x64)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_on_ac_ok_boot&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |startup_fade_in_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 200 (0xc8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |startup_fade_out_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 400 (0x190)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= pcie =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |root_port_dev_setting&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |root_port_mask_dev&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x3&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |root_port_mask_prod&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| 0x2&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= pcm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname0&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VSYS-GPU-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_VDD_GPU_AP&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VSYS-GPU-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_VDD_GPU_AP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname1&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VSYS-CPU-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_VDD_CPU_AP&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VSYS-CPU-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_VDD_CPU_AP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname2&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VSYS-DDR-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_V_VDD-DDR_1V1-PMIC&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VSYS-DDR-DS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_V_VDD-DDR_1V1-PMIC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |devname3&lt;br /&gt;
| ?+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag/PlatformConfigIcosa/PlatformConfigIcosaMariko = &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname4&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VSYS-AP&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;ina226_V_VSYS-AP&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VSYS-AP&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;sdev_V_VSYS-AP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname5&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VDD15V0-HB&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;ina226_V_VDD15V0-HB&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VDD15V0-HB&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;sdev_V_VDD15V0-HB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname6&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_SYS-CORE&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_V_VDD-CORE-AP&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_SYS-CORE&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_V_VDD-CORE-AP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname7&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_SOC-1V8&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_V_VDD_SOC-1V8&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_SOC-1V8&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_V_VDD_SOC-1V8&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname8&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_LPDDR-1V8&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_V_VDD_1V8&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_LPDDR-1V8&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_V_VDD_1V8&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname9&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_REG-1V32&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;ina226_V_REG-1V32&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_REG-1V32&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;sdev_V_REG-1V32&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname10&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;ina226_V_VDD-3V3-SYS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;ina226_V_VDD-3V3-SYS&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag = &amp;quot;&amp;quot;, PlatformConfigIcosa = &amp;quot;sdev_V_VDD-3V3-SYS&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;sdev_V_VDD-3V3-SYS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |devname11&lt;br /&gt;
| ?-9.2.0&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag/PlatformConfigIcosa = &amp;quot;&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;SdevMariko_ina226_V_VDD_DDR_0V6&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0+&lt;br /&gt;
| PlatformConfigCopper/PlatformConfigHoag/PlatformConfigIcosa = &amp;quot;&amp;quot;, PlatformConfigIcosaMariko = &amp;quot;msdev_V_VDD_DDR_0V6&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= pctl =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ignore_post_event_interval_from_server&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |intermittent_task_interval_seconds&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 21600 (0x5460)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |post_event_interval_seconds&lt;br /&gt;
| 6.0.0-10.2.0&lt;br /&gt;
| 600 (0x258)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= pdm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |force_migrate_account_database&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_production&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_playlog&lt;br /&gt;
| 1.0.0-9.2.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= prepo =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |background_processing&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |buffer_usage_for_immediately_flush&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 50 (0x32)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_unlinked_user_report_save_allowed&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |devmenu_prepo_page_view&lt;br /&gt;
| 1.0.0-9.2.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |output_save_log&lt;br /&gt;
| 5.0.0-7.0.1&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |report_data_buffer_time&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_log_level&lt;br /&gt;
| 8.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |save_system_report&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |statistics_post_interval&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 86400 (0x15180)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |statistics_save_interval_min&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transmission_interval_in_sleep&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 10800 (0x2a30)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transmission_interval_min&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 10 (0xa)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transmission_retry_interval&lt;br /&gt;
| 3.0.0-5.1.0&lt;br /&gt;
| 3600 (0xe10)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transmission_retry_interval_max&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 7200 (0x1c20)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transmission_retry_interval_min&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| 3600 (0xe10)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= productinfo =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |cec_osd_name&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;NintendoSwitch&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |product_name&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;Nintendo Switch&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |vendor_name&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| &amp;quot;Nintendo&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= psm =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |boost_threshold_in_milli_volt&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| PlatformConfigCopper = 0x0, PlatformConfigIcosa/PlatformConfigHoag/PlatformConfigIcosaMariko = 0xcf8&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |charge_configuration_number&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 0x0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |charge_current_limit_milli_ampere&lt;br /&gt;
| 4.0.0-6.2.0&lt;br /&gt;
| 2048 (0x800)&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 7.0.0+&lt;br /&gt;
| -1 (0xffffffff)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |evaluation_log_enabled&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= push_notification =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |nup_notification_topic_id&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| &amp;quot;nx_nup&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |retry_interval&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |subscribe_nup_notification&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ro =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |ease_nro_restriction&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= settings_debug =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_debug_mode_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |is_hdmi_cec_suppression_enabled&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |platform_region_default&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |home_menu_scheme_main_color&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |With 11.0.0+ the old field was removed from PlatformConfigHoag.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |home_menu_scheme_back_color&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |With 11.0.0+ the old field was removed from PlatformConfigHoag.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |home_menu_scheme_sub_color&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |With 11.0.0+ the old field was removed from PlatformConfigHoag.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |home_menu_scheme_bezel_color&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |With 11.0.0+ the old field was removed from PlatformConfigHoag.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |home_menu_scheme_model&lt;br /&gt;
| 10.1.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |With 11.0.0+ the old field was removed from PlatformConfigHoag.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= ssl.test =&lt;br /&gt;
This class does not exist on retail firmware.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |initialize_for_test&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Used by [[SSL_services|SSL]] when an input param is a certain value, however this func is never called with that value (on newer system-versions).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= sio_hoag =&lt;br /&gt;
This class does not exist before 9.0.0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |mcu_reset_on_command_retry_enabled&lt;br /&gt;
| 9.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= snap_shot_dump =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |auto_dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |full_dump&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |output_all_log&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |output_dir&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;%USERPROFILE%/Documents/Nintendo/NXDMP&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systemconfig =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |exhivision&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |field_testing&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systeminitializer =&lt;br /&gt;
The default fields for this class only exist in the PlatformConfig* titles. bct_eks_offset/bct_version_offset only exist for PlatformConfigIcosa/PlatformConfigCopper.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bct_eks_offset&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Offset within the [[BCT]] where the [[Flash_Filesystem|keyblob]]/&amp;quot;EKS&amp;quot; is stored.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bct_version_offset&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| &lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |Offset within the [[BCT]] where the keyblob version is stored (bootloader0_info.version).&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |boot_image_update_type&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| 0 for non-Mariko, 1 otherwise.&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |eks_enabled&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| true for non-Mariko, false otherwise.&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systempowerstate =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |always_reboot&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |power_state_message_emulation_trigger_time&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |power_state_message_to_emulate&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systemreport =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enabled&lt;br /&gt;
| 2.0.0-9.2.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systemsleep =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disable_auto_sleep&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |disable_tma_sleep&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dummy_event_auto_wake&lt;br /&gt;
| 2.0.0-3.0.2&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enter_sc7&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enter_sleep&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |hush_time_after_brief_power_button_press_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 1000 (0x3e8)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |keep_vdd_core&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |override_auto_sleep_time&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_pending_time_ms&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 15000 (0x3a98)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |transition_timeout_sec&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |wake_pin_debug_mode&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systemstartup =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skip_psc_wait&lt;br /&gt;
| 5.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= systemupdate =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |assumed_system_applet_version&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |bgnup_retry_seconds&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 60 (0x3c)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_id&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;0x0000000000000000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_id_for_content_delivery&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| &amp;quot;0x0000000000000000&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_version&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |debug_version_for_content_delivery&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_background_download_stress_testing&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |enable_network_service&lt;br /&gt;
| 1.0.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 2.0.0-2.3.0&lt;br /&gt;
| true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= target_manager =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |device_name&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| &amp;quot;&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= tc =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |holdable_tskin&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0xb98c&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |iir_filter_gain_pcb&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 100 (0x64)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |iir_filter_gain_soc&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 100 (0x64)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |log_enabled&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |rate_select&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;both&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |sleep_enabled&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |touchable_tskin&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0xea60&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |tskin_pcb_coefficients_console&lt;br /&gt;
| 1.0.0-4.1.0&lt;br /&gt;
| &amp;quot;[6182, 112480]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| &amp;quot;[6396, 119440]&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_pcb_coefficients_console_on_fwdbg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;[6396, 119440]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |tskin_pcb_coefficients_handheld&lt;br /&gt;
| 1.0.0-4.1.0&lt;br /&gt;
| &amp;quot;[5464, 174190]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.0-5.1.0&lt;br /&gt;
| &amp;quot;[5817, 129580]&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_pcb_coefficients_handheld_on_fwdbg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;[5817, 129580]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |tskin_rate_table_console&lt;br /&gt;
| 1.0.0-4.1.0&lt;br /&gt;
| &amp;quot;[[-1000000, 43000, 51, 51], [43000, 53000, 51, 153], [53000, 58000, 153, 255], [58000, 1000000, 255, 255]]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |This was moved into the PlatformConfig* titles with 12.0.0+.&lt;br /&gt;
|-&lt;br /&gt;
| 5.0.0-11.0.1&lt;br /&gt;
| &amp;quot;[[-1000000, 40000, 0, 0], [36000, 43000, 51, 51], [43000, 53000, 51, 153], [53000, 58000, 153, 255], [58000, 1000000, 255, 255]]&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_rate_table_console_on_fwdbg&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| &amp;quot;[[-1000000, 40000, 0, 0], [36000, 43000, 51, 51], [43000, 53000, 51, 153], [53000, 58000, 153, 255], [58000, 1000000, 255, 255]]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_rate_table_handheld&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;[[-1000000, 40000, 0, 0], [36000, 43000, 51, 51], [43000, 48000, 51, 102], [48000, 53000, 102, 153], [53000, 1000000, 153, 153], [48000, 1000000, 153, 153]]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |This was moved into the PlatformConfig* titles with 12.0.0+.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_rate_table_handheld_on_fwdbg&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| &amp;quot;[[-1000000, 40000, 0, 0], [36000, 43000, 51, 51], [43000, 48000, 51, 102], [48000, 53000, 102, 153], [53000, 1000000, 153, 153], [48000, 1000000, 153, 153]]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_select&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| &amp;quot;both&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_soc_coefficients_console&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| &amp;quot;[6182, 112480]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_soc_coefficients_console_on_fwdbg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;[6182, 112480]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_soc_coefficients_handheld&lt;br /&gt;
| 1.0.0-5.1.0&lt;br /&gt;
| &amp;quot;[5464, 174190]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |tskin_soc_coefficients_handheld_on_fwdbg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| &amp;quot;[5464, 174190]&amp;quot;&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |use_configurations_on_fwdbg&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= tcap =&lt;br /&gt;
This class was removed with 11.0.0+.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |continuous_high_skin_temperature_milli_seconds&lt;br /&gt;
| 5.0.0-10.2.0&lt;br /&gt;
| 28800000 (0x1b77400)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |thermal_burn_prevention_mode_enabled&lt;br /&gt;
| 5.0.0-10.2.0&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= tc.low-temperature-burn =&lt;br /&gt;
This class did not exist before 11.0.0+.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |detection_enabled&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |time_span&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 28800000 (0x1b77400)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= time =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |notify_time_to_fs_interval_seconds&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| 600 (0x258)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |standard_network_clock_sufficient_accuracy_minutes&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 43200 (0xa8c0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |standard_steady_clock_rtc_update_interval_minutes&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| 5 (0x5)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |standard_steady_clock_test_offset_minutes&lt;br /&gt;
| 1.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |standard_user_clock_initial_year&lt;br /&gt;
| 5.0.0-7.0.1&lt;br /&gt;
| 2018 (0x7e2)&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0-9.2.0&lt;br /&gt;
| 2019 (0x7e3)&lt;br /&gt;
|-&lt;br /&gt;
| 10.0.0-11.0.1&lt;br /&gt;
| 2020 (0x7e4)&lt;br /&gt;
|-&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| 2021 (0x7e5)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= usb =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |4kdp_preferred_over_usb30&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |show_pdc_boot_fatal&lt;br /&gt;
| 6.0.0+&lt;br /&gt;
| true&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |usb30_force_enabled&lt;br /&gt;
| 3.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= vi =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dsi_error_policy&lt;br /&gt;
| 11.0.0+&lt;br /&gt;
| 0x0&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |The default field for this only exist in the PlatformConfig* titles.&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |dsi_error_policy_invalidation&lt;br /&gt;
| 12.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= vulnerability =&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |enable_debug&lt;br /&gt;
| 4.0.0+&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |needs_update_vulnerability_policy&lt;br /&gt;
| 2.0.0+&lt;br /&gt;
| 0 (0x0)&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= wlan_debug =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || Versions || Default Values || Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |skip_wlan_boot&lt;br /&gt;
| 1.0.0-6.2.0&lt;br /&gt;
| false&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; |&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=Error_codes&amp;diff=10698</id>
		<title>Error codes</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=Error_codes&amp;diff=10698"/>
		<updated>2021-02-17T11:45:20Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Widen definition of time error 103 as it&amp;#039;s also used for steady clocks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Structure =&lt;br /&gt;
These have been redesigned from the 3DS so that they fit within a Aarch64 MOV instruction immediate most of the time (without requiring the additional MOVK).&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Bits || Field&lt;br /&gt;
|-&lt;br /&gt;
| 8-0 || Module&lt;br /&gt;
|-&lt;br /&gt;
| 21-9 || Description&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
When a fatal-error is received the error code is outputted using the following formatter:&lt;br /&gt;
  %04d-%04d&lt;br /&gt;
&lt;br /&gt;
.. where the first code is &amp;lt;code&amp;gt;2000 + Module&amp;lt;/code&amp;gt;, and the other being &amp;lt;code&amp;gt;Description&amp;lt;/code&amp;gt;. Bits &amp;gt;=22 from the error-code are unused when displaying fatal-errors, since the Description ends with bit21.&lt;br /&gt;
&lt;br /&gt;
= Result Errors =&lt;br /&gt;
General errors used by system modules and applications.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Kernel&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Fs&lt;br /&gt;
|-&lt;br /&gt;
| 3 || OS&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Htcs&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Ncm&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Dd&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Dmnt&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Lr&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Loader&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Cmif&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Hipc&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Pm&lt;br /&gt;
|-&lt;br /&gt;
| 16 || Ns&lt;br /&gt;
|-&lt;br /&gt;
| 17 || Bsdsockets&lt;br /&gt;
|-&lt;br /&gt;
| 18 || Htc&lt;br /&gt;
|-&lt;br /&gt;
| 19 || Tsc&lt;br /&gt;
|-&lt;br /&gt;
| 20 || Ncm (content)&lt;br /&gt;
|-&lt;br /&gt;
| 21 || Sm&lt;br /&gt;
|-&lt;br /&gt;
| 22 || Ro (userland)&lt;br /&gt;
|-&lt;br /&gt;
| 23 || Gc&lt;br /&gt;
|-&lt;br /&gt;
| 24 || Sdmmc&lt;br /&gt;
|-&lt;br /&gt;
| 25 || Ovln&lt;br /&gt;
|-&lt;br /&gt;
| 26 || Spl&lt;br /&gt;
|-&lt;br /&gt;
| 27 || Socket&lt;br /&gt;
|-&lt;br /&gt;
| 29 || Htclow&lt;br /&gt;
|-&lt;br /&gt;
| 30 || Ddsf&lt;br /&gt;
|-&lt;br /&gt;
| 31 || Htcfs&lt;br /&gt;
|-&lt;br /&gt;
| 32 || Async&lt;br /&gt;
|-&lt;br /&gt;
| 100 || Ethc&lt;br /&gt;
|-&lt;br /&gt;
| 101 || I2c&lt;br /&gt;
|-&lt;br /&gt;
| 102 || Gpio&lt;br /&gt;
|-&lt;br /&gt;
| 103 || Uart&lt;br /&gt;
|-&lt;br /&gt;
| 105 || Settings&lt;br /&gt;
|-&lt;br /&gt;
| 107 || Wlan&lt;br /&gt;
|-&lt;br /&gt;
| 108 || Xcd&lt;br /&gt;
|-&lt;br /&gt;
| 110 || Nifm&lt;br /&gt;
|-&lt;br /&gt;
| 111 || Hwopus&lt;br /&gt;
|-&lt;br /&gt;
| 112 || Sasbus&lt;br /&gt;
|-&lt;br /&gt;
| 113 || Bluetooth&lt;br /&gt;
|-&lt;br /&gt;
| 114 || Vi&lt;br /&gt;
|-&lt;br /&gt;
| 115 || Nfp&lt;br /&gt;
|-&lt;br /&gt;
| 116 || Time&lt;br /&gt;
|-&lt;br /&gt;
| 117 || Fgm&lt;br /&gt;
|-&lt;br /&gt;
| 118 || Oe&lt;br /&gt;
|-&lt;br /&gt;
| 120 || Pcie&lt;br /&gt;
|-&lt;br /&gt;
| 121 || Friends&lt;br /&gt;
|-&lt;br /&gt;
| 122 || Bcat&lt;br /&gt;
|-&lt;br /&gt;
| 123 || Ssl&lt;br /&gt;
|-&lt;br /&gt;
| 124 || Account&lt;br /&gt;
|-&lt;br /&gt;
| 125 || News&lt;br /&gt;
|-&lt;br /&gt;
| 126 || Mii&lt;br /&gt;
|-&lt;br /&gt;
| 127 || Nfc&lt;br /&gt;
|-&lt;br /&gt;
| 128 || Am&lt;br /&gt;
|-&lt;br /&gt;
| 129 || Prepo&lt;br /&gt;
|-&lt;br /&gt;
| 130 || Ahid&lt;br /&gt;
|-&lt;br /&gt;
| 132 || Qlaunch&lt;br /&gt;
|-&lt;br /&gt;
| 133 || Pcv&lt;br /&gt;
|-&lt;br /&gt;
| 134 || Omm&lt;br /&gt;
|-&lt;br /&gt;
| 135 || Bpc&lt;br /&gt;
|-&lt;br /&gt;
| 136 || Psm&lt;br /&gt;
|-&lt;br /&gt;
| 137 || Nim&lt;br /&gt;
|-&lt;br /&gt;
| 138 || Psc&lt;br /&gt;
|-&lt;br /&gt;
| 139 || Tc&lt;br /&gt;
|-&lt;br /&gt;
| 140 || Usb&lt;br /&gt;
|-&lt;br /&gt;
| 141 || Nsd&lt;br /&gt;
|-&lt;br /&gt;
| 142 || Pctl&lt;br /&gt;
|-&lt;br /&gt;
| 143 || Btm&lt;br /&gt;
|-&lt;br /&gt;
| 144 || La&lt;br /&gt;
|-&lt;br /&gt;
| 145 || ETicket&lt;br /&gt;
|-&lt;br /&gt;
| 146 || Ngc&lt;br /&gt;
|-&lt;br /&gt;
| 147 || Erpt&lt;br /&gt;
|-&lt;br /&gt;
| 148 || Apm&lt;br /&gt;
|-&lt;br /&gt;
| 149 || Cec&lt;br /&gt;
|-&lt;br /&gt;
| 150 || Profiler&lt;br /&gt;
|-&lt;br /&gt;
| 151 || Eupld&lt;br /&gt;
|-&lt;br /&gt;
| 153 || Audio&lt;br /&gt;
|-&lt;br /&gt;
| 154 || Npns&lt;br /&gt;
|-&lt;br /&gt;
| 155 || Npns XMPP stream&lt;br /&gt;
|-&lt;br /&gt;
| 157 || Arp&lt;br /&gt;
|-&lt;br /&gt;
| 158 || Updater&lt;br /&gt;
|-&lt;br /&gt;
| 159 || Swkbd&lt;br /&gt;
|-&lt;br /&gt;
| 161 || Mifare&lt;br /&gt;
|-&lt;br /&gt;
| 162 || Userland (assert)&lt;br /&gt;
|-&lt;br /&gt;
| 163 || Fatal&lt;br /&gt;
|-&lt;br /&gt;
| 164 || Ec (shop)&lt;br /&gt;
|-&lt;br /&gt;
| 165 || Spsm&lt;br /&gt;
|-&lt;br /&gt;
| 167 || Bgtc&lt;br /&gt;
|-&lt;br /&gt;
| 168 || Userland (crash)&lt;br /&gt;
|-&lt;br /&gt;
| 169 || Sasbus periodic receive mode&lt;br /&gt;
|-&lt;br /&gt;
| 175 || Jit&lt;br /&gt;
|-&lt;br /&gt;
| 177 || Hdcp&lt;br /&gt;
|-&lt;br /&gt;
| 178 || Pdm&lt;br /&gt;
|-&lt;br /&gt;
| 179 || Olsc&lt;br /&gt;
|-&lt;br /&gt;
| 180 || Srepo&lt;br /&gt;
|-&lt;br /&gt;
| 181 || Dauth&lt;br /&gt;
|-&lt;br /&gt;
| 187 || Sasbus&lt;br /&gt;
|-&lt;br /&gt;
| 189 || Pwm&lt;br /&gt;
|-&lt;br /&gt;
| 191 || Rtc&lt;br /&gt;
|-&lt;br /&gt;
| 192 || Regulator&lt;br /&gt;
|-&lt;br /&gt;
| 193 || Led&lt;br /&gt;
|-&lt;br /&gt;
| 197 || Clkrst&lt;br /&gt;
|-&lt;br /&gt;
| 198 || Powctl&lt;br /&gt;
|-&lt;br /&gt;
| 202 || Hid&lt;br /&gt;
|-&lt;br /&gt;
| 203 || Ldn&lt;br /&gt;
|-&lt;br /&gt;
| 204 || Cs&lt;br /&gt;
|-&lt;br /&gt;
| 205 || Irsensor&lt;br /&gt;
|-&lt;br /&gt;
| 206 || Capture&lt;br /&gt;
|-&lt;br /&gt;
| 208 || Manu&lt;br /&gt;
|-&lt;br /&gt;
| 209 || Atk&lt;br /&gt;
|-&lt;br /&gt;
| 210 || Web&lt;br /&gt;
|-&lt;br /&gt;
| 211 || Lcs&lt;br /&gt;
|-&lt;br /&gt;
| 212 || Grc&lt;br /&gt;
|-&lt;br /&gt;
| 214 || Album&lt;br /&gt;
|-&lt;br /&gt;
| 216 || Migration&lt;br /&gt;
|-&lt;br /&gt;
| 217 || Migration idc server&lt;br /&gt;
|-&lt;br /&gt;
| 218 || Hidbus&lt;br /&gt;
|-&lt;br /&gt;
| 223 || Websocket&lt;br /&gt;
|-&lt;br /&gt;
| 227 || Capmtp&lt;br /&gt;
|-&lt;br /&gt;
| 228 || Pgl&lt;br /&gt;
|-&lt;br /&gt;
| 229 || Notification&lt;br /&gt;
|-&lt;br /&gt;
| 230 || Ins&lt;br /&gt;
|-&lt;br /&gt;
| 231 || Lp2p&lt;br /&gt;
|-&lt;br /&gt;
| 232 || Rcd?&lt;br /&gt;
|-&lt;br /&gt;
| 244 || Dp2hdmi&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Error codes ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Module || Description || Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0E01 || 1 || 7 || Session count exceeded&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C01 || 1 || 14 || Invalid kernel capability descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0x4201 || 1 || 33 || Not Implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x7601 || 1 || 59 || Thread terminated/termination requested&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C01 || 1 || 70 || No more debug events&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA01 || 1 || 101 || Invalid size&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC01 || 1 || 102 || Invalid address&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE01 || 1 || 103 || Resource exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD001 || 1 || 104 || Memory exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD201 || 1 || 105 || Handle-table exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD401 || 1 || 106 || Invalid memory state / invalid memory permissions.&lt;br /&gt;
|-&lt;br /&gt;
| 0xD801 || 1 || 108 || Invalid memory permissions.&lt;br /&gt;
|-&lt;br /&gt;
| 0xDC01 || 1 || 110 || Invalid memory range&lt;br /&gt;
|-&lt;br /&gt;
| 0xE001 || 1 || 112 || Invalid thread priority.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE201 || 1 || 113 || Invalid processor id.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE401 || 1 || 114 || Invalid handle.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE601 || 1 || 115 || Invalid pointer/Syscall copy from user failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE801 || 1 || 116 || Invalid combination&lt;br /&gt;
|-&lt;br /&gt;
| 0xEA01 || 1 || 117 || Time out. Also when you give 0 handles to svcWaitSynchronizationN.&lt;br /&gt;
|-&lt;br /&gt;
| 0xEC01 || 1 || 118 || Operation canceled&lt;br /&gt;
|-&lt;br /&gt;
| 0xEE01 || 1 || 119 || Out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0xF001 || 1 || 120 || Invalid enum&lt;br /&gt;
|-&lt;br /&gt;
| 0xF201 || 1 || 121 || No such entry&lt;br /&gt;
|-&lt;br /&gt;
| 0xF401 || 1 || 122 || Irq/DeviceAddressSpace/{...} already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0xF601 || 1 || 123 || Port remote dead&lt;br /&gt;
|-&lt;br /&gt;
| 0xF801 || 1 || 124 || [Usermode] Unhandled interrupt/exception&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA01 || 1 || 125 || Invalid state&lt;br /&gt;
|-&lt;br /&gt;
| 0xFC01 || 1 || 126 || Reserved value&lt;br /&gt;
|-&lt;br /&gt;
| 0xFE01 || 1 || 127 || Invalid hardware breakpoint&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || 1 || 128 || [Usermode] Fatal exception&lt;br /&gt;
|-&lt;br /&gt;
| 0x10201 || 1 || 129 || Last thread didn&#039;t belong to your process&lt;br /&gt;
|-&lt;br /&gt;
| 0x10601 || 1 || 131 || Port closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x10801 || 1 || 132 || Resource limit exceeded&lt;br /&gt;
|-&lt;br /&gt;
| 0x20801 || 1 || 260 || Command buffer too small&lt;br /&gt;
|-&lt;br /&gt;
| 0x40A01 || 1 || 517 || Invalid process ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40C01 || 1 || 518 || Invalid thread ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40E01 || 1 || 519 || Invalid thread ID (used in svcGetDebugThreadParam).&lt;br /&gt;
|-&lt;br /&gt;
| 0x41001 || 1 || 520 || Process not being debugged&lt;br /&gt;
|-&lt;br /&gt;
| 0x202 || 2 || 1 || Path does not exist.&lt;br /&gt;
|-&lt;br /&gt;
| 0x402 || 2 || 2 || Path already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE02 || 2 || 7 || Resource already in use (file already opened, savedata filesystem already mounted).&lt;br /&gt;
|-&lt;br /&gt;
| 0x4602 || 2 || 35 || Not enough free space for BIS Calibration partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4802 || 2 || 36 || Not enough free space for BIS Safe partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4A02 || 2 || 37 || Not enough free space for BIS User partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C02 || 2 || 38 || Not enough free space for BIS System partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4E02 || 2 || 39 || Not enough free space on SD card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6402 || 2 || 50 || NCA is older than version 3, or NCA SDK version is older than 0.11.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 0x7802 || 2 || 60 || Specified mount name already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D202 || 2 || 1001 || Process does not have RomFs &lt;br /&gt;
|-&lt;br /&gt;
| 0x7D402 || 2 || 1002 || Title-id not found / savedata not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA202 || 2 || 2001 || SD card not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x13B002 || 2 || 2520 || Gamecard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x13B402 || 2 || 2522 || Attempted process an AsicHandler command in initial mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13D802 || 2 || 2540 || Attempted to read from the secure gamecard partition in normal mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13DA02 || 2 || 2541 || Attempted to read from the normal gamecard partition in secure mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13DC02 || 2 || 2542 || Attempted a read that spanned both the normal and secure gamecard partitions&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E002 || 2 || 2544 || Gamecard initial data hash doesn&#039;t match the initial data hash in the card header&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E202 || 2 || 2545 || Gamecard initial data reserved area is not all zeros&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E402 || 2 || 2546 || Gamecard certificate kek index doesn&#039;t match card header kek index&lt;br /&gt;
|-&lt;br /&gt;
| 0x13EE02 || 2 || 2551 || Unable to read card header on gamecard init&lt;br /&gt;
|-&lt;br /&gt;
| 0x140A02 || 2 || 2565 || Encountered SDMMC error in write operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x145002 || 2 || 2600 || Attempted to switch lotus state machine to secure mode from a mode other than normal&lt;br /&gt;
|-&lt;br /&gt;
| 0x145202 || 2 || 2601 || Attempted to switch lotus state machine to normal mode from a mode other than initial&lt;br /&gt;
|-&lt;br /&gt;
| 0x145402 || 2 || 2602 || Attempted to switch lotus state machine to write mode from a mode other than normal&lt;br /&gt;
|-&lt;br /&gt;
| 0x149402 || 2 || 2634 || Error processing lotus command SetUserAsicFirmware&lt;br /&gt;
|-&lt;br /&gt;
| 0x149A02 || 2 || 2637 || Error processing lotus command GetAsicCert&lt;br /&gt;
|-&lt;br /&gt;
| 0x14A002 || 2 || 2640 || Error processing lotus command SetEmmcEmbeddedSocCertificate&lt;br /&gt;
|-&lt;br /&gt;
| 0x14AA02 || 2 || 2645 || Error processing lotus command GetAsicEncryptedMessage&lt;br /&gt;
|-&lt;br /&gt;
| 0x14AC02 || 2 || 2646 || Error processing lotus command SetLibraryEncryptedMessage&lt;br /&gt;
|-&lt;br /&gt;
| 0x14B602 || 2 || 2651 || Error processing lotus command GetAsicAuthenticationData&lt;br /&gt;
|-&lt;br /&gt;
| 0x14B802 || 2 || 2652 || Error processing lotus command SetAsicAuthenticationDataHash&lt;br /&gt;
|-&lt;br /&gt;
| 0x14BA02 || 2 || 2653 || Error processing lotus command SetLibraryAuthenticationData&lt;br /&gt;
|-&lt;br /&gt;
| 0x14BC02 || 2 || 2654 || Error processing lotus command GetLibraryAuthenticationDataHash&lt;br /&gt;
|-&lt;br /&gt;
| 0x14C202 || 2 || 2657 || Error processing lotus command ExchangeRandomValuesInSecureMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x14D802 || 2 || 2668 || Error calling nn::gc::detail::GcCrypto::GenerateRandomBytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x14DE02 || 2 || 2671 || Error processing lotus command ReadAsicRegister&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E002 || 2 || 2672 || Error processing lotus command GetGameCardIdSet&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E402 || 2 || 2674 || Error processing lotus command GetCardHeader&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E802 || 2 || 2676 || Error processing lotus command GetCardKeyArea&lt;br /&gt;
|-&lt;br /&gt;
| 0x14EA02 || 2 || 2677 || Error processing lotus command ChangeDebugMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x14EC02 || 2 || 2678 || Error processing lotus command GetRmaInformation&lt;br /&gt;
|-&lt;br /&gt;
| 0x150802 || 2 || 2692 || Tried sending lotus card command Refresh when not in secure mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x150A02 || 2 || 2693 || Tried sending lotus card command when not in correct mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x155602 || 2 || 2731 || Error processing lotus card command ReadId1&lt;br /&gt;
|-&lt;br /&gt;
| 0x155802 || 2 || 2732 || Error processing lotus card command ReadId2&lt;br /&gt;
|-&lt;br /&gt;
| 0x155A02 || 2 || 2733 || Error processing lotus card command ReadId3&lt;br /&gt;
|-&lt;br /&gt;
| 0x155E02 || 2 || 2735 || Error processing lotus card command ReadPage&lt;br /&gt;
|-&lt;br /&gt;
| 0x156202 || 2 || 2737 || Error processing lotus card command WritePage&lt;br /&gt;
|-&lt;br /&gt;
| 0x156402 || 2 || 2738 || Error processing lotus card command Refresh&lt;br /&gt;
|-&lt;br /&gt;
| 0x156C02 || 2 || 2742 || Error processing lotus card command ReadCrc&lt;br /&gt;
|-&lt;br /&gt;
| 0x156E02 || 2 || 2743 || Error processing lotus card command Erase or UnlockForceErase&lt;br /&gt;
|-&lt;br /&gt;
| 0x157002 || 2 || 2744 || Error processing lotus card command ReadDevParam&lt;br /&gt;
|-&lt;br /&gt;
| 0x157202 || 2 || 2745 || Error processing lotus card command WriteDevParam&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B002 || 2 || 2904 || Id2Normal did not match the value in the buffer returned by ChangeDebugMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B202 || 2 || 2905 || Id1Normal did not match Id1Writer when switching gamecard to write mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B402 || 2 || 2906 || Id2Normal did not match Id2Writer when switching gamecard to write mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x171402 || 2 || 2954 || Invalid gamecard handle.&lt;br /&gt;
|-&lt;br /&gt;
| 0x172002 || 2 || 2960 || Invalid gamecard handle when opening normal gamecard partition&lt;br /&gt;
|-&lt;br /&gt;
| 0x172202 || 2 || 2961 || Invalid gamecard handle when opening secure gamecard partition&lt;br /&gt;
|-&lt;br /&gt;
| 0x177202 || 2 || 3001 || Unimplemented behavior&lt;br /&gt;
|-&lt;br /&gt;
| 0x177602 || 2 || 3003 || File/Directory already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x190202 || 2 || 3201 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190602 || 2 || 3203 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190802 || 2 || 3204 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190A02 || 2 || 3205 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190C02 || 2 || 3206 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x191002 || 2 || 3208 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x195802 || 2 || 3244 || Allocation failure related to SD cards&lt;br /&gt;
|-&lt;br /&gt;
| 0x196002 || 2 || 3248 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x196202 || 2 || 3249 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A3E02 || 2 || 3359 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A4002 || 2 || 3360 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A4A02 || 2 || 3365 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x21BC02 || 2 || 4318 || Invalid save data filesystem magic (valid magic is SAVE in ASCII)&lt;br /&gt;
|-&lt;br /&gt;
| 0x234202 || 2 || 4513 || Error reading ACID section in NPDM&lt;br /&gt;
|-&lt;br /&gt;
| 0x234402 || 2 || 4514 || Invalid NPDM ACID section size&lt;br /&gt;
|-&lt;br /&gt;
| 0x234602 || 2 || 4515 || Last byte of the ACID modulus is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x234802 || 2 || 4516 || Invalid ACID fixed key signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x234A02 || 2 || 4517 || Invalid NCA magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x234C02 || 2 || 4518 || Invalid NCA header fixed key signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x234E02 || 2 || 4519 || Invalid NCA header ACID signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x235002 || 2 || 4520 || Invalid NCA header section hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x235202 || 2 || 4521 || Invalid NCA Key index&lt;br /&gt;
|-&lt;br /&gt;
| 0x235602 || 2 || 4523 || Invalid encryption type&lt;br /&gt;
|-&lt;br /&gt;
| 0x235802 || 2 || 4524 || Redirection BKTR table size is negative&lt;br /&gt;
|-&lt;br /&gt;
| 0x235A02 || 2 || 4525 || Encryption BKTR table size is negative&lt;br /&gt;
|-&lt;br /&gt;
| 0x235C02 || 2 || 4526 || Redirection BKTR table end offset is past the Encryption BKTR table start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x235E02 || 2 || 4527 || NCA-path used with the wrong titleID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x236002 || 2 || 4528 || NCA header value is out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0x236202 || 2 || 4529 || NCA FS header value is out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0x236802 || 2 || 4532 || PartitionFS hash block size is not a power of 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x236A02 || 2 || 4533 || PartitionFS hash &amp;quot;always_2&amp;quot; field is not 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x236C02 || 2 || 4534 || PartitionFS hash table is too small for main data&lt;br /&gt;
|-&lt;br /&gt;
| 0x236E02 || 2 || 4535 || Invalid PartitionFS block hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x244402 || 2 || 4642 || Invalid Partition file hashed region bounds&lt;br /&gt;
|-&lt;br /&gt;
| 0x244602 || 2 || 4643 || Invalid Partition FS hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x244802 || 2 || 4644 || Invalid PFS0 magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x244A02 || 2 || 4645 || Invalid HFS0 magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x244C02 || 2 || 4646 || Invalid name offset for Partition FS file entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x244E02 || 2 || 4647 || Calculated Partition FS header size changed between 2 consecutive reads&lt;br /&gt;
|-&lt;br /&gt;
| 0x249802 || 2 || 4684 || Invalid FAT file number.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249C02 || 2 || 4686 || Invalid FAT format for BIS User partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249E02 || 2 || 4687 || Invalid FAT format for BIS System partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24A002 || 2 || 4688 || Invalid FAT format for BIS Safe partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24A202 || 2 || 4689 || Invalid FAT format for BIS Calibration partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x250E02 || 2 || 4743 || [[NAX0|Corrupted]] NAX0 header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x251002 || 2 || 4744 || Invalid [[NAX0]] magicnum.&lt;br /&gt;
|-&lt;br /&gt;
| 0x280202 || 2 || 5121 || Invalid FAT size&lt;br /&gt;
|-&lt;br /&gt;
| 0x280402 || 2 || 5122 || Invalid FAT BPB (BIOS Parameter Block)&lt;br /&gt;
|-&lt;br /&gt;
| 0x280602 || 2 || 5123 || Invalid FAT parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x280802 || 2 || 5124 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280A02 || 2 || 5125 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280C02 || 2 || 5126 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280E02 || 2 || 5127 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x296A02 || 2 || 5301 || Mountpoint not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE202 || 2 || 6001 || Invalid input&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE602 || 2 || 6003 || Path too long&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE802 || 2 || 6004 || Invalid character.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEA02 || 2 || 6005 || Invalid directory path.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEC02 || 2 || 6006 || Unable to retrieve directory from path&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5A02 || 2 || 6061 || Offset outside storage&lt;br /&gt;
|-&lt;br /&gt;
| 0x313802 || 2 || 6300 || Operation not supported&lt;br /&gt;
|-&lt;br /&gt;
| 0x313A02 || 2 || 6301 || A specified filesystem has no MultiCommitTarget when doing a multi-filesystem commit&lt;br /&gt;
|-&lt;br /&gt;
| 0x313C02 || 2 || 6302 || Attempted to resize a nn::fs::SubStorage or BufferedStorage that is marked as non-resizable&lt;br /&gt;
|-&lt;br /&gt;
| 0x313E02 || 2 || 6303 || Attempted to resize a nn::fs::SubStorage or BufferedStorage when the SubStorage ends before the base storage&lt;br /&gt;
|-&lt;br /&gt;
| 0x314002 || 2 || 6304 || Attempted to call nn::fs::MemoryStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x314202 || 2 || 6305 || Invalid Operation ID in nn::fs::MemoryStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314402 || 2 || 6306 || Invalid Operation ID in nn::fs::FileStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314602 || 2 || 6307 || Invalid Operation ID in nn::fs::FileHandleStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314802 || 2 || 6308 || Invalid Operation ID in nn::fssystem::SwitchStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314A02 || 2 || 6309 || Invalid Operation ID in nn::fs::detail::StorageServiceObjectAdapter::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314C02 || 2 || 6310 || Attempted to call nn::fssystem::AesCtrCounterExtendedStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x314E02 || 2 || 6311 || Attempted to call nn::fssystem::AesCtrCounterExtendedStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315002 || 2 || 6312 || Invalid Operation ID in nn::fssystem::AesCtrCounterExtendedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x315202 || 2 || 6313 || Attempted to call nn::fssystem::AesCtrStorageExternal::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x315402 || 2 || 6314 || Attempted to call nn::fssystem::AesCtrStorageExternal::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315602 || 2 || 6315 || Attempted to call nn::fssystem::AesCtrStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315802 || 2 || 6316 || Attempted to call nn::fssystem::save::HierarchicalIntegrityVerificationStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315A02 || 2 || 6317 || Attempted to call nn::fssystem::save::HierarchicalIntegrityVerificationStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x315C02 || 2 || 6318 || Attempted to call nn::fssystem::save::IntegrityVerificationStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315E02 || 2 || 6319 || Attempted to invalidate the cache of a RomFs IVFC storage in nn::fssystem::save::IntegrityVerificationStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316002 || 2 || 6320 || Invalid Operation ID in nn::fssystem::save::IntegrityVerificationStorage::OperateRange &lt;br /&gt;
|-&lt;br /&gt;
| 0x316202 || 2 || 6321 || Attempted to call nn::fssystem::save::BlockCacheBufferedStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x316402 || 2 || 6322 || Attempted to invalidate the cache of something other than a savedata IVFC storage in nn::fssystem::save::BlockCacheBufferedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316602 || 2 || 6323 || Invalid Operation ID in nn::fssystem::save::BlockCacheBufferedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316802 || 2 || 6324 || Attempted to call nn::fssystem::IndirectStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x316A02 || 2 || 6325 || Attempted to call nn::fssystem::IndirectStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x316C02 || 2 || 6326 || Invalid Operation ID in nn::fssystem::IndirectStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316E02 || 2 || 6327 || Attempted to call nn::fssystem::SparseStorage::ZeroStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x317002 || 2 || 6328 || Attempted to call nn::fssystem::SparseStorage::ZeroStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317202 || 2 || 6329 || Attempted to call nn::fssystem::HierarchicalSha256Storage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317402 || 2 || 6330 || Attempted to call nn::fssystem::ReadOnlyBlockCacheStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x317602 || 2 || 6331 || Attempted to call nn::fssystem::ReadOnlyBlockCacheStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317802 || 2 || 6332 || Attempted to call nn::fssystem::IntegrityRomFsStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317A02 || 2 || 6333 || Attempted to call nn::fssystem::save::DuplexStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317C02 || 2 || 6334 || Invalid Operation ID in nn::fssystem::save::DuplexStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x317E02 || 2 || 6335 || Attempted to call nn::fssystem::save::HierarchicalDuplexStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318002 || 2 || 6336 || Attempted to call nn::fssystem::save::RemapStorage::GetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318202 || 2 || 6337 || Attempted to call nn::fssystem::save::RemapStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318402 || 2 || 6338 || Invalid Operation ID in nn::fssystem::save::RemapStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318602 || 2 || 6339 || Attempted to call nn::fssystem::save::IntegritySaveDataStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318802 || 2 || 6340 || Invalid Operation ID in nn::fssystem::save::IntegritySaveDataStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318A02 || 2 || 6341 || Attempted to call nn::fssystem::save::JournalIntegritySaveDataStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318C02 || 2 || 6342 || Invalid Operation ID in nn::fssystem::save::JournalIntegritySaveDataStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318E02 || 2 || 6343 || Attempted to call nn::fssystem::save::JournalStorage::GetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319002 || 2 || 6344 || Attempted to call nn::fssystem::save::JournalStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319202 || 2 || 6345 || Invalid Operation ID in nn::fssystem::save::JournalStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x319402 || 2 || 6346 || Attempted to call nn::fssystem::save::UnionStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319602 || 2 || 6347 || Attempted to call nn::fssystem::dbm::AllocationTableStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319802 || 2 || 6348 || Attempted to call nn::fssrv::fscreator::WriteOnlyGameCardStorage::Read&lt;br /&gt;
|-&lt;br /&gt;
| 0x319A02 || 2 || 6349 || Attempted to call nn::fssrv::fscreator::WriteOnlyGameCardStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319C02 || 2 || 6350 || Attempted to call nn::fssrv::fscreator::ReadOnlyGameCardStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x319E02 || 2 || 6351 || Attempted to call nn::fssrv::fscreator::ReadOnlyGameCardStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A002 || 2 || 6352 || Invalid Operation ID in nn::fssrv::fscreator::ReadOnlyGameCardStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A202 || 2 || 6353 || Attempted to call SdStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A402 || 2 || 6354 || Invalid Operation ID in SdStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A602 || 2 || 6355 || Invalid Operation ID in nn::fat::FatFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A802 || 2 || 6356 || Invalid Operation ID in nn::fssystem::StorageFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AA02 || 2 || 6357 || Attempted to call nn::fssystem::ConcatenationFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AC02 || 2 || 6358 || Attempted to call nn::fssystem::ConcatenationFile::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AE02 || 2 || 6359 || Invalid Query ID in nn::fssystem::ConcatenationFileSystem::DoQueryEntry&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B002 || 2 || 6360 || Invalid Operation ID in nn::fssystem::ConcatenationFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B202 || 2 || 6361 || Attempted to call nn::fssystem::ZeroBitmapFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B402 || 2 || 6362 || Invalid Operation ID in nn::fs::detail::FileServiceObjectAdapter::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B602 || 2 || 6363 || Invalid Operation ID in nn::fssystem::AesXtsFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B802 || 2 || 6364 || Attempted to modify a nn::fs::RomFsFileSystem&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BA02 || 2 || 6365 || Attempted to call nn::fs::RomFsFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BC02 || 2 || 6366 || Attempted to query the space in a nn::fs::RomFsFileSystem&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BE02 || 2 || 6367 || Attempted to modify a nn::fssystem::RomFsFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C002 || 2 || 6368 || Invalid Operation ID in nn::fssystem::RomFsFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C202 || 2 || 6369 || Attempted to modify a nn::fs::ReadOnlyFileSystemTemplate&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C402 || 2 || 6370 || Attempted to call nn::fs::ReadOnlyFileSystemTemplate::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C602 || 2 || 6371 || Attempted to query the space in a nn::fs::ReadOnlyFileSystemTemplate&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C802 || 2 || 6372 || Attempted to modify a nn::fs::ReadOnlyFileSystemFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CA02 || 2 || 6373 || Invalid Operation ID in nn::fs::ReadOnlyFileSystemFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CC02 || 2 || 6374 || Attempted to modify a nn::fssystem::PartitionFileSystemCore&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CE02 || 2 || 6375 || Attempted to call nn::fssystem::PartitionFileSystemCore::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D002 || 2 || 6376 || Attempted to call nn::fssystem::PartitionFileSystemCore::PartitionFile::DoSetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D202 || 2 || 6377 || Invalid Operation ID in nn::fssystem::PartitionFileSystemCore::PartitionFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D402 || 2 || 6378 || Invalid Operation ID in nn::fssystem::TmFileSystemFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D602 || 2 || 6379 || Attempted to call unsupported functions in nn::fssrv::fscreator::SaveDataInternalStorageFileSystem, nn::fssrv::detail::SaveDataInternalStorageAccessor::PaddingFile or nn::fssystem::save::detail::SaveDataExtraDataInternalStorageFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31DC02 || 2 || 6382 || Attempted to call nn::fssystem::ApplicationTemporaryFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31DE02 || 2 || 6383 || Attempted to call nn::fssystem::SaveDataFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E002 || 2 || 6384 || Attempted to call nn::fssystem::DirectorySaveDataFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E202 || 2 || 6385 || Attempted to call nn::fssystem::ZeroBitmapHashStorageFile::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E402 || 2 || 6386 || Attempted to call nn::fssystem::ZeroBitmapHashStorageFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x320002 || 2 || 6400 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0x326602 || 2 || 6451 || Missing titlekey(?) required to mount content&lt;br /&gt;
|-&lt;br /&gt;
| 0x326E02 || 2 || 6455 || File not closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x327002 || 2 || 6456 || Directory not closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x327202 || 2 || 6457 || Writable file not closed when committing&lt;br /&gt;
|-&lt;br /&gt;
| 0x327402 || 2 || 6458 || FS allocators already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x327602 || 2 || 6459 || FS allocators already used&lt;br /&gt;
|-&lt;br /&gt;
| 0x327A02 || 2 || 6461 || FS allocator alignment violation&lt;br /&gt;
|-&lt;br /&gt;
| 0x339402 || 2 || 6602 || File not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x339602 || 2 || 6603 || Directory not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346C02 || 2 || 6710 || Multi-commit limit reached&lt;br /&gt;
|-&lt;br /&gt;
| 0x35F202 || 2 || 6905 || Mount name not found in table.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DBC02 || 2 || 7902 || RomFs table: Entry not found in dictionary&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DBE02 || 2 || 7903 || RomFs table: File not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC002 || 2 || 7904 || RomFs table: Directory not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC402 || 2 || 7906 || RomFs table: Entry already exists when trying to add a new entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC602 || 2 || 7907 || RomFs table: Insufficient space to add new entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC802 || 2 || 7908 || RomFs table: Unable to add new directory&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DCA02 || 2 || 7909 || RomFs table: Unable to add new file&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DCC02 || 2 || 7910 || RomFs directory has no more child directories/files when iterating&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DD402 || 2 || 7914 || RomFs table: Path is file, not directory&lt;br /&gt;
|-&lt;br /&gt;
| 0x803 || 3 || 4 || OS busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xE03 || 3 || 7 || Invalid parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x1003 || 3 || 8 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1203 || 3 || 9 || Out of resources&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EA03 || 3 || 501 || Invalid handle&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EE03 || 3 || 503 || Invalid memory mirror&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FE03 || 3 || 1023 || TLS slot is not allocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xA05 || 5 || 5 || [[Content_Manager_services|NcaID]] not found. Returned when attempting to mount titles which exist that aren&#039;t *8XX titles, the same way *8XX titles are mounted.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE05 || 5 || 7 || TitleId not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1805 || 5 || 12 || Invalid StorageId&lt;br /&gt;
|-&lt;br /&gt;
| 0xDC05 || 5 || 110 || Gamecard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x17C05 || 5 || 190 || Gamecard not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F405 || 5 || 250 || Sdcard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x20805 || 5 || 260 || Storage not mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0x806 || 6 || 4 || Converted from error 0xD401&lt;br /&gt;
|-&lt;br /&gt;
| 0x1006 || 6 || 8 || Converted from error 0xE401&lt;br /&gt;
|-&lt;br /&gt;
| 0x408 || 8 || 2 || Program location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x608 || 8 || 3 || Invalid context for control location&lt;br /&gt;
|-&lt;br /&gt;
| 0x808 || 8 || 4 || Storage not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xA08 || 8 || 5 || Access denied&lt;br /&gt;
|-&lt;br /&gt;
| 0xC08 || 8 || 6 || Offline manual HTML location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xE08 || 8 || 7 || Title is not registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x1008 || 8 || 8 || Control location entry for host not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1208 || 8 || 9 || Legal info HTML location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1408 || 8 || 10 || Program location for debug entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x209 || 9 || 1 || Args too long.&lt;br /&gt;
|-&lt;br /&gt;
| 0x409 || 9 || 2 || Maximum processes loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0x609 || 9 || 3 || NPDM too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x809 || 9 || 4 || Invalid NPDM.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA09 || 9 || 5 || Invalid NSO.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC09 || 9 || 6 || Invalid Path.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE09 || 9 || 7 || Already registered.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1009 || 9 || 8 || Title not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1209 || 9 || 9 || Title-id in ACI0 doesn&#039;t match range in ACID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1409 || 9 || 10 || Invalid version in NPDM.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6609 || 9 || 51 || Insufficient address space.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6809 || 9 || 52 || Insufficient NRO.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6A09 || 9 || 53 || Invalid NRR&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C09 || 9 || 54 || Invalid signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x6E09 || 9 || 55 || Insufficient NRO registrations.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7009 || 9 || 56 || Insufficient NRR registrations.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7209 || 9 || 57 || NRO Already loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA209 || 9 || 81 || Unaligned NRR address&lt;br /&gt;
|-&lt;br /&gt;
| 0xA409 || 9 || 82 || Bad NRR size&lt;br /&gt;
|-&lt;br /&gt;
| 0xA809 || 9 || 84 || NRR Not Loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0xAA09 || 9 || 85 || Bad NRR address&lt;br /&gt;
|-&lt;br /&gt;
| 0xAE09 || 9 || 87 || Bad initialization&lt;br /&gt;
|-&lt;br /&gt;
| 0xC809 || 9 || 100 || Unknown ACI0 descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE09 || 9 || 103 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;KernelFlags&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD009 || 9 || 104 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;SyscallMask&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD409 || 9 || 106 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;MapIoOrNormalRange&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD609 || 9 || 107 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;MapNormalPage&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xDE09 || 9 || 111 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;InterruptPair&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE209 || 9 || 113 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;ApplicationType&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE409 || 9 || 114 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;KernelReleaseVersion&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE609 || 9 || 115 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;HandleTableSize&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE809 || 9 || 116 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;DebugFlags&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0x1940A || 10 || 202 || Invalid CMIF header size.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A60A || 10 || 211 || Invalid CMIF input header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A80A || 10 || 212 || Invalid CMIF output header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BA0A || 10 || 221 || Invalid method dispatch ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D60A || 10 || 235 || Invalid in object count.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D80A || 10 || 236 || Invalid out object count.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A0A || 10 || 301 || Out of domain entries.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20B || 11 || 1 || Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC0B || 11 || 102 || Out of server session memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x11A0B || 11 || 141 || Went past maximum during marshalling.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1900B || 11 || 200 || Session doesn&#039;t support domains.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A0B || 11 || 301 || Remote process is dead.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3240B || 11 || 402 || Data/buffer length(s) too large for IPC buffer.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3260B || 11 || 403 || Unknown request type&lt;br /&gt;
|-&lt;br /&gt;
| 0x3480B || 11 || 420 || Number(s) of buffers/handles/PIDs passed differ from what method expects.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D60B || 11 || 491 || IPC Query 1 failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20F || 15 || 1 || Pid not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x60F || 15 || 3 || Process has no pending events&lt;br /&gt;
|-&lt;br /&gt;
| 0xA0F || 15 || 5 || Application already running&lt;br /&gt;
|-&lt;br /&gt;
| 0x410 || 16 || 2 || Title-id not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xF010 || 16 || 120 || Sysupdate not required&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F610 || 16 || 251 || Unexpected StorageId&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A810 || 16 || 340 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64210 || 16 || 801 || [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] system_delivery_protocol_version is less than the system-setting.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64410 || 16 || 802 || [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] system_delivery_protocol_version is larger than the system-setting.&lt;br /&gt;
|-&lt;br /&gt;
| 0x74610 || 16 || 931 || Invalid [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] HMAC / invalid Meta Id.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6F810 || 16 || 892 || Unknown state ref-count is zero.&lt;br /&gt;
|-&lt;br /&gt;
| 0x215 || 21 || 1 || Out of processes&lt;br /&gt;
|-&lt;br /&gt;
| 0x415 || 21 || 2 || Not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x615 || 21 || 3 || Max sessions&lt;br /&gt;
|-&lt;br /&gt;
| 0x815 || 21 || 4 || Service already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0xA15 || 21 || 5 || Out of services&lt;br /&gt;
|-&lt;br /&gt;
| 0xC15 || 21 || 6 || Invalid name (all zeroes)&lt;br /&gt;
|-&lt;br /&gt;
| 0xE15 || 21 || 7 || Service not registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x1015 || 21 || 8 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0x1215 || 21 || 9 || Service Access Control too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x416 || 22 || 2 || Address space is full&lt;br /&gt;
|-&lt;br /&gt;
| 0x616 || 22 || 3 || NRO already loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x816 || 22 || 4 || Invalid NRO header values&lt;br /&gt;
|-&lt;br /&gt;
| 0xC16 || 22 || 6 || Bad NRR magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x1016 || 22 || 8 || Reached max NRR count&lt;br /&gt;
|-&lt;br /&gt;
| 0x1216 || 22 || 9 || Unable to verify NRO hash or NRR signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x80216 || 22 || 1025 || Address not page-aligned&lt;br /&gt;
|-&lt;br /&gt;
| 0x80416 || 22 || 1026 || Incorrect NRO size&lt;br /&gt;
|-&lt;br /&gt;
| 0x80816 || 22 || 1028 || NRO not loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x80A16 || 22 || 1029 || NRR not loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x80C16 || 22 || 1030 || Already initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x80E16 || 22 || 1031 || Not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x21A || 26 || 1 || SMC is not implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x41A || 26 || 2 || SMC argument is invalid&lt;br /&gt;
|-&lt;br /&gt;
| 0x61A || 26 || 3 || SMC is currently in progress/secmon is busy&lt;br /&gt;
|-&lt;br /&gt;
| 0x81A || 26 || 4 || Secmon not currently performing async operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xA1A || 26 || 5 || Invalid SMC async callback key&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1A || 26 || 6 || SMC is blacklisted during current boot&lt;br /&gt;
|-&lt;br /&gt;
| 0xC81A || 26 || 100 || Invalid (buffer) size&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA1A || 26 || 101 || Unknown SMC error&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA1A || 26 || 101 || Decryption failure&lt;br /&gt;
|-&lt;br /&gt;
| 0xD01A || 26 || 104 || No AES keyslots available&lt;br /&gt;
|-&lt;br /&gt;
| 0xD21A || 26 || 105 || Invalid AES keyslot&lt;br /&gt;
|-&lt;br /&gt;
| 0xD41A || 26 || 106 || BootReason already set&lt;br /&gt;
|-&lt;br /&gt;
| 0xD61A || 26 || 107 || BootReason not set&lt;br /&gt;
|-&lt;br /&gt;
| 0xD81A || 26 || 108 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x35B || 347 || 1 || Failed to init SM.&lt;br /&gt;
|-&lt;br /&gt;
| 0x55B || 347 || 2 || Failed to init FS.&lt;br /&gt;
|-&lt;br /&gt;
| 0x75B || 347 || 3 || Failed to open NRO file. May also happen when SD card isn&#039;t inserted / SD mounting failed earlier.&lt;br /&gt;
|-&lt;br /&gt;
| 0x95B || 347 || 4 || Failed to read NRO header.&lt;br /&gt;
|-&lt;br /&gt;
| 0xB5B || 347 || 5 || Invalid NRO magic.&lt;br /&gt;
|-&lt;br /&gt;
| 0xD5B || 347 || 6 || Invalid NRO segments.&lt;br /&gt;
|-&lt;br /&gt;
| 0xF5B || 347 || 7 || Failed to read NRO.&lt;br /&gt;
|-&lt;br /&gt;
| 0x135B || 347 || 9 || Failed to allocate heap.&lt;br /&gt;
|-&lt;br /&gt;
| 0x255B || 347 || 18 || Failed to map code-binary memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x275B || 347 || 19 || Failed to map code memory (.text).&lt;br /&gt;
|-&lt;br /&gt;
| 0x295B || 347 || 20 || Failed to map code memory (.rodata).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2B5B || 347 || 21 || Failed to map code memory (.data+.bss).&lt;br /&gt;
|-&lt;br /&gt;
| 0x315B || 347 || 24 || Failed to unmap code memory (.text).&lt;br /&gt;
|-&lt;br /&gt;
| 0x335B || 347 || 25 || Failed to unmap code memory (.rodata).&lt;br /&gt;
|-&lt;br /&gt;
| 0x355B || 347 || 26 || Failed to unmap code memory (.data+.bss).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19269 || 105 || 201 || Null settings name&lt;br /&gt;
|-&lt;br /&gt;
| 0x19469 || 105 || 202 || Null settings key&lt;br /&gt;
|-&lt;br /&gt;
| 0x19669 || 105 || 203 || Null settings value&lt;br /&gt;
|-&lt;br /&gt;
| 0x19A69 || 105 || 205 || Null settings value buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A069 || 105 || 208 || Null setting value size buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A269 || 105 || 209 || Null debug mode flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BA69 || 105 || 221 || Setting group name has zero length&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BC69 || 105 || 222 || Empty settings item key&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E269 || 105 || 241 || Setting group name is too long (64 character limit?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E469 || 105 || 242 || Setting name is too long (64 character limit?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x20A69 || 105 || 261 || Setting group name ends with &#039;.&#039; or contains invalid characters (allowed: [a-z0-9_\-.])&lt;br /&gt;
|-&lt;br /&gt;
| 0x20C69 || 105 || 262 || Setting name ends with &#039;.&#039; or contains invalid characters (allowed: [a-z0-9_\-.])&lt;br /&gt;
|-&lt;br /&gt;
| 0x4DA69 || 105 || 621 || Null language code buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x4E269 || 105 || 625 || Language out of valid range&lt;br /&gt;
|-&lt;br /&gt;
| 0x4EE69 || 105 || 631 || Null network settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x4F069 || 105 || 632 || Null network settings output count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x50269 || 105 || 641 || Null backlight settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51669 || 105 || 651 || Null Bluetooth device setting buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51869 || 105 || 652 || Null Bluetooth device setting output count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51A69 || 105 || 653 || Null Bluetooth enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51C69 || 105 || 654 || Null Bluetooth AFH enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51E69 || 105 || 655 || Null Bluetooth boost enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52069 || 105 || 656 || Null BLE pairing settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52269 || 105 || 657 || Null BLE pairing settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52A69 || 105 || 661 || Null external steady clock source ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52C69 || 105 || 662 || Null user system clock context buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52E69 || 105 || 663 || Null network system clock context buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53069 || 105 || 664 || Null user system clock automatic correction enabled flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53269 || 105 || 665 || Null shutdown RTC value buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53469 || 105 || 666 || Null external steady clock internal offset buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53E69 || 105 || 671 || Null account settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55269 || 105 || 681 || Null audio volume buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55669 || 105 || 683 || Null ForceMuteOnHeadphoneRemoved buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55869 || 105 || 684 || Null headphone volume warning count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55E69 || 105 || 687 || Invalid audio output mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x56069 || 105 || 688 || Null headphone volume update flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x56669 || 105 || 691 || Null console information upload flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57A69 || 105 || 701 || Null automatic application download flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57C69 || 105 || 702 || Null notification settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57E69 || 105 || 703 || Null account notification settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58069 || 105 || 704 || Null account notification settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58E69 || 105 || 711 || Null vibration master volume buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59069 || 105 || 712 || Null NX controller settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59269 || 105 || 713 || Null NX controller settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59469 || 105 || 714 || Null USB full key enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5A269 || 105 || 721 || Null TV settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5A469 || 105 || 722 || Null EDID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5B669 || 105 || 731 || Null data deletion settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CA69 || 105 || 741 || Null initial system applet program ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CC69 || 105 || 742 || Null overlay disp program ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CE69 || 105 || 743 || Null IsInRepairProcess buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5D069 || 105 || 744 || Null RequiresRunRepairTimeReviser buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5DE69 || 105 || 751 || Null device timezone location name buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5F269 || 105 || 761 || Null primary album storage buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60669 || 105 || 771 || Null USB 3.0 enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60869 || 105 || 772 || Null USB Type-C power source circuit version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x61A69 || 105 || 781 || Null battery lot buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x62E69 || 105 || 791 || Null serial number buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64269 || 105 || 801 || Null lock screen flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64669 || 105 || 803 || Null color set ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64869 || 105 || 804 || Null quest flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64A69 || 105 || 805 || Null wireless certification file size buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64C69 || 105 || 806 || Null wireless certification file buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64E69 || 105 || 807 || Null initial launch settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65069 || 105 || 808 || Null device nickname buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65269 || 105 || 809 || Null battery percentage flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65469 || 105 || 810 || Null applet launch flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x7E869 || 105 || 1012 || Null wireless LAN enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FA69 || 105 || 1021 || Null product model buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x80E69 || 105 || 1031 || Null NFC enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x82269 || 105 || 1041 || Null ECI device certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x82469 || 105 || 1042 || Null E-Ticket device certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x83669 || 105 || 1051 || Null sleep settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84A69 || 105 || 1061 || Null EULA version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84C69 || 105 || 1062 || Null EULA version entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x85E69 || 105 || 1071 || Null LDN channel buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87269 || 105 || 1081 || Null SSL key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87469 || 105 || 1082 || Null SSL certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x88669 || 105 || 1091 || Null telemetry flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x89A69 || 105 || 1101 || Null Gamecard key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x89C69 || 105 || 1102 || Null Gamecard certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8AE69 || 105 || 1111 || Null PTM battery lot buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8B069 || 105 || 1112 || Null PTM fuel gauge parameter buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C269 || 105 || 1121 || Null ECI device key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C469 || 105 || 1122 || Null E-Ticket device key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8D669 || 105 || 1131 || Null speaker parameter buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EA69 || 105 || 1141 || Null firmware version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EC69 || 105 || 1142 || Null firmware version digest buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EE69 || 105 || 1143 || Null rebootless system update version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8FE69 || 105 || 1151 || Null Mii author ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x91269 || 105 || 1161 || Null fatal flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x92669 || 105 || 1171 || Null auto update enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x93A69 || 105 || 1181 || Null external RTC reset flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x94E69 || 105 || 1191 || Null push notification activity mode buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x96269 || 105 || 1201 || Null service discovery control setting buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x97669 || 105 || 1211 || Null error report share permission buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x98A69 || 105 || 1221 || Null LCD vendor ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x99E69 || 105 || 1231 || Null console SixAxis sensor acceleration bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A069 || 105 || 1232 || Null console SixAxis sensor angular velocity bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A269 || 105 || 1233 || Null console SixAxis sensor acceleration gain buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A469 || 105 || 1234 || Null console SixAxis sensor angular velocity gain buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A669 || 105 || 1235 || Null console SixAxis sensor angular velocity time bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A869 || 105 || 1236 || Null console SixAxis sensor angular acceleration buffer &lt;br /&gt;
|-&lt;br /&gt;
| 0x9B269 || 105 || 1241 || Null keyboard layout buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9BA69 || 105 || 1245 || Invalid keyboard layout&lt;br /&gt;
|-&lt;br /&gt;
| 0x9C669 || 105 || 1251 || Null web inspector flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9C869 || 105 || 1252 || Null allowed SSL hosts buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9CA69 || 105 || 1253 || Null allowed SSL hosts entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9CC69 || 105 || 1254 || Null host FS mount point buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9EE69 || 105 || 1271 || Null Amiibo key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F069 || 105 || 1272 || Null Amiibo ECQV certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F269 || 105 || 1273 || Null Amiibo ECDSA certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F469 || 105 || 1274 || Null Amiibo ECQV BLS key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F669 || 105 || 1275 || Null Amiibo ECQV BLS certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F869 || 105 || 1276 || Null Amiibo ECQV BLS root certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x272 || 114 || 1 || Generic error&lt;br /&gt;
|-&lt;br /&gt;
| 0xC72 || 114 || 6 || Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x74 || 116 || 0 || Time service not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x274 || 116 || 1 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC74 || 116 || 102 || Time not set / Clock Source Id mismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE74 || 116 || 103 || Clock not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x19074 || 116 || 200 || Invalid time comparison&lt;br /&gt;
|-&lt;br /&gt;
| 0x19274 || 116 || 201 || Signed overflow/underflow&lt;br /&gt;
|-&lt;br /&gt;
| 0x64274 || 116 || 801 || Memory allocation failure&lt;br /&gt;
|-&lt;br /&gt;
| 0x70A74 || 116 || 901 || Null pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x70C74 || 116 || 902 || Value out of valid range&lt;br /&gt;
|-&lt;br /&gt;
| 0x70E74 || 116 || 903 || TimeZoneRule conversion failed&lt;br /&gt;
|-&lt;br /&gt;
| 0x7BA74 || 116 || 989 || TimeZone location name not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x7BC74 || 116 || 990 || Unimplemented functionality&lt;br /&gt;
|-&lt;br /&gt;
| 0xC79 || 121 || 6 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x27A || 122 || 1 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x47A || 122 || 2 || Object not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x67A || 122 || 3 || Object locked/in used&lt;br /&gt;
|-&lt;br /&gt;
| 0x87A || 122 || 4 || Target already mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0xA7A || 122 || 5 || Target not mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0xC7A || 122 || 6 || Object already opened&lt;br /&gt;
|-&lt;br /&gt;
| 0xE7A || 122 || 7 || Object not opened&lt;br /&gt;
|-&lt;br /&gt;
| 0x107A || 122 || 8 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA07A || 122 || 80 || Passphrase not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xA27A || 122 || 81 || Data verification failed&lt;br /&gt;
|-&lt;br /&gt;
| 0xB47A || 122 || 90 || Invalid API call&lt;br /&gt;
|-&lt;br /&gt;
| 0xC47A || 122 || 98 || Invalid operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x167B || 123 || 11 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8192 (SEC_ERROR_IO), -8191 (SEC_ERROR_LIBRARY_FAILURE), -8190 (SEC_ERROR_BAD_DATA), -8189 (SEC_ERROR_OUTPUT_LEN), -8188 (SEC_ERROR_INPUT_LEN), -8187 (SEC_ERROR_INVALID_ARGS), -8186 (SEC_ERROR_INVALID_ALGORITHM), -8184 (SEC_ERROR_INVALID_TIME), -8152 (SEC_ERROR_INVALID_KEY).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] errors: -5991 (PR_IO_ERROR), -5962 (PR_BUFFER_OVERFLOW_ERROR), -5950 (PR_FILE_NOT_FOUND_ERROR), -5949 (PR_NOT_DIRECTORY_ERROR), -5946 (PR_FILESYSTEM_MOUNTED_ERROR), -5938 (PR_END_OF_FILE_ERROR).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12223 (SSL_ERROR_GENERATE_RANDOM_FAILURE), -12222 (SSL_ERROR_SIGN_HASHES_FAILURE), -12221 (SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE), -12219 (SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE), -12218 (SSL_ERROR_ENCRYPTION_FAILURE), -12217 (SSL_ERROR_DECRYPTION_FAILURE), -12216 (SSL_ERROR_SOCKET_WRITE_FAILURE), -12212 (SSL_ERROR_SYM_KEY_CONTEXT_FAILURE), -12209 (SSL_ERROR_IV_PARAM_FAILURE), -12207 (SSL_ERROR_SESSION_KEY_GEN_FAILURE), -12203 (SSL_ERROR_NO_COMPRESSION_OVERLAP), -12202 (SSL_ERROR_HANDSHAKE_NOT_COMPLETED), -12201 (SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE), -12172 (SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A7B || 123 || 13 || Unrecognized error.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC7B || 123 || 102 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8173 (SEC_ERROR_NO_MEMORY).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] errors: -6000 (PR_OUT_OF_MEMORY_ERROR), -5974 (PR_INSUFFICIENT_RESOURCES_ERROR, -5971 (PR_PROC_DESC_TABLE_FULL_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0xE87B || 123 || 116 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5999 (PR_BAD_DESCRIPTOR_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1027B || 123 || 129 || DER CRL decoding failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1987B || 123 || 204 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5998 (PR_WOULD_BLOCK_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19A7B || 123 || 205 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5990 (PR_IO_TIMEOUT_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19C7B || 123 || 206 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5935 (PR_OPERATION_ABORTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A07B || 123 || 208 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5978 (PR_NOT_CONNECTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A27B || 123 || 209 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5961 (PR_CONNECT_RESET_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A47B || 123 || 210 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5928 (PR_CONNECT_ABORTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A67B || 123 || 211 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5929 (PR_SOCKET_SHUTDOWN_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A87B || 123 || 212 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5930 (PR_NETWORK_DOWN_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1AE7B || 123 || 215 || ClientPki/InternalPki was already previously imported/registered.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B47B || 123 || 218 || Maximum number of ServerPki objects were already imported.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A7B || 123 || 301 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12276 (SSL_ERROR_BAD_CERT_DOMAIN).&lt;br /&gt;
|-&lt;br /&gt;
| 0x25C7B || 123 || 302 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12285 (SSL_ERROR_NO_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x25E7B || 123 || 303 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8181 (SEC_ERROR_EXPIRED_CERTIFICATE), -8162 (SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2607B || 123 || 304 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8180 (SEC_ERROR_REVOKED_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2627B || 123 || 305 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8183 (SEC_ERROR_BAD_DER).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2647B || 123 || 306 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8102 (SEC_ERROR_INADEQUATE_KEY_USAGE), -8101 (SEC_ERROR_INADEQUATE_CERT_TYPE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2667B || 123 || 307 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8185 (SEC_ERROR_INVALID_AVA), -8182 (SEC_ERROR_BAD_SIGNATURE), -8158 (SEC_ERROR_EXTENSION_VALUE_INVALID), -8156 (SEC_ERROR_CA_CERT_INVALID), -8151 (SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION), -8080 (SEC_ERROR_CERT_NOT_IN_NAME_SPACE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2687B || 123 || 308 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8179 (SEC_ERROR_UNKNOWN_ISSUER), -8172 (SEC_ERROR_UNTRUSTED_ISSUER), -8014 (SEC_ERROR_APPLICATION_CALLBACK_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x26A7B || 123 || 309 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8171 (SEC_ERROR_UNTRUSTED_CERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0x26C7B || 123 || 310 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12233 (SSL_ERROR_RX_UNKNOWN_RECORD_TYPE), -12232 (SSL_ERROR_RX_UNKNOWN_HANDSHAKE), -12231 (SSL_ERROR_RX_UNKNOWN_ALERT). This is also returned by ImportClientPki when import fails.&lt;br /&gt;
|-&lt;br /&gt;
| 0x26E7B || 123 || 311 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12261 (SSL_ERROR_RX_MALFORMED_HELLO_REQUEST), -12260 (SSL_ERROR_RX_MALFORMED_CLIENT_HELLO), -12259 (SSL_ERROR_RX_MALFORMED_SERVER_HELLO), -12258 (SSL_ERROR_RX_MALFORMED_CERTIFICATE), -12257 (SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH), -12256 (SSL_ERROR_RX_MALFORMED_CERT_REQUEST), -12255 (SSL_ERROR_RX_MALFORMED_HELLO_DONE), -12254 (SSL_ERROR_RX_MALFORMED_CERT_VERIFY), -12253 (SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH), -12252 (SSL_ERROR_RX_MALFORMED_FINISHED), -12251 (SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER), -12250 (SSL_ERROR_RX_MALFORMED_ALERT), -12249 (SSL_ERROR_RX_MALFORMED_HANDSHAKE), -12248 (SSL_ERROR_RX_MALFORMED_APPLICATION_DATA), -12166 (SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2707B || 123 || 312 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8144 (SEC_ERROR_UNSUPPORTED_KEYALG).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12274 (SSL_ERROR_SSL2_DISABLED), -12247 (SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST), -12246 (SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO), -12245 (SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO), -12244 (SSL_ERROR_RX_UNEXPECTED_CERTIFICATE), -12243 (SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH), -12242 (SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST), -12241 (SSL_ERROR_RX_UNEXPECTED_HELLO_DONE), -12240 (SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY), -12239 (SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH), -12238 (SSL_ERROR_RX_UNEXPECTED_FINISHED).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2727B || 123 || 313 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12237 (SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER), -12236 (SSL_ERROR_RX_UNEXPECTED_ALERT), -12235 (SSL_ERROR_RX_UNEXPECTED_HANDSHAKE), -12234 (SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2747B || 123 || 314 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12263 (SSL_ERROR_RX_RECORD_TOO_LONG).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2767B || 123 || 315 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12165 (SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2787B || 123 || 316 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12163 (SSL_ERROR_RX_UNEXPECTED_CERT_STATUS).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27A7B || 123 || 317 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12160 (SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27C7B || 123 || 318 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12173 (SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY), -12156 (SSL_ERROR_WEAK_SERVER_CERT_KEY).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27E7B || 123 || 319 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12273 (SSL_ERROR_BAD_MAC_READ).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2827B || 123 || 321 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12215 (SSL_ERROR_MD5_DIGEST_FAILURE), -12214 (SSL_ERROR_SHA_DIGEST_FAILURE), -12161 (SSL_ERROR_DIGEST_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2847B || 123 || 322 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12213 (SSL_ERROR_MAC_COMPUTATION_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2887B || 123 || 324 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8157 (SEC_ERROR_EXTENSION_NOT_FOUND).&lt;br /&gt;
|-&lt;br /&gt;
| 0x28A7B || 123 || 325 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8049 (SEC_ERROR_UNRECOGNIZED_OID).&lt;br /&gt;
|-&lt;br /&gt;
| 0x28C7B || 123 || 326 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8032 (SEC_ERROR_POLICY_VALIDATION_FAILED).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2947B || 123 || 330 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12177 (SSL_ERROR_DECOMPRESSION_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBA7B || 123 || 1501 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12230 (SSL_ERROR_CLOSE_NOTIFY_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBC7B || 123 || 1502 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12229 (SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBE7B || 123 || 1503 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12272 (SSL_ERROR_BAD_MAC_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC07B || 123 || 1504 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12197 (SSL_ERROR_DECRYPTION_FAILED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC27B || 123 || 1505 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12196 (SSL_ERROR_RECORD_OVERFLOW_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC47B || 123 || 1506 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12228 (SSL_ERROR_DECOMPRESSION_FAILURE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC67B || 123 || 1507 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12227 (SSL_ERROR_HANDSHAKE_FAILURE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCA7B || 123 || 1509 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12271 (SSL_ERROR_BAD_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCC7B || 123 || 1510 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12225 (SSL_ERROR_UNSUPPORTED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCE7B || 123 || 1511 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12270 (SSL_ERROR_REVOKED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD07B || 123 || 1512 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12269 (SSL_ERROR_EXPIRED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD27B || 123 || 1513 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12224 (SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD47B || 123 || 1514 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12226 (SSL_ERROR_ILLEGAL_PARAMETER_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD67B || 123 || 1515 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12195 (SSL_ERROR_UNKNOWN_CA_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD87B || 123 || 1516 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12194 (SSL_ERROR_ACCESS_DENIED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDA7B || 123 || 1517 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12193 (SSL_ERROR_DECODE_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDC7B || 123 || 1518 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12192 (SSL_ERROR_DECRYPT_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDE7B || 123 || 1519 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12191 (SSL_ERROR_EXPORT_RESTRICTION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE07B || 123 || 1520 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12190 (SSL_ERROR_PROTOCOL_VERSION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE27B || 123 || 1521 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12189 (SSL_ERROR_INSUFFICIENT_SECURITY_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE47B || 123 || 1522 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12188 (SSL_ERROR_INTERNAL_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE67B || 123 || 1523 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12157 (SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE87B || 123 || 1524 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12187 (SSL_ERROR_USER_CANCELED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEA7B || 123 || 1525 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12186 (SSL_ERROR_NO_RENEGOTIATION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEC7B || 123 || 1526 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12184 (SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEE7B || 123 || 1527 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12183 (SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF07B || 123 || 1528 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12182 (SSL_ERROR_UNRECOGNIZED_NAME_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF27B || 123 || 1529 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12181 (SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF47B || 123 || 1530 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12180 (SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27127B || 123 || 5001 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12155 (SSL_ERROR_RX_SHORT_DTLS_READ).&lt;br /&gt;
|-&lt;br /&gt;
| 0x271E7B || 123 || 5007 || Out-of-bounds error during error conversion.&lt;br /&gt;
|-&lt;br /&gt;
| 0x287C || 124 || 20 || Argument is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C7C || 124 || 22 || Argument is invalid&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C7C || 124 || 30 || Bad input buffer size&lt;br /&gt;
|-&lt;br /&gt;
| 0x407C || 124 || 32 || Invalid input buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x767C || 124 || 59 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 3000 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/27166/ System Update Required]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 3001 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28969/ Game Update Required]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4007 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28046/ Account Permanent Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4508 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28046/ Account Permanent Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4517 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/43652/ Account Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4609 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/46482/ Service Discontinued]&lt;br /&gt;
|-&lt;br /&gt;
| 0x27E || 126 || 1 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x87E || 126 || 4 || Entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE7E || 126 || 67 || Invalid database signature value (should be &amp;quot;NFDB&amp;quot;)&lt;br /&gt;
|-&lt;br /&gt;
| 0xD27E || 126 || 69 || Invalid database entry count&lt;br /&gt;
|-&lt;br /&gt;
| 0x1987E || 126 || 204 || Development/debug-only behavior&lt;br /&gt;
|-&lt;br /&gt;
| 0x480 || 128 || 2 || IStorage not available.&lt;br /&gt;
|-&lt;br /&gt;
| 0x680 || 128 || 3 || No messages&lt;br /&gt;
|-&lt;br /&gt;
| 0x4680 || 128 || 35 || Error while launching applet.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4A80 || 128 || 37 || Title-ID not found. Caused by code 0x410 when applet launch fails&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E880 || 128 || 500 || Invalid input&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EC80 || 128 || 502 || IStorage has already been opened by another accessor&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EE80 || 128 || 503 || IStorage Read/Write out-of-bounds&lt;br /&gt;
|-&lt;br /&gt;
| 0x3F480 || 128 || 506 || Invalid parameters&lt;br /&gt;
|-&lt;br /&gt;
| 0x3FE80 || 128 || 511 || IStorage opened as wrong type (data opened as transfermem, transfermem opened as data)&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080 || 128 || 512 || Unbalanced fatal section leave (returned when executing LeaveFatalSection without a preceding EnterFatalSection call)&lt;br /&gt;
|-&lt;br /&gt;
| 0x40C80 || 128 || 518 || Null object&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B080 || 128 || 600 || Failed to allocate memory for IStorage&lt;br /&gt;
|-&lt;br /&gt;
| 0x59080 || 128 || 712 || Thread stack pool exhausted (out of memory)&lt;br /&gt;
|-&lt;br /&gt;
| 0x79C80 || 128 || 974 || DebugMode not enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x7A880 || 128 || 980 || &amp;lt;code&amp;gt;am.debug!dev_function&amp;lt;/code&amp;gt; setting needs to be set / DebugMode not enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x7CC80 || 128 || 998 || Not implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC81 || 129 || 102 || Transmission not agreed&lt;br /&gt;
|-&lt;br /&gt;
| 0xD281 || 129 || 105 || Network unavailable&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DA81 || 129 || 1005 || HTTP error: Couldnt resolve proxy&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DC81 || 129 || 1006 || HTTP error: Couldnt resolve host&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DE81 || 129 || 1007 || HTTP error: Couldnt connect&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FE81 || 129 || 1023 || HTTP error: Write error&lt;br /&gt;
|-&lt;br /&gt;
| 0x80481 || 129 || 1026 || HTTP error: Read error&lt;br /&gt;
|-&lt;br /&gt;
| 0x80681 || 129 || 1027 || HTTP error: Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x80881 || 129 || 1028 || HTTP error: Operation timedout&lt;br /&gt;
|-&lt;br /&gt;
| 0x81681 || 129 || 1035 || HTTP error: SSL connect error&lt;br /&gt;
|-&lt;br /&gt;
| 0x83681 || 129 || 1051 || HTTP error: Peer failed verification&lt;br /&gt;
|-&lt;br /&gt;
| 0x83881 || 129 || 1052 || HTTP error: Got nothing&lt;br /&gt;
|-&lt;br /&gt;
| 0x83E81 || 129 || 1055 || HTTP error: Send error&lt;br /&gt;
|-&lt;br /&gt;
| 0x84081 || 129 || 1056 || HTTP error: Recv error&lt;br /&gt;
|-&lt;br /&gt;
| 0x84481 || 129 || 1058 || HTTP error: SSL cert problem&lt;br /&gt;
|-&lt;br /&gt;
| 0x84681 || 129 || 1059 || HTTP error: SSL cipher&lt;br /&gt;
|-&lt;br /&gt;
| 0x84881 || 129 || 1060 || HTTP error: SSL CA cert&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C081 || 129 || 2400 || Server error: Status 400&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C281 || 129 || 2401 || Server error: Status 401&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C681 || 129 || 2403 || Server error: Status 403&lt;br /&gt;
|-&lt;br /&gt;
| 0x138881 || 129 || 2500 || Server error: Status 500&lt;br /&gt;
|-&lt;br /&gt;
| 0x138E81 || 129 || 2503 || Server error: Status 503&lt;br /&gt;
|-&lt;br /&gt;
| 0x139081 || 129 || 2504 || Server error: Status 504&lt;br /&gt;
|-&lt;br /&gt;
| 0xA83 || 131 || 5 || Unrecognized applet ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x485 || 133 || 2 || Invalid DVFS table ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x685 || 133 || 3 || DVFS table ID for debug only, see [[PCV_services#Module|DVFS Table]] notes.&lt;br /&gt;
|-&lt;br /&gt;
| 0x885 || 133 || 4 || Invalid parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x1489 || 137 || 10 || Already initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C89 || 137 || 30 || Task not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5089 || 137  || 40 || Memory allocation failed / bad input.&lt;br /&gt;
|-&lt;br /&gt;
| 0x29489 || 137 || 330 || [[NCM_services#ContentMetaType|ContentMetaType]] doesn&#039;t match SystemUpdate.&lt;br /&gt;
|-&lt;br /&gt;
| 0x271289 || 137 || 5001 || One of the following socket errors occurred: ENETDOWN, ECONNRESET, EHOSTDOWN, EHOSTUNREACH, or EPIPE. Also occurs when the received size doesn&#039;t match the expected size (recvfrom() ret with [[NIM_services#Contents_Delivery|meta_size]] data receiving).&lt;br /&gt;
|-&lt;br /&gt;
| 0x272489 || 137 || 5010 || Socket was [[Sockets_services|shutdown()]] due to the async operation being cancelled.&lt;br /&gt;
|-&lt;br /&gt;
| 0x273889 || 137 || 5020 || Too many internal output entries with [[NIM_services|nim]] cmd42, system is [[NIM_services#Contents_Delivery|Internet-connected]], or an unrecognized socket error occured.&lt;br /&gt;
|-&lt;br /&gt;
| 0x27D889 || 137 || 5100 || Connection timeout.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A4489 || 137 || 5410 || Invalid [[NIM_services#Contents_Delivery|ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A5889 || 137 || 5420 || Invalid [[NIM_services#Contents_Delivery|magicnum]]. Can also be caused by the connection being closed by the peer, since non-negative return values from recv() are ignored in this case.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A6C89 || 137 || 5430 || Invalid [[NIM_services#Contents_Delivery|data_size]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A8089 || 137 || 5440 || The input [[NCM_services#ContentMetaKey|ContentMetaKey]] doesn&#039;t match the ContentMetaKey in state.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A9489 || 137 || 5450 || Invalid [[NIM_services#Contents_Delivery|meta_size]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B289 || 137 || 7001 || HTTP invalid response code (&amp;gt;=600).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B489 || 137 || 7002 || HTTP invalid client response code (4xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B689 || 137 || 7003 || HTTP invalid server response code (5xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B889 || 137 || 7004 || HTTP invalid redirect response code (3xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x390889-0x391889 || 137 || 7300-7308 || HTTP response code 300-308.&lt;br /&gt;
|-&lt;br /&gt;
| 0x39D089-0x39F289 || 137 || 7400-7417 || HTTP response code 400-417.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A9889-0x3AAA89 || 137 || 7500-7509 || HTTP response code 500-509.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3CF089 || 137 || 7800 || Unknown/invalid libcurl error.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E8289-0x3F4089 || 137 || 8001-8096 || libcurl error 1-96. Some of the libcurl errors in the error-table map to the above unknown-libcurl-error however.&lt;br /&gt;
|-&lt;br /&gt;
| 0x68A || 138 || 3 || Not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x668C || 140 || 51 || USB data-transfer in progress&lt;br /&gt;
|-&lt;br /&gt;
| 0xD48C || 140 || 106 || Invalid descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0x1928C || 140 || 201 || USB device not bound / interface already enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BE8E || 142 || 223 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x290 || 144 || 1 || Exited Abnormally ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Abormal)&lt;br /&gt;
|-&lt;br /&gt;
| 0x690 || 144 || 3 || Canceled ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Canceled)&lt;br /&gt;
|-&lt;br /&gt;
| 0x890 || 144 || 4 || Rejected&lt;br /&gt;
|-&lt;br /&gt;
| 0xA90 || 144 || 5 || Exited Unexpectedly ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Unexpected)&lt;br /&gt;
|-&lt;br /&gt;
| 0x299 || 153 || 1 || Invalid audio device&lt;br /&gt;
|-&lt;br /&gt;
| 0x499 || 153 || 2 || Operation couldn&#039;t complete successfully&lt;br /&gt;
|-&lt;br /&gt;
| 0x699 || 153 || 3 || Invalid sample rate&lt;br /&gt;
|-&lt;br /&gt;
| 0x899 || 153 || 4 || Buffer size too small&lt;br /&gt;
|-&lt;br /&gt;
| 0x1099 || 153 || 8 || Too many buffers are still unreleased&lt;br /&gt;
|-&lt;br /&gt;
| 0x1499 || 153 || 10 || Invalid channel count&lt;br /&gt;
|-&lt;br /&gt;
| 0x40299 || 153 || 513 || Invalid/Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0099 || 153 || 1536 || Invalid handle&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0899 || 153 || 1540 || Audio output was already started&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C9D || 157 || 30 || Address is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E9D || 157 || 31 || PID is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x549D || 157 || 42 || Already bound&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC9D || 157 || 102 || Invalid PID&lt;br /&gt;
|-&lt;br /&gt;
| 0x49E || 158 || 2 || BootImagePackage not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x69E || 158 || 3 || Invalid BootImagePackage&lt;br /&gt;
|-&lt;br /&gt;
| 0x89E || 158 || 4 || Work buffer too small&lt;br /&gt;
|-&lt;br /&gt;
| 0xA9E || 158 || 5 || Work buffer not aligned&lt;br /&gt;
|-&lt;br /&gt;
| 0xC9E || 158 || 6 || BootImages need repair&lt;br /&gt;
|-&lt;br /&gt;
| 0x29F || 159 || 1 || Cancel was selected&lt;br /&gt;
|-&lt;br /&gt;
| 0xAA3 || 163 ||  5 || System is booting up repair process without VOL+ held down.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA3 || 163 || 6 || System is booting up repair process that requires RepairTimeReviser but does not have special cartridge inserted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x70A4 || 164 || 56 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4AF || 175 || 2 || Bad version returned from calling the &amp;quot;nnjitpluginGetVersion&amp;quot; symbol.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCAAF || 175 || 101 || Input NRO/NRR are too large for the storage buffer.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B0AF || 175 || 600 || Symbol funcptr used by this cmd is not initialized (Control/GenerateCode).&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B2AF || 175 || 601 || DllPlugin Not initialized, or plugin NRO has already been loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B4AF || 175 || 602 || An error was returned from calling the symbol funcptr with the Control cmd.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC8B2 || 178 || 100 || Invalid user ID&lt;br /&gt;
|-&lt;br /&gt;
| 0xCAB2 || 178 || 101 || User does not exist&lt;br /&gt;
|-&lt;br /&gt;
| 0x12CB2 || 178 || 150 || Service unavailable&lt;br /&gt;
|-&lt;br /&gt;
| 0x190B2 || 178 || 200 || File storage failure&lt;br /&gt;
|-&lt;br /&gt;
| 0xAB4 || 180 || 5 || Invalid event ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4EB5 || 181 || 4007 || Device authentication error: System update required&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F50B5 || 181 || 4008 || Device authentication error: [https://en-americas-support.nintendo.com/app/answers/detail/a_id/42061/ Permanant Ban]&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F52B5 || 181 || 4009 || Device authentication error: Internal server error&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F54B5 || 181 || 4007 || Device authentication error: Under maintenance&lt;br /&gt;
|-&lt;br /&gt;
|  || 181 || 4017 || Device authentication error: [https://en-americas-support.nintendo.com/app/answers/detail/a_id/43653/ Ban]&lt;br /&gt;
|-&lt;br /&gt;
| 0x58ACA || 202 || 709 || Npad ID is out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2032CA || 202 || 4121 || [[Settings_services#ButtonConfigSettings|ButtonConfigSettings]] IsFull flag is clear.&lt;br /&gt;
|-&lt;br /&gt;
| 0x28CB || 203 || 20 || The [6.0.0+] Authentication challenge failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40CB || 203 || 32 || Bad State / bad state ptr.&lt;br /&gt;
|-&lt;br /&gt;
| 0x82CB || 203 || 65 || Failed to connect to the AccessPoint.&lt;br /&gt;
|-&lt;br /&gt;
| 0x84CB || 203 || 66 || Timeout occured during Authentication / while attempting to find a valid ActionFrame.&lt;br /&gt;
|-&lt;br /&gt;
| 0x86CB || 203 || 67 || Maximum participants reached, Station not allowed to connect, ...&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0CB || 203 || 96 || Bad input, or not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC2CB || 203 || 97 || Matching LocalCommunicationId not found in the user-process [[NACP_Format|control.nacp]].&lt;br /&gt;
|-&lt;br /&gt;
| 0xE2CB || 203 || 113 || The specified LocalCommunicationVersion is less than the AccessPoint LocalCommunicationVersion.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE4CB || 203 || 114 || The specified LocalCommunicationVersion is larger than the AccessPoint LocalCommunicationVersion.&lt;br /&gt;
|-&lt;br /&gt;
| 0xF0CD || 205 || 120 || IR image data not available/ready.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A8CD || 205 || 212 || IR camera handle pointer is null.&lt;br /&gt;
|-&lt;br /&gt;
| 0x198CD || 205 || 204 || IR camera invalid handle value.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4CE || 206 || 2 || Invalid argument.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6CE || 206 || 3 || Out of memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10CE || 206 || 8 || Out of range. Buffer needs to be aligned.&lt;br /&gt;
|-&lt;br /&gt;
| 0x18CE || 206 || 12 || Invalid FileId.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1ACE || 206 || 13 || Invalid storage ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1CCE || 206 || 14 || Invalid content type.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2ACE || 206 || 21 || Failed to mount Image Directory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2CCE || 206 || 23 || File too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x30CE || 206 || 24 || Invalid file size.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3CCE || 206 || 30 || Buffer insufficient.&lt;br /&gt;
|-&lt;br /&gt;
| 0xAF2CE || 206 || 1401 || Too many files already saved.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4DA || 218 || 2 || StatusManager entry IsValid flag not set, or controller-update currently in-progress.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6DA || 218 || 3 || Controller-update failed via the LibraryApplet.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8DA || 218 || 4 || Invalid BusHandle.&lt;br /&gt;
|-&lt;br /&gt;
| 0xADA || 218 || 5 || StatusManager entry flag +0x0 not set, or device not connected.&lt;br /&gt;
|-&lt;br /&gt;
| 0xEDA || 218 || 7 || PollingReceivedData not available.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10DA || 218 || 8 || StatusManager entry DeviceEnabled flag not set, or flag +0x0 not set.&lt;br /&gt;
|-&lt;br /&gt;
| 0x12DA || 218 || 9 || ExternalDeviceId mismatch.&lt;br /&gt;
|-&lt;br /&gt;
| 0x14DA || 218 || 10 || BusHandle already initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x104E7 || 231 || 130 || Nullptr passed to the LocalCommunicationId [[NACP_Format|control.nacp]] validation func.&lt;br /&gt;
|-&lt;br /&gt;
| 0x140E7 || 231 || 160 || GroupInfo field out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x142E7 || 231 || 161 || SupportedPlatform not appropriate for this operation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x146E7 || 231 || 163 || Invalid ServiceName.&lt;br /&gt;
|-&lt;br /&gt;
| 0x148E7 || 231 || 164 || Must provide PresharedBinaryKey.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C0E7 || 231 || 224 || Requested Priority value not allowed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C2E7 || 231 || 225 || Matching LocalCommunicationId not found in the user-process [[NACP_Format|control.nacp]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x200E7 || 231 || 256 || Invalid flag.&lt;br /&gt;
|-&lt;br /&gt;
| 0x204E7 || 231 || 258 || Invalid SupportedPlatform.&lt;br /&gt;
|-&lt;br /&gt;
| 0x208E7 || 231 || 260 || Invalid StaticAesKeyIndex.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20AE7 || 231 || 261 || MemberCountMax cannot be greater than 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0x210E7 || 231 || 264 || GroupInfo+8F must be 0x20.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FS Error codes ===&lt;br /&gt;
The following are the error codes recognized by nn::fs::detail::LogErrorMessage found in some [[Factory Setup|factory]] titles:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Description || Message&lt;br /&gt;
|-&lt;br /&gt;
| 0xD401 || 106 || nn::svc::ResultInvalidCurrentMemory: Error: Passed buffer is not usable for fs library. See a manual of fs library for more information.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7802 || 60 || nn::fs::ResultMountNameAlreadyExists: Error: Specified mount name already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D202 || 1001 || nn::fs::ResultPartitionNotFound: Error: Specified partition is not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D402 || 1002 || nn::fs::ResultTargetNotFound: Error: Specified target is not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA002 - 0x138602 || 2000 - 2499 || nn::fs::ResultSdCardAccessFailed: Error: Failed to access SD card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x136802 - 0x176E02 || 2500 - 2999 || nn::fs::ResultGameCardAccessFailed: Error: Failed to access game card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x177202 || 3001 || nn::fs::ResultNotImplemented: Error: Specified operation is not implemented.&lt;br /&gt;
|-&lt;br /&gt;
| 0x177A02 || 3005 || nn::fs::ResultOutOfRange: Error: Specified value is out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x190002 - 0x1B5602 || 3200 - 3499 || nn::fs::ResultAllocationMemoryFailed: Error: Failed to allocate memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B5802 - 0x1F3E02 || 3500 - 3999 || nn::fs::ResultMmcAccessFailed: Error: Failed to access MMC.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4202 - 0x219602 || 4001 - 4299 || nn::fs::ResultRomCorrupted: Error: ROM is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x219A02 - 0x232602 || 4301 - 4499 || nn::fs::ResultSaveDataCorrupted: Error: Save data is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x232A02 - 0x23EE02 || 4501 - 4599 || nn::fs::ResultNcaCorrupted: Error: NCA is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x23F202 - 0x243E02 || 4601 - 4639 || nn::fs::ResultIntegrityVerificationStorageCorrupted: Error: Integrity verification failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x244202 - 0x246602 || 4641 - 4659 || nn::fs::ResultPartitionFileSystemCorrupted: Error: Partition FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x246A02 - 0x248E02 || 4661 - 4679 || nn::fs::ResultBuiltInStorageCorrupted: Error: Built-in-storage is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249202 - 0x24B602 || 4681 - 4699 || nn::fs::ResultFatFileSystemCorrupted: Error: FAT FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24BA02 - 0x24DE02 || 4701 - 4719 || nn::fs::ResultHostFileSystemCorrupted: Error: HOST FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4002 - 0x270E02 || 4000, 4300, 4500, 4600, 4640, 4660, 4680, 4700, 4720-4999 || nn::fs::ResultDataCorrupted: Error: Data is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x271002 - 0x2EDE02 || 5000-5999 || nn::fs::ResultUnexpected: Error: Unexpected failure occurred.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE002 - 0x32C602 || 6000-6499 || nn::fs::ResultPreconditionViolation: Error: Precondition violation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE202 - 0x306E02 || 6001-6199 || nn::fs::ResultInvalidArgument: Error: Invalid argument was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE402 - 0x2F1A02 || 6002-6029 || nn::fs::ResultInvalidPath: Error: Invalid path was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE602 || 6003 || nn::fs::ResultTooLongPath: Error: Too long path was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE802 || 6004 || nn::fs::ResultInvalidCharacter: Error: Invalid path character was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEA02 || 6005 || nn::fs::ResultInvalidPathFormat: Error: Invalid path format was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5A02 || 6061 || nn::fs::ResultInvalidOffset: Error: Invalid offset was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5C02 || 6062 || nn::fs::ResultInvalidSize: Error: Invalid size was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5E02 || 6063 || nn::fs::ResultNullptrArgument: Error: Null pointer argument was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6202 || 6065 || nn::fs::ResultInvalidMountName: Error: Invalid mount name was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6402 || 6066 || nn::fs::ResultExtensionSizeTooLarge: Error: Extension size exceeds max value set in nmeta file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6602 || 6067 || nn::fs::ResultExtensionSizeInvalid: Error: Extension size is not a multiple of nn::fs::SaveDataExtensionUnitSize.&lt;br /&gt;
|-&lt;br /&gt;
| 0x307202 || 6201 || nn::fs::ResultFileExtensionWithoutOpenModeAllowAppend: Error: OpenMode_AllowAppend is required for implicit extension of file size by WriteFile().&lt;br /&gt;
|-&lt;br /&gt;
| 0x307002 - 0x313602 || 6200, 6202 - 6299 || nn::fs::ResultInvalidOperationForOpenMode: Error: Invalid operation for the open mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0x313802 - 0x31FE02 || 6300-6399 || nn::fs::ResultUnsupportedOperation: Error: Unsupported operation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x320002 - 0x326202 || 6400-6449 || nn::fs::ResultPermissionDenied: Error: Permission denied.&lt;br /&gt;
|-&lt;br /&gt;
| 0x327202 || 6457 || nn::fs::ResultWriteModeFileNotClosed: Error: Close files opened in write mode before committing.&lt;br /&gt;
|-&lt;br /&gt;
| 0x328202 || 6465 || nn::fs::ResultUserNotExist: Error: Specified user doesn&#039;t exist.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346402 || 6706 || nn::fs::ResultMappingTableFull: Error: Enough journal space is not left.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346A02 || 6709 || nn::fs::ResultOpenCountLimit: Error: The open count of files and directories reached the limitation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x353602 || 6811 || nn::fs::ResultMapFull: Error: Save data extension count reached the limitation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x35F202 || 6905 || nn::fs::ResultNotMounted: Error: Specified mount name is not found.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Fatal Errors =&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Error || Description&lt;br /&gt;
|-&lt;br /&gt;
| 2162-0002&lt;br /&gt;
| Can be triggered by running [[SVC|svcBreak]]. The svcBreak params have no effect on the value of the thrown error-code.&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0000&lt;br /&gt;
| Userland ARM undefined instruction exception&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0001&lt;br /&gt;
| Userland ARM prefetch-abort due to PC set to non-executable region&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0002&lt;br /&gt;
| Userland ARM data abort. Also caused by abnormal process termination via [[SVC|svcExitProcess]]. Note: directly jumping to nnMain()-retaddr from non-main-thread has the same result.&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0003&lt;br /&gt;
| Userland PC address not aligned to 4 bytes&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0008&lt;br /&gt;
| Can occur when attempting to call an svc outside the whitelist&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Support Errors =&lt;br /&gt;
This section is for Support Errors displayed by the error-applet, separate from the normal Result Errors.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 520 || Nverpt&lt;br /&gt;
|-&lt;br /&gt;
| 800 || [[Internet_Browser|General web-applet]]&lt;br /&gt;
|-&lt;br /&gt;
| 809 || [[Internet_Browser|WifiWebAuthApplet]]&lt;br /&gt;
|-&lt;br /&gt;
| 810 || [[Internet_Browser|Whitelisted-applet]]&lt;br /&gt;
|-&lt;br /&gt;
| 811 || [[Internet_Browser|ShopN]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
8XX is for/includes system applets.&lt;br /&gt;
&lt;br /&gt;
== Error codes ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Module || Description || Notes&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| {web-applets listed above}&lt;br /&gt;
| 2750&lt;br /&gt;
| MP4 parsing failed.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Normal error-codes displayed by the system also use the same format as fatal-errors.&lt;br /&gt;
&lt;br /&gt;
= Homebrew Errors =&lt;br /&gt;
Custom errors used by homebrew libraries and applications.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 345 || libnx&lt;br /&gt;
|-&lt;br /&gt;
| 346 || [[Homebrew ABI]]&lt;br /&gt;
|-&lt;br /&gt;
| 347 || Homebrew Loader&lt;br /&gt;
|-&lt;br /&gt;
| 348 || libnx NVIDIA errors&lt;br /&gt;
|-&lt;br /&gt;
| 349 || libnx Binder errors&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=Error_codes&amp;diff=10695</id>
		<title>Error codes</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=Error_codes&amp;diff=10695"/>
		<updated>2021-02-16T18:10:11Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Add time error 103&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Structure =&lt;br /&gt;
These have been redesigned from the 3DS so that they fit within a Aarch64 MOV instruction immediate most of the time (without requiring the additional MOVK).&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Bits || Field&lt;br /&gt;
|-&lt;br /&gt;
| 8-0 || Module&lt;br /&gt;
|-&lt;br /&gt;
| 21-9 || Description&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
When a fatal-error is received the error code is outputted using the following formatter:&lt;br /&gt;
  %04d-%04d&lt;br /&gt;
&lt;br /&gt;
.. where the first code is &amp;lt;code&amp;gt;2000 + Module&amp;lt;/code&amp;gt;, and the other being &amp;lt;code&amp;gt;Description&amp;lt;/code&amp;gt;. Bits &amp;gt;=22 from the error-code are unused when displaying fatal-errors, since the Description ends with bit21.&lt;br /&gt;
&lt;br /&gt;
= Result Errors =&lt;br /&gt;
General errors used by system modules and applications.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Kernel&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Fs&lt;br /&gt;
|-&lt;br /&gt;
| 3 || OS&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Htcs&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Ncm&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Dd&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Dmnt&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Lr&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Loader&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Cmif&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Hipc&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Pm&lt;br /&gt;
|-&lt;br /&gt;
| 16 || Ns&lt;br /&gt;
|-&lt;br /&gt;
| 17 || Bsdsockets&lt;br /&gt;
|-&lt;br /&gt;
| 18 || Htc&lt;br /&gt;
|-&lt;br /&gt;
| 19 || Tsc&lt;br /&gt;
|-&lt;br /&gt;
| 20 || Ncm (content)&lt;br /&gt;
|-&lt;br /&gt;
| 21 || Sm&lt;br /&gt;
|-&lt;br /&gt;
| 22 || Ro (userland)&lt;br /&gt;
|-&lt;br /&gt;
| 23 || Gc&lt;br /&gt;
|-&lt;br /&gt;
| 24 || Sdmmc&lt;br /&gt;
|-&lt;br /&gt;
| 25 || Ovln&lt;br /&gt;
|-&lt;br /&gt;
| 26 || Spl&lt;br /&gt;
|-&lt;br /&gt;
| 27 || Socket&lt;br /&gt;
|-&lt;br /&gt;
| 29 || Htclow&lt;br /&gt;
|-&lt;br /&gt;
| 30 || Ddsf&lt;br /&gt;
|-&lt;br /&gt;
| 31 || Htcfs&lt;br /&gt;
|-&lt;br /&gt;
| 32 || Async&lt;br /&gt;
|-&lt;br /&gt;
| 100 || Ethc&lt;br /&gt;
|-&lt;br /&gt;
| 101 || I2c&lt;br /&gt;
|-&lt;br /&gt;
| 102 || Gpio&lt;br /&gt;
|-&lt;br /&gt;
| 103 || Uart&lt;br /&gt;
|-&lt;br /&gt;
| 105 || Settings&lt;br /&gt;
|-&lt;br /&gt;
| 107 || Wlan&lt;br /&gt;
|-&lt;br /&gt;
| 108 || Xcd&lt;br /&gt;
|-&lt;br /&gt;
| 110 || Nifm&lt;br /&gt;
|-&lt;br /&gt;
| 111 || Hwopus&lt;br /&gt;
|-&lt;br /&gt;
| 112 || Sasbus&lt;br /&gt;
|-&lt;br /&gt;
| 113 || Bluetooth&lt;br /&gt;
|-&lt;br /&gt;
| 114 || Vi&lt;br /&gt;
|-&lt;br /&gt;
| 115 || Nfp&lt;br /&gt;
|-&lt;br /&gt;
| 116 || Time&lt;br /&gt;
|-&lt;br /&gt;
| 117 || Fgm&lt;br /&gt;
|-&lt;br /&gt;
| 118 || Oe&lt;br /&gt;
|-&lt;br /&gt;
| 120 || Pcie&lt;br /&gt;
|-&lt;br /&gt;
| 121 || Friends&lt;br /&gt;
|-&lt;br /&gt;
| 122 || Bcat&lt;br /&gt;
|-&lt;br /&gt;
| 123 || Ssl&lt;br /&gt;
|-&lt;br /&gt;
| 124 || Account&lt;br /&gt;
|-&lt;br /&gt;
| 125 || News&lt;br /&gt;
|-&lt;br /&gt;
| 126 || Mii&lt;br /&gt;
|-&lt;br /&gt;
| 127 || Nfc&lt;br /&gt;
|-&lt;br /&gt;
| 128 || Am&lt;br /&gt;
|-&lt;br /&gt;
| 129 || Prepo&lt;br /&gt;
|-&lt;br /&gt;
| 130 || Ahid&lt;br /&gt;
|-&lt;br /&gt;
| 132 || Qlaunch&lt;br /&gt;
|-&lt;br /&gt;
| 133 || Pcv&lt;br /&gt;
|-&lt;br /&gt;
| 134 || Omm&lt;br /&gt;
|-&lt;br /&gt;
| 135 || Bpc&lt;br /&gt;
|-&lt;br /&gt;
| 136 || Psm&lt;br /&gt;
|-&lt;br /&gt;
| 137 || Nim&lt;br /&gt;
|-&lt;br /&gt;
| 138 || Psc&lt;br /&gt;
|-&lt;br /&gt;
| 139 || Tc&lt;br /&gt;
|-&lt;br /&gt;
| 140 || Usb&lt;br /&gt;
|-&lt;br /&gt;
| 141 || Nsd&lt;br /&gt;
|-&lt;br /&gt;
| 142 || Pctl&lt;br /&gt;
|-&lt;br /&gt;
| 143 || Btm&lt;br /&gt;
|-&lt;br /&gt;
| 144 || La&lt;br /&gt;
|-&lt;br /&gt;
| 145 || ETicket&lt;br /&gt;
|-&lt;br /&gt;
| 146 || Ngc&lt;br /&gt;
|-&lt;br /&gt;
| 147 || Erpt&lt;br /&gt;
|-&lt;br /&gt;
| 148 || Apm&lt;br /&gt;
|-&lt;br /&gt;
| 149 || Cec&lt;br /&gt;
|-&lt;br /&gt;
| 150 || Profiler&lt;br /&gt;
|-&lt;br /&gt;
| 151 || Eupld&lt;br /&gt;
|-&lt;br /&gt;
| 153 || Audio&lt;br /&gt;
|-&lt;br /&gt;
| 154 || Npns&lt;br /&gt;
|-&lt;br /&gt;
| 155 || Npns XMPP stream&lt;br /&gt;
|-&lt;br /&gt;
| 157 || Arp&lt;br /&gt;
|-&lt;br /&gt;
| 158 || Updater&lt;br /&gt;
|-&lt;br /&gt;
| 159 || Swkbd&lt;br /&gt;
|-&lt;br /&gt;
| 161 || Mifare&lt;br /&gt;
|-&lt;br /&gt;
| 162 || Userland (assert)&lt;br /&gt;
|-&lt;br /&gt;
| 163 || Fatal&lt;br /&gt;
|-&lt;br /&gt;
| 164 || Ec (shop)&lt;br /&gt;
|-&lt;br /&gt;
| 165 || Spsm&lt;br /&gt;
|-&lt;br /&gt;
| 167 || Bgtc&lt;br /&gt;
|-&lt;br /&gt;
| 168 || Userland (crash)&lt;br /&gt;
|-&lt;br /&gt;
| 169 || Sasbus periodic receive mode&lt;br /&gt;
|-&lt;br /&gt;
| 175 || Jit&lt;br /&gt;
|-&lt;br /&gt;
| 177 || Hdcp&lt;br /&gt;
|-&lt;br /&gt;
| 178 || Pdm&lt;br /&gt;
|-&lt;br /&gt;
| 179 || Olsc&lt;br /&gt;
|-&lt;br /&gt;
| 180 || Srepo&lt;br /&gt;
|-&lt;br /&gt;
| 181 || Dauth&lt;br /&gt;
|-&lt;br /&gt;
| 187 || Sasbus&lt;br /&gt;
|-&lt;br /&gt;
| 189 || Pwm&lt;br /&gt;
|-&lt;br /&gt;
| 191 || Rtc&lt;br /&gt;
|-&lt;br /&gt;
| 192 || Regulator&lt;br /&gt;
|-&lt;br /&gt;
| 193 || Led&lt;br /&gt;
|-&lt;br /&gt;
| 197 || Clkrst&lt;br /&gt;
|-&lt;br /&gt;
| 198 || Powctl&lt;br /&gt;
|-&lt;br /&gt;
| 202 || Hid&lt;br /&gt;
|-&lt;br /&gt;
| 203 || Ldn&lt;br /&gt;
|-&lt;br /&gt;
| 204 || Cs&lt;br /&gt;
|-&lt;br /&gt;
| 205 || Irsensor&lt;br /&gt;
|-&lt;br /&gt;
| 206 || Capture&lt;br /&gt;
|-&lt;br /&gt;
| 208 || Manu&lt;br /&gt;
|-&lt;br /&gt;
| 209 || Atk&lt;br /&gt;
|-&lt;br /&gt;
| 210 || Web&lt;br /&gt;
|-&lt;br /&gt;
| 211 || Lcs&lt;br /&gt;
|-&lt;br /&gt;
| 212 || Grc&lt;br /&gt;
|-&lt;br /&gt;
| 214 || Album&lt;br /&gt;
|-&lt;br /&gt;
| 216 || Migration&lt;br /&gt;
|-&lt;br /&gt;
| 217 || Migration idc server&lt;br /&gt;
|-&lt;br /&gt;
| 218 || Hidbus&lt;br /&gt;
|-&lt;br /&gt;
| 223 || Websocket&lt;br /&gt;
|-&lt;br /&gt;
| 227 || Capmtp&lt;br /&gt;
|-&lt;br /&gt;
| 228 || Pgl&lt;br /&gt;
|-&lt;br /&gt;
| 229 || Notification&lt;br /&gt;
|-&lt;br /&gt;
| 230 || Ins&lt;br /&gt;
|-&lt;br /&gt;
| 231 || Lp2p&lt;br /&gt;
|-&lt;br /&gt;
| 232 || Rcd?&lt;br /&gt;
|-&lt;br /&gt;
| 244 || Dp2hdmi&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Error codes ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Module || Description || Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0E01 || 1 || 7 || Session count exceeded&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C01 || 1 || 14 || Invalid kernel capability descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0x4201 || 1 || 33 || Not Implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x7601 || 1 || 59 || Thread terminated/termination requested&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C01 || 1 || 70 || No more debug events&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA01 || 1 || 101 || Invalid size&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC01 || 1 || 102 || Invalid address&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE01 || 1 || 103 || Resource exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD001 || 1 || 104 || Memory exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD201 || 1 || 105 || Handle-table exhaustion&lt;br /&gt;
|-&lt;br /&gt;
| 0xD401 || 1 || 106 || Invalid memory state / invalid memory permissions.&lt;br /&gt;
|-&lt;br /&gt;
| 0xD801 || 1 || 108 || Invalid memory permissions.&lt;br /&gt;
|-&lt;br /&gt;
| 0xDC01 || 1 || 110 || Invalid memory range&lt;br /&gt;
|-&lt;br /&gt;
| 0xE001 || 1 || 112 || Invalid thread priority.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE201 || 1 || 113 || Invalid processor id.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE401 || 1 || 114 || Invalid handle.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE601 || 1 || 115 || Invalid pointer/Syscall copy from user failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE801 || 1 || 116 || Invalid combination&lt;br /&gt;
|-&lt;br /&gt;
| 0xEA01 || 1 || 117 || Time out. Also when you give 0 handles to svcWaitSynchronizationN.&lt;br /&gt;
|-&lt;br /&gt;
| 0xEC01 || 1 || 118 || Operation canceled&lt;br /&gt;
|-&lt;br /&gt;
| 0xEE01 || 1 || 119 || Out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0xF001 || 1 || 120 || Invalid enum&lt;br /&gt;
|-&lt;br /&gt;
| 0xF201 || 1 || 121 || No such entry&lt;br /&gt;
|-&lt;br /&gt;
| 0xF401 || 1 || 122 || Irq/DeviceAddressSpace/{...} already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0xF601 || 1 || 123 || Port remote dead&lt;br /&gt;
|-&lt;br /&gt;
| 0xF801 || 1 || 124 || [Usermode] Unhandled interrupt/exception&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA01 || 1 || 125 || Invalid state&lt;br /&gt;
|-&lt;br /&gt;
| 0xFC01 || 1 || 126 || Reserved value&lt;br /&gt;
|-&lt;br /&gt;
| 0xFE01 || 1 || 127 || Invalid hardware breakpoint&lt;br /&gt;
|-&lt;br /&gt;
| 0x10001 || 1 || 128 || [Usermode] Fatal exception&lt;br /&gt;
|-&lt;br /&gt;
| 0x10201 || 1 || 129 || Last thread didn&#039;t belong to your process&lt;br /&gt;
|-&lt;br /&gt;
| 0x10601 || 1 || 131 || Port closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x10801 || 1 || 132 || Resource limit exceeded&lt;br /&gt;
|-&lt;br /&gt;
| 0x20801 || 1 || 260 || Command buffer too small&lt;br /&gt;
|-&lt;br /&gt;
| 0x40A01 || 1 || 517 || Invalid process ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40C01 || 1 || 518 || Invalid thread ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40E01 || 1 || 519 || Invalid thread ID (used in svcGetDebugThreadParam).&lt;br /&gt;
|-&lt;br /&gt;
| 0x41001 || 1 || 520 || Process not being debugged&lt;br /&gt;
|-&lt;br /&gt;
| 0x202 || 2 || 1 || Path does not exist.&lt;br /&gt;
|-&lt;br /&gt;
| 0x402 || 2 || 2 || Path already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE02 || 2 || 7 || Resource already in use (file already opened, savedata filesystem already mounted).&lt;br /&gt;
|-&lt;br /&gt;
| 0x4602 || 2 || 35 || Not enough free space for BIS Calibration partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4802 || 2 || 36 || Not enough free space for BIS Safe partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4A02 || 2 || 37 || Not enough free space for BIS User partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C02 || 2 || 38 || Not enough free space for BIS System partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4E02 || 2 || 39 || Not enough free space on SD card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6402 || 2 || 50 || NCA is older than version 3, or NCA SDK version is older than 0.11.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 0x7802 || 2 || 60 || Specified mount name already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D202 || 2 || 1001 || Process does not have RomFs &lt;br /&gt;
|-&lt;br /&gt;
| 0x7D402 || 2 || 1002 || Title-id not found / savedata not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA202 || 2 || 2001 || SD card not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x13B002 || 2 || 2520 || Gamecard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x13B402 || 2 || 2522 || Attempted process an AsicHandler command in initial mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13D802 || 2 || 2540 || Attempted to read from the secure gamecard partition in normal mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13DA02 || 2 || 2541 || Attempted to read from the normal gamecard partition in secure mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x13DC02 || 2 || 2542 || Attempted a read that spanned both the normal and secure gamecard partitions&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E002 || 2 || 2544 || Gamecard initial data hash doesn&#039;t match the initial data hash in the card header&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E202 || 2 || 2545 || Gamecard initial data reserved area is not all zeros&lt;br /&gt;
|-&lt;br /&gt;
| 0x13E402 || 2 || 2546 || Gamecard certificate kek index doesn&#039;t match card header kek index&lt;br /&gt;
|-&lt;br /&gt;
| 0x13EE02 || 2 || 2551 || Unable to read card header on gamecard init&lt;br /&gt;
|-&lt;br /&gt;
| 0x140A02 || 2 || 2565 || Encountered SDMMC error in write operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x145002 || 2 || 2600 || Attempted to switch lotus state machine to secure mode from a mode other than normal&lt;br /&gt;
|-&lt;br /&gt;
| 0x145202 || 2 || 2601 || Attempted to switch lotus state machine to normal mode from a mode other than initial&lt;br /&gt;
|-&lt;br /&gt;
| 0x145402 || 2 || 2602 || Attempted to switch lotus state machine to write mode from a mode other than normal&lt;br /&gt;
|-&lt;br /&gt;
| 0x149402 || 2 || 2634 || Error processing lotus command SetUserAsicFirmware&lt;br /&gt;
|-&lt;br /&gt;
| 0x149A02 || 2 || 2637 || Error processing lotus command GetAsicCert&lt;br /&gt;
|-&lt;br /&gt;
| 0x14A002 || 2 || 2640 || Error processing lotus command SetEmmcEmbeddedSocCertificate&lt;br /&gt;
|-&lt;br /&gt;
| 0x14AA02 || 2 || 2645 || Error processing lotus command GetAsicEncryptedMessage&lt;br /&gt;
|-&lt;br /&gt;
| 0x14AC02 || 2 || 2646 || Error processing lotus command SetLibraryEncryptedMessage&lt;br /&gt;
|-&lt;br /&gt;
| 0x14B602 || 2 || 2651 || Error processing lotus command GetAsicAuthenticationData&lt;br /&gt;
|-&lt;br /&gt;
| 0x14B802 || 2 || 2652 || Error processing lotus command SetAsicAuthenticationDataHash&lt;br /&gt;
|-&lt;br /&gt;
| 0x14BA02 || 2 || 2653 || Error processing lotus command SetLibraryAuthenticationData&lt;br /&gt;
|-&lt;br /&gt;
| 0x14BC02 || 2 || 2654 || Error processing lotus command GetLibraryAuthenticationDataHash&lt;br /&gt;
|-&lt;br /&gt;
| 0x14C202 || 2 || 2657 || Error processing lotus command ExchangeRandomValuesInSecureMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x14D802 || 2 || 2668 || Error calling nn::gc::detail::GcCrypto::GenerateRandomBytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x14DE02 || 2 || 2671 || Error processing lotus command ReadAsicRegister&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E002 || 2 || 2672 || Error processing lotus command GetGameCardIdSet&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E402 || 2 || 2674 || Error processing lotus command GetCardHeader&lt;br /&gt;
|-&lt;br /&gt;
| 0x14E802 || 2 || 2676 || Error processing lotus command GetCardKeyArea&lt;br /&gt;
|-&lt;br /&gt;
| 0x14EA02 || 2 || 2677 || Error processing lotus command ChangeDebugMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x14EC02 || 2 || 2678 || Error processing lotus command GetRmaInformation&lt;br /&gt;
|-&lt;br /&gt;
| 0x150802 || 2 || 2692 || Tried sending lotus card command Refresh when not in secure mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x150A02 || 2 || 2693 || Tried sending lotus card command when not in correct mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x155602 || 2 || 2731 || Error processing lotus card command ReadId1&lt;br /&gt;
|-&lt;br /&gt;
| 0x155802 || 2 || 2732 || Error processing lotus card command ReadId2&lt;br /&gt;
|-&lt;br /&gt;
| 0x155A02 || 2 || 2733 || Error processing lotus card command ReadId3&lt;br /&gt;
|-&lt;br /&gt;
| 0x155E02 || 2 || 2735 || Error processing lotus card command ReadPage&lt;br /&gt;
|-&lt;br /&gt;
| 0x156202 || 2 || 2737 || Error processing lotus card command WritePage&lt;br /&gt;
|-&lt;br /&gt;
| 0x156402 || 2 || 2738 || Error processing lotus card command Refresh&lt;br /&gt;
|-&lt;br /&gt;
| 0x156C02 || 2 || 2742 || Error processing lotus card command ReadCrc&lt;br /&gt;
|-&lt;br /&gt;
| 0x156E02 || 2 || 2743 || Error processing lotus card command Erase or UnlockForceErase&lt;br /&gt;
|-&lt;br /&gt;
| 0x157002 || 2 || 2744 || Error processing lotus card command ReadDevParam&lt;br /&gt;
|-&lt;br /&gt;
| 0x157202 || 2 || 2745 || Error processing lotus card command WriteDevParam&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B002 || 2 || 2904 || Id2Normal did not match the value in the buffer returned by ChangeDebugMode&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B202 || 2 || 2905 || Id1Normal did not match Id1Writer when switching gamecard to write mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x16B402 || 2 || 2906 || Id2Normal did not match Id2Writer when switching gamecard to write mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x171402 || 2 || 2954 || Invalid gamecard handle.&lt;br /&gt;
|-&lt;br /&gt;
| 0x172002 || 2 || 2960 || Invalid gamecard handle when opening normal gamecard partition&lt;br /&gt;
|-&lt;br /&gt;
| 0x172202 || 2 || 2961 || Invalid gamecard handle when opening secure gamecard partition&lt;br /&gt;
|-&lt;br /&gt;
| 0x177202 || 2 || 3001 || Unimplemented behavior&lt;br /&gt;
|-&lt;br /&gt;
| 0x177602 || 2 || 3003 || File/Directory already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x190202 || 2 || 3201 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190602 || 2 || 3203 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190802 || 2 || 3204 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190A02 || 2 || 3205 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x190C02 || 2 || 3206 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x191002 || 2 || 3208 || Memory allocation failure related to FAT filesystem code&lt;br /&gt;
|-&lt;br /&gt;
| 0x195802 || 2 || 3244 || Allocation failure related to SD cards&lt;br /&gt;
|-&lt;br /&gt;
| 0x196002 || 2 || 3248 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x196202 || 2 || 3249 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A3E02 || 2 || 3359 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A4002 || 2 || 3360 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A4A02 || 2 || 3365 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x21BC02 || 2 || 4318 || Invalid save data filesystem magic (valid magic is SAVE in ASCII)&lt;br /&gt;
|-&lt;br /&gt;
| 0x234202 || 2 || 4513 || Error reading ACID section in NPDM&lt;br /&gt;
|-&lt;br /&gt;
| 0x234402 || 2 || 4514 || Invalid NPDM ACID section size&lt;br /&gt;
|-&lt;br /&gt;
| 0x234602 || 2 || 4515 || Last byte of the ACID modulus is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x234802 || 2 || 4516 || Invalid ACID fixed key signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x234A02 || 2 || 4517 || Invalid NCA magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x234C02 || 2 || 4518 || Invalid NCA header fixed key signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x234E02 || 2 || 4519 || Invalid NCA header ACID signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x235002 || 2 || 4520 || Invalid NCA header section hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x235202 || 2 || 4521 || Invalid NCA Key index&lt;br /&gt;
|-&lt;br /&gt;
| 0x235602 || 2 || 4523 || Invalid encryption type&lt;br /&gt;
|-&lt;br /&gt;
| 0x235802 || 2 || 4524 || Redirection BKTR table size is negative&lt;br /&gt;
|-&lt;br /&gt;
| 0x235A02 || 2 || 4525 || Encryption BKTR table size is negative&lt;br /&gt;
|-&lt;br /&gt;
| 0x235C02 || 2 || 4526 || Redirection BKTR table end offset is past the Encryption BKTR table start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x235E02 || 2 || 4527 || NCA-path used with the wrong titleID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x236002 || 2 || 4528 || NCA header value is out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0x236202 || 2 || 4529 || NCA FS header value is out of range&lt;br /&gt;
|-&lt;br /&gt;
| 0x236802 || 2 || 4532 || PartitionFS hash block size is not a power of 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x236A02 || 2 || 4533 || PartitionFS hash &amp;quot;always_2&amp;quot; field is not 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x236C02 || 2 || 4534 || PartitionFS hash table is too small for main data&lt;br /&gt;
|-&lt;br /&gt;
| 0x236E02 || 2 || 4535 || Invalid PartitionFS block hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x244402 || 2 || 4642 || Invalid Partition file hashed region bounds&lt;br /&gt;
|-&lt;br /&gt;
| 0x244602 || 2 || 4643 || Invalid Partition FS hash&lt;br /&gt;
|-&lt;br /&gt;
| 0x244802 || 2 || 4644 || Invalid PFS0 magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x244A02 || 2 || 4645 || Invalid HFS0 magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x244C02 || 2 || 4646 || Invalid name offset for Partition FS file entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x244E02 || 2 || 4647 || Calculated Partition FS header size changed between 2 consecutive reads&lt;br /&gt;
|-&lt;br /&gt;
| 0x249802 || 2 || 4684 || Invalid FAT file number.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249C02 || 2 || 4686 || Invalid FAT format for BIS User partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249E02 || 2 || 4687 || Invalid FAT format for BIS System partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24A002 || 2 || 4688 || Invalid FAT format for BIS Safe partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24A202 || 2 || 4689 || Invalid FAT format for BIS Calibration partition.&lt;br /&gt;
|-&lt;br /&gt;
| 0x250E02 || 2 || 4743 || [[NAX0|Corrupted]] NAX0 header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x251002 || 2 || 4744 || Invalid [[NAX0]] magicnum.&lt;br /&gt;
|-&lt;br /&gt;
| 0x280202 || 2 || 5121 || Invalid FAT size&lt;br /&gt;
|-&lt;br /&gt;
| 0x280402 || 2 || 5122 || Invalid FAT BPB (BIOS Parameter Block)&lt;br /&gt;
|-&lt;br /&gt;
| 0x280602 || 2 || 5123 || Invalid FAT parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x280802 || 2 || 5124 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280A02 || 2 || 5125 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280C02 || 2 || 5126 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x280E02 || 2 || 5127 || Invalid FAT sector&lt;br /&gt;
|-&lt;br /&gt;
| 0x296A02 || 2 || 5301 || Mountpoint not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE202 || 2 || 6001 || Invalid input&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE602 || 2 || 6003 || Path too long&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE802 || 2 || 6004 || Invalid character.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEA02 || 2 || 6005 || Invalid directory path.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEC02 || 2 || 6006 || Unable to retrieve directory from path&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5A02 || 2 || 6061 || Offset outside storage&lt;br /&gt;
|-&lt;br /&gt;
| 0x313802 || 2 || 6300 || Operation not supported&lt;br /&gt;
|-&lt;br /&gt;
| 0x313A02 || 2 || 6301 || A specified filesystem has no MultiCommitTarget when doing a multi-filesystem commit&lt;br /&gt;
|-&lt;br /&gt;
| 0x313C02 || 2 || 6302 || Attempted to resize a nn::fs::SubStorage or BufferedStorage that is marked as non-resizable&lt;br /&gt;
|-&lt;br /&gt;
| 0x313E02 || 2 || 6303 || Attempted to resize a nn::fs::SubStorage or BufferedStorage when the SubStorage ends before the base storage&lt;br /&gt;
|-&lt;br /&gt;
| 0x314002 || 2 || 6304 || Attempted to call nn::fs::MemoryStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x314202 || 2 || 6305 || Invalid Operation ID in nn::fs::MemoryStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314402 || 2 || 6306 || Invalid Operation ID in nn::fs::FileStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314602 || 2 || 6307 || Invalid Operation ID in nn::fs::FileHandleStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314802 || 2 || 6308 || Invalid Operation ID in nn::fssystem::SwitchStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314A02 || 2 || 6309 || Invalid Operation ID in nn::fs::detail::StorageServiceObjectAdapter::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x314C02 || 2 || 6310 || Attempted to call nn::fssystem::AesCtrCounterExtendedStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x314E02 || 2 || 6311 || Attempted to call nn::fssystem::AesCtrCounterExtendedStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315002 || 2 || 6312 || Invalid Operation ID in nn::fssystem::AesCtrCounterExtendedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x315202 || 2 || 6313 || Attempted to call nn::fssystem::AesCtrStorageExternal::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x315402 || 2 || 6314 || Attempted to call nn::fssystem::AesCtrStorageExternal::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315602 || 2 || 6315 || Attempted to call nn::fssystem::AesCtrStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315802 || 2 || 6316 || Attempted to call nn::fssystem::save::HierarchicalIntegrityVerificationStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315A02 || 2 || 6317 || Attempted to call nn::fssystem::save::HierarchicalIntegrityVerificationStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x315C02 || 2 || 6318 || Attempted to call nn::fssystem::save::IntegrityVerificationStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x315E02 || 2 || 6319 || Attempted to invalidate the cache of a RomFs IVFC storage in nn::fssystem::save::IntegrityVerificationStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316002 || 2 || 6320 || Invalid Operation ID in nn::fssystem::save::IntegrityVerificationStorage::OperateRange &lt;br /&gt;
|-&lt;br /&gt;
| 0x316202 || 2 || 6321 || Attempted to call nn::fssystem::save::BlockCacheBufferedStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x316402 || 2 || 6322 || Attempted to invalidate the cache of something other than a savedata IVFC storage in nn::fssystem::save::BlockCacheBufferedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316602 || 2 || 6323 || Invalid Operation ID in nn::fssystem::save::BlockCacheBufferedStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316802 || 2 || 6324 || Attempted to call nn::fssystem::IndirectStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x316A02 || 2 || 6325 || Attempted to call nn::fssystem::IndirectStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x316C02 || 2 || 6326 || Invalid Operation ID in nn::fssystem::IndirectStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x316E02 || 2 || 6327 || Attempted to call nn::fssystem::SparseStorage::ZeroStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x317002 || 2 || 6328 || Attempted to call nn::fssystem::SparseStorage::ZeroStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317202 || 2 || 6329 || Attempted to call nn::fssystem::HierarchicalSha256Storage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317402 || 2 || 6330 || Attempted to call nn::fssystem::ReadOnlyBlockCacheStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x317602 || 2 || 6331 || Attempted to call nn::fssystem::ReadOnlyBlockCacheStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317802 || 2 || 6332 || Attempted to call nn::fssystem::IntegrityRomFsStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317A02 || 2 || 6333 || Attempted to call nn::fssystem::save::DuplexStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x317C02 || 2 || 6334 || Invalid Operation ID in nn::fssystem::save::DuplexStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x317E02 || 2 || 6335 || Attempted to call nn::fssystem::save::HierarchicalDuplexStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318002 || 2 || 6336 || Attempted to call nn::fssystem::save::RemapStorage::GetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318202 || 2 || 6337 || Attempted to call nn::fssystem::save::RemapStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318402 || 2 || 6338 || Invalid Operation ID in nn::fssystem::save::RemapStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318602 || 2 || 6339 || Attempted to call nn::fssystem::save::IntegritySaveDataStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318802 || 2 || 6340 || Invalid Operation ID in nn::fssystem::save::IntegritySaveDataStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318A02 || 2 || 6341 || Attempted to call nn::fssystem::save::JournalIntegritySaveDataStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x318C02 || 2 || 6342 || Invalid Operation ID in nn::fssystem::save::JournalIntegritySaveDataStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x318E02 || 2 || 6343 || Attempted to call nn::fssystem::save::JournalStorage::GetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319002 || 2 || 6344 || Attempted to call nn::fssystem::save::JournalStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319202 || 2 || 6345 || Invalid Operation ID in nn::fssystem::save::JournalStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x319402 || 2 || 6346 || Attempted to call nn::fssystem::save::UnionStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319602 || 2 || 6347 || Attempted to call nn::fssystem::dbm::AllocationTableStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319802 || 2 || 6348 || Attempted to call nn::fssrv::fscreator::WriteOnlyGameCardStorage::Read&lt;br /&gt;
|-&lt;br /&gt;
| 0x319A02 || 2 || 6349 || Attempted to call nn::fssrv::fscreator::WriteOnlyGameCardStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x319C02 || 2 || 6350 || Attempted to call nn::fssrv::fscreator::ReadOnlyGameCardStorage::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x319E02 || 2 || 6351 || Attempted to call nn::fssrv::fscreator::ReadOnlyGameCardStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A002 || 2 || 6352 || Invalid Operation ID in nn::fssrv::fscreator::ReadOnlyGameCardStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A202 || 2 || 6353 || Attempted to call SdStorage::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A402 || 2 || 6354 || Invalid Operation ID in SdStorage::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A602 || 2 || 6355 || Invalid Operation ID in nn::fat::FatFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31A802 || 2 || 6356 || Invalid Operation ID in nn::fssystem::StorageFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AA02 || 2 || 6357 || Attempted to call nn::fssystem::ConcatenationFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AC02 || 2 || 6358 || Attempted to call nn::fssystem::ConcatenationFile::OperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31AE02 || 2 || 6359 || Invalid Query ID in nn::fssystem::ConcatenationFileSystem::DoQueryEntry&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B002 || 2 || 6360 || Invalid Operation ID in nn::fssystem::ConcatenationFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B202 || 2 || 6361 || Attempted to call nn::fssystem::ZeroBitmapFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B402 || 2 || 6362 || Invalid Operation ID in nn::fs::detail::FileServiceObjectAdapter::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B602 || 2 || 6363 || Invalid Operation ID in nn::fssystem::AesXtsFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31B802 || 2 || 6364 || Attempted to modify a nn::fs::RomFsFileSystem&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BA02 || 2 || 6365 || Attempted to call nn::fs::RomFsFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BC02 || 2 || 6366 || Attempted to query the space in a nn::fs::RomFsFileSystem&lt;br /&gt;
|-&lt;br /&gt;
| 0x31BE02 || 2 || 6367 || Attempted to modify a nn::fssystem::RomFsFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C002 || 2 || 6368 || Invalid Operation ID in nn::fssystem::RomFsFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C202 || 2 || 6369 || Attempted to modify a nn::fs::ReadOnlyFileSystemTemplate&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C402 || 2 || 6370 || Attempted to call nn::fs::ReadOnlyFileSystemTemplate::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C602 || 2 || 6371 || Attempted to query the space in a nn::fs::ReadOnlyFileSystemTemplate&lt;br /&gt;
|-&lt;br /&gt;
| 0x31C802 || 2 || 6372 || Attempted to modify a nn::fs::ReadOnlyFileSystemFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CA02 || 2 || 6373 || Invalid Operation ID in nn::fs::ReadOnlyFileSystemFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CC02 || 2 || 6374 || Attempted to modify a nn::fssystem::PartitionFileSystemCore&lt;br /&gt;
|-&lt;br /&gt;
| 0x31CE02 || 2 || 6375 || Attempted to call nn::fssystem::PartitionFileSystemCore::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D002 || 2 || 6376 || Attempted to call nn::fssystem::PartitionFileSystemCore::PartitionFile::DoSetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D202 || 2 || 6377 || Invalid Operation ID in nn::fssystem::PartitionFileSystemCore::PartitionFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D402 || 2 || 6378 || Invalid Operation ID in nn::fssystem::TmFileSystemFile::DoOperateRange&lt;br /&gt;
|-&lt;br /&gt;
| 0x31D602 || 2 || 6379 || Attempted to call unsupported functions in nn::fssrv::fscreator::SaveDataInternalStorageFileSystem, nn::fssrv::detail::SaveDataInternalStorageAccessor::PaddingFile or nn::fssystem::save::detail::SaveDataExtraDataInternalStorageFile&lt;br /&gt;
|-&lt;br /&gt;
| 0x31DC02 || 2 || 6382 || Attempted to call nn::fssystem::ApplicationTemporaryFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31DE02 || 2 || 6383 || Attempted to call nn::fssystem::SaveDataFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E002 || 2 || 6384 || Attempted to call nn::fssystem::DirectorySaveDataFileSystem::DoCommitProvisionally&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E202 || 2 || 6385 || Attempted to call nn::fssystem::ZeroBitmapHashStorageFile::Write&lt;br /&gt;
|-&lt;br /&gt;
| 0x31E402 || 2 || 6386 || Attempted to call nn::fssystem::ZeroBitmapHashStorageFile::SetSize&lt;br /&gt;
|-&lt;br /&gt;
| 0x320002 || 2 || 6400 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0x326602 || 2 || 6451 || Missing titlekey(?) required to mount content&lt;br /&gt;
|-&lt;br /&gt;
| 0x326E02 || 2 || 6455 || File not closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x327002 || 2 || 6456 || Directory not closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x327202 || 2 || 6457 || Writable file not closed when committing&lt;br /&gt;
|-&lt;br /&gt;
| 0x327402 || 2 || 6458 || FS allocators already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x327602 || 2 || 6459 || FS allocators already used&lt;br /&gt;
|-&lt;br /&gt;
| 0x327A02 || 2 || 6461 || FS allocator alignment violation&lt;br /&gt;
|-&lt;br /&gt;
| 0x339402 || 2 || 6602 || File not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x339602 || 2 || 6603 || Directory not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346C02 || 2 || 6710 || Multi-commit limit reached&lt;br /&gt;
|-&lt;br /&gt;
| 0x35F202 || 2 || 6905 || Mount name not found in table.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DBC02 || 2 || 7902 || RomFs table: Entry not found in dictionary&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DBE02 || 2 || 7903 || RomFs table: File not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC002 || 2 || 7904 || RomFs table: Directory not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC402 || 2 || 7906 || RomFs table: Entry already exists when trying to add a new entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC602 || 2 || 7907 || RomFs table: Insufficient space to add new entry&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DC802 || 2 || 7908 || RomFs table: Unable to add new directory&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DCA02 || 2 || 7909 || RomFs table: Unable to add new file&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DCC02 || 2 || 7910 || RomFs directory has no more child directories/files when iterating&lt;br /&gt;
|-&lt;br /&gt;
| 0x3DD402 || 2 || 7914 || RomFs table: Path is file, not directory&lt;br /&gt;
|-&lt;br /&gt;
| 0x803 || 3 || 4 || OS busy&lt;br /&gt;
|-&lt;br /&gt;
| 0xE03 || 3 || 7 || Invalid parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x1003 || 3 || 8 || Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x1203 || 3 || 9 || Out of resources&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EA03 || 3 || 501 || Invalid handle&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EE03 || 3 || 503 || Invalid memory mirror&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FE03 || 3 || 1023 || TLS slot is not allocated&lt;br /&gt;
|-&lt;br /&gt;
| 0xA05 || 5 || 5 || [[Content_Manager_services|NcaID]] not found. Returned when attempting to mount titles which exist that aren&#039;t *8XX titles, the same way *8XX titles are mounted.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE05 || 5 || 7 || TitleId not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1805 || 5 || 12 || Invalid StorageId&lt;br /&gt;
|-&lt;br /&gt;
| 0xDC05 || 5 || 110 || Gamecard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x17C05 || 5 || 190 || Gamecard not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F405 || 5 || 250 || Sdcard not inserted&lt;br /&gt;
|-&lt;br /&gt;
| 0x20805 || 5 || 260 || Storage not mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0x806 || 6 || 4 || Converted from error 0xD401&lt;br /&gt;
|-&lt;br /&gt;
| 0x1006 || 6 || 8 || Converted from error 0xE401&lt;br /&gt;
|-&lt;br /&gt;
| 0x408 || 8 || 2 || Program location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x608 || 8 || 3 || Invalid context for control location&lt;br /&gt;
|-&lt;br /&gt;
| 0x808 || 8 || 4 || Storage not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xA08 || 8 || 5 || Access denied&lt;br /&gt;
|-&lt;br /&gt;
| 0xC08 || 8 || 6 || Offline manual HTML location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xE08 || 8 || 7 || Title is not registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x1008 || 8 || 8 || Control location entry for host not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1208 || 8 || 9 || Legal info HTML location entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x1408 || 8 || 10 || Program location for debug entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x209 || 9 || 1 || Args too long.&lt;br /&gt;
|-&lt;br /&gt;
| 0x409 || 9 || 2 || Maximum processes loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0x609 || 9 || 3 || NPDM too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x809 || 9 || 4 || Invalid NPDM.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA09 || 9 || 5 || Invalid NSO.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC09 || 9 || 6 || Invalid Path.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE09 || 9 || 7 || Already registered.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1009 || 9 || 8 || Title not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1209 || 9 || 9 || Title-id in ACI0 doesn&#039;t match range in ACID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1409 || 9 || 10 || Invalid version in NPDM.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6609 || 9 || 51 || Insufficient address space.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6809 || 9 || 52 || Insufficient NRO.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6A09 || 9 || 53 || Invalid NRR&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C09 || 9 || 54 || Invalid signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x6E09 || 9 || 55 || Insufficient NRO registrations.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7009 || 9 || 56 || Insufficient NRR registrations.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7209 || 9 || 57 || NRO Already loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA209 || 9 || 81 || Unaligned NRR address&lt;br /&gt;
|-&lt;br /&gt;
| 0xA409 || 9 || 82 || Bad NRR size&lt;br /&gt;
|-&lt;br /&gt;
| 0xA809 || 9 || 84 || NRR Not Loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0xAA09 || 9 || 85 || Bad NRR address&lt;br /&gt;
|-&lt;br /&gt;
| 0xAE09 || 9 || 87 || Bad initialization&lt;br /&gt;
|-&lt;br /&gt;
| 0xC809 || 9 || 100 || Unknown ACI0 descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE09 || 9 || 103 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;KernelFlags&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD009 || 9 || 104 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;SyscallMask&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD409 || 9 || 106 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;MapIoOrNormalRange&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xD609 || 9 || 107 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;MapNormalPage&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xDE09 || 9 || 111 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;InterruptPair&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE209 || 9 || 113 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;ApplicationType&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE409 || 9 || 114 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;KernelReleaseVersion&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE609 || 9 || 115 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;HandleTableSize&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0xE809 || 9 || 116 || ACID/ACI0 don&#039;t match for descriptor &amp;quot;DebugFlags&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 0x1940A || 10 || 202 || Invalid CMIF header size.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A60A || 10 || 211 || Invalid CMIF input header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A80A || 10 || 212 || Invalid CMIF output header.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BA0A || 10 || 221 || Invalid method dispatch ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D60A || 10 || 235 || Invalid in object count.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D80A || 10 || 236 || Invalid out object count.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A0A || 10 || 301 || Out of domain entries.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20B || 11 || 1 || Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC0B || 11 || 102 || Out of server session memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x11A0B || 11 || 141 || Went past maximum during marshalling.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1900B || 11 || 200 || Session doesn&#039;t support domains.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A0B || 11 || 301 || Remote process is dead.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3240B || 11 || 402 || Data/buffer length(s) too large for IPC buffer.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3260B || 11 || 403 || Unknown request type&lt;br /&gt;
|-&lt;br /&gt;
| 0x3480B || 11 || 420 || Number(s) of buffers/handles/PIDs passed differ from what method expects.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D60B || 11 || 491 || IPC Query 1 failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20F || 15 || 1 || Pid not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x60F || 15 || 3 || Process has no pending events&lt;br /&gt;
|-&lt;br /&gt;
| 0xA0F || 15 || 5 || Application already running&lt;br /&gt;
|-&lt;br /&gt;
| 0x410 || 16 || 2 || Title-id not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xF010 || 16 || 120 || Sysupdate not required&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F610 || 16 || 251 || Unexpected StorageId&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A810 || 16 || 340 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64210 || 16 || 801 || [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] system_delivery_protocol_version is less than the system-setting.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64410 || 16 || 802 || [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] system_delivery_protocol_version is larger than the system-setting.&lt;br /&gt;
|-&lt;br /&gt;
| 0x74610 || 16 || 931 || Invalid [[NS_Services#SystemDeliveryInfo|SystemDeliveryInfo]] HMAC / invalid Meta Id.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6F810 || 16 || 892 || Unknown state ref-count is zero.&lt;br /&gt;
|-&lt;br /&gt;
| 0x215 || 21 || 1 || Out of processes&lt;br /&gt;
|-&lt;br /&gt;
| 0x415 || 21 || 2 || Not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x615 || 21 || 3 || Max sessions&lt;br /&gt;
|-&lt;br /&gt;
| 0x815 || 21 || 4 || Service already registered&lt;br /&gt;
|-&lt;br /&gt;
| 0xA15 || 21 || 5 || Out of services&lt;br /&gt;
|-&lt;br /&gt;
| 0xC15 || 21 || 6 || Invalid name (all zeroes)&lt;br /&gt;
|-&lt;br /&gt;
| 0xE15 || 21 || 7 || Service not registered&lt;br /&gt;
|-&lt;br /&gt;
| 0x1015 || 21 || 8 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0x1215 || 21 || 9 || Service Access Control too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x416 || 22 || 2 || Address space is full&lt;br /&gt;
|-&lt;br /&gt;
| 0x616 || 22 || 3 || NRO already loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x816 || 22 || 4 || Invalid NRO header values&lt;br /&gt;
|-&lt;br /&gt;
| 0xC16 || 22 || 6 || Bad NRR magic&lt;br /&gt;
|-&lt;br /&gt;
| 0x1016 || 22 || 8 || Reached max NRR count&lt;br /&gt;
|-&lt;br /&gt;
| 0x1216 || 22 || 9 || Unable to verify NRO hash or NRR signature&lt;br /&gt;
|-&lt;br /&gt;
| 0x80216 || 22 || 1025 || Address not page-aligned&lt;br /&gt;
|-&lt;br /&gt;
| 0x80416 || 22 || 1026 || Incorrect NRO size&lt;br /&gt;
|-&lt;br /&gt;
| 0x80816 || 22 || 1028 || NRO not loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x80A16 || 22 || 1029 || NRR not loaded&lt;br /&gt;
|-&lt;br /&gt;
| 0x80C16 || 22 || 1030 || Already initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x80E16 || 22 || 1031 || Not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x21A || 26 || 1 || SMC is not implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0x41A || 26 || 2 || SMC argument is invalid&lt;br /&gt;
|-&lt;br /&gt;
| 0x61A || 26 || 3 || SMC is currently in progress/secmon is busy&lt;br /&gt;
|-&lt;br /&gt;
| 0x81A || 26 || 4 || Secmon not currently performing async operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xA1A || 26 || 5 || Invalid SMC async callback key&lt;br /&gt;
|-&lt;br /&gt;
| 0xC1A || 26 || 6 || SMC is blacklisted during current boot&lt;br /&gt;
|-&lt;br /&gt;
| 0xC81A || 26 || 100 || Invalid (buffer) size&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA1A || 26 || 101 || Unknown SMC error&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA1A || 26 || 101 || Decryption failure&lt;br /&gt;
|-&lt;br /&gt;
| 0xD01A || 26 || 104 || No AES keyslots available&lt;br /&gt;
|-&lt;br /&gt;
| 0xD21A || 26 || 105 || Invalid AES keyslot&lt;br /&gt;
|-&lt;br /&gt;
| 0xD41A || 26 || 106 || BootReason already set&lt;br /&gt;
|-&lt;br /&gt;
| 0xD61A || 26 || 107 || BootReason not set&lt;br /&gt;
|-&lt;br /&gt;
| 0xD81A || 26 || 108 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x35B || 347 || 1 || Failed to init SM.&lt;br /&gt;
|-&lt;br /&gt;
| 0x55B || 347 || 2 || Failed to init FS.&lt;br /&gt;
|-&lt;br /&gt;
| 0x75B || 347 || 3 || Failed to open NRO file. May also happen when SD card isn&#039;t inserted / SD mounting failed earlier.&lt;br /&gt;
|-&lt;br /&gt;
| 0x95B || 347 || 4 || Failed to read NRO header.&lt;br /&gt;
|-&lt;br /&gt;
| 0xB5B || 347 || 5 || Invalid NRO magic.&lt;br /&gt;
|-&lt;br /&gt;
| 0xD5B || 347 || 6 || Invalid NRO segments.&lt;br /&gt;
|-&lt;br /&gt;
| 0xF5B || 347 || 7 || Failed to read NRO.&lt;br /&gt;
|-&lt;br /&gt;
| 0x135B || 347 || 9 || Failed to allocate heap.&lt;br /&gt;
|-&lt;br /&gt;
| 0x255B || 347 || 18 || Failed to map code-binary memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x275B || 347 || 19 || Failed to map code memory (.text).&lt;br /&gt;
|-&lt;br /&gt;
| 0x295B || 347 || 20 || Failed to map code memory (.rodata).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2B5B || 347 || 21 || Failed to map code memory (.data+.bss).&lt;br /&gt;
|-&lt;br /&gt;
| 0x315B || 347 || 24 || Failed to unmap code memory (.text).&lt;br /&gt;
|-&lt;br /&gt;
| 0x335B || 347 || 25 || Failed to unmap code memory (.rodata).&lt;br /&gt;
|-&lt;br /&gt;
| 0x355B || 347 || 26 || Failed to unmap code memory (.data+.bss).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19269 || 105 || 201 || Null settings name&lt;br /&gt;
|-&lt;br /&gt;
| 0x19469 || 105 || 202 || Null settings key&lt;br /&gt;
|-&lt;br /&gt;
| 0x19669 || 105 || 203 || Null settings value&lt;br /&gt;
|-&lt;br /&gt;
| 0x19A69 || 105 || 205 || Null settings value buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A069 || 105 || 208 || Null setting value size buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A269 || 105 || 209 || Null debug mode flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BA69 || 105 || 221 || Setting group name has zero length&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BC69 || 105 || 222 || Empty settings item key&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E269 || 105 || 241 || Setting group name is too long (64 character limit?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E469 || 105 || 242 || Setting name is too long (64 character limit?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x20A69 || 105 || 261 || Setting group name ends with &#039;.&#039; or contains invalid characters (allowed: [a-z0-9_\-.])&lt;br /&gt;
|-&lt;br /&gt;
| 0x20C69 || 105 || 262 || Setting name ends with &#039;.&#039; or contains invalid characters (allowed: [a-z0-9_\-.])&lt;br /&gt;
|-&lt;br /&gt;
| 0x4DA69 || 105 || 621 || Null language code buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x4E269 || 105 || 625 || Language out of valid range&lt;br /&gt;
|-&lt;br /&gt;
| 0x4EE69 || 105 || 631 || Null network settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x4F069 || 105 || 632 || Null network settings output count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x50269 || 105 || 641 || Null backlight settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51669 || 105 || 651 || Null Bluetooth device setting buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51869 || 105 || 652 || Null Bluetooth device setting output count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51A69 || 105 || 653 || Null Bluetooth enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51C69 || 105 || 654 || Null Bluetooth AFH enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x51E69 || 105 || 655 || Null Bluetooth boost enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52069 || 105 || 656 || Null BLE pairing settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52269 || 105 || 657 || Null BLE pairing settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52A69 || 105 || 661 || Null external steady clock source ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52C69 || 105 || 662 || Null user system clock context buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x52E69 || 105 || 663 || Null network system clock context buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53069 || 105 || 664 || Null user system clock automatic correction enabled flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53269 || 105 || 665 || Null shutdown RTC value buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53469 || 105 || 666 || Null external steady clock internal offset buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x53E69 || 105 || 671 || Null account settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55269 || 105 || 681 || Null audio volume buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55669 || 105 || 683 || Null ForceMuteOnHeadphoneRemoved buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55869 || 105 || 684 || Null headphone volume warning count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x55E69 || 105 || 687 || Invalid audio output mode&lt;br /&gt;
|-&lt;br /&gt;
| 0x56069 || 105 || 688 || Null headphone volume update flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x56669 || 105 || 691 || Null console information upload flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57A69 || 105 || 701 || Null automatic application download flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57C69 || 105 || 702 || Null notification settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x57E69 || 105 || 703 || Null account notification settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58069 || 105 || 704 || Null account notification settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58E69 || 105 || 711 || Null vibration master volume buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59069 || 105 || 712 || Null NX controller settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59269 || 105 || 713 || Null NX controller settings entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x59469 || 105 || 714 || Null USB full key enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5A269 || 105 || 721 || Null TV settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5A469 || 105 || 722 || Null EDID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5B669 || 105 || 731 || Null data deletion settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CA69 || 105 || 741 || Null initial system applet program ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CC69 || 105 || 742 || Null overlay disp program ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5CE69 || 105 || 743 || Null IsInRepairProcess buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5D069 || 105 || 744 || Null RequiresRunRepairTimeReviser buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5DE69 || 105 || 751 || Null device timezone location name buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x5F269 || 105 || 761 || Null primary album storage buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60669 || 105 || 771 || Null USB 3.0 enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60869 || 105 || 772 || Null USB Type-C power source circuit version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x61A69 || 105 || 781 || Null battery lot buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x62E69 || 105 || 791 || Null serial number buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64269 || 105 || 801 || Null lock screen flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64669 || 105 || 803 || Null color set ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64869 || 105 || 804 || Null quest flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64A69 || 105 || 805 || Null wireless certification file size buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64C69 || 105 || 806 || Null wireless certification file buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x64E69 || 105 || 807 || Null initial launch settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65069 || 105 || 808 || Null device nickname buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65269 || 105 || 809 || Null battery percentage flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x65469 || 105 || 810 || Null applet launch flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x7E869 || 105 || 1012 || Null wireless LAN enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FA69 || 105 || 1021 || Null product model buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x80E69 || 105 || 1031 || Null NFC enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x82269 || 105 || 1041 || Null ECI device certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x82469 || 105 || 1042 || Null E-Ticket device certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x83669 || 105 || 1051 || Null sleep settings buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84A69 || 105 || 1061 || Null EULA version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84C69 || 105 || 1062 || Null EULA version entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x85E69 || 105 || 1071 || Null LDN channel buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87269 || 105 || 1081 || Null SSL key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87469 || 105 || 1082 || Null SSL certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x88669 || 105 || 1091 || Null telemetry flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x89A69 || 105 || 1101 || Null Gamecard key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x89C69 || 105 || 1102 || Null Gamecard certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8AE69 || 105 || 1111 || Null PTM battery lot buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8B069 || 105 || 1112 || Null PTM fuel gauge parameter buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C269 || 105 || 1121 || Null ECI device key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C469 || 105 || 1122 || Null E-Ticket device key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8D669 || 105 || 1131 || Null speaker parameter buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EA69 || 105 || 1141 || Null firmware version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EC69 || 105 || 1142 || Null firmware version digest buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8EE69 || 105 || 1143 || Null rebootless system update version buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x8FE69 || 105 || 1151 || Null Mii author ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x91269 || 105 || 1161 || Null fatal flags buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x92669 || 105 || 1171 || Null auto update enable flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x93A69 || 105 || 1181 || Null external RTC reset flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x94E69 || 105 || 1191 || Null push notification activity mode buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x96269 || 105 || 1201 || Null service discovery control setting buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x97669 || 105 || 1211 || Null error report share permission buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x98A69 || 105 || 1221 || Null LCD vendor ID buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x99E69 || 105 || 1231 || Null console SixAxis sensor acceleration bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A069 || 105 || 1232 || Null console SixAxis sensor angular velocity bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A269 || 105 || 1233 || Null console SixAxis sensor acceleration gain buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A469 || 105 || 1234 || Null console SixAxis sensor angular velocity gain buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A669 || 105 || 1235 || Null console SixAxis sensor angular velocity time bias buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9A869 || 105 || 1236 || Null console SixAxis sensor angular acceleration buffer &lt;br /&gt;
|-&lt;br /&gt;
| 0x9B269 || 105 || 1241 || Null keyboard layout buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9BA69 || 105 || 1245 || Invalid keyboard layout&lt;br /&gt;
|-&lt;br /&gt;
| 0x9C669 || 105 || 1251 || Null web inspector flag buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9C869 || 105 || 1252 || Null allowed SSL hosts buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9CA69 || 105 || 1253 || Null allowed SSL hosts entry count buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9CC69 || 105 || 1254 || Null host FS mount point buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9EE69 || 105 || 1271 || Null Amiibo key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F069 || 105 || 1272 || Null Amiibo ECQV certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F269 || 105 || 1273 || Null Amiibo ECDSA certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F469 || 105 || 1274 || Null Amiibo ECQV BLS key buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F669 || 105 || 1275 || Null Amiibo ECQV BLS certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F869 || 105 || 1276 || Null Amiibo ECQV BLS root certificate buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x272 || 114 || 1 || Generic error&lt;br /&gt;
|-&lt;br /&gt;
| 0xC72 || 114 || 6 || Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x74 || 116 || 0 || Time service not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x274 || 116 || 1 || Permission denied&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC74 || 116 || 102 || Time not set / Clock Source Id mismatch&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE74 || 116 || 103 || System Clock not initialized&lt;br /&gt;
|-&lt;br /&gt;
| 0x19074 || 116 || 200 || Invalid time comparison&lt;br /&gt;
|-&lt;br /&gt;
| 0x19274 || 116 || 201 || Signed overflow/underflow&lt;br /&gt;
|-&lt;br /&gt;
| 0x64274 || 116 || 801 || Memory allocation failure&lt;br /&gt;
|-&lt;br /&gt;
| 0x70A74 || 116 || 901 || Null pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x70C74 || 116 || 902 || Value out of valid range&lt;br /&gt;
|-&lt;br /&gt;
| 0x70E74 || 116 || 903 || TimeZoneRule conversion failed&lt;br /&gt;
|-&lt;br /&gt;
| 0x7BA74 || 116 || 989 || TimeZone location name not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x7BC74 || 116 || 990 || Unimplemented functionality&lt;br /&gt;
|-&lt;br /&gt;
| 0xC79 || 121 || 6 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x27A || 122 || 1 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x47A || 122 || 2 || Object not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x67A || 122 || 3 || Object locked/in used&lt;br /&gt;
|-&lt;br /&gt;
| 0x87A || 122 || 4 || Target already mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0xA7A || 122 || 5 || Target not mounted&lt;br /&gt;
|-&lt;br /&gt;
| 0xC7A || 122 || 6 || Object already opened&lt;br /&gt;
|-&lt;br /&gt;
| 0xE7A || 122 || 7 || Object not opened&lt;br /&gt;
|-&lt;br /&gt;
| 0x107A || 122 || 8 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA07A || 122 || 80 || Passphrase not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xA27A || 122 || 81 || Data verification failed&lt;br /&gt;
|-&lt;br /&gt;
| 0xB47A || 122 || 90 || Invalid API call&lt;br /&gt;
|-&lt;br /&gt;
| 0xC47A || 122 || 98 || Invalid operation&lt;br /&gt;
|-&lt;br /&gt;
| 0x167B || 123 || 11 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8192 (SEC_ERROR_IO), -8191 (SEC_ERROR_LIBRARY_FAILURE), -8190 (SEC_ERROR_BAD_DATA), -8189 (SEC_ERROR_OUTPUT_LEN), -8188 (SEC_ERROR_INPUT_LEN), -8187 (SEC_ERROR_INVALID_ARGS), -8186 (SEC_ERROR_INVALID_ALGORITHM), -8184 (SEC_ERROR_INVALID_TIME), -8152 (SEC_ERROR_INVALID_KEY).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] errors: -5991 (PR_IO_ERROR), -5962 (PR_BUFFER_OVERFLOW_ERROR), -5950 (PR_FILE_NOT_FOUND_ERROR), -5949 (PR_NOT_DIRECTORY_ERROR), -5946 (PR_FILESYSTEM_MOUNTED_ERROR), -5938 (PR_END_OF_FILE_ERROR).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12223 (SSL_ERROR_GENERATE_RANDOM_FAILURE), -12222 (SSL_ERROR_SIGN_HASHES_FAILURE), -12221 (SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE), -12219 (SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE), -12218 (SSL_ERROR_ENCRYPTION_FAILURE), -12217 (SSL_ERROR_DECRYPTION_FAILURE), -12216 (SSL_ERROR_SOCKET_WRITE_FAILURE), -12212 (SSL_ERROR_SYM_KEY_CONTEXT_FAILURE), -12209 (SSL_ERROR_IV_PARAM_FAILURE), -12207 (SSL_ERROR_SESSION_KEY_GEN_FAILURE), -12203 (SSL_ERROR_NO_COMPRESSION_OVERLAP), -12202 (SSL_ERROR_HANDSHAKE_NOT_COMPLETED), -12201 (SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE), -12172 (SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A7B || 123 || 13 || Unrecognized error.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC7B || 123 || 102 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8173 (SEC_ERROR_NO_MEMORY).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] errors: -6000 (PR_OUT_OF_MEMORY_ERROR), -5974 (PR_INSUFFICIENT_RESOURCES_ERROR, -5971 (PR_PROC_DESC_TABLE_FULL_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0xE87B || 123 || 116 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5999 (PR_BAD_DESCRIPTOR_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1027B || 123 || 129 || DER CRL decoding failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1987B || 123 || 204 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5998 (PR_WOULD_BLOCK_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19A7B || 123 || 205 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5990 (PR_IO_TIMEOUT_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x19C7B || 123 || 206 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5935 (PR_OPERATION_ABORTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A07B || 123 || 208 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5978 (PR_NOT_CONNECTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A27B || 123 || 209 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5961 (PR_CONNECT_RESET_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A47B || 123 || 210 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5928 (PR_CONNECT_ABORTED_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A67B || 123 || 211 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5929 (PR_SOCKET_SHUTDOWN_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A87B || 123 || 212 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Reference/NSPR_Error_Handling NSPR] error -5930 (PR_NETWORK_DOWN_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x1AE7B || 123 || 215 || ClientPki/InternalPki was already previously imported/registered.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B47B || 123 || 218 || Maximum number of ServerPki objects were already imported.&lt;br /&gt;
|-&lt;br /&gt;
| 0x25A7B || 123 || 301 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12276 (SSL_ERROR_BAD_CERT_DOMAIN).&lt;br /&gt;
|-&lt;br /&gt;
| 0x25C7B || 123 || 302 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12285 (SSL_ERROR_NO_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x25E7B || 123 || 303 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8181 (SEC_ERROR_EXPIRED_CERTIFICATE), -8162 (SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2607B || 123 || 304 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8180 (SEC_ERROR_REVOKED_CERTIFICATE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2627B || 123 || 305 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8183 (SEC_ERROR_BAD_DER).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2647B || 123 || 306 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8102 (SEC_ERROR_INADEQUATE_KEY_USAGE), -8101 (SEC_ERROR_INADEQUATE_CERT_TYPE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2667B || 123 || 307 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8185 (SEC_ERROR_INVALID_AVA), -8182 (SEC_ERROR_BAD_SIGNATURE), -8158 (SEC_ERROR_EXTENSION_VALUE_INVALID), -8156 (SEC_ERROR_CA_CERT_INVALID), -8151 (SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION), -8080 (SEC_ERROR_CERT_NOT_IN_NAME_SPACE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2687B || 123 || 308 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC errors: -8179 (SEC_ERROR_UNKNOWN_ISSUER), -8172 (SEC_ERROR_UNTRUSTED_ISSUER), -8014 (SEC_ERROR_APPLICATION_CALLBACK_ERROR).&lt;br /&gt;
|-&lt;br /&gt;
| 0x26A7B || 123 || 309 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8171 (SEC_ERROR_UNTRUSTED_CERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0x26C7B || 123 || 310 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12233 (SSL_ERROR_RX_UNKNOWN_RECORD_TYPE), -12232 (SSL_ERROR_RX_UNKNOWN_HANDSHAKE), -12231 (SSL_ERROR_RX_UNKNOWN_ALERT). This is also returned by ImportClientPki when import fails.&lt;br /&gt;
|-&lt;br /&gt;
| 0x26E7B || 123 || 311 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12261 (SSL_ERROR_RX_MALFORMED_HELLO_REQUEST), -12260 (SSL_ERROR_RX_MALFORMED_CLIENT_HELLO), -12259 (SSL_ERROR_RX_MALFORMED_SERVER_HELLO), -12258 (SSL_ERROR_RX_MALFORMED_CERTIFICATE), -12257 (SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH), -12256 (SSL_ERROR_RX_MALFORMED_CERT_REQUEST), -12255 (SSL_ERROR_RX_MALFORMED_HELLO_DONE), -12254 (SSL_ERROR_RX_MALFORMED_CERT_VERIFY), -12253 (SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH), -12252 (SSL_ERROR_RX_MALFORMED_FINISHED), -12251 (SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER), -12250 (SSL_ERROR_RX_MALFORMED_ALERT), -12249 (SSL_ERROR_RX_MALFORMED_HANDSHAKE), -12248 (SSL_ERROR_RX_MALFORMED_APPLICATION_DATA), -12166 (SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2707B || 123 || 312 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8144 (SEC_ERROR_UNSUPPORTED_KEYALG).&lt;br /&gt;
&lt;br /&gt;
Also converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12274 (SSL_ERROR_SSL2_DISABLED), -12247 (SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST), -12246 (SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO), -12245 (SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO), -12244 (SSL_ERROR_RX_UNEXPECTED_CERTIFICATE), -12243 (SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH), -12242 (SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST), -12241 (SSL_ERROR_RX_UNEXPECTED_HELLO_DONE), -12240 (SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY), -12239 (SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH), -12238 (SSL_ERROR_RX_UNEXPECTED_FINISHED).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2727B || 123 || 313 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12237 (SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER), -12236 (SSL_ERROR_RX_UNEXPECTED_ALERT), -12235 (SSL_ERROR_RX_UNEXPECTED_HANDSHAKE), -12234 (SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2747B || 123 || 314 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12263 (SSL_ERROR_RX_RECORD_TOO_LONG).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2767B || 123 || 315 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12165 (SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2787B || 123 || 316 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12163 (SSL_ERROR_RX_UNEXPECTED_CERT_STATUS).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27A7B || 123 || 317 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12160 (SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27C7B || 123 || 318 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12173 (SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY), -12156 (SSL_ERROR_WEAK_SERVER_CERT_KEY).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27E7B || 123 || 319 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12273 (SSL_ERROR_BAD_MAC_READ).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2827B || 123 || 321 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL errors: -12215 (SSL_ERROR_MD5_DIGEST_FAILURE), -12214 (SSL_ERROR_SHA_DIGEST_FAILURE), -12161 (SSL_ERROR_DIGEST_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2847B || 123 || 322 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12213 (SSL_ERROR_MAC_COMPUTATION_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2887B || 123 || 324 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8157 (SEC_ERROR_EXTENSION_NOT_FOUND).&lt;br /&gt;
|-&lt;br /&gt;
| 0x28A7B || 123 || 325 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8049 (SEC_ERROR_UNRECOGNIZED_OID).&lt;br /&gt;
|-&lt;br /&gt;
| 0x28C7B || 123 || 326 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SEC error -8032 (SEC_ERROR_POLICY_VALIDATION_FAILED).&lt;br /&gt;
|-&lt;br /&gt;
| 0x2947B || 123 || 330 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12177 (SSL_ERROR_DECOMPRESSION_FAILURE).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBA7B || 123 || 1501 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12230 (SSL_ERROR_CLOSE_NOTIFY_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBC7B || 123 || 1502 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12229 (SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBBE7B || 123 || 1503 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12272 (SSL_ERROR_BAD_MAC_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC07B || 123 || 1504 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12197 (SSL_ERROR_DECRYPTION_FAILED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC27B || 123 || 1505 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12196 (SSL_ERROR_RECORD_OVERFLOW_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC47B || 123 || 1506 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12228 (SSL_ERROR_DECOMPRESSION_FAILURE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBC67B || 123 || 1507 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12227 (SSL_ERROR_HANDSHAKE_FAILURE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCA7B || 123 || 1509 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12271 (SSL_ERROR_BAD_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCC7B || 123 || 1510 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12225 (SSL_ERROR_UNSUPPORTED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBCE7B || 123 || 1511 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12270 (SSL_ERROR_REVOKED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD07B || 123 || 1512 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12269 (SSL_ERROR_EXPIRED_CERT_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD27B || 123 || 1513 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12224 (SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD47B || 123 || 1514 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12226 (SSL_ERROR_ILLEGAL_PARAMETER_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD67B || 123 || 1515 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12195 (SSL_ERROR_UNKNOWN_CA_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBD87B || 123 || 1516 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12194 (SSL_ERROR_ACCESS_DENIED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDA7B || 123 || 1517 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12193 (SSL_ERROR_DECODE_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDC7B || 123 || 1518 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12192 (SSL_ERROR_DECRYPT_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBDE7B || 123 || 1519 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12191 (SSL_ERROR_EXPORT_RESTRICTION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE07B || 123 || 1520 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12190 (SSL_ERROR_PROTOCOL_VERSION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE27B || 123 || 1521 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12189 (SSL_ERROR_INSUFFICIENT_SECURITY_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE47B || 123 || 1522 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12188 (SSL_ERROR_INTERNAL_ERROR_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE67B || 123 || 1523 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12157 (SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBE87B || 123 || 1524 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12187 (SSL_ERROR_USER_CANCELED_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEA7B || 123 || 1525 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12186 (SSL_ERROR_NO_RENEGOTIATION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEC7B || 123 || 1526 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12184 (SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBEE7B || 123 || 1527 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12183 (SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF07B || 123 || 1528 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12182 (SSL_ERROR_UNRECOGNIZED_NAME_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF27B || 123 || 1529 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12181 (SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0xBF47B || 123 || 1530 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12180 (SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT).&lt;br /&gt;
|-&lt;br /&gt;
| 0x27127B || 123 || 5001 || Converted from [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/SSL_functions/sslerr.html NSS] SSL error -12155 (SSL_ERROR_RX_SHORT_DTLS_READ).&lt;br /&gt;
|-&lt;br /&gt;
| 0x271E7B || 123 || 5007 || Out-of-bounds error during error conversion.&lt;br /&gt;
|-&lt;br /&gt;
| 0x287C || 124 || 20 || Argument is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C7C || 124 || 22 || Argument is invalid&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C7C || 124 || 30 || Bad input buffer size&lt;br /&gt;
|-&lt;br /&gt;
| 0x407C || 124 || 32 || Invalid input buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x767C || 124 || 59 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 3000 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/27166/ System Update Required]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 3001 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28969/ Game Update Required]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4007 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28046/ Account Permanent Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4508 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/28046/ Account Permanent Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4517 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/43652/ Account Ban]&lt;br /&gt;
|-&lt;br /&gt;
|  || 124 || 4609 || [https://en-americas-support.nintendo.com/app/answers/detail/a_id/46482/ Service Discontinued]&lt;br /&gt;
|-&lt;br /&gt;
| 0x27E || 126 || 1 || Invalid argument&lt;br /&gt;
|-&lt;br /&gt;
| 0x87E || 126 || 4 || Entry not found&lt;br /&gt;
|-&lt;br /&gt;
| 0xCE7E || 126 || 67 || Invalid database signature value (should be &amp;quot;NFDB&amp;quot;)&lt;br /&gt;
|-&lt;br /&gt;
| 0xD27E || 126 || 69 || Invalid database entry count&lt;br /&gt;
|-&lt;br /&gt;
| 0x1987E || 126 || 204 || Development/debug-only behavior&lt;br /&gt;
|-&lt;br /&gt;
| 0x480 || 128 || 2 || IStorage not available.&lt;br /&gt;
|-&lt;br /&gt;
| 0x680 || 128 || 3 || No messages&lt;br /&gt;
|-&lt;br /&gt;
| 0x4680 || 128 || 35 || Error while launching applet.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4A80 || 128 || 37 || Title-ID not found. Caused by code 0x410 when applet launch fails&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E880 || 128 || 500 || Invalid input&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EC80 || 128 || 502 || IStorage has already been opened by another accessor&lt;br /&gt;
|-&lt;br /&gt;
| 0x3EE80 || 128 || 503 || IStorage Read/Write out-of-bounds&lt;br /&gt;
|-&lt;br /&gt;
| 0x3F480 || 128 || 506 || Invalid parameters&lt;br /&gt;
|-&lt;br /&gt;
| 0x3FE80 || 128 || 511 || IStorage opened as wrong type (data opened as transfermem, transfermem opened as data)&lt;br /&gt;
|-&lt;br /&gt;
| 0x40080 || 128 || 512 || Unbalanced fatal section leave (returned when executing LeaveFatalSection without a preceding EnterFatalSection call)&lt;br /&gt;
|-&lt;br /&gt;
| 0x40C80 || 128 || 518 || Null object&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B080 || 128 || 600 || Failed to allocate memory for IStorage&lt;br /&gt;
|-&lt;br /&gt;
| 0x59080 || 128 || 712 || Thread stack pool exhausted (out of memory)&lt;br /&gt;
|-&lt;br /&gt;
| 0x79C80 || 128 || 974 || DebugMode not enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x7A880 || 128 || 980 || &amp;lt;code&amp;gt;am.debug!dev_function&amp;lt;/code&amp;gt; setting needs to be set / DebugMode not enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x7CC80 || 128 || 998 || Not implemented&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC81 || 129 || 102 || Transmission not agreed&lt;br /&gt;
|-&lt;br /&gt;
| 0xD281 || 129 || 105 || Network unavailable&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DA81 || 129 || 1005 || HTTP error: Couldnt resolve proxy&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DC81 || 129 || 1006 || HTTP error: Couldnt resolve host&lt;br /&gt;
|-&lt;br /&gt;
| 0x7DE81 || 129 || 1007 || HTTP error: Couldnt connect&lt;br /&gt;
|-&lt;br /&gt;
| 0x7FE81 || 129 || 1023 || HTTP error: Write error&lt;br /&gt;
|-&lt;br /&gt;
| 0x80481 || 129 || 1026 || HTTP error: Read error&lt;br /&gt;
|-&lt;br /&gt;
| 0x80681 || 129 || 1027 || HTTP error: Out of memory&lt;br /&gt;
|-&lt;br /&gt;
| 0x80881 || 129 || 1028 || HTTP error: Operation timedout&lt;br /&gt;
|-&lt;br /&gt;
| 0x81681 || 129 || 1035 || HTTP error: SSL connect error&lt;br /&gt;
|-&lt;br /&gt;
| 0x83681 || 129 || 1051 || HTTP error: Peer failed verification&lt;br /&gt;
|-&lt;br /&gt;
| 0x83881 || 129 || 1052 || HTTP error: Got nothing&lt;br /&gt;
|-&lt;br /&gt;
| 0x83E81 || 129 || 1055 || HTTP error: Send error&lt;br /&gt;
|-&lt;br /&gt;
| 0x84081 || 129 || 1056 || HTTP error: Recv error&lt;br /&gt;
|-&lt;br /&gt;
| 0x84481 || 129 || 1058 || HTTP error: SSL cert problem&lt;br /&gt;
|-&lt;br /&gt;
| 0x84681 || 129 || 1059 || HTTP error: SSL cipher&lt;br /&gt;
|-&lt;br /&gt;
| 0x84881 || 129 || 1060 || HTTP error: SSL CA cert&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C081 || 129 || 2400 || Server error: Status 400&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C281 || 129 || 2401 || Server error: Status 401&lt;br /&gt;
|-&lt;br /&gt;
| 0x12C681 || 129 || 2403 || Server error: Status 403&lt;br /&gt;
|-&lt;br /&gt;
| 0x138881 || 129 || 2500 || Server error: Status 500&lt;br /&gt;
|-&lt;br /&gt;
| 0x138E81 || 129 || 2503 || Server error: Status 503&lt;br /&gt;
|-&lt;br /&gt;
| 0x139081 || 129 || 2504 || Server error: Status 504&lt;br /&gt;
|-&lt;br /&gt;
| 0xA83 || 131 || 5 || Unrecognized applet ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x485 || 133 || 2 || Invalid DVFS table ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x685 || 133 || 3 || DVFS table ID for debug only, see [[PCV_services#Module|DVFS Table]] notes.&lt;br /&gt;
|-&lt;br /&gt;
| 0x885 || 133 || 4 || Invalid parameter&lt;br /&gt;
|-&lt;br /&gt;
| 0x1489 || 137 || 10 || Already initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C89 || 137 || 30 || Task not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5089 || 137  || 40 || Memory allocation failed / bad input.&lt;br /&gt;
|-&lt;br /&gt;
| 0x29489 || 137 || 330 || [[NCM_services#ContentMetaType|ContentMetaType]] doesn&#039;t match SystemUpdate.&lt;br /&gt;
|-&lt;br /&gt;
| 0x271289 || 137 || 5001 || One of the following socket errors occurred: ENETDOWN, ECONNRESET, EHOSTDOWN, EHOSTUNREACH, or EPIPE. Also occurs when the received size doesn&#039;t match the expected size (recvfrom() ret with [[NIM_services#Contents_Delivery|meta_size]] data receiving).&lt;br /&gt;
|-&lt;br /&gt;
| 0x272489 || 137 || 5010 || Socket was [[Sockets_services|shutdown()]] due to the async operation being cancelled.&lt;br /&gt;
|-&lt;br /&gt;
| 0x273889 || 137 || 5020 || Too many internal output entries with [[NIM_services|nim]] cmd42, system is [[NIM_services#Contents_Delivery|Internet-connected]], or an unrecognized socket error occured.&lt;br /&gt;
|-&lt;br /&gt;
| 0x27D889 || 137 || 5100 || Connection timeout.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A4489 || 137 || 5410 || Invalid [[NIM_services#Contents_Delivery|ID]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A5889 || 137 || 5420 || Invalid [[NIM_services#Contents_Delivery|magicnum]]. Can also be caused by the connection being closed by the peer, since non-negative return values from recv() are ignored in this case.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A6C89 || 137 || 5430 || Invalid [[NIM_services#Contents_Delivery|data_size]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A8089 || 137 || 5440 || The input [[NCM_services#ContentMetaKey|ContentMetaKey]] doesn&#039;t match the ContentMetaKey in state.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A9489 || 137 || 5450 || Invalid [[NIM_services#Contents_Delivery|meta_size]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B289 || 137 || 7001 || HTTP invalid response code (&amp;gt;=600).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B489 || 137 || 7002 || HTTP invalid client response code (4xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B689 || 137 || 7003 || HTTP invalid server response code (5xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x36B889 || 137 || 7004 || HTTP invalid redirect response code (3xx).&lt;br /&gt;
|-&lt;br /&gt;
| 0x390889-0x391889 || 137 || 7300-7308 || HTTP response code 300-308.&lt;br /&gt;
|-&lt;br /&gt;
| 0x39D089-0x39F289 || 137 || 7400-7417 || HTTP response code 400-417.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A9889-0x3AAA89 || 137 || 7500-7509 || HTTP response code 500-509.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3CF089 || 137 || 7800 || Unknown/invalid libcurl error.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E8289-0x3F4089 || 137 || 8001-8096 || libcurl error 1-96. Some of the libcurl errors in the error-table map to the above unknown-libcurl-error however.&lt;br /&gt;
|-&lt;br /&gt;
| 0x68A || 138 || 3 || Not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x668C || 140 || 51 || USB data-transfer in progress&lt;br /&gt;
|-&lt;br /&gt;
| 0xD48C || 140 || 106 || Invalid descriptor&lt;br /&gt;
|-&lt;br /&gt;
| 0x1928C || 140 || 201 || USB device not bound / interface already enabled&lt;br /&gt;
|-&lt;br /&gt;
| 0x1BE8E || 142 || 223 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x290 || 144 || 1 || Exited Abnormally ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Abormal)&lt;br /&gt;
|-&lt;br /&gt;
| 0x690 || 144 || 3 || Canceled ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Canceled)&lt;br /&gt;
|-&lt;br /&gt;
| 0x890 || 144 || 4 || Rejected&lt;br /&gt;
|-&lt;br /&gt;
| 0xA90 || 144 || 5 || Exited Unexpectedly ([[Applet_Manager_services#LibraryAppletExitReason|ExitReason]] == Unexpected)&lt;br /&gt;
|-&lt;br /&gt;
| 0x299 || 153 || 1 || Invalid audio device&lt;br /&gt;
|-&lt;br /&gt;
| 0x499 || 153 || 2 || Operation couldn&#039;t complete successfully&lt;br /&gt;
|-&lt;br /&gt;
| 0x699 || 153 || 3 || Invalid sample rate&lt;br /&gt;
|-&lt;br /&gt;
| 0x899 || 153 || 4 || Buffer size too small&lt;br /&gt;
|-&lt;br /&gt;
| 0x1099 || 153 || 8 || Too many buffers are still unreleased&lt;br /&gt;
|-&lt;br /&gt;
| 0x1499 || 153 || 10 || Invalid channel count&lt;br /&gt;
|-&lt;br /&gt;
| 0x40299 || 153 || 513 || Invalid/Unsupported operation&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0099 || 153 || 1536 || Invalid handle&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0899 || 153 || 1540 || Audio output was already started&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C9D || 157 || 30 || Address is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E9D || 157 || 31 || PID is NULL&lt;br /&gt;
|-&lt;br /&gt;
| 0x549D || 157 || 42 || Already bound&lt;br /&gt;
|-&lt;br /&gt;
| 0xCC9D || 157 || 102 || Invalid PID&lt;br /&gt;
|-&lt;br /&gt;
| 0x49E || 158 || 2 || BootImagePackage not found&lt;br /&gt;
|-&lt;br /&gt;
| 0x69E || 158 || 3 || Invalid BootImagePackage&lt;br /&gt;
|-&lt;br /&gt;
| 0x89E || 158 || 4 || Work buffer too small&lt;br /&gt;
|-&lt;br /&gt;
| 0xA9E || 158 || 5 || Work buffer not aligned&lt;br /&gt;
|-&lt;br /&gt;
| 0xC9E || 158 || 6 || BootImages need repair&lt;br /&gt;
|-&lt;br /&gt;
| 0x29F || 159 || 1 || Cancel was selected&lt;br /&gt;
|-&lt;br /&gt;
| 0xAA3 || 163 ||  5 || System is booting up repair process without VOL+ held down.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCA3 || 163 || 6 || System is booting up repair process that requires RepairTimeReviser but does not have special cartridge inserted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x70A4 || 164 || 56 || [[Network_Interface_services#IsAnyInternetRequestAccepted|IsAnyInternetRequestAccepted]] with the output from [[#Network_Interface_services#GetClientId|GetClientId]] returned false.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4AF || 175 || 2 || Bad version returned from calling the &amp;quot;nnjitpluginGetVersion&amp;quot; symbol.&lt;br /&gt;
|-&lt;br /&gt;
| 0xCAAF || 175 || 101 || Input NRO/NRR are too large for the storage buffer.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B0AF || 175 || 600 || Symbol funcptr used by this cmd is not initialized (Control/GenerateCode).&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B2AF || 175 || 601 || DllPlugin Not initialized, or plugin NRO has already been loaded.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B4AF || 175 || 602 || An error was returned from calling the symbol funcptr with the Control cmd.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC8B2 || 178 || 100 || Invalid user ID&lt;br /&gt;
|-&lt;br /&gt;
| 0xCAB2 || 178 || 101 || User does not exist&lt;br /&gt;
|-&lt;br /&gt;
| 0x12CB2 || 178 || 150 || Service unavailable&lt;br /&gt;
|-&lt;br /&gt;
| 0x190B2 || 178 || 200 || File storage failure&lt;br /&gt;
|-&lt;br /&gt;
| 0xAB4 || 180 || 5 || Invalid event ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4EB5 || 181 || 4007 || Device authentication error: System update required&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F50B5 || 181 || 4008 || Device authentication error: [https://en-americas-support.nintendo.com/app/answers/detail/a_id/42061/ Permanant Ban]&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F52B5 || 181 || 4009 || Device authentication error: Internal server error&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F54B5 || 181 || 4007 || Device authentication error: Under maintenance&lt;br /&gt;
|-&lt;br /&gt;
|  || 181 || 4017 || Device authentication error: [https://en-americas-support.nintendo.com/app/answers/detail/a_id/43653/ Ban]&lt;br /&gt;
|-&lt;br /&gt;
| 0x58ACA || 202 || 709 || Npad ID is out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2032CA || 202 || 4121 || [[Settings_services#ButtonConfigSettings|ButtonConfigSettings]] IsFull flag is clear.&lt;br /&gt;
|-&lt;br /&gt;
| 0x28CB || 203 || 20 || The [6.0.0+] Authentication challenge failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40CB || 203 || 32 || Bad State / bad state ptr.&lt;br /&gt;
|-&lt;br /&gt;
| 0x82CB || 203 || 65 || Failed to connect to the AccessPoint.&lt;br /&gt;
|-&lt;br /&gt;
| 0x84CB || 203 || 66 || Timeout occured during Authentication / while attempting to find a valid ActionFrame.&lt;br /&gt;
|-&lt;br /&gt;
| 0x86CB || 203 || 67 || Maximum participants reached, Station not allowed to connect, ...&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0CB || 203 || 96 || Bad input, or not initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC2CB || 203 || 97 || Matching LocalCommunicationId not found in the user-process [[NACP_Format|control.nacp]].&lt;br /&gt;
|-&lt;br /&gt;
| 0xE2CB || 203 || 113 || The specified LocalCommunicationVersion is less than the AccessPoint LocalCommunicationVersion.&lt;br /&gt;
|-&lt;br /&gt;
| 0xE4CB || 203 || 114 || The specified LocalCommunicationVersion is larger than the AccessPoint LocalCommunicationVersion.&lt;br /&gt;
|-&lt;br /&gt;
| 0xF0CD || 205 || 120 || IR image data not available/ready.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A8CD || 205 || 212 || IR camera handle pointer is null.&lt;br /&gt;
|-&lt;br /&gt;
| 0x198CD || 205 || 204 || IR camera invalid handle value.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4CE || 206 || 2 || Invalid argument.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6CE || 206 || 3 || Out of memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10CE || 206 || 8 || Out of range. Buffer needs to be aligned.&lt;br /&gt;
|-&lt;br /&gt;
| 0x18CE || 206 || 12 || Invalid FileId.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1ACE || 206 || 13 || Invalid storage ID.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1CCE || 206 || 14 || Invalid content type.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2ACE || 206 || 21 || Failed to mount Image Directory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2CCE || 206 || 23 || File too big.&lt;br /&gt;
|-&lt;br /&gt;
| 0x30CE || 206 || 24 || Invalid file size.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3CCE || 206 || 30 || Buffer insufficient.&lt;br /&gt;
|-&lt;br /&gt;
| 0xAF2CE || 206 || 1401 || Too many files already saved.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4DA || 218 || 2 || StatusManager entry IsValid flag not set, or controller-update currently in-progress.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6DA || 218 || 3 || Controller-update failed via the LibraryApplet.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8DA || 218 || 4 || Invalid BusHandle.&lt;br /&gt;
|-&lt;br /&gt;
| 0xADA || 218 || 5 || StatusManager entry flag +0x0 not set, or device not connected.&lt;br /&gt;
|-&lt;br /&gt;
| 0xEDA || 218 || 7 || PollingReceivedData not available.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10DA || 218 || 8 || StatusManager entry DeviceEnabled flag not set, or flag +0x0 not set.&lt;br /&gt;
|-&lt;br /&gt;
| 0x12DA || 218 || 9 || ExternalDeviceId mismatch.&lt;br /&gt;
|-&lt;br /&gt;
| 0x14DA || 218 || 10 || BusHandle already initialized.&lt;br /&gt;
|-&lt;br /&gt;
| 0x104E7 || 231 || 130 || Nullptr passed to the LocalCommunicationId [[NACP_Format|control.nacp]] validation func.&lt;br /&gt;
|-&lt;br /&gt;
| 0x140E7 || 231 || 160 || GroupInfo field out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x142E7 || 231 || 161 || SupportedPlatform not appropriate for this operation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x146E7 || 231 || 163 || Invalid ServiceName.&lt;br /&gt;
|-&lt;br /&gt;
| 0x148E7 || 231 || 164 || Must provide PresharedBinaryKey.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C0E7 || 231 || 224 || Requested Priority value not allowed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C2E7 || 231 || 225 || Matching LocalCommunicationId not found in the user-process [[NACP_Format|control.nacp]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x200E7 || 231 || 256 || Invalid flag.&lt;br /&gt;
|-&lt;br /&gt;
| 0x204E7 || 231 || 258 || Invalid SupportedPlatform.&lt;br /&gt;
|-&lt;br /&gt;
| 0x208E7 || 231 || 260 || Invalid StaticAesKeyIndex.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20AE7 || 231 || 261 || MemberCountMax cannot be greater than 8.&lt;br /&gt;
|-&lt;br /&gt;
| 0x210E7 || 231 || 264 || GroupInfo+8F must be 0x20.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FS Error codes ===&lt;br /&gt;
The following are the error codes recognized by nn::fs::detail::LogErrorMessage found in some [[Factory Setup|factory]] titles:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Description || Message&lt;br /&gt;
|-&lt;br /&gt;
| 0xD401 || 106 || nn::svc::ResultInvalidCurrentMemory: Error: Passed buffer is not usable for fs library. See a manual of fs library for more information.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7802 || 60 || nn::fs::ResultMountNameAlreadyExists: Error: Specified mount name already exists.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D202 || 1001 || nn::fs::ResultPartitionNotFound: Error: Specified partition is not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0x7D402 || 1002 || nn::fs::ResultTargetNotFound: Error: Specified target is not found.&lt;br /&gt;
|-&lt;br /&gt;
| 0xFA002 - 0x138602 || 2000 - 2499 || nn::fs::ResultSdCardAccessFailed: Error: Failed to access SD card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x136802 - 0x176E02 || 2500 - 2999 || nn::fs::ResultGameCardAccessFailed: Error: Failed to access game card.&lt;br /&gt;
|-&lt;br /&gt;
| 0x177202 || 3001 || nn::fs::ResultNotImplemented: Error: Specified operation is not implemented.&lt;br /&gt;
|-&lt;br /&gt;
| 0x177A02 || 3005 || nn::fs::ResultOutOfRange: Error: Specified value is out of range.&lt;br /&gt;
|-&lt;br /&gt;
| 0x190002 - 0x1B5602 || 3200 - 3499 || nn::fs::ResultAllocationMemoryFailed: Error: Failed to allocate memory.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B5802 - 0x1F3E02 || 3500 - 3999 || nn::fs::ResultMmcAccessFailed: Error: Failed to access MMC.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4202 - 0x219602 || 4001 - 4299 || nn::fs::ResultRomCorrupted: Error: ROM is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x219A02 - 0x232602 || 4301 - 4499 || nn::fs::ResultSaveDataCorrupted: Error: Save data is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x232A02 - 0x23EE02 || 4501 - 4599 || nn::fs::ResultNcaCorrupted: Error: NCA is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x23F202 - 0x243E02 || 4601 - 4639 || nn::fs::ResultIntegrityVerificationStorageCorrupted: Error: Integrity verification failed.&lt;br /&gt;
|-&lt;br /&gt;
| 0x244202 - 0x246602 || 4641 - 4659 || nn::fs::ResultPartitionFileSystemCorrupted: Error: Partition FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x246A02 - 0x248E02 || 4661 - 4679 || nn::fs::ResultBuiltInStorageCorrupted: Error: Built-in-storage is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x249202 - 0x24B602 || 4681 - 4699 || nn::fs::ResultFatFileSystemCorrupted: Error: FAT FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24BA02 - 0x24DE02 || 4701 - 4719 || nn::fs::ResultHostFileSystemCorrupted: Error: HOST FS is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F4002 - 0x270E02 || 4000, 4300, 4500, 4600, 4640, 4660, 4680, 4700, 4720-4999 || nn::fs::ResultDataCorrupted: Error: Data is corrupted.&lt;br /&gt;
|-&lt;br /&gt;
| 0x271002 - 0x2EDE02 || 5000-5999 || nn::fs::ResultUnexpected: Error: Unexpected failure occurred.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE002 - 0x32C602 || 6000-6499 || nn::fs::ResultPreconditionViolation: Error: Precondition violation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE202 - 0x306E02 || 6001-6199 || nn::fs::ResultInvalidArgument: Error: Invalid argument was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE402 - 0x2F1A02 || 6002-6029 || nn::fs::ResultInvalidPath: Error: Invalid path was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE602 || 6003 || nn::fs::ResultTooLongPath: Error: Too long path was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EE802 || 6004 || nn::fs::ResultInvalidCharacter: Error: Invalid path character was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2EEA02 || 6005 || nn::fs::ResultInvalidPathFormat: Error: Invalid path format was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5A02 || 6061 || nn::fs::ResultInvalidOffset: Error: Invalid offset was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5C02 || 6062 || nn::fs::ResultInvalidSize: Error: Invalid size was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F5E02 || 6063 || nn::fs::ResultNullptrArgument: Error: Null pointer argument was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6202 || 6065 || nn::fs::ResultInvalidMountName: Error: Invalid mount name was specified.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6402 || 6066 || nn::fs::ResultExtensionSizeTooLarge: Error: Extension size exceeds max value set in nmeta file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F6602 || 6067 || nn::fs::ResultExtensionSizeInvalid: Error: Extension size is not a multiple of nn::fs::SaveDataExtensionUnitSize.&lt;br /&gt;
|-&lt;br /&gt;
| 0x307202 || 6201 || nn::fs::ResultFileExtensionWithoutOpenModeAllowAppend: Error: OpenMode_AllowAppend is required for implicit extension of file size by WriteFile().&lt;br /&gt;
|-&lt;br /&gt;
| 0x307002 - 0x313602 || 6200, 6202 - 6299 || nn::fs::ResultInvalidOperationForOpenMode: Error: Invalid operation for the open mode.&lt;br /&gt;
|-&lt;br /&gt;
| 0x313802 - 0x31FE02 || 6300-6399 || nn::fs::ResultUnsupportedOperation: Error: Unsupported operation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x320002 - 0x326202 || 6400-6449 || nn::fs::ResultPermissionDenied: Error: Permission denied.&lt;br /&gt;
|-&lt;br /&gt;
| 0x327202 || 6457 || nn::fs::ResultWriteModeFileNotClosed: Error: Close files opened in write mode before committing.&lt;br /&gt;
|-&lt;br /&gt;
| 0x328202 || 6465 || nn::fs::ResultUserNotExist: Error: Specified user doesn&#039;t exist.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346402 || 6706 || nn::fs::ResultMappingTableFull: Error: Enough journal space is not left.&lt;br /&gt;
|-&lt;br /&gt;
| 0x346A02 || 6709 || nn::fs::ResultOpenCountLimit: Error: The open count of files and directories reached the limitation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x353602 || 6811 || nn::fs::ResultMapFull: Error: Save data extension count reached the limitation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x35F202 || 6905 || nn::fs::ResultNotMounted: Error: Specified mount name is not found.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Fatal Errors =&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Error || Description&lt;br /&gt;
|-&lt;br /&gt;
| 2162-0002&lt;br /&gt;
| Can be triggered by running [[SVC|svcBreak]]. The svcBreak params have no effect on the value of the thrown error-code.&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0000&lt;br /&gt;
| Userland ARM undefined instruction exception&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0001&lt;br /&gt;
| Userland ARM prefetch-abort due to PC set to non-executable region&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0002&lt;br /&gt;
| Userland ARM data abort. Also caused by abnormal process termination via [[SVC|svcExitProcess]]. Note: directly jumping to nnMain()-retaddr from non-main-thread has the same result.&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0003&lt;br /&gt;
| Userland PC address not aligned to 4 bytes&lt;br /&gt;
|-&lt;br /&gt;
| 2168-0008&lt;br /&gt;
| Can occur when attempting to call an svc outside the whitelist&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Support Errors =&lt;br /&gt;
This section is for Support Errors displayed by the error-applet, separate from the normal Result Errors.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 520 || Nverpt&lt;br /&gt;
|-&lt;br /&gt;
| 800 || [[Internet_Browser|General web-applet]]&lt;br /&gt;
|-&lt;br /&gt;
| 809 || [[Internet_Browser|WifiWebAuthApplet]]&lt;br /&gt;
|-&lt;br /&gt;
| 810 || [[Internet_Browser|Whitelisted-applet]]&lt;br /&gt;
|-&lt;br /&gt;
| 811 || [[Internet_Browser|ShopN]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
8XX is for/includes system applets.&lt;br /&gt;
&lt;br /&gt;
== Error codes ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Module || Description || Notes&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| {web-applets listed above}&lt;br /&gt;
| 2750&lt;br /&gt;
| MP4 parsing failed.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Normal error-codes displayed by the system also use the same format as fatal-errors.&lt;br /&gt;
&lt;br /&gt;
= Homebrew Errors =&lt;br /&gt;
Custom errors used by homebrew libraries and applications.&lt;br /&gt;
&lt;br /&gt;
== Modules ==&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 345 || libnx&lt;br /&gt;
|-&lt;br /&gt;
| 346 || [[Homebrew ABI]]&lt;br /&gt;
|-&lt;br /&gt;
| 347 || Homebrew Loader&lt;br /&gt;
|-&lt;br /&gt;
| 348 || libnx NVIDIA errors&lt;br /&gt;
|-&lt;br /&gt;
| 349 || libnx Binder errors&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
	<entry>
		<id>https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=8666</id>
		<title>Audio services</title>
		<link rel="alternate" type="text/html" href="https://switchbrew.org/w/index.php?title=Audio_services&amp;diff=8666"/>
		<updated>2020-01-14T20:23:43Z</updated>

		<summary type="html">&lt;p&gt;ByLaws: Correct reference to GetAudioRendererState&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= audout:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioOuts]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#OpenAudioOut]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#ListAudioOutsAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#OpenAudioOutAuto]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioOuts ==&lt;br /&gt;
Takes a type-6 output buffer.&lt;br /&gt;
Populates the output buffer with the available audio output devices&#039; names and returns an u32 with the number of device names written.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOut ==&lt;br /&gt;
Takes a type-5 input buffer (&#039;&#039;&#039;DeviceNameIn&#039;&#039;&#039;), a type-6 output buffer (&#039;&#039;&#039;DeviceNameOut&#039;&#039;&#039;), two u32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; (must be 48000) and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; (only the higher u16 is used), one u64 &#039;&#039;&#039;ClientPID&#039;&#039;&#039;, a PID and a copy-handle.&lt;br /&gt;
Returns an [[#IAudioOut]] object and four u32s: the sample rate, channel count, [[#PCM_format|PCM format]], and the initial AudioOutState.&lt;br /&gt;
&lt;br /&gt;
=== PCM format ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Invalid&lt;br /&gt;
|-&lt;br /&gt;
| 1 || INT8&lt;br /&gt;
|-&lt;br /&gt;
| 2 || INT16&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INT24&lt;br /&gt;
|-&lt;br /&gt;
| 4 || INT32&lt;br /&gt;
|-&lt;br /&gt;
| 5 || PCM Float&lt;br /&gt;
|-&lt;br /&gt;
| 6 || ADPCM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== ListAudioOutsAuto ==&lt;br /&gt;
Same as [[#ListAudioOuts]], but takes a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== OpenAudioOutAuto ==&lt;br /&gt;
Same as [[#OpenAudioOut]], but takes a type-0x21 input buffer and a type-0x22 output buffer instead.&lt;br /&gt;
&lt;br /&gt;
== IAudioOut ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOut&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioOutState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#StartAudioOut]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#StopAudioOut]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#AppendAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#RegisterBufferEvent]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetReleasedAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#ContainsAudioOutBuffer]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#AppendAudioOutBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetReleasedAudioOutBufferAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [4.0.0+] GetAudioOutBufferCount&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [4.0.0+] GetAudioOutPlayedSampleCount&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] FlushAudioOutBuffers&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [6.0.0+] SetAudioOutVolume&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [6.0.0+] GetAudioOutVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioOutState ===&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;AudioOutState&#039;&#039;&#039; (0x00=Started, 0x01=Stopped).&lt;br /&gt;
&lt;br /&gt;
=== StartAudioOut ===&lt;br /&gt;
Starts audio playback using data from appended buffers.&lt;br /&gt;
&lt;br /&gt;
=== StopAudioOut ===&lt;br /&gt;
Stops audio playback. This waits for audio playback to finish before returning.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBuffer ===&lt;br /&gt;
Takes a type-5 input buffer for sample data and a u64 which acts as a tag for the supplied buffer (official apps use the buffer&#039;s address).&lt;br /&gt;
&lt;br /&gt;
The format of the input buffer is as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset || Size || Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 8 || Pointer to next buffer (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 8 || Pointer to sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 8 || Capacity of sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 8 || Size of data in the sample buffer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 8 || Offset of data in the sample buffer (unused/ignored?)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== RegisterBufferEvent ===&lt;br /&gt;
Returns an event handle that is signalled when a buffer is released.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBuffer ===&lt;br /&gt;
Takes a type-6 output buffer which will be filled with the identifiers from [[#AppendAudioOutBuffer]] of audio buffers that have been released.&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;ReleasedBuffersCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== ContainsAudioOutBuffer ===&lt;br /&gt;
Takes an u64 &#039;&#039;&#039;tag&#039;&#039;&#039; for the desired buffer. Returns 1 if the buffer was appended and not yet released.&lt;br /&gt;
&lt;br /&gt;
=== AppendAudioOutBufferAuto ===&lt;br /&gt;
Same as [[#AppendAudioOutBuffer]] but takes a type-0x21 buffer instead.&lt;br /&gt;
&lt;br /&gt;
=== GetReleasedAudioOutBufferAuto ===&lt;br /&gt;
Same as [[#GetReleasedAudioOutBuffer]] but takes a type-0x22 buffer instead.&lt;br /&gt;
&lt;br /&gt;
= audin:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || ListAudioIns&lt;br /&gt;
|-&lt;br /&gt;
| 1 || OpenAudioIn&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] ListAudioInsAuto&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] OpenAudioInAuto&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [3.0.0+] ListAudioInsAutoFiltered&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [5.0.0+] OpenAudioInProtocolSpecified&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== IAudioIn ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioIn&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetAudioInState]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || StartAudioIn&lt;br /&gt;
|-&lt;br /&gt;
| 2 || StopAudioIn&lt;br /&gt;
|-&lt;br /&gt;
| 3 || AppendAudioInBuffer&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RegisterBufferEvent&lt;br /&gt;
|-&lt;br /&gt;
| 5 || GetReleasedAudioInBuffer&lt;br /&gt;
|-&lt;br /&gt;
| 6 || ContainsAudioInBuffer&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] AppendAudioInBufferWithUserEvent&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] AppendAudioInBufferAuto&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] GetReleasedAudioInBufferAuto&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] AppendAudioInBufferWithUserEventAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [4.0.0+] GetAudioInBufferCount&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [4.0.0+] SetAudioInDeviceGain&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [4.0.0+] GetAudioInDeviceGain&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [6.0.0+] FlushAudioInBuffers&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioInState ===&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;AudioInState&#039;&#039;&#039; (0x00=Started, 0x01=Stopped).&lt;br /&gt;
&lt;br /&gt;
= audrec:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || OpenFinalOutputRecorder&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== IFinalOutputRecorder ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || GetFinalOutputRecorderState&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Start&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Stop&lt;br /&gt;
|-&lt;br /&gt;
| 3 || AppendFinalOutputRecorderBuffer&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RegisterBufferEvent&lt;br /&gt;
|-&lt;br /&gt;
| 5 || GetReleasedFinalOutputRecorderBuffers&lt;br /&gt;
|-&lt;br /&gt;
| 6 || ContainsFinalOutputRecorderBuffer&lt;br /&gt;
|-&lt;br /&gt;
| 7 || GetFinalOutputRecorderBufferEndTime&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] AppendFinalOutputRecorderBufferAuto&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [3.0.0+] GetReleasedFinalOutputRecorderBuffersAuto&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [6.0.0+] FlushFinalOutputRecorderBuffers&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [9.0.0+] AttachWorkBuffer&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= auddev =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioSnoopManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This was added with [6.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || EnableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 1 || DisableDspUsageMeasurement&lt;br /&gt;
|-&lt;br /&gt;
| 6 || GetDspUsage&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= audren:u =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || OpenAudioRenderer&lt;br /&gt;
|-&lt;br /&gt;
| 1 || GetWorkBufferSize&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceService]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] OpenAudioRendererForManualExecution&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetAudioDeviceServiceWithRevisionInfo&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceService ===&lt;br /&gt;
Takes an input u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]], returns an output [[#IAudioDevice]].&lt;br /&gt;
&lt;br /&gt;
== IAudioRenderer ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRenderer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#GetSampleRate]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetSampleCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetMixBufferCount]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#GetAudioRendererState]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RequestUpdate&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Start&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Stop&lt;br /&gt;
|-&lt;br /&gt;
| 7 || QuerySystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#SetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#GetRenderingTimeLimit]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] RequestUpdateAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] ExecuteAudioRendererRendering&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GetSampleRate ===&lt;br /&gt;
Returns the Sample Rate. (u32)&lt;br /&gt;
&lt;br /&gt;
=== GetSampleCount ===&lt;br /&gt;
Returns the Sample Count. (u32)&lt;br /&gt;
&lt;br /&gt;
=== GetMixBufferCount ===&lt;br /&gt;
Returns the number of Mix Buffers. (u32)&lt;br /&gt;
&lt;br /&gt;
=== GetAudioRendererState ===&lt;br /&gt;
Returns an AudioRenderState, 0x00=Started 0x01=Stopped (u32)&lt;br /&gt;
&lt;br /&gt;
=== SetRenderingTimeLimit ===&lt;br /&gt;
Takes a upper limit of the rendering time in percent. (u32)&lt;br /&gt;
&lt;br /&gt;
=== GetRenderingTimeLimit ===&lt;br /&gt;
Returns the upper limit of the rendering time in percent. (u32)&lt;br /&gt;
&lt;br /&gt;
== IAudioDevice ==&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDevice&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#ListAudioDeviceName]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#GetAudioDeviceOutputVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetActiveAudioDeviceName&lt;br /&gt;
|-&lt;br /&gt;
| 4 || QueryAudioDeviceSystemEvent&lt;br /&gt;
|-&lt;br /&gt;
| 5 || GetActiveChannelCount&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [3.0.0+] [[#ListAudioDeviceNameAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [3.0.0+] [[#SetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [3.0.0+] [[#GetAudioDeviceOutputVolumeAuto]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [3.0.0+] GetActiveAudioDeviceNameAuto&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [3.0.0+] QueryAudioDeviceInputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [3.0.0+] QueryAudioDeviceOutputEvent&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [5.0.0+] GetAudioSystemMasterVolumeSetting&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceName ===&lt;br /&gt;
Takes a type-0x6 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;, returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolume ===&lt;br /&gt;
Takes a type-0x5 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
=== ListAudioDeviceNameAuto ===&lt;br /&gt;
Takes a type-0x22 output buffer containing an array of &#039;&#039;&#039;DeviceName&#039;&#039;&#039;, returns an output s32 for total number of output entries.&lt;br /&gt;
&lt;br /&gt;
=== SetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039; and a float. No output.&lt;br /&gt;
&lt;br /&gt;
=== GetAudioDeviceOutputVolumeAuto ===&lt;br /&gt;
Takes a type-0x21 input buffer containing the &#039;&#039;&#039;DeviceName&#039;&#039;&#039;. Returns an output float.&lt;br /&gt;
&lt;br /&gt;
= audout:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendAudioOuts&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeAudioOuts&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetAudioOutsProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetAudioOutsProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [4.0.0+] GetAudioOutsProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [4.0.0+] SetAudioOutsProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspendAudioOuts/RequestResumeAudioOuts no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audin:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioInManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendAudioIns&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeAudioIns&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetAudioInsProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetAudioInsProcessMasterVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspendAudioIns/RequestResumeAudioIns no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audrec:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendFinalOutputRecorders&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeFinalOutputRecorders&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspendFinalOutputRecorders/RequestResumeFinalOutputRecorders no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audren:a =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioRendererManagerForApplet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || RequestSuspendAudioRenderers&lt;br /&gt;
|-&lt;br /&gt;
| 1 || RequestResumeAudioRenderers&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetAudioRenderersProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 3 || SetAudioRenderersProcessMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 4 || RegisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 5 || UnregisterAppletResourceUserId&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [4.0.0+] GetAudioRenderersProcessRecordVolume&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [4.0.0+] SetAudioRenderersProcessRecordVolume&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[4.0.0+] RequestSuspendAudioRenderers/RequestResumeAudioRenderers no longer returns an output handle.&lt;br /&gt;
&lt;br /&gt;
= audout:d, audin:d, audrec:d, audren:d =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioOutManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioInManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IFinalOutputRecorderManagerForDebugger&amp;quot;, &amp;quot;nn::audio::detail::IAudioRendererManagerForDebugger&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#RequestSuspendForDebug]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#RequestResumeForDebug]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== RequestSuspendForDebug ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
== RequestResumeForDebug ==&lt;br /&gt;
Takes an u64 [[AM_services#AppletResourceUserId|AppletResourceUserId]].&lt;br /&gt;
&lt;br /&gt;
= audctl =&lt;br /&gt;
This is &amp;quot;nn::audioctrl::detail::IAudioController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || GetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SetTargetVolume&lt;br /&gt;
|-&lt;br /&gt;
| 2 || GetTargetVolumeMin&lt;br /&gt;
|-&lt;br /&gt;
| 3 || GetTargetVolumeMax&lt;br /&gt;
|-&lt;br /&gt;
| 4 || IsTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 5 || SetTargetMute&lt;br /&gt;
|-&lt;br /&gt;
| 6 || IsTargetConnected&lt;br /&gt;
|-&lt;br /&gt;
| 7 || SetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 8 || GetDefaultTarget&lt;br /&gt;
|-&lt;br /&gt;
| 9 || GetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 10 || SetAudioOutputMode&lt;br /&gt;
|-&lt;br /&gt;
| 11 || SetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 12 || GetForceMutePolicy&lt;br /&gt;
|-&lt;br /&gt;
| 13 || GetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 14 || SetOutputModeSetting&lt;br /&gt;
|-&lt;br /&gt;
| 15 || SetOutputTarget&lt;br /&gt;
|-&lt;br /&gt;
| 16 || SetInputTargetForceEnabled&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [3.0.0+] SetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [3.0.0+] GetHeadphoneOutputLevelMode&lt;br /&gt;
|-&lt;br /&gt;
| 19 || [3.0.0+] AcquireAudioVolumeUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 20 || [3.0.0+] AcquireAudioOutputDeviceUpdateEventForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 21 || [3.0.0+] GetAudioOutputTargetForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 22 || [3.0.0+] NotifyHeadphoneVolumeWarningDisplayedEvent&lt;br /&gt;
|-&lt;br /&gt;
| 23 || [4.0.0+] SetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 24 || [4.0.0+] GetSystemOutputMasterVolume&lt;br /&gt;
|-&lt;br /&gt;
| 25 || [4.0.0+] GetAudioVolumeDataForPlayReport&lt;br /&gt;
|-&lt;br /&gt;
| 26 || [4.0.0+] UpdateHeadphoneSettings&lt;br /&gt;
|-&lt;br /&gt;
| 27 || [7.0.0+] SetVolumeMappingTableForDev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= codecctl =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::ICodecController&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service no longer exists in [3.0.0+].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#InitializeCodecController]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#FinalizeCodecController]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [[#SleepCodecController]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [[#WakeCodecController]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [[#SetCodecVolume]]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [[#GetCodecVolumeMax]]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [[#GetCodecVolumeMin]]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [[#SetCodecActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [[#GetCodecActiveTarget]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [[#BindCodecHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [[#IsCodecHeadphoneMicJackInserted]]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [[#ClearCodecHeadphoneMicJackInterrupt]]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [[#IsCodecDeviceRequested]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== InitializeCodecController ==&lt;br /&gt;
Takes no input.&lt;br /&gt;
&lt;br /&gt;
== FinalizeCodecController ==&lt;br /&gt;
Takes no input.&lt;br /&gt;
&lt;br /&gt;
== SleepCodecController ==&lt;br /&gt;
Takes no input.&lt;br /&gt;
&lt;br /&gt;
== WakeCodecController ==&lt;br /&gt;
Takes no input.&lt;br /&gt;
&lt;br /&gt;
== SetCodecVolume ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Volume&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetCodecVolumeMax ==&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;VolumeMax&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetCodecVolumeMin ==&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;VolumeMin&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== SetCodecActiveTarget ==&lt;br /&gt;
Takes an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== GetCodecActiveTarget ==&lt;br /&gt;
Returns an u32 &#039;&#039;&#039;Target&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== BindCodecHeadphoneMicJackInterrupt ==&lt;br /&gt;
Returns an event handle.&lt;br /&gt;
&lt;br /&gt;
== IsCodecHeadphoneMicJackInserted ==&lt;br /&gt;
Returns a bool.&lt;br /&gt;
&lt;br /&gt;
== ClearCodecHeadphoneMicJackInterrupt ==&lt;br /&gt;
Takes no input.&lt;br /&gt;
&lt;br /&gt;
== IsCodecDeviceRequested ==&lt;br /&gt;
Returns a bool.&lt;br /&gt;
&lt;br /&gt;
= hwopus =&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoderManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [[#Initialize]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#GetWorkBufferSize]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [3.0.0+] [[#OpenHardwareOpusDecoderForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#GetWorkBufferSizeForMultiStream]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Official sw can use either software libopus, or hwopus via &amp;quot;nn::codec::HardwareOpus*&amp;quot; (separate from the former).&lt;br /&gt;
&lt;br /&gt;
== Initialize ==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSize==&lt;br /&gt;
Takes two s32s &#039;&#039;&#039;SampleRate&#039;&#039;&#039; and &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; packed as an u64. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
== OpenHardwareOpusDecoderForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer, an u32 &#039;&#039;&#039;WorkBufferSize&#039;&#039;&#039; and a TransferMemory handle for &#039;&#039;&#039;WorkBuffer&#039;&#039;&#039;. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#MultiStreamParameters]] struct. The user-process initializes this struct the same way as [[#GetWorkBufferSizeForMultiStream]], except that an u8-array specified by the user is copied to +0x10 with size &#039;&#039;&#039;ChannelCount&#039;&#039;&#039;, when &#039;&#039;&#039;ChannelCount&#039;&#039;&#039; above 0.&lt;br /&gt;
&lt;br /&gt;
== GetWorkBufferSizeForMultiStream ==&lt;br /&gt;
Takes a type-0x19 input buffer. Returns the u32 required size for the decoder&#039;s work buffer. Official user-processes align the output size to page-alignment.&lt;br /&gt;
&lt;br /&gt;
The input buffer is a [[#MultiStreamParameters]] struct.&lt;br /&gt;
&lt;br /&gt;
== MultiStreamParameters ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset&lt;br /&gt;
! Size&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| 0x4&lt;br /&gt;
| Sample rate (Hz)&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of channels&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of streams&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| 0x4&lt;br /&gt;
| Number of stereo streams&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| 0x100&lt;br /&gt;
| u8 array of channel mappings&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== IHardwareOpusDecoder ==&lt;br /&gt;
This is &amp;quot;nn::codec::detail::IHardwareOpusDecoder&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || [4.0.0+] [[#DecodeInterleavedOld]] ([1.0.0-3.0.2] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [[#SetContext]]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [4.0.0+] [[#DecodeInterleavedForMultiStreamOld]] ([3.0.0-3.0.2] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [3.0.0+] [[#SetContextForMultiStream]]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [6.0.0+] [[#DecodeInterleavedWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [6.0.0+] [[#DecodeInterleavedForMultiStreamWithPerfOld]] ([4.0.0-5.1.0] DecodeInterleavedForMultiStreamWithPerf)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [6.0.0+] DecodeInterleavedWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleaved)&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [6.0.0+] DecodeInterleavedForMultiStreamWithPerfAndResetOld ([6.0.0-6.2.0] DecodeInterleavedForMultiStream)&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [7.0.0+] [[#DecodeInterleaved]]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [7.0.0+] [[#DecodeInterleavedForMultiStream]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedOld ===&lt;br /&gt;
Takes a type-5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContext ===&lt;br /&gt;
Takes a type-5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder. The input buffer is unused.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamOld ===&lt;br /&gt;
Takes a type-5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-6 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039; and s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0 and out_u64_ptr=NULL.&lt;br /&gt;
&lt;br /&gt;
=== SetContextForMultiStream ===&lt;br /&gt;
Takes a type-5 input buffer (&#039;&#039;&#039;DecoderContextIn&#039;&#039;&#039;). Sends the unknown context data to the hardware decoder.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleaved]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStreamWithPerfOld ===&lt;br /&gt;
Takes a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The output u64 is ignored by official user-processes.&lt;br /&gt;
&lt;br /&gt;
Calls the same func as [[#DecodeInterleavedForMultiStream]] internally with flag=0.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleaved ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
=== DecodeInterleavedForMultiStream ===&lt;br /&gt;
Takes an input u8 bool flag, a type-0x5 input buffer (&#039;&#039;&#039;OpusDataIn&#039;&#039;&#039;) and a type-0x46 output buffer (&#039;&#039;&#039;PcmDataOut&#039;&#039;&#039;). Decodes the Opus source data to PCM and returns output s32 &#039;&#039;&#039;DecodedDataSize&#039;&#039;&#039;, s32 &#039;&#039;&#039;DecodedSampleCount&#039;&#039;&#039;, and an u64.&lt;br /&gt;
&lt;br /&gt;
The bool flag indicates whether or not a reset of the decoder context is being requested.&lt;br /&gt;
&lt;br /&gt;
= auddebug =&lt;br /&gt;
This is &amp;quot;nn::audio::detail::IAudioDebugManager&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This service doesn&#039;t exist in retail units.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cmd || Name&lt;br /&gt;
|-&lt;br /&gt;
| 0 || StartDspProfiler&lt;br /&gt;
|-&lt;br /&gt;
| 1 || StopDspProfiler&lt;br /&gt;
|-&lt;br /&gt;
| 2 || StartCpuProfiler&lt;br /&gt;
|-&lt;br /&gt;
| 3 || StopCpuProfiler&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Services]]&lt;/div&gt;</summary>
		<author><name>ByLaws</name></author>
	</entry>
</feed>