* the rights to redistribute these changes.
*/
+#ifdef KERNEL_PRIVATE
+
#ifndef _PPC_LOCK_H_
#define _PPC_LOCK_H_
+#ifdef MACH_KERNEL_PRIVATE
+
#include <kern/macro_help.h>
#include <kern/assert.h>
+#include <mach_ldebug.h>
+#include <ppc/locks.h>
-extern unsigned int LockTimeOut; /* Number of hardware ticks of a lock timeout */
+#if !MACH_LDEBUG
+typedef lck_mtx_t mutex_t;
+#else
+typedef lck_mtx_ext_t mutex_t;
+#endif /* !MACH_LDEBUG */
-#if defined(MACH_KERNEL_PRIVATE) && !(NCPUS == 1 && !ETAP_LOCK_TRACE && !USLOCK_DEBUG)
-extern void fast_usimple_lock(usimple_lock_t);
-extern void fast_usimple_unlock(usimple_lock_t);
-extern unsigned int fast_usimple_lock_try(usimple_lock_t);
+#if !MACH_LDEBUG
+typedef lck_rw_t lock_t;
+#else
+typedef lck_rw_ext_t lock_t;
+#endif /* !MACH_LDEBUG */
-#define simple_lock_init(l,t) usimple_lock_init(l,t)
-#define simple_lock(l) fast_usimple_lock(l)
-#define simple_unlock(l) fast_usimple_unlock(l)
-#define simple_lock_try(l) fast_usimple_lock_try(l)
-#define simple_lock_addr(l) (&(l))
-#define __slock_held_func__(l) usimple_lock_held(l)
+extern unsigned int LockTimeOut; /* Number of hardware ticks of a lock timeout */
+
+#define mutex_unlock(l) mutex_unlock_rwcmb(l)
-#endif
+#endif /* MACH_KERNEL_PRIVATE */
#endif /* _PPC_LOCK_H_ */
+
+#endif /* KERNEL_PRIVATE */