8.8.1.1.1.2.1. ArmAdvancedFeatures

interface ArmAdvancedFeatures()
listSupportedActions()

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

// Print the supported actions
const supportedActions = session.armAdvancedFeatures.listSupportedActions();
console.log("Supported actions:");
for (const action of supportedActions) {
       console.log(`  ${action.action} - ${action.description}`);
}
Returns:

The list of supported actions.

Return type:

ArmAdvancedFeaturesAction[]

performAction(action: string)

Performs the specified action.

session.armAdvancedFeatures.performAction("FlushAllCaches");
Parameters:
  • action (string) -- The unique identifier of the action to perform. Use listSupportedActions to get a list of supported actions.

Return type:

void

refresh()

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:

void