RTEMS  5.0.0
Macros | Functions | Variables
powerpc-utility.h File Reference

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. More...
 
#define PPC_SET_SPECIAL_PURPOSE_REGISTER(spr, val)
 Sets the Special Purpose Register with number spr to the value in val. More...
 
#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. More...
 
#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. More...
 
#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. More...
 
#define PPC_THREAD_MGMT_REGISTER(tmr)
 Returns the value of the Thread Management Register with number tmr. More...
 
#define PPC_SET_THREAD_MGMT_REGISTER(tmr, val)
 Sets the Thread Management Register with number tmr to the value in val. More...
 
#define PPC_DEVICE_CONTROL_REGISTER(dcr)
 Returns the value of the Device Control Register with number dcr. More...
 
#define PPC_SET_DEVICE_CONTROL_REGISTER(dcr, val)
 Sets the Device Control Register with number dcr to the value in val. More...
 
#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. More...
 
#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. More...
 
#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. More...
 

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.