RA Flexible Software Package Documentation  Release v5.2.0

 
Block Media RAM (rm_block_media_ram)

Functions

fsp_err_t RM_BLOCK_MEDIA_RAM_Open (rm_block_media_ctrl_t *const p_ctrl, rm_block_media_cfg_t const *const p_cfg)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_MediaInit (rm_block_media_ctrl_t *const p_ctrl)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_Read (rm_block_media_ctrl_t *const p_ctrl, uint8_t *const p_dest_address, uint32_t const block_address, uint32_t const num_blocks)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_Write (rm_block_media_ctrl_t *const p_ctrl, uint8_t const *const p_src_address, uint32_t const block_address, uint32_t const num_blocks)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_Erase (rm_block_media_ctrl_t *const p_ctrl, uint32_t const block_address, uint32_t const num_blocks)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_StatusGet (rm_block_media_ctrl_t *const p_api_ctrl, rm_block_media_status_t *const p_status)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_InfoGet (rm_block_media_ctrl_t *const p_ctrl, rm_block_media_info_t *const p_info)
 
fsp_err_t RM_BLOCK_MEDIA_RAM_Close (rm_block_media_ctrl_t *const p_ctrl)
 

Detailed Description

Middleware that implements a block media interface on the media of your choice. This module implements the Block Media Interface.

Overview

Features

Note
When using PMSC driver in combination with this module, the API of this module is called from the PMSC driver.

Configuration

Build Time Configurations for rm_block_media_ram

The following build time configurations are defined in fsp_cfg/rm_block_media_ram_cfg.h:

ConfigurationOptionsDefaultDescription
Parameter Checking
  • Default (BSP)
  • Enabled
  • Disabled
Default (BSP) If selected code for parameter checking is included in the build.
RAM Media SizePlease enter the RAM media size.65536 Enter a RAM media size of 20K bytes or more.

Configurations for Storage > Block Media RAM Implementation (rm_block_media_ram)

This module can be added to the Stacks tab via New Stack > Storage > Block Media RAM Implementation (rm_block_media_ram).

ConfigurationOptionsDefaultDescription
NameName must be a valid C symbolg_rm_block_media0 Module name.
CallbackName must be a valid C symbolNULL A user callback function can be provided. If this callback function is provided, it will be called when a card is inserted or removed.

Note
Specify RAM media size of 20 Kbytes or more. This module cannot be used with an MCU that cannot allocate at least 20 Kbytes of RAM as media area.

Clock Configuration

This module has no required clock configurations.

Pin Configuration

This module does not use I/O pins.

Function Documentation

◆ RM_BLOCK_MEDIA_RAM_Open()

fsp_err_t RM_BLOCK_MEDIA_RAM_Open ( rm_block_media_ctrl_t *const  p_ctrl,
rm_block_media_cfg_t const *const  p_cfg 
)

Opens the module.

Implements rm_block_media_api_t::open().

Return values
FSP_SUCCESSModule is available and is now open.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_ALREADY_OPENModule has already been opened with this instance of the control structure.
Returns
See Common Error Codes or functions called by this function for other possible return codes.

◆ RM_BLOCK_MEDIA_RAM_MediaInit()

fsp_err_t RM_BLOCK_MEDIA_RAM_MediaInit ( rm_block_media_ctrl_t *const  p_ctrl)

Initializes the RAM media area.

Implements rm_block_media_api_t::mediaInit().

Return values
FSP_SUCCESSModule is initialized and ready to access the memory device.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.
Returns
See Common Error Codes or functions called by this function for other possible return codes.

◆ RM_BLOCK_MEDIA_RAM_Read()

fsp_err_t RM_BLOCK_MEDIA_RAM_Read ( rm_block_media_ctrl_t *const  p_ctrl,
uint8_t *const  p_dest_address,
uint32_t const  block_address,
uint32_t const  num_blocks 
)

Reads data from RAM media.

Implements rm_block_media_api_t::read().

This function blocks until the data is read into the destination buffer.

Return values
FSP_SUCCESSData read successfully.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.
FSP_ERR_NOT_INITIALIZEDModule has not been initialized.
Returns
See Common Error Codes or functions called by this function for other possible return codes.

◆ RM_BLOCK_MEDIA_RAM_Write()

fsp_err_t RM_BLOCK_MEDIA_RAM_Write ( rm_block_media_ctrl_t *const  p_ctrl,
uint8_t const *const  p_src_address,
uint32_t const  block_address,
uint32_t const  num_blocks 
)

Writes data to RAM media.

Implements rm_block_media_api_t::write().

This function blocks until the write operation completes.

Return values
FSP_SUCCESSWrite finished successfully.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.
FSP_ERR_NOT_INITIALIZEDModule has not been initialized.
Returns
See Common Error Codes or functions called by this function for other possible return codes.

◆ RM_BLOCK_MEDIA_RAM_Erase()

fsp_err_t RM_BLOCK_MEDIA_RAM_Erase ( rm_block_media_ctrl_t *const  p_ctrl,
uint32_t const  block_address,
uint32_t const  num_blocks 
)

Erases sectors of RAM media.

Implements rm_block_media_api_t::erase().

This function blocks until erase is complete.

Return values
FSP_SUCCESSErase operation requested.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.
FSP_ERR_NOT_INITIALIZEDModule has not been initialized.
Returns
See Common Error Codes or functions called by this function for other possible return codes.

◆ RM_BLOCK_MEDIA_RAM_StatusGet()

fsp_err_t RM_BLOCK_MEDIA_RAM_StatusGet ( rm_block_media_ctrl_t *const  p_api_ctrl,
rm_block_media_status_t *const  p_status 
)

Provides driver status.

Implements rm_block_media_api_t::statusGet().

Return values
FSP_SUCCESSStatus stored in p_status.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.

◆ RM_BLOCK_MEDIA_RAM_InfoGet()

fsp_err_t RM_BLOCK_MEDIA_RAM_InfoGet ( rm_block_media_ctrl_t *const  p_ctrl,
rm_block_media_info_t *const  p_info 
)

Retrieves module information.

Implements rm_block_media_api_t::infoGet().

Return values
FSP_SUCCESSErase operation requested.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.

◆ RM_BLOCK_MEDIA_RAM_Close()

fsp_err_t RM_BLOCK_MEDIA_RAM_Close ( rm_block_media_ctrl_t *const  p_ctrl)

Closes the module.

Implements rm_block_media_api_t::close().

Return values
FSP_SUCCESSSuccessful close.
FSP_ERR_ASSERTIONAn input parameter is invalid.
FSP_ERR_NOT_OPENModule is not open.