1 .. SPDX-License-Identifier: GPL-2.0 2 3 ========== 4 spu_create 5 ========== 6 7 Name 8 ==== 9 spu_create - create a new spu context 10 11 12 Synopsis 13 ======== 14 15 :: 16 17 #include <sys/types.h> 18 #include <sys/spu.h> 19 20 int spu_create(const char *pathname, 21 22 Description 23 =========== 24 The spu_create system call is used on 25 the Cell Broadband Engine Architecture 26 Processor Units (SPUs). It creates a n 27 pathname and returns a handle to associ 28 point to a non-existing directory in 29 system (spufs). When spu_create is suc 30 ated on pathname and it is populated wi 31 32 The returned file handle can only be 33 other operations are not defined on it. 34 ated directory entries in spufs are re 35 pointing either inside of the contex 36 descriptor is closed, the logical SPU c 37 38 The parameter flags can be zero or any 39 following constants: 40 41 SPU_RAWIO 42 Allow mapping of some of the har 43 user space. This flag requires t 44 capabilities(7). 45 46 The mode parameter specifies the permis 47 directory in spufs. mode is modifie 48 and then used for both the directory an 49 file permissions mask out some more bit 50 support only read or write access. See 51 possible mode values. 52 53 54 Return Value 55 ============ 56 spu_create returns a new file descript 57 an error condition and set errno to on 58 below. 59 60 61 Errors 62 ====== 63 EACCES 64 The current user does not have 65 point. 66 67 EEXIST An SPU context already exists at 68 69 EFAULT pathname is not a valid string p 70 space. 71 72 EINVAL pathname is not a directory in t 73 74 ELOOP Too many symlinks were found whi 75 76 EMFILE The process has reached its maxi 77 78 ENAMETOOLONG 79 pathname was too long. 80 81 ENFILE The system has reached the globa 82 83 ENOENT Part of pathname could not be re 84 85 ENOMEM The kernel could not allocate al 86 87 ENOSPC There are not enough SPU res 88 context or the user specific lim 89 texts has been reached. 90 91 ENOSYS the functionality is not provide 92 either the hardware does not pro 93 not loaded. 94 95 ENOTDIR 96 A part of pathname is not a dire 97 98 99 100 Notes 101 ===== 102 spu_create is meant to be used from 103 abstract interface to SPUs, not to be u 104 See http://www.bsc.es/projects/deepcom 105 ommended libraries. 106 107 108 Files 109 ===== 110 pathname must point to a location benea 111 convention, it gets mounted in /spu. 112 113 114 Conforming to 115 ============= 116 This call is Linux specific and only im 117 ture. Programs using this system call a 118 119 120 Bugs 121 ==== 122 The code does not yet fully implement a 123 124 125 Author 126 ====== 127 Arnd Bergmann <arndb@de.ibm.com> 128 129 See Also 130 ======== 131 capabilities(7), close(2), spu_run(2),
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.