TianoCore EDK2 master
Loading...
Searching...
No Matches
SemihostLib.c File Reference
#include <Base.h>
#include <Library/BaseLib.h>
#include <Library/SemihostLib.h>
#include "SemihostPrivate.h"

Go to the source code of this file.

Functions

BOOLEAN SemihostConnectionSupported (VOID)
 
RETURN_STATUS SemihostFileOpen (IN CHAR8 *FileName, IN UINT32 Mode, OUT UINTN *FileHandle)
 
RETURN_STATUS SemihostFileSeek (IN UINTN FileHandle, IN UINTN Offset)
 
RETURN_STATUS SemihostFileRead (IN UINTN FileHandle, IN OUT UINTN *Length, OUT VOID *Buffer)
 
RETURN_STATUS SemihostFileWrite (IN UINTN FileHandle, IN OUT UINTN *Length, IN VOID *Buffer)
 
RETURN_STATUS SemihostFileClose (IN UINTN FileHandle)
 
RETURN_STATUS SemihostFileLength (IN UINTN FileHandle, OUT UINTN *Length)
 
RETURN_STATUS SemihostFileTmpName (OUT VOID *Buffer, IN UINT8 Identifier, IN UINTN Length)
 
RETURN_STATUS SemihostFileRemove (IN CHAR8 *FileName)
 
RETURN_STATUS SemihostFileRename (IN CHAR8 *FileName, IN CHAR8 *NewFileName)
 
CHAR8 SemihostReadCharacter (VOID)
 
VOID SemihostWriteCharacter (IN CHAR8 Character)
 
VOID SemihostWriteString (IN CHAR8 *String)
 
UINT32 SemihostSystem (IN CHAR8 *CommandLine)
 

Detailed Description

Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
Copyright (c) 2013 - 2021, Arm Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file SemihostLib.c.

Function Documentation

◆ SemihostConnectionSupported()

BOOLEAN SemihostConnectionSupported ( VOID  )

Definition at line 17 of file SemihostLib.c.

◆ SemihostFileClose()

RETURN_STATUS SemihostFileClose ( IN UINTN  FileHandle)

Definition at line 135 of file SemihostLib.c.

◆ SemihostFileLength()

RETURN_STATUS SemihostFileLength ( IN UINTN  FileHandle,
OUT UINTN Length 
)

Definition at line 147 of file SemihostLib.c.

◆ SemihostFileOpen()

RETURN_STATUS SemihostFileOpen ( IN CHAR8 *  FileName,
IN UINT32  Mode,
OUT UINTN FileHandle 
)

Definition at line 25 of file SemihostLib.c.

◆ SemihostFileRead()

RETURN_STATUS SemihostFileRead ( IN UINTN  FileHandle,
IN OUT UINTN Length,
OUT VOID *  Buffer 
)

Definition at line 81 of file SemihostLib.c.

◆ SemihostFileRemove()

RETURN_STATUS SemihostFileRemove ( IN CHAR8 *  FileName)

Definition at line 209 of file SemihostLib.c.

◆ SemihostFileRename()

RETURN_STATUS SemihostFileRename ( IN CHAR8 *  FileName,
IN CHAR8 *  NewFileName 
)

Rename a specified file.

Parameters
[in]FileNameName of the file to rename.
[in]NewFileNameThe new name of the file.
Return values
RETURN_SUCCESSFile Renamed
RETURN_INVALID_PARAMETEREither the current or the new name is not specified
RETURN_ABORTEDRename failed

Definition at line 245 of file SemihostLib.c.

◆ SemihostFileSeek()

RETURN_STATUS SemihostFileSeek ( IN UINTN  FileHandle,
IN UINTN  Offset 
)

Definition at line 58 of file SemihostLib.c.

◆ SemihostFileTmpName()

RETURN_STATUS SemihostFileTmpName ( OUT VOID *  Buffer,
IN UINT8  Identifier,
IN UINTN  Length 
)

Get a temporary name for a file from the host running the debug agent.

Parameters
[out]BufferPointer to the buffer where the temporary name has to be stored
[in]IdentifierFile name identifier (integer in the range 0 to 255)
[in]LengthLength of the buffer to store the temporary name
Return values
RETURN_SUCCESSTemporary name returned
RETURN_INVALID_PARAMETERInvalid buffer address
RETURN_ABORTEDTemporary name not returned

Definition at line 182 of file SemihostLib.c.

◆ SemihostFileWrite()

RETURN_STATUS SemihostFileWrite ( IN UINTN  FileHandle,
IN OUT UINTN Length,
IN VOID *  Buffer 
)

Definition at line 109 of file SemihostLib.c.

◆ SemihostReadCharacter()

CHAR8 SemihostReadCharacter ( VOID  )

Definition at line 272 of file SemihostLib.c.

◆ SemihostSystem()

UINT32 SemihostSystem ( IN CHAR8 *  CommandLine)

Definition at line 296 of file SemihostLib.c.

◆ SemihostWriteCharacter()

VOID SemihostWriteCharacter ( IN CHAR8  Character)

Definition at line 280 of file SemihostLib.c.

◆ SemihostWriteString()

VOID SemihostWriteString ( IN CHAR8 *  String)

Definition at line 288 of file SemihostLib.c.