2006-08-30 Kazunori Asayama <asayama@sm.sony.co.jp>
* spu/syscalls.c: Add a new argument to _send_to_ppe() to
        specify signal code.
        * spu/jsre.h: Update declaration of _send_to_ppe().
        * spu/close.c: Replace _send_to_ppe_0x2101() by _send_to_ppe().
        * spu/fstat.c: Ditto.
        * spu/lseek.c: Ditto.
        * spu/open.c: Ditto.
        * spu/read.c: Ditto.
        * spu/stat.c: Ditto.
        * spu/unlink.c: Ditto.
        * spu/write.c: Ditto.
			
			
This commit is contained in:
		| @@ -1,3 +1,17 @@ | |||||||
|  | 2006-08-30  Kazunori Asayama  <asayama@sm.sony.co.jp> | ||||||
|  |  | ||||||
|  | 	* spu/syscalls.c: Add a new argument to _send_to_ppe() to  | ||||||
|  | 	specify signal code. | ||||||
|  | 	* spu/jsre.h: Update declaration of _send_to_ppe(). | ||||||
|  | 	* spu/close.c: Replace _send_to_ppe_0x2101() by _send_to_ppe(). | ||||||
|  | 	* spu/fstat.c: Ditto. | ||||||
|  | 	* spu/lseek.c: Ditto. | ||||||
|  | 	* spu/open.c: Ditto. | ||||||
|  | 	* spu/read.c: Ditto. | ||||||
|  | 	* spu/stat.c: Ditto. | ||||||
|  | 	* spu/unlink.c: Ditto. | ||||||
|  | 	* spu/write.c: Ditto. | ||||||
|  |  | ||||||
| 2006-08-30  Kazunori Asayama  <asayama@sm.sony.co.jp> | 2006-08-30  Kazunori Asayama  <asayama@sm.sony.co.jp> | ||||||
|  |  | ||||||
| 	* spu/Makefile.in: Add dependency. | 	* spu/Makefile.in: Add dependency. | ||||||
|   | |||||||
| @@ -41,7 +41,7 @@ close (int file) | |||||||
|  |  | ||||||
| 	sys.file = file; | 	sys.file = file; | ||||||
|  |  | ||||||
|         _send_to_ppe_0x2101 (JSRE_CLOSE, &sys); |         _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_CLOSE, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
| @@ -44,7 +44,7 @@ fstat (int file, struct stat *pstat) | |||||||
|         sys.file = file; |         sys.file = file; | ||||||
|         sys.ptr = ( unsigned int )&pjstat; |         sys.ptr = ( unsigned int )&pjstat; | ||||||
|  |  | ||||||
|         _send_to_ppe_0x2101 (JSRE_FSTAT, &sys); |         _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_FSTAT, &sys); | ||||||
|  |  | ||||||
|         pstat->st_dev = pjstat.dev; |         pstat->st_dev = pjstat.dev; | ||||||
|         pstat->st_ino = pjstat.ino; |         pstat->st_ino = pjstat.ino; | ||||||
|   | |||||||
| @@ -52,6 +52,8 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com) | |||||||
| #define JSRE_O_SYNC 4096 | #define JSRE_O_SYNC 4096 | ||||||
| #define JSRE_O_ASYNC 8192 | #define JSRE_O_ASYNC 8192 | ||||||
|  |  | ||||||
|  | #define JSRE_POSIX1_SIGNALCODE 0x2101 | ||||||
|  |  | ||||||
| #define JSRE_CLOSE 2 | #define JSRE_CLOSE 2 | ||||||
| #define JSRE_FSTAT 4 | #define JSRE_FSTAT 4 | ||||||
| #define JSRE_LSEEK 9 | #define JSRE_LSEEK 9 | ||||||
| @@ -152,6 +154,6 @@ typedef struct { | |||||||
|     unsigned int ctime; |     unsigned int ctime; | ||||||
| } jsre_stat_t; | } jsre_stat_t; | ||||||
|  |  | ||||||
| void _send_to_ppe_0x2101 (int opcode, void *data); | void _send_to_ppe (unsigned int signalcode, unsigned int opcode, void *data); | ||||||
|  |  | ||||||
| #endif | #endif | ||||||
|   | |||||||
| @@ -55,7 +55,7 @@ lseek (int file, off_t offset, int whence) | |||||||
| 			break; | 			break; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	_send_to_ppe_0x2101 (JSRE_LSEEK, &sys); | 	_send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_LSEEK, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
| @@ -81,7 +81,7 @@ open (const char *filename, int flags, ...) | |||||||
|                   sys.mode = 0; |                   sys.mode = 0; | ||||||
|           } |           } | ||||||
|  |  | ||||||
|         _send_to_ppe_0x2101 ( JSRE_OPEN, &sys); |         _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_OPEN, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
| @@ -44,7 +44,7 @@ read (int file, void *ptr, size_t len) | |||||||
| 	sys.ptr = ( unsigned int )ptr; | 	sys.ptr = ( unsigned int )ptr; | ||||||
| 	sys.len = len; | 	sys.len = len; | ||||||
|  |  | ||||||
| 	_send_to_ppe_0x2101 (JSRE_READ, &sys); | 	_send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_READ, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
| @@ -45,7 +45,7 @@ stat (const char *pathname, struct stat *pstat) | |||||||
| 	sys.pathname = pathname; | 	sys.pathname = pathname; | ||||||
| 	sys.ptr = ( unsigned int )&pjstat; | 	sys.ptr = ( unsigned int )&pjstat; | ||||||
|  |  | ||||||
| 	_send_to_ppe_0x2101 (JSRE_STAT, &sys); | 	_send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_STAT, &sys); | ||||||
|  |  | ||||||
| 	pstat->st_dev = pjstat.dev; | 	pstat->st_dev = pjstat.dev; | ||||||
| 	pstat->st_ino = pjstat.ino; | 	pstat->st_ino = pjstat.ino; | ||||||
|   | |||||||
| @@ -30,14 +30,16 @@ POSSIBILITY OF SUCH DAMAGE. | |||||||
| Author: Andreas Neukoetter (ti95neuk@de.ibm.com) | Author: Andreas Neukoetter (ti95neuk@de.ibm.com) | ||||||
| */ | */ | ||||||
|  |  | ||||||
|  | #include "jsre.h" | ||||||
|  |  | ||||||
| void | void | ||||||
| _send_to_ppe_0x2101 (int opcode, void *data) | _send_to_ppe (unsigned int signalcode, unsigned int opcode, void *data) | ||||||
| { | { | ||||||
|  |  | ||||||
| 	unsigned int	combined = ( ( opcode<<24 )&0xff000000 ) | ( ( unsigned int )data & 0x00ffffff ); | 	unsigned int	combined = ( ( opcode<<24 )&0xff000000 ) | ( ( unsigned int )data & 0x00ffffff ); | ||||||
|  |  | ||||||
|         vector unsigned int stopfunc = { |         vector unsigned int stopfunc = { | ||||||
|                 0x00002101,     /* stop 0x2101 */ |                 signalcode,     /* stop */ | ||||||
|                 (unsigned int) combined, |                 (unsigned int) combined, | ||||||
|                 0x4020007f,     /* nop */ |                 0x4020007f,     /* nop */ | ||||||
|                 0x35000000      /* bi $0 */ |                 0x35000000      /* bi $0 */ | ||||||
|   | |||||||
| @@ -41,7 +41,7 @@ unlink (const char *pathname) | |||||||
|  |  | ||||||
| 	sys.pathname = ( unsigned int )pathname; | 	sys.pathname = ( unsigned int )pathname; | ||||||
|  |  | ||||||
|         _send_to_ppe_0x2101 (JSRE_UNLINK, &sys); |         _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_UNLINK, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
| @@ -44,7 +44,7 @@ write (int file, const void *ptr, size_t len) | |||||||
| 	sys.ptr = ( unsigned int )ptr; | 	sys.ptr = ( unsigned int )ptr; | ||||||
| 	sys.len = len; | 	sys.len = len; | ||||||
|  |  | ||||||
| 	_send_to_ppe_0x2101 (JSRE_WRITE, &sys); | 	_send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_WRITE, &sys); | ||||||
|  |  | ||||||
|         errno = psys_out->err; |         errno = psys_out->err; | ||||||
|         return ( psys_out->rc); |         return ( psys_out->rc); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user