Platform Objects

Introduction

The Platform module provides a common interface to platform-specific functionality, such as memory allocation, resource locking, interrupts, signalling, and others.

The Platform object provides low-level platform-specific functionality and depends upon the combination of the operating system and the C compiler used for development. The Platform module was written to provide platform-independent access functions for use by the MPI. Unless your application needs to be written for compatibility with different platforms, MEI encourages the use of OS-specific functions. If an MEIPlatform object handle is required, one should obtain this handle from the MPIControl method meiControlPlatform.

WARNING!
Do NOT attempt to use the (intentionally undocumented) method, meiPlatformCreate(). Using this method will interfere with the inner workings of the MPI.

The meiObjectGive/Take(...) methods all use the meiPlatformLockGive/Take(...) methods. When you take a lock, you take exclusive access to the resource (i.e., the section of XMP firmware memory associated with that Object). When you give a lock, you release (give up) that exclusive access. Think of it as TakeAccessOf and GiveUpAccess.

 

Methods

  meiPlatformAlloc Allocate system memory.
  meiPlatformAssertSet Set an assertion handling function to be used by the MPI library.
  meiPlatformAtof Convert a numeric string to a double.
  meiPlatformAtol Convert a numeric string to a long.
  mpiPlatformControllerCheck Checks condition of controller.
  meiPlatformExmpTempGet  
  meiPlatformExmpTempInit  
  meiPlatformFileClose Close a file handle.
  meiPlatformFileOpen Open a file handle.
  meiPlatformFileRead Read data from a file handle created by meiPlatformFileOpen.
  meiPlatformFileWrite Writes data to a file whose handle was created by meiPlatformFileOpen.
  meiPlatformFirmwareAddress16To32  
  meiPlatformFirmwareAddress32To16  
  meiPlatformFirmwareAddress32To64  
  meiPlatformFirmwareAddress64To32  
  meiPlatformFree Free system memory.
  meiPlatformHostAddress32To64  
  meiPlatformHostAddress64To32  
  meiPlatformKey Return an input character if an input character is available.
  meiPlatformMemoryGet64  
  meiPlatformMemorySet64  
  meiPlatformMemoryToFirmware Convert a host memory address to a controller memory address.
  meiPlatformMemoryToHost Covert a controller memory address to a host memory address.
  meiPlatformSleep Put the current thread to sleep for the number of milliseconds specified.
  meiPlatformProcessId Return the process identification number of the current process.
  meiPlatformTimerCount Write to ticks the current timer count.
  meiPlatformTimerFrequency Write to frequency the timer frequency of the current platform.
  meiPlatformTrace Display printf(...)-style trace information
  meiPlatformTraceEol Set the end-of-line (eol) to be used by meiPlatformTrace(...).
  meiPlatformTraceFile Redirect trace output.
  meiPlatformTraceFunction Display the trace output.
  meiPlatformWord64Orient  

 

Data Types

  MEIPlatformBoardType  
  MEIPlatformFileMode  
  MEIPlatformInfo  
  MEIPlatformMessage  

 

Constants

  MEIPlatformControlCountMax  
  MEIPlatformInfoCHAR_MAX