diff options
author | Reiko Asakura | 2020-07-23 21:34:32 -0400 |
---|---|---|
committer | Reiko Asakura | 2020-07-23 21:34:32 -0400 |
commit | 128b6114a5951f3489f9e626cddfe6de54e7fb99 (patch) | |
tree | 5c2f81dfde71f133bb1db7528f6ef80f0b60eb08 /include/kernel | |
parent | Change `pragma GCC warning` to `pragma message` (diff) | |
download | vds-libraries-128b6114a5951f3489f9e626cddfe6de54e7fb99.tar.gz |
Put common IO definitions into psp2common
Diffstat (limited to 'include/kernel')
-rw-r--r-- | include/kernel/kernel/iofilemgr.h | 62 | ||||
-rw-r--r-- | include/kernel/kernel/iofilemgr/async.h | 1 | ||||
-rw-r--r-- | include/kernel/kernel/iofilemgr/dirent.h | 10 | ||||
-rw-r--r-- | include/kernel/kernel/iofilemgr/stat.h | 34 |
4 files changed, 4 insertions, 103 deletions
diff --git a/include/kernel/kernel/iofilemgr.h b/include/kernel/kernel/iofilemgr.h index dce367e..e199e75 100644 --- a/include/kernel/kernel/iofilemgr.h +++ b/include/kernel/kernel/iofilemgr.h @@ -1,7 +1,7 @@ #ifndef _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_H_ #define _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_H_ -#include <psp2kern/kernel/types.h> +#include <psp2common/kernel/iofilemgr.h> #include <psp2kern/kernel/iofilemgr/async.h> #include <psp2kern/kernel/iofilemgr/stat.h> #include <psp2kern/kernel/iofilemgr/dirent.h> @@ -10,66 +10,6 @@ extern "C" { #endif -/* device types */ -#define SCE_D_TYPE_NULL 0x0 /* dummy device */ -#define SCE_D_TYPE_CHAR 0x1 /* character device */ -#define SCE_D_TYPE_BLOCK 0x4 /* block device */ -#define SCE_D_TYPE_FS 0x10 /* file system */ -#define SCE_D_TYPE_ALIAS 0x20 /* alias name (device alias) */ -#define SCE_D_TYPE_MOUNTPT 0x40 /* alias name (mount point) */ - -/* flags */ -#define SCE_FREAD (0x0001) /* readable */ -#define SCE_FWRITE (0x0002) /* writable */ -#define SCE_FNBLOCK (0x0004) /* Reserved: non-blocking reads */ -#define SCE_FDIRO (0x0008) /* internal use for dopen */ -#define SCE_FRLOCK (0x0010) /* Reserved: read locked (non-shared) */ -#define SCE_FWLOCK (0x0020) /* Reserved: write locked (non-shared) */ -#define SCE_FAPPEND (0x0100) /* append on each write */ -#define SCE_FCREAT (0x0200) /* create if nonexistant */ -#define SCE_FTRUNC (0x0400) /* truncate to zero length */ -#define SCE_EXCL (0x0800) /* exclusive create */ -#define SCE_FSCAN (0x1000) /* Reserved: scan type */ -#define SCE_FRCOM (0x2000) /* Reserved: remote command entry */ -#define SCE_FNBUF (0x4000) /* no device buffer */ -#define SCE_FASYNC (0x8000) /* Reserved: asyncronous i/o */ -#define SCE_FFDEXCL (0x01000000) /* exclusive access */ -#define SCE_FGAMEDATA (0x40000000) - -/* Flag for sceIoOpen() */ -#define SCE_O_RDONLY (SCE_FREAD) -#define SCE_O_WRONLY (SCE_FWRITE) -#define SCE_O_RDWR (SCE_FREAD|SCE_FWRITE) -#define SCE_O_NBLOCK (SCE_FNBLOCK) /* Reserved: Non-Blocking I/O */ -#define SCE_O_APPEND (SCE_FAPPEND) /* append (writes guaranteed at the end) */ -#define SCE_O_CREAT (SCE_FCREAT) /* open with file create */ -#define SCE_O_TRUNC (SCE_FTRUNC) /* open with truncation */ -#define SCE_O_EXCL (SCE_EXCL) /* exclusive create */ -#define SCE_O_NOBUF (SCE_FNBUF) /* no device buffer */ -#define SCE_O_NOWAIT (SCE_FASYNC) /* Reserved: asyncronous i/o */ -#define SCE_O_FDEXCL (SCE_FFDEXCL) /* exclusive access */ -#define SCE_O_PWLOCK (SCE_FPWLOCK) /* power control lock */ -#define SCE_O_FGAMEDATA (SCE_FGAMEDATA) - -/* Flag for sceIoLseek() */ -#define SCE_SEEK_SET (0) -#define SCE_SEEK_CUR (1) -#define SCE_SEEK_END (2) - -/* Path */ -#define SCE_IO_MAX_PATH_BUFFER_SIZE (1024) /* maximum path buffer size */ -#define SCE_IO_MAX_PATH_LENGTH (200) /* maximum path length */ - -/** - * May be used with sceIoDevctl() - */ -typedef struct SceIoDevInfo { - SceOff max_size; - SceOff free_size; - SceSize cluster_size; - void *unk; -} SceIoDevInfo; - /** * Remove directory entry * diff --git a/include/kernel/kernel/iofilemgr/async.h b/include/kernel/kernel/iofilemgr/async.h index 828d83d..4584bb7 100644 --- a/include/kernel/kernel/iofilemgr/async.h +++ b/include/kernel/kernel/iofilemgr/async.h @@ -1,6 +1,7 @@ #ifndef _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_ASYNC_H_ #define _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_ASYNC_H_ +#include <psp2common/kernel/iofilemgr/async.h> #include <psp2kern/kernel/threadmgr.h> #ifdef __cplusplus diff --git a/include/kernel/kernel/iofilemgr/dirent.h b/include/kernel/kernel/iofilemgr/dirent.h index 8d9a843..4bfc584 100644 --- a/include/kernel/kernel/iofilemgr/dirent.h +++ b/include/kernel/kernel/iofilemgr/dirent.h @@ -1,21 +1,13 @@ #ifndef _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_DIRENT_H_ #define _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_DIRENT_H_ +#include <psp2common/kernel/iofilemgr/dirent.h> #include <psp2kern/kernel/iofilemgr/async.h> -#include <psp2kern/kernel/iofilemgr/stat.h> #ifdef __cplusplus extern "C" { #endif -/** Describes a single directory entry */ -typedef struct SceIoDirent { - SceIoStat d_stat; //!< File status - char d_name[256]; //!< File name (not file path) - void *d_private; //!< Reserved (set to 0) - int dummy; //!< Padding -} SceIoDirent; - /** * Open a directory * diff --git a/include/kernel/kernel/iofilemgr/stat.h b/include/kernel/kernel/iofilemgr/stat.h index 9c5369f..c9096e2 100644 --- a/include/kernel/kernel/iofilemgr/stat.h +++ b/include/kernel/kernel/iofilemgr/stat.h @@ -1,45 +1,13 @@ #ifndef _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_STAT_H_ #define _DOLCESDK_PSP2KERN_KERNEL_IOFILEMGR_STAT_H_ -#include <psp2kern/kernel/types.h> +#include <psp2common/kernel/iofilemgr/stat.h> #include <psp2kern/kernel/iofilemgr/async.h> #ifdef __cplusplus extern "C" { #endif -/* Filetypes and Protection bits */ -#define SCE_STM_FMT (0xf << 12) -#define SCE_STM_FREG (0x2 << 12) /* regular file */ -#define SCE_STM_FDIR (0x1 << 12) /* directory */ -#define SCE_STM_ISREG(m) (((m) & SCE_STM_FMT) == SCE_STM_FREG) -#define SCE_STM_ISDIR(m) (((m) & SCE_STM_FMT) == SCE_STM_FDIR) - -/* for SceMode */ -#define SCE_STM_RWU 00600 -#define SCE_STM_RU 00400 - -/* for chstat cbit */ -#define SCE_CST_MODE 0x0001 -#define SCE_CST_ATTR 0x0000 /* not supported */ -#define SCE_CST_SIZE 0x0004 -#define SCE_CST_CT 0x0008 -#define SCE_CST_AT 0x0010 -#define SCE_CST_MT 0x0020 - -/** - * See sceIoChstat(), sceIoGetstat(), sceIoChstatByFd(), sceIoGetstatByFd() - */ -typedef struct SceIoStat { - SceIoMode st_mode; //!< File access mode - unsigned int st_attr; //!< Device-specific attribute - SceOff st_size; //!< File size - SceDateTime st_ctime; //!< File creation time - SceDateTime st_atime; //!< File last accessed time - SceDateTime st_mtime; //!< File last modified time - unsigned int st_private[6]; //!< Reserved -} SceIoStat; - /** * Change the status of a file. * |