RTEMS 6.1-rc5
|
Data Structures | |
struct | _rdc_hardware_config |
RDC hardware configuration. More... | |
struct | _rdc_domain_assignment |
Master domain assignment. More... | |
struct | _rdc_periph_access_config |
Peripheral domain access permission configuration. More... | |
struct | _rdc_mem_access_config |
Memory region domain access control configuration. More... | |
struct | _rdc_mem_status |
Memory region access violation status. More... | |
Macros | |
#define | FSL_RDC_DRIVER_VERSION (MAKE_VERSION(2, 2, 0)) |
#define | RDC_ACCESS_POLICY(domainID, policy) (uint16_t)((uint16_t)(policy) << ((domainID)*2U)) |
Typedefs | |
typedef struct _rdc_hardware_config | rdc_hardware_config_t |
RDC hardware configuration. | |
typedef struct _rdc_domain_assignment | rdc_domain_assignment_t |
Master domain assignment. | |
typedef struct _rdc_periph_access_config | rdc_periph_access_config_t |
Peripheral domain access permission configuration. | |
typedef struct _rdc_mem_access_config | rdc_mem_access_config_t |
Memory region domain access control configuration. | |
typedef struct _rdc_mem_status | rdc_mem_status_t |
Memory region access violation status. | |
Enumerations | |
enum | _rdc_interrupts { kRDC_RestoreCompleteInterrupt = RDC_INTCTRL_RCI_EN_MASK } |
RDC interrupts. More... | |
enum | _rdc_flags { kRDC_PowerDownDomainOn = RDC_STAT_PDS_MASK } |
RDC status. More... | |
enum | _rdc_access_policy { kRDC_NoAccess = 0 , kRDC_WriteOnly = 1 , kRDC_ReadOnly = 2 , kRDC_ReadWrite = 3 } |
Access permission policy. More... | |
Functions | |
void | RDC_Init (RDC_Type *base) |
Initializes the RDC module. | |
void | RDC_Deinit (RDC_Type *base) |
De-initializes the RDC module. | |
void | RDC_GetHardwareConfig (RDC_Type *base, rdc_hardware_config_t *config) |
Gets the RDC hardware configuration. | |
void | RDC_SetMasterDomainAssignment (RDC_Type *base, rdc_master_t master, const rdc_domain_assignment_t *domainAssignment) |
Set master domain assignment. | |
void | RDC_GetDefaultMasterDomainAssignment (rdc_domain_assignment_t *domainAssignment) |
Get default master domain assignment. | |
void | RDC_SetPeriphAccessConfig (RDC_Type *base, const rdc_periph_access_config_t *config) |
Set peripheral access policy. | |
void | RDC_GetDefaultPeriphAccessConfig (rdc_periph_access_config_t *config) |
Get default peripheral access policy. | |
void | RDC_SetMemAccessConfig (RDC_Type *base, const rdc_mem_access_config_t *config) |
Set memory region access policy. | |
void | RDC_GetDefaultMemAccessConfig (rdc_mem_access_config_t *config) |
Get default memory region access policy. | |
void | RDC_GetMemViolationStatus (RDC_Type *base, rdc_mem_t mem, rdc_mem_status_t *status) |
Get the memory region violation status. | |
typedef struct _rdc_mem_access_config rdc_mem_access_config_t |
Memory region domain access control configuration.
Note that when setting the baseAddress and endAddress, should be aligned to the region resolution, see rdc_mem_t definitions.
enum _rdc_access_policy |
enum _rdc_flags |
enum _rdc_interrupts |
void RDC_Deinit | ( | RDC_Type * | base | ) |
De-initializes the RDC module.
This function disables the RDC clock.
base | RDC peripheral base address. |
brief De-initializes the RDC module.
This function disables the RDC clock.
param base RDC peripheral base address.
void RDC_GetDefaultMasterDomainAssignment | ( | rdc_domain_assignment_t * | domainAssignment | ) |
Get default master domain assignment.
The default configuration is:
domainAssignment | Pointer to the assignment. |
brief Get default master domain assignment
The default configuration is: code assignment->domainId = 0U; assignment->lock = 0U; endcode
param domainAssignment Pointer to the assignment.
void RDC_GetDefaultMemAccessConfig | ( | rdc_mem_access_config_t * | config | ) |
Get default memory region access policy.
The default configuration is:
config | Pointer to the policy configuration. |
brief Get default memory region access policy.
The default configuration is: code config->lock = false; config->baseAddress = 0; config->endAddress = 0; config->policy = RDC_ACCESS_POLICY(0, kRDC_ReadWrite) | RDC_ACCESS_POLICY(1, kRDC_ReadWrite) | RDC_ACCESS_POLICY(2, kRDC_ReadWrite) | RDC_ACCESS_POLICY(3, kRDC_ReadWrite); endcode
param config Pointer to the policy configuration.
void RDC_GetDefaultPeriphAccessConfig | ( | rdc_periph_access_config_t * | config | ) |
Get default peripheral access policy.
The default configuration is:
config | Pointer to the policy configuration. |
brief Get default peripheral access policy.
The default configuration is: code config->lock = false; config->enableSema = false; config->policy = RDC_ACCESS_POLICY(0, kRDC_ReadWrite) | RDC_ACCESS_POLICY(1, kRDC_ReadWrite) | RDC_ACCESS_POLICY(2, kRDC_ReadWrite) | RDC_ACCESS_POLICY(3, kRDC_ReadWrite); endcode
param config Pointer to the policy configuration.
void RDC_GetHardwareConfig | ( | RDC_Type * | base, |
rdc_hardware_config_t * | config | ||
) |
Gets the RDC hardware configuration.
This function gets the RDC hardware configurations, including number of bus masters, number of domains, number of memory regions and number of peripherals.
base | RDC peripheral base address. |
config | Pointer to the structure to get the configuration. |
brief Gets the RDC hardware configuration.
This function gets the RDC hardware configurations, including number of bus masters, number of domains, number of memory regions and number of peripherals.
param base RDC peripheral base address. param config Pointer to the structure to get the configuration.
void RDC_GetMemViolationStatus | ( | RDC_Type * | base, |
rdc_mem_t | mem, | ||
rdc_mem_status_t * | status | ||
) |
Get the memory region violation status.
The first access violation is captured. Subsequent violations are ignored until the status register is cleared. Contents are cleared upon reading the register. Clearing of contents occurs only when the status is read by the memory region's associated domain ID(s).
base | RDC peripheral base address. |
mem | Which memory region to get. |
status | The returned status. |
brief Get the memory region violation status.
The first access violation is captured. Subsequent violations are ignored until the status register is cleared. Contents are cleared upon reading the register. Clearing of contents occurs only when the status is read by the memory region's associated domain ID(s).
param base RDC peripheral base address. param mem Which memory region to get. param status The returned status.
void RDC_Init | ( | RDC_Type * | base | ) |
Initializes the RDC module.
This function enables the RDC clock.
base | RDC peripheral base address. |
brief Initializes the RDC module.
This function enables the RDC clock.
param base RDC peripheral base address.
void RDC_SetMasterDomainAssignment | ( | RDC_Type * | base, |
rdc_master_t | master, | ||
const rdc_domain_assignment_t * | domainAssignment | ||
) |
Set master domain assignment.
base | RDC peripheral base address. |
master | Which master to set. |
domainAssignment | Pointer to the assignment. |
brief Set master domain assignment
param base RDC peripheral base address. param master Which master to set. param domainAssignment Pointer to the assignment.
void RDC_SetMemAccessConfig | ( | RDC_Type * | base, |
const rdc_mem_access_config_t * | config | ||
) |
Set memory region access policy.
Note that when setting the baseAddress and endAddress in config
, should be aligned to the region resolution, see rdc_mem_t definitions.
base | RDC peripheral base address. |
config | Pointer to the policy configuration. |
brief Set memory region access policy.
Note that when setting the baseAddress and endAddress in p config, should be aligned to the region resolution, see rdc_mem_t definitions.
param base RDC peripheral base address. param config Pointer to the policy configuration.
void RDC_SetPeriphAccessConfig | ( | RDC_Type * | base, |
const rdc_periph_access_config_t * | config | ||
) |
Set peripheral access policy.
base | RDC peripheral base address. |
config | Pointer to the policy configuration. |
brief Set peripheral access policy.
param base RDC peripheral base address. param config Pointer to the policy configuration.