xref: /linux/include/linux/rational.h (revision b2441318)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
28759ef32SOskar Schirmer /*
38759ef32SOskar Schirmer  * rational fractions
48759ef32SOskar Schirmer  *
56684b572SOskar Schirmer  * Copyright (C) 2009 emlix GmbH, Oskar Schirmer <oskar@scara.com>
68759ef32SOskar Schirmer  *
78759ef32SOskar Schirmer  * helper functions when coping with rational numbers,
88759ef32SOskar Schirmer  * e.g. when calculating optimum numerator/denominator pairs for
98759ef32SOskar Schirmer  * pll configuration taking into account restricted register size
108759ef32SOskar Schirmer  */
118759ef32SOskar Schirmer 
128759ef32SOskar Schirmer #ifndef _LINUX_RATIONAL_H
138759ef32SOskar Schirmer #define _LINUX_RATIONAL_H
148759ef32SOskar Schirmer 
158759ef32SOskar Schirmer void rational_best_approximation(
168759ef32SOskar Schirmer 	unsigned long given_numerator, unsigned long given_denominator,
178759ef32SOskar Schirmer 	unsigned long max_numerator, unsigned long max_denominator,
188759ef32SOskar Schirmer 	unsigned long *best_numerator, unsigned long *best_denominator);
198759ef32SOskar Schirmer 
208759ef32SOskar Schirmer #endif /* _LINUX_RATIONAL_H */
21