RTEMS: bsps/powerpc/include/libcpu/powerpc-utility.h File Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Macros | Functions | Variables
powerpc-utility.h File Reference
Board Support Packages » PowerPC » Shared

General purpose assembler macros, linker command file support and some inline functions for direct register access. More...

`#include <rtems.h>`
`#include <rtems/score/cpu.h>`
`#include <rtems/powerpc/registers.h>`
`#include <rtems/powerpc/powerpc.h>`
`#include <rtems/bspIo.h>`
`#include <libcpu/cpuIdent.h>`

Go to the source code of this file.

## Macros
#define | LINKER_SYMBOL(sym) extern char sym [];
#define | CPU_Get_timebase_low(_value) __asm__ volatile( "mfspr %0,268" : "=r" (_value) )
#define | rtems_bsp_delay(_microseconds)
#define | rtems_bsp_delay_in_bus_cycles(_cycles)
#define | PPC_Set_decrementer(_clicks)
#define | PPC_Get_decrementer(_clicks) __asm__ volatile( "mfdec %0" : "=r" (_clicks) )
#define | PPC_STRINGOF(x) #x
| Preprocessor magic for stringification of x.
#define | PPC_SPECIAL_PURPOSE_REGISTER(spr)
| Returns the value of the Special Purpose Register with number spr.
#define | PPC_SET_SPECIAL_PURPOSE_REGISTER(spr, val)
| Sets the Special Purpose Register with number spr to the value in val.
#define | PPC_SET_SPECIAL_PURPOSE_REGISTER_BITS(spr, bits)
| Sets in the Special Purpose Register with number spr all bits which are set in bits.
#define | PPC_SET_SPECIAL_PURPOSE_REGISTER_BITS_MASKED(spr, bits, mask)
| Sets in the Special Purpose Register with number spr all bits which are set in bits. The previous register value will be masked with mask.
#define | PPC_CLEAR_SPECIAL_PURPOSE_REGISTER_BITS(spr, bits)
| Clears in the Special Purpose Register with number spr all bits which are set in bits.
#define | PPC_THREAD_MGMT_REGISTER(tmr)
| Returns the value of the Thread Management Register with number tmr.
#define | PPC_SET_THREAD_MGMT_REGISTER(tmr, val)
| Sets the Thread Management Register with number tmr to the value in val.
#define | PPC_DEVICE_CONTROL_REGISTER(dcr)
| Returns the value of the Device Control Register with number dcr.
#define | PPC_SET_DEVICE_CONTROL_REGISTER(dcr, val)
| Sets the Device Control Register with number dcr to the value in val.
#define | PPC_SET_DEVICE_CONTROL_REGISTER_BITS(dcr, bits)
| Sets in the Device Control Register with number dcr all bits which are set in bits.
#define | PPC_SET_DEVICE_CONTROL_REGISTER_BITS_MASKED(dcr, bits, mask)
| Sets in the Device Control Register with number dcr all bits which are set in bits. The previous register value will be masked with mask.
#define | PPC_CLEAR_DEVICE_CONTROL_REGISTER_BITS(dcr, bits)
| Clears in the Device Control Register with number dcr all bits which are set in bits.

## Functions
void | ppc_code_copy (void *dest, const void *src, size_t n)
void | printBAT (int bat, uint32_t upper, uint32_t lower)
void | ShowBATS (void)

## Variables
uint32_t | bsp_clicks_per_usec

## Detailed Description

General purpose assembler macros, linker command file support and some inline functions for direct register access.