Lines Matching full:object
24 * @brief Kernel Object Types
73 /** Object initialized */
75 /** Object is Public */
77 /** Object allocated */
79 /** Driver Object */
83 * Grant a thread access to a kernel object
85 * The thread will be granted access to the object if the caller is from
87 * on both the object and the thread whose access is being granted.
89 * @param object Address of kernel object
90 * @param thread Thread to grant access to the object
92 __syscall void k_object_access_grant(const void *object,
96 * Revoke a thread's access to a kernel object
98 * The thread will lose access to the object if the caller is from
100 * on both the object and the thread whose access is being revoked.
102 * @param object Address of kernel object
103 * @param thread Thread to remove access to the object
105 void k_object_access_revoke(const void *object, struct k_thread *thread);
108 * @brief Release an object
110 * Allows user threads to drop their own permission on an object
113 * @param object The object to be released
116 __syscall void k_object_release(const void *object);
119 * Grant all present and future threads access to an object
122 * have sufficient permissions on the object, then that object will have
124 * the system, effectively becoming a public kernel object.
133 * @param object Address of kernel object
135 void k_object_access_all_grant(const void *object);
138 * Check if a kernel object is of certain type and is valid.
140 * This checks if the kernel object exists, of certain type,
143 * @param obj Address of the kernel object
144 * @param otype Object type (use K_OBJ_ANY for ignoring type checking)
145 * @return True if kernel object (@a obj) exists, of certain type, and
157 static inline void z_impl_k_object_access_grant(const void *object, in z_impl_k_object_access_grant() argument
160 ARG_UNUSED(object); in z_impl_k_object_access_grant()
167 static inline void k_object_access_revoke(const void *object, in k_object_access_revoke() argument
170 ARG_UNUSED(object); in k_object_access_revoke()
177 static inline void z_impl_k_object_release(const void *object) in z_impl_k_object_release() argument
179 ARG_UNUSED(object); in z_impl_k_object_release()
182 static inline void k_object_access_all_grant(const void *object) in k_object_access_all_grant() argument
184 ARG_UNUSED(object); in k_object_access_all_grant()
200 * Allocate a kernel object of a designated type
202 * This will instantiate at runtime a kernel object of the specified type,
203 * returning a pointer to it. The object will be returned in an uninitialized
205 * for the object will be allocated out of the calling thread's resource pool.
210 * @note Thread stack object has to use k_object_alloc_size() since stacks may
213 * @param otype Requested kernel object type
214 * @return A pointer to the allocated kernel object, or NULL if memory wasn't
220 * Allocate a kernel object of a designated type and a given size
222 * This will instantiate at runtime a kernel object of the specified type,
223 * returning a pointer to it. The object will be returned in an uninitialized
225 * for the object will be allocated out of the calling thread's resource pool.
233 * @param otype Requested kernel object type
234 * @param size Requested kernel object size
235 * @return A pointer to the allocated kernel object, or NULL if memory wasn't
241 * Free a kernel object previously allocated with k_object_alloc()
243 * This will return memory for a kernel object back to resource pool it was
244 * allocated from. Care must be exercised that the object will not be used
250 * @param obj Pointer to the kernel object memory address.
273 * @brief Free an object