yaffs Clean up some code
[yaffs2.git] / yaffs_qsort.h
index 3a415b0e3f0479d2b694fa46225bfe3434ff8050..4a4981b3f9adb1ac1e7f110051c1835c2f1bc2e7 100644 (file)
@@ -1,8 +1,7 @@
 /*
- * YAFFS: Yet another FFS. A NAND-flash specific file system.
- * yaffs_qsort.h: Interface to BSD-licensed qsort routine.
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
  *
- * Copyright (C) 2002 Aleph One Ltd.
+ * Copyright (C) 2002-2010 Aleph One Ltd.
  *   for Toby Churchill Ltd and Brightstar Engineering
  *
  * Created by Charles Manning <charles@aleph1.co.uk>
  * it under the terms of the GNU Lesser General Public License version 2.1 as
  * published by the Free Software Foundation.
  *
- * $Id: yaffs_qsort.h,v 1.2 2006-11-07 23:20:09 charles Exp $
+ * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL.
  */
 
+
 #ifndef __YAFFS_QSORT_H__
 #define __YAFFS_QSORT_H__
 
-extern void qsort (void *const base, size_t total_elems, size_t size,
-                   int (*cmp)(const void *, const void *));
+#ifdef __KERNEL__
+#include <linux/sort.h>
+
+extern void yaffs_qsort(void *const base, size_t total_elems, size_t size,
+                       int (*cmp)(const void *, const void *)){
+       sort(base, total_elems, size, cmp, NULL);
+}
+
+#else
 
+extern void yaffs_qsort(void *const base, size_t total_elems, size_t size,
+                       int (*cmp)(const void *, const void *));
+
+#endif
 #endif