X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Finclude%2Facess.h;h=87aef6ecbf1defb44812d67f0494c9b74e81aebc;hb=bd5e8623e509a443d7d6e1b959b79f85b0c285b7;hp=5b9effbfbd7a155a88dce5ad88e88c86ac13b35c;hpb=7f906c4c7c6828b5ed6f210453c8aff28cfa5942;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/include/acess.h b/KernelLand/Kernel/include/acess.h index 5b9effbf..87aef6ec 100644 --- a/KernelLand/Kernel/include/acess.h +++ b/KernelLand/Kernel/include/acess.h @@ -252,7 +252,7 @@ extern int MM_Map(tVAddr VAddr, tPAddr PAddr); * \param Addr Address of the page to get the physical address of * \return Physical page mapped at \a Addr */ -extern tPAddr MM_GetPhysAddr(tVAddr Addr); +extern tPAddr MM_GetPhysAddr(const void *Addr); /** * \brief Set the access flags on a page * \param VAddr Virtual address of the page @@ -278,12 +278,12 @@ extern Uint MM_GetFlags(tVAddr VAddr); * \return Virtual address of page in memory * \note There is only a limited ammount of slots avaliable */ -extern tVAddr MM_MapTemp(tPAddr PAddr); +extern void *MM_MapTemp(tPAddr PAddr); /** * \brief Free a temporarily mapped page * \param VAddr Allocate virtual addres of page */ -extern void MM_FreeTemp(tVAddr VAddr); +extern void MM_FreeTemp(void *Ptr); /** * \brief Map a physcal address range into the virtual address space * \param PAddr Physical address to map in @@ -386,16 +386,21 @@ extern int CheckMem(const void *Mem, int Num); #ifdef __BIG_ENDIAN__ #define LittleEndian16(_val) SwapEndian16(_val) #define LittleEndian32(_val) SwapEndian32(_val) +#define LittleEndian64(_val) SwapEndian32(_val) #define BigEndian16(_val) (_val) #define BigEndian32(_val) (_val) +#define BigEndian64(_val) (_val) #else #define LittleEndian16(_val) (_val) #define LittleEndian32(_val) (_val) +#define LittleEndian64(_val) (_val) #define BigEndian16(_val) SwapEndian16(_val) #define BigEndian32(_val) SwapEndian32(_val) +#define BigEndian64(_val) SwapEndian64(_val) #endif extern Uint16 SwapEndian16(Uint16 Val); extern Uint32 SwapEndian32(Uint32 Val); +extern Uint64 SwapEndian64(Uint64 Val); /** * \} */ @@ -437,6 +442,8 @@ extern int UnHex(Uint8 *Dest, size_t DestSize, const char *SourceString); * \} */ +#include + /** * \brief Get a random number * \return Random number @@ -477,10 +484,12 @@ extern int Module_LoadFile(const char *Path, const char *ArgStr); */ /** * \brief Create a timestamp from a time + * \note Days/Months are zero-based (e.g. December is 11, and has a day range of 0-30) */ extern tTime timestamp(int sec, int mins, int hrs, int day, int month, int year); /** * \brief Extract the date/time from a timestamp + * \note Days/Months are zero-based (e.g. December is 11, and has a day range of 0-30) */ extern void format_date(tTime TS, int *year, int *month, int *day, int *hrs, int *mins, int *sec, int *ms); /** @@ -504,6 +513,7 @@ extern void Threads_Exit(int TID, int Status); extern void Threads_Yield(void); extern void Threads_Sleep(void); extern int Threads_WakeTID(tTID Thread); +extern tPGID Threads_GetPGID(void); extern tPID Threads_GetPID(void); extern tTID Threads_GetTID(void); extern tUID Threads_GetUID(void);