3.1. Enumerations

3.1.1. hm_dvfs_mode

enum hm_dvfs_mode {
  HM_DVFS_PERFORMANCE = 0,
  HM_DVFS_ONDEMAND,
  HM_DVFS_USERSPACE,
  HM_DVFS_INDEPENDENT,
  HM_DVFS_EFFICIENCY_PREFILL,
  HM_DVFS_EFFICIENCY_DECODE,
  HM_DVFS_POWERSAVE_PREFILL,
  HM_DVFS_POWERSAVE_DECODE,
  HM_DVFS_MODE_MAX
};
enum hm_dvfs_mode

Enumerated type indicating the DVFS (Dynamic Voltage and Frequency Scaling) mode used for the specified Houmo logical device.

DVFS controls the operating frequency of IPU cores to balance performance and power consumption.

Values:

enumerator HM_DVFS_PERFORMANCE

IPU cores always run at the device's maximum supported frequency. This is the default mode.

enumerator HM_DVFS_ONDEMAND

IPU core frequency is dynamically adjusted based on real-time utilization, within the device's supported frequency range.

enumerator HM_DVFS_USERSPACE

Internal use only. IPU core frequency specified by the user. CPU/DDR/NOC frequency depends on IPU frequency.

enumerator HM_DVFS_INDEPENDENT

Internal use only. IPU/CPU/DDR/NOC core frequency specified by the user.

enumerator HM_DVFS_EFFICIENCY_PREFILL

Internal use only. IPU core frequency optimized for efficiency during prefill operations.

enumerator HM_DVFS_EFFICIENCY_DECODE

Internal use only. IPU core frequency optimized for efficiency during decode operations.

enumerator HM_DVFS_POWERSAVE_PREFILL

Internal use only. IPU core frequency optimized for power saving during prefill operations.

enumerator HM_DVFS_POWERSAVE_DECODE

Internal use only. IPU core frequency optimized for power saving during decode operations.

enumerator HM_DVFS_MODE_MAX

Maximum result code.

3.1.2. hm_fw_upgrade_result_t

enum hm_fw_upgrade_result_t {
  HM_FW_UPGRADE_SUCCESS = 0,
  HM_FW_UPGRADE_INVALID_PARAM,
  HM_FW_UPGRADE_MEM_ALLOC_FAILED,
  HM_FW_UPGRADE_FILE_OPER_FAILED,
  HM_FW_UPGRADE_INVALID_HEADER,
  HM_FW_UPGRADE_INVALID_MAGIC,
  HM_FW_UPGRADE_INVALID_META,
  HM_FW_UPGRADE_INVALID_IMAGE_SIZE,
  HM_FW_UPGRADE_INVALID_IMAGE_CRC,
  HM_FW_UPGRADE_DEVICE_OPER_FAILED,
  HM_FW_UPGRADE_FLASH_PROGRAM_FAILED,
  HM_FW_UPGRADE_THREAD_ERROR,
  HM_FW_UPGRADE_BUSY,
  HM_FW_UPGRADE_RESULT_MAX
};
enum hm_fw_upgrade_result_t

Enumerated type indicating the status of a firmware upgrade operation.

Values:

enumerator HM_FW_UPGRADE_SUCCESS

Upgrade operation succeeded.

enumerator HM_FW_UPGRADE_INVALID_PARAM

Invalid input parameter. Ensure all input values are valid.

enumerator HM_FW_UPGRADE_MEM_ALLOC_FAILED

Memory allocation failed during upgrade. Ensure enough memory is available for the firmware upgrade.

enumerator HM_FW_UPGRADE_FILE_OPER_FAILED

Failed to read/stat/seek firmware image file. Verify the permission of the firmware image.

enumerator HM_FW_UPGRADE_INVALID_HEADER

Invalid firmware image header. Verify the firmware header format and integrity.

enumerator HM_FW_UPGRADE_INVALID_MAGIC

Invalid firmware magic number. Check firmware compatibility and integrity.

enumerator HM_FW_UPGRADE_INVALID_META

Invalid metadata partition index. Check firmware integrity.

enumerator HM_FW_UPGRADE_INVALID_IMAGE_SIZE

Invalid partition image size in firmware. Check firmware integrity.

enumerator HM_FW_UPGRADE_INVALID_IMAGE_CRC

Invalid firmware image CRC checksum. The firmware may be corrupted or tampered; verify the firmware integrity.

enumerator HM_FW_UPGRADE_DEVICE_OPER_FAILED

Device operation failed (e.g., read memory error). Check device connection, power supply, and device status.

enumerator HM_FW_UPGRADE_FLASH_PROGRAM_FAILED

Failed to program the firmware image into the device Flash memory. Verify device connection and available Flash space.

enumerator HM_FW_UPGRADE_THREAD_ERROR

Failed to create the firmware upgrade thread.

enumerator HM_FW_UPGRADE_BUSY

A firmware upgrade operation is in progress.

enumerator HM_FW_UPGRADE_RESULT_MAX

Maximum result code (invalid, used for boundary checking only).