// Copyright (c) 2016 Qualcomm Technologies, Inc.  All Rights Reserved.
// Qualcomm Technologies Proprietary and Confidential.

interface ITestSMCInvoke {

  /**< Test failed */
  error ERROR_TEST_FAILED;
  /**< Test unknown, not executed */
  error ERROR_TEST_UNKNOWN;

  /**
   * Perform an SMCInvokeTest as specified by the passed string.
   *
   * @param [in] cmd       - String identifying the test with optional parameters
   * @param [out] result   - String with the test output (might be empty).
   *
   * @return Object_OK on success; Object_ERROR in case of test failure, Object_ERROR_INVALID.
   */
  method test(in buffer cmd, out buffer result);
};
