NV services: Difference between revisions
Masagrator (talk | contribs) mNo edit summary |
|||
(15 intermediate revisions by 3 users not shown) | |||
Line 593: | Line 593: | ||
! Value || Direction || Size || Description | ! Value || Direction || Size || Description | ||
|- | |- | ||
| 0x80040212 || Out || 4 || NVDISP_CTRL_NUM_OUTPUTS | | 0x80040212 || Out || 4 || [[#NVDISP_CTRL_NUM_OUTPUTS]] | ||
|- | |- | ||
| 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES | | 0xC0140213 || Inout || 20 || NVDISP_CTRL_GET_DISPLAY_PROPERTIES | ||
|- | |- | ||
| 0xC1100214 || Inout || 272 || NVDISP_CTRL_QUERY_EDID | | 0xC2100214</br>([1.0.0-11.0.1] 0xC1100214) || Inout || 528</br>([1.0.0-11.0.1] 272) || NVDISP_CTRL_QUERY_EDID | ||
|- | |- | ||
| 0xC0080216</br>([1.0.0-3.0.0] 0xC0040216) || Inout || 8</br>([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS</br>([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT) | | 0xC0080216</br>([1.0.0-3.0.0] 0xC0040216) || Inout || 8</br>([1.0.0-3.0.0] 4) || NVDISP_CTRL_GET_EXT_HPD_IN_OUT_EVENTS</br>([1.0.0-3.0.0] NVDISP_CTRL_GET_EXT_HPD_IN_EVENT) | ||
Line 611: | Line 611: | ||
| 0x80010224 || Out || 1 || [11.0.0+] NVDISP_CTRL_IS_DISPLAY_OLED | | 0x80010224 || Out || 1 || [11.0.0+] NVDISP_CTRL_IS_DISPLAY_OLED | ||
|} | |} | ||
=== NVDISP_CTRL_NUM_OUTPUTS === | |||
struct { | |||
__out u32 num_outputs; | |||
}; | |||
== /dev/nvdisp-disp0, /dev/nvdisp-disp1 == | == /dev/nvdisp-disp0, /dev/nvdisp-disp1 == | ||
Line 646: | Line 652: | ||
| 0xC004020F || Inout || 4 || NVDISP_DPMS | | 0xC004020F || Inout || 4 || NVDISP_DPMS | ||
|- | |- | ||
| 0x80600210 || Out || 96 || NVDISP_GET_AVI_INFOFRAME | | 0x80600210 || Out || 96 || [[#NVDISP_GET_AVI_INFOFRAME]] | ||
|- | |- | ||
| 0x40600211 || In || 96 || NVDISP_SET_AVI_INFOFRAME | | 0x40600211 || In || 96 || [[#NVDISP_SET_AVI_INFOFRAME]] | ||
|- | |- | ||
| 0xEBFC0215 || Inout || 11260 || [[#NVDISP_GET_MODE_DB]] | | 0xEBFC0215 || Inout || 11260 || [[#NVDISP_GET_MODE_DB]] | ||
Line 733: | Line 739: | ||
__inout u32 vmode; | __inout u32 vmode; | ||
__inout u32 sync; | __inout u32 sync; | ||
}; | |||
=== NVDISP_GET_AVI_INFOFRAME === | |||
Unpacked standard AVI infoframe struct (HDMI v1.4b/2.0) | |||
struct { | |||
__out u32 csum; | |||
__out u32 scan; | |||
__out u32 bar_valid; | |||
__out u32 act_fmt_valid; | |||
__out u32 rgb_ycc; | |||
__out u32 act_format; | |||
__out u32 aspect_ratio; | |||
__out u32 colorimetry; | |||
__out u32 scaling; | |||
__out u32 rgb_quant; | |||
__out u32 ext_colorimetry; | |||
__out u32 it_content; | |||
__out u32 video_format; | |||
__out u32 pix_rep; | |||
__out u32 it_content_type; | |||
__out u32 ycc_quant; | |||
__out u32 top_bar_end_line_lsb; | |||
__out u32 top_bar_end_line_msb; | |||
__out u32 bot_bar_start_line_lsb; | |||
__out u32 bot_bar_start_line_msb; | |||
__out u32 left_bar_end_pixel_lsb; | |||
__out u32 left_bar_end_pixel_msb; | |||
__out u32 right_bar_start_pixel_lsb; | |||
__out u32 right_bar_start_pixel_msb; | |||
}; | |||
=== NVDISP_SET_AVI_INFOFRAME === | |||
Unpacked standard AVI infoframe struct (HDMI v1.4b/2.0) | |||
struct { | |||
__in u32 csum; | |||
__in u32 scan; | |||
__in u32 bar_valid; | |||
__in u32 act_fmt_valid; | |||
__in u32 rgb_ycc; | |||
__in u32 act_format; | |||
__in u32 aspect_ratio; | |||
__in u32 colorimetry; | |||
__in u32 scaling; | |||
__in u32 rgb_quant; | |||
__in u32 ext_colorimetry; | |||
__in u32 it_content; | |||
__in u32 video_format; | |||
__in u32 pix_rep; | |||
__in u32 it_content_type; | |||
__in u32 ycc_quant; | |||
__in u32 top_bar_end_line_lsb; | |||
__in u32 top_bar_end_line_msb; | |||
__in u32 bot_bar_start_line_lsb; | |||
__in u32 bot_bar_start_line_msb; | |||
__in u32 left_bar_end_pixel_lsb; | |||
__in u32 left_bar_end_pixel_msb; | |||
__in u32 right_bar_start_pixel_lsb; | |||
__in u32 right_bar_start_pixel_msb; | |||
}; | }; | ||
Line 756: | Line 822: | ||
struct { | struct { | ||
__out struct mode[201]; | __out struct mode modes[201]; | ||
__out u32 num_modes; | __out u32 num_modes; | ||
}; | |||
=== NVDISP_PANEL_GET_VENDOR_ID === | |||
Returns display panel's informations. | |||
struct { | |||
__out u8 vendor; //0x10 - JDI, 0x20 - InnoLux, 0x30 - AUO, 0x40 - Sharp, 0x50 - Samsung | |||
__out u8 model; | |||
__out u8 board; //0xF - 6.2", 0x10 - 5.5", 0x20 - 7.0". JDI panels have nonstandard values | |||
}; | }; | ||
Line 821: | Line 897: | ||
=== NVDISP_GET_MODE_DB2 === | === NVDISP_GET_MODE_DB2 === | ||
struct mode2 { | struct mode2 { | ||
Line 842: | Line 917: | ||
struct { | struct { | ||
__out struct mode2[201]; | __out struct mode2 modes[201]; | ||
__out u32 num_modes; | __out u32 num_modes; | ||
}; | }; | ||
Line 938: | Line 1,003: | ||
| 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC | | 0x40010501 || In || 1 || NVDCUTIL_ENABLE_CRC | ||
|- | |- | ||
| 0x40010502 || In || 1 || NVDCUTIL_VIRTUAL_EDID_ENABLE | | 0x40010502 || In || 1 || [[#NVDCUTIL_VIRTUAL_EDID_ENABLE]] | ||
|- | |- | ||
| 0x42040503 || In || | | 0x42040503 || In || 516 || [[#NVDCUTIL_VIRTUAL_EDID_SET_DATA]] | ||
|- | |- | ||
| 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE | | 0x803C0504 || Out || 60 || NVDCUTIL_GET_MODE | ||
Line 958: | Line 1,023: | ||
| 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ | | 0x8070050B || Out || 112 || [11.0.0+] NVDCUTIL_DP_CONF_READ | ||
|} | |} | ||
=== NVDCUTIL_VIRTUAL_EDID_ENABLE === | |||
struct { | |||
__in u8 enable; | |||
}; | |||
=== NVDCUTIL_VIRTUAL_EDID_SET_DATA === | |||
struct { | |||
__in u8 edid[512]; | |||
__in u32 edid_size; | |||
}; | |||
== /dev/nvsched-ctrl == | == /dev/nvsched-ctrl == | ||
Line 1,206: | Line 1,284: | ||
|- | |- | ||
| 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX2]] | | 0xC038410A || Inout || 56 || [[#NVGPU_AS_IOCTL_MAP_BUFFER_EX2]] | ||
|- | |||
| 0x8010410B || Out || 16 || [S2] | |||
|- | |||
| 0xC020410C || Inout || 32 || [S2] | |||
|- | |||
| 0xC???410D || Inout || Variable || [S2] | |||
|- | |- | ||
| 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]] | | 0xC0??4114 || Inout || Variable || [[#NVGPU_AS_IOCTL_REMAP]] | ||
Line 1,430: | Line 1,514: | ||
|- | |- | ||
| 0xC020441E || Inout || 32 || [11.0.0+] NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PAGES | | 0xC020441E || Inout || 32 || [11.0.0+] NVGPU_DBG_GPU_IOCTL_GET_GPU_VA_RANGE_PAGES | ||
|- | |||
| [S2] 0xC0184421 || || || | |||
|- | |||
| [S2] 0x40084422 || || || | |||
|- | |||
| [S2] 0xC0084423 || || || | |||
|- | |||
| [S2] 0x40084424 || || || | |||
|- | |||
| [S2] 0xC0104425 || || || | |||
|- | |||
| [S2] 0x40084427 || || || | |||
|- | |||
| [S2] 0x40044428 || || || | |||
|- | |||
| [S2] 0xC0184429 || || || | |||
|- | |||
| [S2] 0x4010442A || || || | |||
|- | |||
| [S2] 0x4010442B || || || | |||
|} | |} | ||
Line 1,826: | Line 1,930: | ||
| 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]] | | 0xC0??0026 || Variable || [[#NVHOST_IOCTL_CHANNEL_UNMAP_CMD_BUFFER_EX]] | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x40044801 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]] | | 0x40044801 [S2] 0x40044101 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD]] | ||
|- | |- | ||
| 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]] | | 0x40044803 || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMEOUT]] | ||
Line 1,856: | Line 1,960: | ||
| 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]] | | 0x00004811 || 0 || [[#NVGPU_IOCTL_CHANNEL_FORCE_RESET]] | ||
|- | |- | ||
| 0x40084812 || 8 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]] | | 0x40084812 [S2] 0x40104812 || 8 [S2] 16 || [[#NVGPU_IOCTL_CHANNEL_EVENT_ID_CONTROL]] | ||
|- | |- | ||
| 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]] | | 0xC0104813 || 16 || [[#NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT]] | ||
|- | |||
| 0x40084714 || 8 || [[#NVGPU_IOCTL_CHANNEL_SET_USER_DATA]] | |||
|- | |||
| 0x80084715 || 8 || [[#NVGPU_IOCTL_CHANNEL_GET_USER_DATA]] | |||
|- | |- | ||
| 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]] | | 0x80804816 || 128 || [[#NVGPU_IOCTL_CHANNEL_GET_ERROR_INFO]] | ||
Line 1,876: | Line 1,984: | ||
| 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]] | | 0xC004481D || 4 || [[#NVGPU_IOCTL_CHANNEL_SET_TIMESLICE]] | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| | | [S2] 0xC010481E || 16 || | ||
|- | |||
| [S2] 0xC008481F || 8 || | |||
|- | |||
| [S2] 0x40044820 || 4 || | |||
|- | |- | ||
| | | [S2] 0xC0504821 || 80 || | ||
|} | |} | ||