| Samsung Internal API reference 2.0

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

Enumerations | Functions
RPMB API
Samsung Internal API

## Enumerations
enum | { RPMB_TYPE_BLOCK = 0, RPMB_TYPE_BYTE = 1 }
| RPMB I/O type. More...

## Functions
TEE_Result | TEES_RPMBRead (uint32_t partition, uint32_t offset, uint8_t *data, uint32_t size, uint8_t type)
| Read data from RPMB Storage. More...
TEE_Result | TEES_RPMBWrite (uint32_t partition, uint32_t offset, const uint8_t *data, uint32_t size, uint8_t type)
| Write data to RPMB Storage. More...
TEE_Result | TEES_RPMBCheckEnable (void)
| Check RPMB availability. More...

## Detailed Description

Provides set of functions to use(read/write) RPMB storage.

## Enumeration Type Documentation

anonymous enum

`#include <rpmb.h>`

RPMB I/O type.

Enumerator
RPMB_TYPE_BLOCK | block I/O
RPMB_TYPE_BYTE | byte I/O

## Function Documentation

TEE_Result TEES_RPMBCheckEnable | ( | void |  | ) |

`#include <rpmb.h>`

Check RPMB availability.

Return values

  TEE_SUCCESS | in case of success
  error | code in case of errors TEE_ERROR_NOT_IMPLEMENTED - not implemented on current device TEE_ERROR_NOT_SUPPORTED - RPMB Key is not programmed (RPMB is disabled) other implementation-defined error codes are possible

TEE_Result TEES_RPMBRead | ( | uint32_t | partition,
|  | uint32_t | offset,
|  | uint8_t * | data,
|  | uint32_t | size,
|  | uint8_t | type
| ) |  |

`#include <rpmb.h>`

Read data from RPMB Storage.

Parameters

  [in] | partition | Partition number of RPMB storage
  [in] | offset | Offset value of data. The start address is 0 in each partition
  [out] | data | Buffer for data which read from RPMB
  [in] | size | Size of data to be read from RPMB
  [in] | type | rpmb data size type (block or byte)

Return values

  TEE_SUCCESS | in case of success
  error | code in case of errors

TEE_Result TEES_RPMBWrite | ( | uint32_t | partition,
|  | uint32_t | offset,
|  | const uint8_t * | data,
|  | uint32_t | size,
|  | uint8_t | type
| ) |  |

`#include <rpmb.h>`

Write data to RPMB Storage.

Parameters

  [in] | partition | Partition number of RPMB storage.
  [in] | offset | Offset value of data. The start address is 0 in each partition
  [in] | data | Buffer for data which write to RPMB
  [in] | size | Size of data to be write to RPMB
  [in] | type | rpmb data size type (block or byte)

Return values

  TEE_SUCCESS | in case of success
  error | code in case of errors