HV Syscalls: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
|||
(16 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
<!--//Some of this info was ported from wiki.ps2dev.org//--> | |||
=LV1/hvcall index= | =LV1/hvcall index= | ||
This page is used as an indexpage of the hypercalls listed @ [[HV Syscall Reference]] | This page is used as an indexpage of the hypercalls listed @ [[HV Syscall Reference]] | ||
Line 38: | Line 38: | ||
|- | |- | ||
| 5 | | 5 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_decrementer_intr_start|lv1_decrementer_intr_start]] | ||
| ?? | | ?? | ||
| ?? | | ?? | ||
Line 53: | Line 53: | ||
|- | |- | ||
| 8 | | 8 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_total_execution_time|lv1_get_total_execution_time]] | ||
| ?? | | ?? | ||
| 1 | | 1 | ||
Line 83: | Line 83: | ||
|- | |- | ||
| 14 | | 14 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_io_address_translation_fault_info|lv1_get_io_address_translation_fault_info]] | ||
| | | | ||
| | | | ||
Line 93: | Line 93: | ||
|- | |- | ||
| 16 | | 16 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_iopte|lv1_get_iopte]] | ||
| | | | ||
| | | | ||
Line 113: | Line 113: | ||
|- | |- | ||
| 20 | | 20 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_request_to_connect_event_ports|lv1_request_to_connect_event_ports]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 21 | | 21 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_connect_event_ports|lv1_connect_event_ports]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 22 | | 22 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_destruct_event_send_port|lv1_destruct_event_send_port]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 23 | | 23 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_send_event_externally|lv1_send_event_externally]] | ||
| | | | ||
| | | | ||
Line 138: | Line 138: | ||
|- | |- | ||
| 25 | | 25 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_state_of_event_send_port|lv1_get_state_of_event_send_port]] | ||
| | | | ||
| | | | ||
Line 173: | Line 173: | ||
|- | |- | ||
| 32 | | 32 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_send_message|lv1_send_message]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 33 | | 33 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_request_to_connect_message_ports|lv1_request_to_connect_message_ports]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 34 | | 34 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_message_port_info|lv1_get_message_port_info]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 35 | | 35 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_connect_message_ports|lv1_connect_message_ports]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 36 | | 36 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_destruct_message_port|lv1_destruct_message_port]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 37 | | 37 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_receive_message|lv1_receive_message]] | ||
| | | | ||
| | | | ||
Line 238: | Line 238: | ||
|- | |- | ||
| 45 | | 45 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_assign_control_signal_notification_port|lv1_assign_control_signal_notification_port]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 46 | | 46 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_control_signal|lv1_get_control_signal]] | ||
| | | | ||
| | | | ||
Line 253: | Line 253: | ||
|- | |- | ||
| 48 | | 48 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_end_of_control_signal_processing|lv1_end_of_control_signal_processing]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 49 | | 49 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_request_to_attach_shared_memory|lv1_request_to_attach_shared_memory]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 50 | | 50 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_permit_sharing_memory|lv1_permit_sharing_memory]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 51 | | 51 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_destruct_shared_memory_handle|lv1_destruct_shared_memory_handle]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 52 | | 52 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_shared_memory_info|lv1_get_shared_memory_info]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 53 | | 53 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_construct_logical_spe|lv1_construct_logical_spe]] | ||
| | | | ||
| | | | ||
Line 288: | Line 288: | ||
|- | |- | ||
| 55 | | 55 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_enable_logical_spe_execution|lv1_enable_logical_spe_execution]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 56 | | 56 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_disable_logical_spe_execution|lv1_disable_logical_spe_execution]] | ||
| | | | ||
| | | | ||
Line 303: | Line 303: | ||
|- | |- | ||
| 58 | | 58 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_sense_spe_execution_status|lv1_sense_spe_execution_status]] | ||
| | | | ||
| | | | ||
Line 318: | Line 318: | ||
|- | |- | ||
| 61 | | 61 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_irq_mask_for_spu|lv1_set_irq_mask_for_spu]] | ||
| 3 | | 3 | ||
| 0 | | 0 | ||
|- | |- | ||
| 62 | | 62 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_slb_for_logical_spu|lv1_set_slb_for_logical_spu]] | ||
| 5 | | 5 | ||
| 0 | | 0 | ||
Line 353: | Line 353: | ||
|- | |- | ||
| 68 | | 68 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_load_range_registers|lv1_load_range_registers]] | ||
| | | | ||
| | | | ||
Line 363: | Line 363: | ||
|- | |- | ||
| 70 | | 70 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_ppe_l2cache_rmt_entry|lv1_set_ppe_l2cache_rmt_entry]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 71 | | 71 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_ppe_tlb_rmt_entry|lv1_set_ppe_tlb_rmt_entry]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 72 | | 72 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_spe_tlb_rmt_entry|lv1_set_spe_tlb_rmt_entry]] | ||
| | | | ||
| | | | ||
Line 413: | Line 413: | ||
|- | |- | ||
| 80 | | 80 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_construct_spe_irq_outlet|lv1_construct_spe_irq_outlet]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 81 | | 81 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_destruct_spe_irq_outlet|lv1_destruct_spe_irq_outlet]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 82 | | 82 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_reinitialize_logical_spe|lv1_reinitialize_logical_spe]] | ||
| | | | ||
| | | | ||
Line 433: | Line 433: | ||
|- | |- | ||
| 84 | | 84 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_request_ipspc_service|lv1_request_ipspc_service]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 85 | | 85 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_permit_use_of_ipspc_service|lv1_permit_use_of_ipspc_service]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 86 | | 86 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_execute_ipspc_command|lv1_execute_ipspc_command]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 87 | | 87 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_stop_ipspc_command|lv1_stop_ipspc_command]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 88 | | 88 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_disconnect_ipspc_service|lv1_disconnect_ipspc_service]] | ||
| | | | ||
| | | | ||
Line 483: | Line 483: | ||
|- | |- | ||
| 94 | | 94 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_write_htab_entry|lv1_write_htab_entry]] | ||
| | | | ||
| | | | ||
Line 513: | Line 513: | ||
|- | |- | ||
| 100 | | 100 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_assign_io_address_translation_fault_port|lv1_assign_io_address_translation_fault_port]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 101 | | 101 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_insert_htab_entry|lv1_insert_htab_entry]] | ||
| | | | ||
| | | | ||
Line 524: | Line 524: | ||
| 102 | | 102 | ||
| [[HV Syscall Reference#lv1_undocumented_function_102|lv1_undocumented_function_102]] | | [[HV Syscall Reference#lv1_undocumented_function_102|lv1_undocumented_function_102]] | ||
| | | 0 | ||
| | | 2 | ||
|- | |- | ||
| 103 | | 103 | ||
Line 533: | Line 533: | ||
|- | |- | ||
| 104 | | 104 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_cancel_shared_memory|lv1_cancel_shared_memory]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 105 | | 105 | ||
| [[HV Syscall Reference#lv1_undocumented_function_105| | | [[HV Syscall Reference#lv1_undocumented_function_105|lv1_comm_dev_logical_console_construct]] | ||
| | | 7 | ||
| | | 1 | ||
|- | |- | ||
| 106 | | 106 | ||
| [[HV Syscall Reference#lv1_undocumented_function_106| | | [[HV Syscall Reference#lv1_undocumented_function_106|lv1_comm_dev_logical_console_destruct]] | ||
| | | 1 | ||
| | | 1 | ||
|- | |- | ||
| 107 | | 107 | ||
| [[HV Syscall Reference#lv1_undocumented_function_107| | | [[HV Syscall Reference#lv1_undocumented_function_107|lv1_comm_dev_logical_console_send]] | ||
| | | 6 | ||
| | | 2 | ||
|- | |- | ||
| 108 | | 108 | ||
| [[HV Syscall Reference#lv1_undocumented_function_108| | | [[HV Syscall Reference#lv1_undocumented_function_108|lv1_comm_dev_logical_console_receive]] | ||
| | | 1 | ||
| | | 6 | ||
|- | |- | ||
| 109 | | 109 | ||
| [[HV Syscall Reference#lv1_undocumented_function_109| | | [[HV Syscall Reference#lv1_undocumented_function_109|lv1_comm_dev_logical_console_flush]] | ||
| | | 1 | ||
| | | 1 | ||
|- | |- | ||
| 110 | | 110 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_read_remote_file|lv1_read_remote_file]] | ||
| | | 5 | ||
| | | 2 | ||
|- | |- | ||
| 111 | | 111 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_write_remote_file|lv1_write_remote_file]] | ||
| | | 5 | ||
| | | 2 | ||
|- | |- | ||
| 112 | | 112 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_remote_file_size|lv1_get_remote_file_size]] | ||
| | | 2 | ||
| | | 2 | ||
|- | |- | ||
| 113 | | 113 | ||
Line 583: | Line 583: | ||
|- | |- | ||
| 114 | | 114 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_map_physical_address_region|lv1_map_physical_address_region]] | ||
| 3 | | 3 | ||
| 1 | | 1 | ||
|- | |- | ||
| 115 | | 115 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_unmap_physical_address_region|lv1_unmap_physical_address_region]] | ||
| 1 | |||
| 1 | | 1 | ||
|- | |- | ||
| 116 | | 116 | ||
Line 633: | Line 633: | ||
|- | |- | ||
| 124 | | 124 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_read_remote_file_long_name|lv1_read_remote_file_long_name]] | ||
| | | 6 | ||
| | | 2 | ||
|- | |- | ||
| 125 | | 125 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_write_remote_file_long_name|lv1_write_remote_file_long_name]] | ||
| | | 6 | ||
| | | 2 | ||
|- | |- | ||
| 126 | | 126 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_remote_file_size_long_name|lv1_get_remote_file_size_long_name]] | ||
| | | 3 | ||
| | | 2 | ||
|- | |- | ||
| 127 | | 127 | ||
Line 689: | Line 689: | ||
| 135 | | 135 | ||
| [[HV Syscall Reference#lv1_undocumented_function_135|lv1_undocumented_function_135]] | | [[HV Syscall Reference#lv1_undocumented_function_135|lv1_undocumented_function_135]] | ||
| | | 3 | ||
| | | 2 | ||
|- | |- | ||
| 136 | | 136 | ||
| [[HV Syscall Reference#lv1_undocumented_function_136|lv1_undocumented_function_136]] | | [[HV Syscall Reference#lv1_undocumented_function_136|lv1_undocumented_function_136]] | ||
| | | 4 | ||
| ?? | | ?? | ||
|- | |- | ||
| 137 | | 137 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_disable_spe_execution_locked|lv1_disable_spe_execution_locked]] | ||
| ?? | | ?? | ||
| ?? | | ?? | ||
Line 1,028: | Line 1,028: | ||
|- | |- | ||
| 203 | | 203 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_status_of_ipspc_service|lv1_get_status_of_ipspc_service]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 204 | | 204 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_set_spe_privileged_state_1_registers|lv1_set_spe_privileged_state_1_registers]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 205 | | 205 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_interrupt_status_of_spe|lv1_get_interrupt_status_of_spe]] | ||
| | | | ||
| | | | ||
|- | |- | ||
| 206 | | 206 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_clear_interrupt_status_of_spe|lv1_clear_interrupt_status_of_spe]] | ||
| | | | ||
| | | | ||
Line 1,053: | Line 1,053: | ||
|- | |- | ||
| 208 | | 208 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_get_spe_privileged_state_1_registers|lv1_get_spe_privileged_state_1_registers]] | ||
| | | | ||
| | | | ||
Line 1,123: | Line 1,123: | ||
|- | |- | ||
| 222 | | 222 | ||
| [[HV Syscall Reference# | | [[HV Syscall Reference#lv1_gpu_context_uniomap|lv1_gpu_context_uniomap]] | ||
| 0 | | 0 | ||
| 0 | | 0 | ||
Line 1,298: | Line 1,298: | ||
| 0 | | 0 | ||
|- | |- | ||
| | | 0x1000000000000101 | ||
| [[HV Syscall Reference#lv1_put_characters_to_console|lv1_put_characters_to_console]] | |||
| | |||
| | |||
|- | |- | ||
| 0x1000000000000102 | |||
| [[HV Syscall Reference#lv1_get_characters_from_console|lv1_get_characters_from_console]] | |||
| | |||
| | |||
|- | |- | ||
| | | 0x1000000000000104 | ||
| | | [[HV Syscall Reference#lv1_insert_htab_entry3|lv1_insert_htab_entry3]] | ||
| | | | ||
| | |||
|- | |- | ||
| 20 | | 0x1000000000000105 | ||
| Poke - graf | | [[HV Syscall Reference#lv1_invalidate_htab_entry3|lv1_invalidate_htab_entry3]] | ||
| | | | ||
|- | | | ||
|} | |- | ||
| 0x1000000000000106 | |||
| [[HV Syscall Reference#lv1_update_htab_permission3|lv1_update_htab_permission3]] | |||
=== HV Calls Table Offset === | | | ||
(preliminary table, please help to fill in/expand) | | | ||
*The address of HV table is stored at -0x6FC8(HSPRG0). | |- | ||
*The address of HV table size is stored at -0x6FD0(HSPRG0). | | 0x1000000000000107 | ||
| [[HV Syscall Reference#lv1_clear_htab3|lv1_clear_htab3]] | |||
{| cellspacing="0" cellpadding="2" border="1" class="wikitable sortable" | | | ||
|- | | | ||
! Function !! Notes !! 3.55 offset !! 3.41 offset !! 3.15 offset !! 3.10 offset !! 3.01 offset !! 2.76 offset | |- | ||
|- | | 0x1000000000000111 | ||
| HV Syscall Table || Offset to HV Syscall Table from base HV addr. e.g. if you map HV to HV_LV2_BASE_ADDR the Table would be at HV_LV2_BASE_ADDR+0x00365888. || 0x00365888 || 0x00361b08 || 0x00363a08 || || || | | [[HV Syscall Reference#lv1_get_base_clock|lv1_get_base_clock]] | ||
|- | | | ||
| set_lv1_hvcall_table || This function sets pointer to HV Call Table and the size of HV Call Table in HSPRG context of a LPAR. || 0x002C2B4C || 0x002C02B4 || 0x002C1F04 || || || | | | ||
|- | |- | ||
| set_lv1_hvcall_table_entry_invalid || This function initializes an entry in HV Call Table to the Invalid HV Call function. || 0x002C2B70 || 0x002C02D8 || 0x002C1F28 || || || | | 0x1000000000000112 | ||
|- | | [[HV Syscall Reference#lv1_set_base_clock|lv1_set_base_clock]] | ||
| lv1_mm_call function table || Each entry is a pointer to a function TOC entry. Size = 256 || 0x00366088 || 0x00362308 || 0x00364208 || || || | | | ||
|- | | | ||
| lv1_map_htab || || || || 0x002D595C || || || | |- | ||
|- | | 0x1000000000000114 | ||
| lv1_unmap_htab || || || || 0x002D56B8 || || || | | [[HV Syscall Reference#lv1_get_frame_cycle|lv1_get_frame_cycle]] | ||
|- | | | ||
| lv1_allocate_memory || || || || 0x002D72F0 || || || | | | ||
|- | |- | ||
| lv1_release_memory || || || || 0x002D66A4 || || || | | 0x1000000000000115 | ||
|- | | [[HV Syscall Reference#lv1_disable_console|lv1_disable_console]] | ||
| lv1_query_logical_partition_address_region_info || || || || 0x002C9B24 || || || | | | ||
| | |||
|- | |||
| 0x1000000000000116 | |||
| [[HV Syscall Reference#lv1_disable_all_console|lv1_disable_all_console]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000117 | |||
| [[HV Syscall Reference#lv1_oneshot_timer|lv1_oneshot_timer]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000118 | |||
| [[HV Syscall Reference#lv1_set_dabr|lv1_set_dabr]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000119 | |||
| [[HV Syscall Reference#lv1_get_dabr|lv1_get_dabr]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000122 | |||
| [[HV Syscall Reference#lv1_set_priority_of_irq_outlet|lv1_set_priority_of_irq_outlet]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000128 | |||
| [[HV Syscall Reference#lv1_get_physical_spe_by_reservation_id|lv1_get_physical_spe_by_reservation_id]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000129 | |||
| [[HV Syscall Reference#lv1_get_spe_context|lv1_get_spe_context]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000012A | |||
| [[HV Syscall Reference#lv1_set_spe_context|lv1_set_spe_context]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000012E | |||
| [[HV Syscall Reference#lv1_downcount_of_interrupt|lv1_downcount_of_interrupt]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000012F | |||
| [[HV Syscall Reference#lv1_peek_spe_context|lv1_peek_spe_context]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000131 | |||
| [[HV Syscall Reference#lv1_read_bpa_register|lv1_read_bpa_register]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000132 | |||
| [[HV Syscall Reference#lv1_write_bpa_register|lv1_write_bpa_register]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000137 | |||
| [[HV Syscall Reference#lv1_map_context_table_of_spe|lv1_map_context_table_of_spe]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000138 | |||
| [[HV Syscall Reference#lv1_get_slb_for_logical_spe|lv1_get_slb_for_logical_spe]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000139 | |||
| [[HV Syscall Reference#lv1_set_slb_for_logical_spe|lv1_set_slb_for_logical_spe]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000150 | |||
| [[HV Syscall Reference#lv1_init_pm|lv1_init_pm]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000151 | |||
| [[HV Syscall Reference#lv1_set_pm_signal|lv1_set_pm_signal]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000152 | |||
| [[HV Syscall Reference#lv1_get_pm_signal|lv1_get_pm_signal]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000153 | |||
| [[HV Syscall Reference#lv1_set_pm_config|lv1_set_pm_config]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000154 | |||
| [[HV Syscall Reference#lv1_get_pm_config|lv1_get_pm_config]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000155 | |||
| [[HV Syscall Reference#lv1_get_inner_trace_data|lv1_get_inner_trace_data]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000156 | |||
| [[HV Syscall Reference#lv1_set_ext_trace_buffer|lv1_set_ext_trace_buffer]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000157 | |||
| [[HV Syscall Reference#lv1_get_ext_trace_buffer|lv1_get_ext_trace_buffer]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000158 | |||
| [[HV Syscall Reference#lv1_set_pm_interrupt|lv1_set_pm_interrupt]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000159 | |||
| [[HV Syscall Reference#lv1_get_pm_interrupt|lv1_get_pm_interrupt]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000160 | |||
| [[HV Syscall Reference#lv1_kick_pm|lv1_kick_pm]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000164 | |||
| [[HV Syscall Reference#lv1_construct_pm_context|lv1_construct_pm_context]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000165 | |||
| [[HV Syscall Reference#lv1_destruct_pm_context |lv1_destruct_pm_context ]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000170 | |||
| [[HV Syscall Reference#lv1_be_slow|lv1_be_slow]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000173 | |||
| [[HV Syscall Reference#lv1_assign_ipspc_server_connection_status_notification_port|lv1_assign_ipspc_server_connection_status_notification_port]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000174 | |||
| [[HV Syscall Reference#lv1_get_raid_of_physical_spe|lv1_get_raid_of_physical_spe]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000175 | |||
| [[HV Syscall Reference#lv1_set_physical_spe_to_rag|lv1_set_physical_spe_to_rag]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000176 | |||
| [[HV Syscall Reference#lv1_release_physical_spe_from_rag|lv1_release_physical_spe_from_rag]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000190 | |||
| [[HV Syscall Reference#lv1_rtc_read|lv1_rtc_read]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000191 | |||
| [[HV Syscall Reference#lv1_rtc_write|lv1_rtc_write]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000192 | |||
| [[HV Syscall Reference#lv1_eeprom_read|lv1_eeprom_read]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000193 | |||
| [[HV Syscall Reference#lv1_eeprom_write|lv1_eeprom_write]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000021C | |||
| [[HV Syscall Reference#lv1_start_hv_stats|lv1_start_hv_stats]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000021D | |||
| [[HV Syscall Reference#lv1_stop_hv_stats|lv1_stop_hv_stats]] | |||
| | |||
| | |||
|- | |||
| 0x100000000000021E | |||
| [[HV Syscall Reference#lv1_get_hv_stats|lv1_get_hv_stats]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000221 | |||
| [[HV Syscall Reference#lv1_get_hv_error_stats|lv1_get_hv_error_stats]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000224 | |||
| [[HV Syscall Reference#lv1_get_stats|lv1_get_stats]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000225 | |||
| [[HV Syscall Reference#lv1_get_heap_stats|lv1_get_heap_stats]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000227 | |||
| [[HV Syscall Reference#lv1_get_memory_stats|lv1_get_memory_stats]] | |||
| | |||
| | |||
|- | |||
| 0x1000000000000228 | |||
| [[HV Syscall Reference#lv1_get_memory_detail|lv1_get_memory_detail]] | |||
| | |||
| | |||
|- | |||
|} | |||
=== Unofficial Hypercalls added === | |||
{| class="wikitable sortable" | |||
|- | |||
!Number | |||
!Function - Added by | |||
!Notes | |||
|- | |||
| 16 | |||
| Peek - graf | |||
| | |||
|- | |||
| 20 | |||
| Poke - graf | |||
| | |||
|- | |||
|} | |||
=== HV Calls Table Offset === | |||
(preliminary table, please help to fill in/expand) | |||
*The address of HV table is stored at -0x6FC8(HSPRG0). | |||
*The address of HV table size is stored at -0x6FD0(HSPRG0). | |||
{| cellspacing="0" cellpadding="2" border="1" class="wikitable sortable" | |||
|- | |||
! Function !! Notes !! 3.55 offset !! 3.41 offset !! 3.15 offset !! 3.10 offset !! 3.01 offset !! 2.76 offset | |||
|- | |||
| HV Syscall Table || Offset to HV Syscall Table from base HV addr. e.g. if you map HV to HV_LV2_BASE_ADDR the Table would be at HV_LV2_BASE_ADDR+0x00365888. || 0x00365888 || 0x00361b08 || 0x00363a08 || || || | |||
|- | |||
| set_lv1_hvcall_table || This function sets pointer to HV Call Table and the size of HV Call Table in HSPRG context of a LPAR. || 0x002C2B4C || 0x002C02B4 || 0x002C1F04 || || || | |||
|- | |||
| set_lv1_hvcall_table_entry_invalid || This function initializes an entry in HV Call Table to the Invalid HV Call function. || 0x002C2B70 || 0x002C02D8 || 0x002C1F28 || || || | |||
|- | |||
| lv1_mm_call function table || Each entry is a pointer to a function TOC entry. Size = 256 || 0x00366088 || 0x00362308 || 0x00364208 || || || | |||
|- | |||
| lv1_map_htab || || || || 0x002D595C || || || | |||
|- | |||
| lv1_unmap_htab || || || || 0x002D56B8 || || || | |||
|- | |||
| lv1_allocate_memory || || || || 0x002D72F0 || || || | |||
|- | |||
| lv1_release_memory || || || || 0x002D66A4 || || || | |||
|- | |||
| lv1_query_logical_partition_address_region_info || || || || 0x002C9B24 || || || | |||
|- | |- | ||
| lv1_create_repository_node || || || || 0x002DD014 || || || | | lv1_create_repository_node || || || || 0x002DD014 || || || | ||
Line 1,436: | Line 1,711: | ||
|- | |- | ||
|} | |} | ||
=== other sources === | |||
http://web.archive.org/web/20100222062305/http://ps3hvdoc.wikispaces.com/lv1+calls+offsets | |||
{{Development}}<noinclude>[[Category:Main]]</noinclude> |
Latest revision as of 16:30, 2 August 2023
LV1/hvcall index[edit | edit source]
This page is used as an indexpage of the hypercalls listed @ HV Syscall Reference
HV Syscalls[edit | edit source]
Unofficial Hypercalls added[edit | edit source]
Number | Function - Added by | Notes |
---|---|---|
16 | Peek - graf | |
20 | Poke - graf |
HV Calls Table Offset[edit | edit source]
(preliminary table, please help to fill in/expand)
- The address of HV table is stored at -0x6FC8(HSPRG0).
- The address of HV table size is stored at -0x6FD0(HSPRG0).
Function | Notes | 3.55 offset | 3.41 offset | 3.15 offset | 3.10 offset | 3.01 offset | 2.76 offset |
---|---|---|---|---|---|---|---|
HV Syscall Table | Offset to HV Syscall Table from base HV addr. e.g. if you map HV to HV_LV2_BASE_ADDR the Table would be at HV_LV2_BASE_ADDR+0x00365888. | 0x00365888 | 0x00361b08 | 0x00363a08 | |||
set_lv1_hvcall_table | This function sets pointer to HV Call Table and the size of HV Call Table in HSPRG context of a LPAR. | 0x002C2B4C | 0x002C02B4 | 0x002C1F04 | |||
set_lv1_hvcall_table_entry_invalid | This function initializes an entry in HV Call Table to the Invalid HV Call function. | 0x002C2B70 | 0x002C02D8 | 0x002C1F28 | |||
lv1_mm_call function table | Each entry is a pointer to a function TOC entry. Size = 256 | 0x00366088 | 0x00362308 | 0x00364208 | |||
lv1_map_htab | 0x002D595C | ||||||
lv1_unmap_htab | 0x002D56B8 | ||||||
lv1_allocate_memory | 0x002D72F0 | ||||||
lv1_release_memory | 0x002D66A4 | ||||||
lv1_query_logical_partition_address_region_info | 0x002C9B24 | ||||||
lv1_create_repository_node | 0x002DD014 | ||||||
lv1_get_repository_node_value | 0x002DD260 | ||||||
lv1_undocumented_function_231 | 0x0030B560 |
HV Return Values[edit | edit source]
Status | Code |
---|---|
LV1_SUCCESS | 0 |
not used | -1 |
LV1_RESOURCE_SHORTAGE | -2 |
LV1_NO_PRIVILEGE | -3 |
LV1_DENIED_BY_POLICY | -4 |
LV1_ACCESS_VIOLATION | -5 |
LV1_NO_ENTRY | -6 |
LV1_DUPLICATE_ENTRY | -7 |
LV1_TYPE_MISMATCH | -8 |
LV1_BUSY | -9 |
LV1_EMPTY | -10 |
LV1_WRONG_STATE | -11 |
not used | -12 |
LV1_NO_MATCH | -13 |
LV1_ALREADY_CONNECTED | -14 |
LV1_UNSUPPORTED_PARAMETER_VALUE | -15 |
LV1_CONDITION_NOT_SATISFIED | -16 |
LV1_ILLEGAL_PARAMETER_VALUE | -17 |
LV1_BAD_OPTION | -18 |
LV1_IMPLEMENTATION_LIMITATION | -19 |
LV1_NOT_IMPLEMENTED | -20 |
LV1_INVALID_CLASS_ID | -21 |
LV1_CONSTRAINT_NOT_SATISFIED | -22 |
LV1_ALIGNMENT_ERROR | -23 |
LV1_INTERNAL_ERROR | -32768 |
other sources[edit | edit source]
http://web.archive.org/web/20100222062305/http://ps3hvdoc.wikispaces.com/lv1+calls+offsets