* the rights to redistribute these changes.
*/
-#ifndef _PPC_HW_LOCK_H_
-#define _PPC_HW_LOCK_H_
+#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>
-#define NEED_ATOMIC 1
+#if !MACH_LDEBUG
+typedef lck_mtx_t mutex_t;
+#else
+typedef lck_mtx_ext_t mutex_t;
+#endif /* !MACH_LDEBUG */
-#define mutex_try _mutex_try
-#define mutex_lock(m) \
-MACRO_BEGIN \
- assert(assert_wait_possible()); \
- _mutex_lock((m)); \
-MACRO_END
+#if !MACH_LDEBUG
+typedef lck_rw_t lock_t;
+#else
+typedef lck_rw_ext_t lock_t;
+#endif /* !MACH_LDEBUG */
extern unsigned int LockTimeOut; /* Number of hardware ticks of a lock timeout */
-#endif /* _PPC_HW_LOCK_H_ */
+#define mutex_unlock(l) mutex_unlock_rwcmb(l)
+
+#endif /* MACH_KERNEL_PRIVATE */
+
+#endif /* _PPC_LOCK_H_ */
+
+#endif /* KERNEL_PRIVATE */