[PATCH] ASoC: topology: KUnit: Convert from cpu to data format
When creating topology templates and overriding data in specific test cases it should be done with cpu_to_le32 macro, so we operate on correct data on all architectures, as topology parser use le32_to_cpu to parse data from structures.
Reported-by: kernel test robot lkp@intel.com Signed-off-by: Amadeusz Sławiński amadeuszx.slawinski@linux.intel.com --- sound/soc/soc-topology-test.c | 66 +++++++++++++++++------------------ 1 file changed, 33 insertions(+), 33 deletions(-)
diff --git a/sound/soc/soc-topology-test.c b/sound/soc/soc-topology-test.c index 36e2a3486dbf..ae3968161509 100644 --- a/sound/soc/soc-topology-test.c +++ b/sound/soc/soc-topology-test.c @@ -121,19 +121,19 @@ struct tplg_tmpl_001 {
static struct tplg_tmpl_001 tplg_tmpl_empty = { .header = { - .magic = SND_SOC_TPLG_MAGIC, - .abi = 5, + .magic = cpu_to_le32(SND_SOC_TPLG_MAGIC), + .abi = cpu_to_le32(5), .version = 0, - .type = SND_SOC_TPLG_TYPE_MANIFEST, - .size = sizeof(struct snd_soc_tplg_hdr), + .type = cpu_to_le32(SND_SOC_TPLG_TYPE_MANIFEST), + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_hdr)), .vendor_type = 0, - .payload_size = sizeof(struct snd_soc_tplg_manifest), + .payload_size = cpu_to_le32(sizeof(struct snd_soc_tplg_manifest)), .index = 0, - .count = 1, + .count = cpu_to_le32(1), },
.manifest = { - .size = sizeof(struct snd_soc_tplg_manifest), + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_manifest)), /* rest of fields is 0 */ }, }; @@ -149,60 +149,60 @@ struct tplg_tmpl_002 {
static struct tplg_tmpl_002 tplg_tmpl_with_pcm = { .header = { - .magic = SND_SOC_TPLG_MAGIC, - .abi = 5, + .magic = cpu_to_le32(SND_SOC_TPLG_MAGIC), + .abi = cpu_to_le32(5), .version = 0, - .type = SND_SOC_TPLG_TYPE_MANIFEST, - .size = sizeof(struct snd_soc_tplg_hdr), + .type = cpu_to_le32(SND_SOC_TPLG_TYPE_MANIFEST), + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_hdr)), .vendor_type = 0, - .payload_size = sizeof(struct snd_soc_tplg_manifest), + .payload_size = cpu_to_le32(sizeof(struct snd_soc_tplg_manifest)), .index = 0, - .count = 1, + .count = cpu_to_le32(1), }, .manifest = { - .size = sizeof(struct snd_soc_tplg_manifest), - .pcm_elems = 1, + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_manifest)), + .pcm_elems = cpu_to_le32(1), /* rest of fields is 0 */ }, .pcm_header = { - .magic = SND_SOC_TPLG_MAGIC, - .abi = 5, + .magic = cpu_to_le32(SND_SOC_TPLG_MAGIC), + .abi = cpu_to_le32(5), .version = 0, - .type = SND_SOC_TPLG_TYPE_PCM, - .size = sizeof(struct snd_soc_tplg_hdr), + .type = cpu_to_le32(SND_SOC_TPLG_TYPE_PCM), + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_hdr)), .vendor_type = 0, - .payload_size = sizeof(struct snd_soc_tplg_pcm), + .payload_size = cpu_to_le32(sizeof(struct snd_soc_tplg_pcm)), .index = 0, - .count = 1, + .count = cpu_to_le32(1), }, .pcm = { - .size = sizeof(struct snd_soc_tplg_pcm), + .size = cpu_to_le32(sizeof(struct snd_soc_tplg_pcm)), .pcm_name = "KUNIT Audio", .dai_name = "kunit-audio-dai", .pcm_id = 0, .dai_id = 0, - .playback = 1, - .capture = 1, + .playback = cpu_to_le32(1), + .capture = cpu_to_le32(1), .compress = 0, .stream = { [0] = { - .channels = 2, + .channels = cpu_to_le32(2), }, [1] = { - .channels = 2, + .channels = cpu_to_le32(2), }, }, .num_streams = 0, .caps = { [0] = { .name = "kunit-audio-playback", - .channels_min = 2, - .channels_max = 2, + .channels_min = cpu_to_le32(2), + .channels_max = cpu_to_le32(2), }, [1] = { .name = "kunit-audio-capture", - .channels_min = 2, - .channels_max = 2, + .channels_min = cpu_to_le32(2), + .channels_max = cpu_to_le32(2), }, }, .flag_mask = 0, @@ -460,7 +460,7 @@ static void snd_soc_tplg_test_load_empty_tplg_bad_magic(struct kunit *test) * override abi * any value != magic number is wrong */ - data->header.magic = SND_SOC_TPLG_MAGIC + 1; + data->header.magic = cpu_to_le32(SND_SOC_TPLG_MAGIC + 1);
kunit_comp->fw.data = (u8 *)data; kunit_comp->fw.size = size; @@ -516,7 +516,7 @@ static void snd_soc_tplg_test_load_empty_tplg_bad_abi(struct kunit *test) * override abi * any value != accepted range is wrong */ - data->header.abi = SND_SOC_TPLG_ABI_VERSION + 1; + data->header.abi = cpu_to_le32(SND_SOC_TPLG_ABI_VERSION + 1);
kunit_comp->fw.data = (u8 *)data; kunit_comp->fw.size = size; @@ -572,7 +572,7 @@ static void snd_soc_tplg_test_load_empty_tplg_bad_size(struct kunit *test) * override size * any value != struct size is wrong */ - data->header.size = sizeof(struct snd_soc_tplg_hdr) + 1; + data->header.size = cpu_to_le32(sizeof(struct snd_soc_tplg_hdr) + 1);
kunit_comp->fw.data = (u8 *)data; kunit_comp->fw.size = size;
On Tue, 2 Feb 2021 17:31:23 +0100, Amadeusz Sławiński wrote:
When creating topology templates and overriding data in specific test cases it should be done with cpu_to_le32 macro, so we operate on correct data on all architectures, as topology parser use le32_to_cpu to parse data from structures.
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/1] ASoC: topology: KUnit: Convert from cpu to data format commit: be6be67e135e59fb176b1e2e9d47a7436fb161d1
All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks, Mark
participants (2)
-
Amadeusz Sławiński
-
Mark Brown