8.8.1.1.2.2.1. ArmAdvancedFeatures

class ArmAdvancedFeatures
listSupportedActions() list[ArmAdvancedFeaturesAction]

Returns a list of all supported actions. If no actions are supported, the list is empty.

# Print the supported actions
supportedActions = session.armAdvancedFeatures.listSupportedActions()
print("Supported actions:")
for action in supportedActions:
    print(f"  {action['action']} - {action['description']}")
Returns:

The list of supported actions.

Return type:

list[ArmAdvancedFeaturesAction]

performAction(action) None

Performs the specified action.

session.armAdvancedFeatures.performAction("FlushAllCaches")
Parameters:

action (str) -- The unique identifier of the action to perform. Use listSupportedActions() to get a list of supported actions.

Return type:

None

refresh() None

The Arm Advanced Features settings displayed in the some GUIs can become out-of-sync with the state of the target's registers. This function forces all settings to update themselves to reflect the target's current state.

A script should not need to call this prior to calling querying the setting's value with something like get().

session.settings.set("MPUEnabled", False)

# Suppose we are on Cortex R5
# Enable MPU by writing to the register directly
SCTLR = "CP15_SYSTEM_CONTROL"
session.registers.write(SCTLR, session.registers.read(SCTLR) | 1)

# Settings in tools like the CCS IDE may not reflect the updated
# register value yet.

session.armAdvancedFeatures.refresh()

# Settings should now reflect the updated values
Return type:

None