IOCTL
Jump to navigation
Jump to search
What is it?
int ioctl(int fd, unsigned long request, ...); The ioctl() system call manipulates the underlying device parameters of special files. In particular, many operating characteristics of character special files (e.g., terminals) may be controlled with ioctl() requests. The argument fd must be an open file descriptor. The second argument is a device-dependent request code. The third argument is an untyped pointer to memory. It's traditionally char *argp (from the days before void * was valid C), and will be so named for this discussion. An ioctl() request has encoded in it whether the argument is an in parameter or out parameter, and the size of the argument argp in bytes. Macros and defines used in specifying an ioctl() request are located in the file <sys/ioctl.h>.
How many exist? Which ones are they?
PUP
C0184401 = decrypt_pup_header C0184402 = verify_pup_additional_sign C0184403 = verify_pup_watermark C0184404 = decrypt_pup_segment C0284405 = decrypt_pup_segment_block
DMEM
C0288001 allocate_direct_memory 80108002 release_direct_memory 80188003 set_direct_memory_type C0208004 get_direct_memory_type 2000800B clear_game_direct_memory C018800E (suspend/resume)_direct_memory_release C018800F protect_direct_memory C0288010 allocate_direct_memory_for_mini_app C0288011 allocate_main_direct_memory 80288012 direct_memory_query 80108015 checked_release_direct_memory
FAN
C0068F06 get_fan_manual_duty
POWER
C0019901 icc_notify_boot_status C0099902 icc_get_system_powerup_cause C1009903 icc_read_boot_message C00C9904 icc_power_get_number_of_boot_shutdown C0109905 icc_power_get_operating_time 20009906 icc_power_set_bootup_at_poweron
PFS
80709101 pfs_format 80049102 pfs_sbram_clear_useflag 80389103 pfs_img_compaction 20009104 pfs_img_compaction_cancel 80289105 pfs_sbram_write_metadata C0389106 pfs_img_clean 80389107 pfs_img_clean_cancel C0309108 pfs_sbram_get_header 20009109 pfs_sbram_init
CONFIGURATION
C0029203 icc_configuration_get_cpu_info_bit 80029204 icc_configuration_set_cpu_info_bit 80019206 set_download_mode 40019207 icc_configuration_get_cp_mode 80019208 icc_configuration_set_cp_mode
INDICATOR
80019501 icc_indicator_set_buzzer 801A9502 icc_indicator_set_led 401A9503 icc_indicator_get_led 80829504 icc_indicator_set_dynamic_led 40829505 icc_indicator_get_dynamic_led 20009506 icc_indicator_set_dynamic_led_boot 20009507 icc_indicator_set_dynamic_led_shutdown 20009508 indicator_standby 20009509 indicator_standby_shutdown 2000950A icc_indicator_set_dynamic_led_standby_boot
NVS
20009701 nvs_flush
SC CONFIG
C0019B01 icc_sc_configuration_set_code_flash_sec
DEVICE POWER
80019C01 icc_device_power_control_wlan_bt_power_state 40019C02 icc_device_power_get_wlan_bt_power_state 80019C03 icc_device_power_control_usb_power_state 40019C04 icc_device_power_get_usb_power_state 80019C05 icc_device_power_control_hdd_power_state 40019C06 icc_device_power_get_hdd_power_state 80019C07 icc_device_power_control_bd_power_state 40019C08 icc_device_power_get_bd_power_state