PAL A Platform Abstraction Layer connects the mbed-client with the underlying platform.

- Main Page
- Data Structures
- Files

- File List
- Globals

Functions
pal_plat_update.h File Reference
`#include "pal_update.h"`

Go to the source code of this file.

## Functions
palStatus_t | pal_plat_imageInitAPI (palImageSignalEvent_t CBfunction)
palStatus_t | pal_plat_imageDeInit (void)
palStatus_t | pal_plat_imageGetMaxNumberOfImages (uint8_t *imageNumber)
palStatus_t | pal_plat_imageReserveSpace (palImageId_t imageId, size_t imageSize)
palStatus_t | pal_plat_imageSetHeader (palImageId_t imageId, palImageHeaderDeails_t *details)
palStatus_t | pal_plat_imageWrite (palImageId_t imageId, size_t offset, palConstBuffer_t *chunk)
palStatus_t | pal_plat_imageSetVersion (palImageId_t imageId, const palConstBuffer_t *version)
palStatus_t | pal_plat_imageFlush (palImageId_t imageId)
palStatus_t | pal_plat_imageGetDirectMemAccess (palImageId_t imageId, void **imagePtr, size_t *imageSizeInBytes)
palStatus_t | pal_plat_imageReadToBuffer (palImageId_t imageId, size_t offset, palBuffer_t *chunk)
palStatus_t | pal_plat_imageActivate (palImageId_t imageId)
palStatus_t | pal_plat_imageGetActiveHash (palBuffer_t *hash)
palStatus_t | pal_plat_imageGetActiveVersion (palBuffer_t *version)
palStatus_t | pal_plat_imageWriteHashToMemory (const palConstBuffer_t *const hashValue)

## Function Documentation

palStatus_t pal_plat_imageActivate | ( | palImageId_t | imageId | ) |

Set the imageId to be the active image (after device reset).

Parameters

  [in] | imageId | The image ID.

palStatus_t pal_plat_imageDeInit | ( | void |  | ) |

Clear all the resources used by the pal_update APIs.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageFlush | ( | palImageId_t | imageId | ) |

Flush the entire image data after writing ends for imageId.

Parameters

  [in] | imageId | The image ID.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageGetActiveHash | ( | palBuffer_t * | hash | ) |

Retrieve the hash value of the active image to hash buffer with max size hash maxBufferLength, and set the hash bufferLength to the hash size.

Parameters

  [out] | hash | The hash and actual size of hash read.

palStatus_t pal_plat_imageGetActiveVersion | ( | palBuffer_t * | version | ) |

Retrieve the version of the active image to version buffer with the size set to version bufferLength.

Parameters

  [out] | version | The version and actual size of version read.

palStatus_t pal_plat_imageGetDirectMemAccess | ( | palImageId_t | imageId,
|  | void ** | imagePtr,
|  | size_t * | imageSizeInBytes
| ) |  |

Verify whether the imageId is readable and set imagePtr to point to the beginning of the image in the memory and imageSizeInBytes to the image size. In case of failure sets imagePtr to NULL and returns the relevant palStatus_t error.

Parameters

  [in] | imageId | The image ID.
  [out] | imagePtr | A pointer to the start of the image.
  [out] | imageSizeInBytes | The size of the image.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageGetMaxNumberOfImages | ( | uint8_t * | imageNumber | ) |

Set the imageNumber to the number of available images. You can do this through hard coded define inside the linker script.

Parameters

  [out] | imageNumber | The total number of images the system supports.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageInitAPI | ( | palImageSignalEvent_t | CBfunction | ) |

Set the callback function that is called before the end of each API (except imageGetDirectMemAccess).

Parameters

  [in] | CBfunction | A pointer to the callback function.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageReadToBuffer | ( | palImageId_t | imageId,
|  | size_t | offset,
|  | palBuffer_t * | chunk
| ) |  |

Read the max of chunk maxBufferLength bytes from the imageId with relative offset and store it in chunk buffer. Set the chunk bufferLength value to the actual number of bytes read. Note: Please use this API in case the image is not directly accessible via the imageGetDirectMemAccess function.

Parameters

  [in] | imageId | The image ID.
  [in] | offset | The offset to start reading from.
  [out] | chunk | The data and actual bytes read.

palStatus_t pal_plat_imageReserveSpace | ( | palImageId_t | imageId,
|  | size_t | imageSize
| ) |  |

Claim space in the relevant storage region for imageId with the size of the image.

Parameters

  [in] | imageId | The image ID.
  [in] | imageSize | The size of the images.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageSetHeader | ( | palImageId_t | imageId,
|  | palImageHeaderDeails_t * | details
| ) |  |

Set up the details for the image header. The data is written when the image write is called for the first time.

Parameters

  [in] | imageId | The image ID.
  [in] | details | The data needed to build the image header.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageSetVersion | ( | palImageId_t | imageId,
|  | const palConstBuffer_t * | version
| ) |  |

Update the image version of imageId to version written in version buffer with version bufferLength.

Parameters

  [in] | imageId | The image ID.
  [in] | version | The image version and its length.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageWrite | ( | palImageId_t | imageId,
|  | size_t | offset,
|  | palConstBuffer_t * | chunk
| ) |  |

Write the data in the chunk buffer with the size written in chunk bufferLength in the location of imageId adding the relative offset.

Parameters

  [in] | imageId | The image ID.
  [in] | offset | the relative offset to write the data into
  [in] | chunk | A pointer to struct containing the data and the data length to write.

Returns
  The status in the form of palStatus_t; PAL_SUCCESS(0) in case of success, a negative value indicating a specific error code in case of failure.

palStatus_t pal_plat_imageWriteHashToMemory | ( | const palConstBuffer_t *const | hashValue | ) |

Write the dataId stored in dataBuffer to memory accessible to the bootloader. Currently, only HASH is available.

Parameters

  [in] | hashValue | The data and size of the HASH.