File QnnHtpDevice.h

Parent directory (include/QNN/HTP)

QNN HTP Device components.

Definition (include/QNN/HTP/QnnHtpDevice.h)

Detailed Description

This file defines structures and supplements File QnnDevice.h for QNN HTP device

Includes

Full File Listing

QNN HTP Device components.

This file defines structures and supplements QnnDevice.h for QNN HTP device

Defines

QNN_HTP_DEVICE_PERF_INFRASTRUCTURE_INIT

{                                             \

NULL,     /*createPowerConfigId*/           \

NULL, /*destroyPowerConfigId*/          \

NULL, /*setPowerConfig*/                \

NULL  /*setMemoryConfig*/               \

}


QnnHtpDevice_PerfInfrastructure_t initializer macro.

Typedefs

typedef struct _QnnDevice_DeviceInfoExtension_t QnnHtpDevice_DeviceInfoExtension_t

This structure is being used in QnnDevice_HardwareDeviceInfoV1_t QnnDevice_getPlatformInfo use this structure to list the supported device features/info

typedef struct _QnnDevice_Infrastructure_t QnnHtpDevice_Infrastructure_t

Enums

enum QnnHtpDevice_Arch_t

This is used to represent the HTP hardware architecture Since QnnDevice only supports V68 or newer, using legacy ARCH will result in error

Values:

enumerator QNN_HTP_DEVICE_ARCH_NONE = 0
enumerator QNN_HTP_DEVICE_ARCH_V68 = 68
enumerator QNN_HTP_DEVICE_ARCH_V69 = 69
enumerator QNN_HTP_DEVICE_ARCH_V73 = 73
enumerator QNN_HTP_DEVICE_ARCH_V75 = 75
enumerator QNN_HTP_DEVICE_ARCH_V79 = 79
enumerator QNN_HTP_DEVICE_ARCH_V81 = 81
enumerator QNN_HTP_DEVICE_ARCH_UNKNOWN = 0x7fffffff
enum QnnHtpDevice_ConfigOption_t

enum to list what custom configure is available.

Values:

enumerator QNN_HTP_DEVICE_CONFIG_OPTION_SOC = 0
enumerator QNN_HTP_DEVICE_CONFIG_OPTION_ARCH = 1
enumerator QNN_HTP_DEVICE_CONFIG_OPTION_SIGNEDPD = 2
enumerator QNN_HTP_DEVICE_CONFIG_OPTION_SECUREPD = 3
enumerator QNN_HTP_DEVICE_CONFIG_OPTION_UNKNOWN = 0x7fffffff
enum QnnHtpDevice_DeviceType_t

Values:

enumerator QNN_HTP_DEVICE_TYPE_ON_CHIP = 0
enumerator QNN_HTP_DEVICE_TYPE_UNKNOWN = 0x7fffffff
enum QnnHtpDevice_CoreType_t

QNN HTP Device core type This enumeration provides information about the core type inside the SOC.

For online operation, the caller should retrieve this information from QnnDevice_getPlatformInfo. For offline operation, the caller needs to create a QnnDevice_CoreInfo_t with the correct core type, and then use it to create the QnnDevice_PlatformInfo_t.

Values:

enumerator QNN_HTP_CORE_TYPE_NSP = 0
enumerator QNN_HTP_CORE_TYPE_HPASS = 1
enumerator QNN_HTP_CORE_TYPE_MAX
enumerator QNN_HTP_CORE_TYPE_UNKNOWN = 0x7fffffff
enum QnnHtpDevice_InfrastructureType_t

Values:

enumerator QNN_HTP_DEVICE_INFRASTRUCTURE_TYPE_PERF = 0
enumerator QNN_HTP_DEVICE_INFRASTRUCTURE_TYPE_UNKNOWN = 0x7fffffff
struct QnnHtpDevice_Minimum_Arch_t
#include <QnnHtpDevice.h>

data struture to configure a device to set the minimum HTP Arch the driver will use ops that compatible to this HTP Arch

Public Members

uint32_t deviceId
QnnHtpDevice_Arch_t arch
struct QnnHtpDevice_UseSignedProcessDomain_t
#include <QnnHtpDevice.h>

data struture to configure a device to running in Signed/unsigned Domain.

Public Members

uint32_t deviceId
bool useSignedProcessDomain
struct QnnHtpDevice_UseSecureProcessDomain_t
#include <QnnHtpDevice.h>

data struture to configure a device to running in Secure/normal Domain. running in secure process domain (SecurePD) is only supported in V81 and SecurePD is part of add-on SDK.

Public Members

uint32_t deviceId
bool useSecureProcessDomain
struct QnnHtpDevice_CustomConfig_t
#include <QnnHtpDevice.h>

Data structure for custom configure.

Public Members

QnnHtpDevice_ConfigOption_t option
union unnamed
#include <QnnHtpDevice.h>

Public Members

uint32_t socModel
QnnHtpDevice_Minimum_Arch_t arch
QnnHtpDevice_UseSignedProcessDomain_t useSignedProcessDomain
QnnHtpDevice_UseSecureProcessDomain_t useSecureProcessDomain
struct QnnHtpDevice_OnChipDeviceInfoExtension_t
#include <QnnHtpDevice.h>

This structure provides info about the NSP device inside SoC For online operation, caller should get these info from QnnDevice_getPlatformInfo For offline operation, caller need to create this structure and filling the correct information for QnnDevice_create

Public Members

size_t vtcmSize
uint32_t socModel
bool signedPdSupport
bool dlbcSupport
QnnHtpDevice_Arch_t arch
struct _QnnDevice_DeviceInfoExtension_t
#include <QnnGpuDevice.h>
struct QnnHtpDevice_PerfInfrastructure_t
#include <QnnHtpDevice.h>

QNN HTP Device PerfInfrastructure specialization structure. Objects of this type are to be referenced through QnnDevice_getInfrastructure.

Contains function pointers for each interface method for Htp PerfInfrastructure.

struct _QnnDevice_Infrastructure_t
#include <QnnAipDevice.h>