Unverified Commit a9e7c964 authored by Phil Elwell's avatar Phil Elwell Committed by Mark Brown
Browse files

ASoC: cs43130: Fix numerator/denominator mixup



In converting to using the standard u16_fract type, commit [1] made the
obvious mistake and failed to take account of the difference in
numerator and denominator ordering, breaking all uses of the cs43130
codec.

Fix it.

[1] commit e14bd35e ("ASoC: cs43130: Re-use generic struct u16_fract")

Fixes: e14bd35e ("ASoC: cs43130: Re-use generic struct u16_fract")
Signed-off-by: default avatarPhil Elwell <phil@raspberrypi.com>
Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarCharles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20230621153229.1944132-1-phil@raspberrypi.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 22222147
Loading
Loading
Loading
Loading
+69 −69
Original line number Diff line number Diff line
@@ -381,88 +381,88 @@ struct cs43130_clk_gen {

/* frm_size = 16 */
static const struct cs43130_clk_gen cs43130_16_clk_gen[] = {
	{ 22579200,	32000,		.v = { 441,	10, }, },
	{ 22579200,	44100,		.v = { 32,	1, }, },
	{ 22579200,	48000,		.v = { 147,	5, }, },
	{ 22579200,	88200,		.v = { 16,	1, }, },
	{ 22579200,	96000,		.v = { 147,	10, }, },
	{ 22579200,	176400,		.v = { 8,	1, }, },
	{ 22579200,	192000,		.v = { 147,	20, }, },
	{ 22579200,	352800,		.v = { 4,	1, }, },
	{ 22579200,	384000,		.v = { 147,	40, }, },
	{ 24576000,	32000,		.v = { 48,	1, }, },
	{ 24576000,	44100,		.v = { 5120,	147, }, },
	{ 24576000,	48000,		.v = { 32,	1, }, },
	{ 24576000,	88200,		.v = { 2560,	147, }, },
	{ 24576000,	96000,		.v = { 16,	1, }, },
	{ 24576000,	176400,		.v = { 1280,	147, }, },
	{ 24576000,	192000,		.v = { 8,	1, }, },
	{ 24576000,	352800,		.v = { 640,	147, }, },
	{ 24576000,	384000,		.v = { 4,	1, }, },
	{ 22579200,	32000,		.v = { 10,	441, }, },
	{ 22579200,	44100,		.v = { 1,	32, }, },
	{ 22579200,	48000,		.v = { 5,	147, }, },
	{ 22579200,	88200,		.v = { 1,	16, }, },
	{ 22579200,	96000,		.v = { 10,	147, }, },
	{ 22579200,	176400,		.v = { 1,	8, }, },
	{ 22579200,	192000,		.v = { 20,	147, }, },
	{ 22579200,	352800,		.v = { 1,	4, }, },
	{ 22579200,	384000,		.v = { 40,	147, }, },
	{ 24576000,	32000,		.v = { 1,	48, }, },
	{ 24576000,	44100,		.v = { 147,	5120, }, },
	{ 24576000,	48000,		.v = { 1,	32, }, },
	{ 24576000,	88200,		.v = { 147,	2560, }, },
	{ 24576000,	96000,		.v = { 1,	16, }, },
	{ 24576000,	176400,		.v = { 147,	1280, }, },
	{ 24576000,	192000,		.v = { 1,	8, }, },
	{ 24576000,	352800,		.v = { 147,	640, }, },
	{ 24576000,	384000,		.v = { 1,	4, }, },
};

/* frm_size = 32 */
static const struct cs43130_clk_gen cs43130_32_clk_gen[] = {
	{ 22579200,	32000,		.v = { 441,	20, }, },
	{ 22579200,	44100,		.v = { 16,	1, }, },
	{ 22579200,	48000,		.v = { 147,	10, }, },
	{ 22579200,	88200,		.v = { 8,	1, }, },
	{ 22579200,	96000,		.v = { 147,	20, }, },
	{ 22579200,	176400,		.v = { 4,	1, }, },
	{ 22579200,	192000,		.v = { 147,	40, }, },
	{ 22579200,	352800,		.v = { 2,	1, }, },
	{ 22579200,	384000,		.v = { 147,	80, }, },
	{ 24576000,	32000,		.v = { 24,	1, }, },
	{ 24576000,	44100,		.v = { 2560,	147, }, },
	{ 24576000,	48000,		.v = { 16,	1, }, },
	{ 24576000,	88200,		.v = { 1280,	147, }, },
	{ 24576000,	96000,		.v = { 8,	1, }, },
	{ 24576000,	176400,		.v = { 640,	147, }, },
	{ 24576000,	192000,		.v = { 4,	1, }, },
	{ 24576000,	352800,		.v = { 320,	147, }, },
	{ 24576000,	384000,		.v = { 2,	1, }, },
	{ 22579200,	32000,		.v = { 20,	441, }, },
	{ 22579200,	44100,		.v = { 1,	16, }, },
	{ 22579200,	48000,		.v = { 10,	147, }, },
	{ 22579200,	88200,		.v = { 1,	8, }, },
	{ 22579200,	96000,		.v = { 20,	147, }, },
	{ 22579200,	176400,		.v = { 1,	4, }, },
	{ 22579200,	192000,		.v = { 40,	147, }, },
	{ 22579200,	352800,		.v = { 1,	2, }, },
	{ 22579200,	384000,		.v = { 80,	147, }, },
	{ 24576000,	32000,		.v = { 1,	24, }, },
	{ 24576000,	44100,		.v = { 147,	2560, }, },
	{ 24576000,	48000,		.v = { 1,	16, }, },
	{ 24576000,	88200,		.v = { 147,	1280, }, },
	{ 24576000,	96000,		.v = { 1,	8, }, },
	{ 24576000,	176400,		.v = { 147,	640, }, },
	{ 24576000,	192000,		.v = { 1,	4, }, },
	{ 24576000,	352800,		.v = { 147,	320, }, },
	{ 24576000,	384000,		.v = { 1,	2, }, },
};

/* frm_size = 48 */
static const struct cs43130_clk_gen cs43130_48_clk_gen[] = {
	{ 22579200,	32000,		.v = { 147,	100, }, },
	{ 22579200,	44100,		.v = { 32,	3, }, },
	{ 22579200,	48000,		.v = { 49,	5, }, },
	{ 22579200,	88200,		.v = { 16,	3, }, },
	{ 22579200,	96000,		.v = { 49,	10, }, },
	{ 22579200,	176400,		.v = { 8,	3, }, },
	{ 22579200,	192000,		.v = { 49,	20, }, },
	{ 22579200,	352800,		.v = { 4,	3, }, },
	{ 22579200,	384000,		.v = { 49,	40, }, },
	{ 24576000,	32000,		.v = { 16,	1, }, },
	{ 24576000,	44100,		.v = { 5120,	441, }, },
	{ 24576000,	48000,		.v = { 32,	3, }, },
	{ 24576000,	88200,		.v = { 2560,	441, }, },
	{ 24576000,	96000,		.v = { 16,	3, }, },
	{ 24576000,	176400,		.v = { 1280,	441, }, },
	{ 24576000,	192000,		.v = { 8,	3, }, },
	{ 24576000,	352800,		.v = { 640,	441, }, },
	{ 24576000,	384000,		.v = { 4,	3, }, },
	{ 22579200,	32000,		.v = { 100,	147, }, },
	{ 22579200,	44100,		.v = { 3,	32, }, },
	{ 22579200,	48000,		.v = { 5,	49, }, },
	{ 22579200,	88200,		.v = { 3,	16, }, },
	{ 22579200,	96000,		.v = { 10,	49, }, },
	{ 22579200,	176400,		.v = { 3,	8, }, },
	{ 22579200,	192000,		.v = { 20,	49, }, },
	{ 22579200,	352800,		.v = { 3,	4, }, },
	{ 22579200,	384000,		.v = { 40,	49, }, },
	{ 24576000,	32000,		.v = { 1,	16, }, },
	{ 24576000,	44100,		.v = { 441,	5120, }, },
	{ 24576000,	48000,		.v = { 3,	32, }, },
	{ 24576000,	88200,		.v = { 441,	2560, }, },
	{ 24576000,	96000,		.v = { 3,	16, }, },
	{ 24576000,	176400,		.v = { 441,	1280, }, },
	{ 24576000,	192000,		.v = { 3,	8, }, },
	{ 24576000,	352800,		.v = { 441,	640, }, },
	{ 24576000,	384000,		.v = { 3,	4, }, },
};

/* frm_size = 64 */
static const struct cs43130_clk_gen cs43130_64_clk_gen[] = {
	{ 22579200,	32000,		.v = { 441,	40, }, },
	{ 22579200,	44100,		.v = { 8,	1, }, },
	{ 22579200,	48000,		.v = { 147,	20, }, },
	{ 22579200,	88200,		.v = { 4,	1, }, },
	{ 22579200,	96000,		.v = { 147,	40, }, },
	{ 22579200,	176400,		.v = { 2,	1, }, },
	{ 22579200,	192000,		.v = { 147,	80, }, },
	{ 22579200,	32000,		.v = { 40,	441, }, },
	{ 22579200,	44100,		.v = { 1,	8, }, },
	{ 22579200,	48000,		.v = { 20,	147, }, },
	{ 22579200,	88200,		.v = { 1,	4, }, },
	{ 22579200,	96000,		.v = { 40,	147, }, },
	{ 22579200,	176400,		.v = { 1,	2, }, },
	{ 22579200,	192000,		.v = { 80,	147, }, },
	{ 22579200,	352800,		.v = { 1,	1, }, },
	{ 24576000,	32000,		.v = { 12,	1, }, },
	{ 24576000,	44100,		.v = { 1280,	147, }, },
	{ 24576000,	48000,		.v = { 8,	1, }, },
	{ 24576000,	88200,		.v = { 640,	147, }, },
	{ 24576000,	96000,		.v = { 4,	1, }, },
	{ 24576000,	176400,		.v = { 320,	147, }, },
	{ 24576000,	192000,		.v = { 2,	1, }, },
	{ 24576000,	352800,		.v = { 160,	147, }, },
	{ 24576000,	32000,		.v = { 1,	12, }, },
	{ 24576000,	44100,		.v = { 147,	1280, }, },
	{ 24576000,	48000,		.v = { 1,	8, }, },
	{ 24576000,	88200,		.v = { 147,	640, }, },
	{ 24576000,	96000,		.v = { 1,	4, }, },
	{ 24576000,	176400,		.v = { 147,	320, }, },
	{ 24576000,	192000,		.v = { 1,	2, }, },
	{ 24576000,	352800,		.v = { 147,	160, }, },
	{ 24576000,	384000,		.v = { 1,	1, }, },
};