common: Move sorting functions to their own header file

These don't need to be in common.h so move them out into a new header.
Also add some missing comments.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Simon Glass
2019-11-14 12:57:19 -07:00
committed by Tom Rini
parent f083583786
commit 8bef79bf3c
8 changed files with 40 additions and 5 deletions

View File

@@ -304,11 +304,6 @@ ulong ticks2usec (unsigned long ticks);
/* lib/lz4_wrapper.c */
int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
/* lib/qsort.c */
void qsort(void *base, size_t nmemb, size_t size,
int(*compar)(const void *, const void *));
int strcmp_compar(const void *, const void *);
/* lib/uuid.c */
#include <uuid.h>

34
include/sort.h Normal file
View File

@@ -0,0 +1,34 @@
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright 2019 Google LLC
*/
#ifndef __SORT_H
#define __SORT_H
/**
* qsort() - Use the quicksort algorithm to sort some values
*
* @base: Base address of array to sort
* @nmemb: Number of members to sort
* @size: Size of each member in bytes
* @compar: Comparison function which should return:
* < 0 if element at s1 < element at s2,
* 0 if element at s1 == element at s2,
* > 0 if element at s1 > element at s2,
*/
void qsort(void *base, size_t nmemb, size_t size,
int (*compar)(const void *s1, const void *s2));
/**
* strcmp_compar() - compar function for string arrays
*
* This can be passed to qsort when a string array is being sorted
*
* @s1: First string to compare
* @s2: Second string to compare
* @return comparison value (less than, equal to, or greater than 0)
*/
int strcmp_compar(const void *s1, const void *s2);
#endif