/*
 * SPDX-FileCopyrightText: Copyright (C) Frickly Systems GmbH
 * SPDX-FileCopyrightText: Copyright (C) MBition GmbH
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#ifndef UDS_H
#define UDS_H

enum UDS_SID {
  UDS_SID_DIAGNOSTIC_SESSION_CONTROL = 0x10,
  UDS_SID_ECU_RESET = 0x11,
  UDS_SID_ROUTINE_CONTROL = 0x31,
  UDS_SID_REQUEST_DOWNLOAD = 0x34,
  UDS_SID_TRANSFER_DATA = 0x36,
  UDS_SID_REQUEST_TRANSFER_EXIT = 0x37,
  UDS_SID_NEGATIVE_RESPONSE = 0x7F,
};

enum UDS_NRC {
  UDS_NRC_GENERAL_REJECT = 0x10,
  UDS_NRC_SERVICE_NOT_SUPPORTED = 0x11,
  UDS_NRC_SUBFUNCTION_NOT_SUPPORTED = 0x12,
  UDS_NRC_INCORRECT_MESSAGE_LENGTH_OR_INVALID_FORMAT = 0x13,
  UDS_NRC_FAILURE_PREVENTS_EXECUTION_OF_REQUESTED_ACTION = 0x26,
  UDS_NRC_REQUEST_RECEIVED_RESPONSE_PENDING = 0x78,
};

enum UDS_RESET_TYPE {
  UDS_RESET_TYPE_HARD = 0x01,
};

#endif  // UDS_H
