linux/sound/soc
Kuninori Morimoto c413983eb6
ASoC: rsnd: adjust disabled module
In general Renesas SoC's SSI/SRC are all enabled, but some SoC is not.

	H2	E2

	SRC0	      <=
	SRC1	SRC1
	SRC2	SRC2
	...	...

Renesas Sound driver is assuming that *all* modules are
enabled, and thus it is using *data array* to access each modules.
Because of it, we have been using "status = disabled" at DT,
and using *full size* array but avoiding disabled module.

ex)
	rcar_sound,src {
		src-0 {
=>			status = "disabled";
		};
		src1: src-1 {
			...
		};
		...

But R-Car D3 have many disabled modules (It has SSI3/SSI4, SRC5/SRC6),
and Renesas SoC maintainer don't want above style on DT.

ex)
	rcar_sound,src {
=>		src0: src-0 { status = "disabled"; };
=>		src1: src-1 { status = "disabled"; };
=>		src2: src-2 { status = "disabled"; };
=>		src3: src-3 { status = "disabled"; };
=>		src4: src-4 { status = "disabled"; };
		src5: src-5 {
			...
		};
		src6: src-6 {
			...
		};
	};

	rcar_sound,ssi {
=>		ssi0: ssi-0 { status = "disabled"; };
=>		ssi1: ssi-1 { status = "disabled"; };
=>		ssi2: ssi-2 { status = "disabled"; };
		ssi3: ssi-3 {
			...
		};
		ssi4: ssi-4 {
			...
		};
	};

To adjust it, it needs to care about related for_each_child_of_node()
loop on rsnd driver, and it is used from...

	> grep -l for_each_child_of_node sound/soc/sh/rcar/*
	sound/soc/sh/rcar/core.c
	sound/soc/sh/rcar/ctu.c
	sound/soc/sh/rcar/dma.c
	sound/soc/sh/rcar/dvc.c
	sound/soc/sh/rcar/mix.c
	sound/soc/sh/rcar/src.c
	sound/soc/sh/rcar/ssi.c
	sound/soc/sh/rcar/ssiu.c

This patch adjust to this situation.
By this patch, we can avoid disabled modules on DT

	rcar_sound,src {
		src5: src-5 {
			...
		};
		src6: src-6 {
			...
		};
	};

	rcar_sound,ssi {
		ssi3: ssi-3 {
			...
		};
		ssi4: ssi-4 {
			...
		};
	};

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/875yyzk017.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2021-06-01 14:04:15 +01:00
..
adi
amd ASoC: amd: renoir: Remove redundant assignment to pdm_ctrl and pdm_enable and pdm_dma_enable 2021-05-10 13:05:32 +01:00
atmel ASoC: atmel: atmel-i2s: remove useless initialization 2021-03-31 18:03:16 +01:00
au1x
bcm Merge remote-tracking branch 'asoc/for-5.13' into asoc-next 2021-04-23 19:01:02 +01:00
cirrus
codecs ASoC: cs42l52: use DEVICE_ATTR_WO macro 2021-05-26 12:07:16 +01:00
dwc ASoC: dwc: Fix -Wmissing-prototypes warnings 2021-03-29 17:28:13 +01:00
fsl ASoC: imx-rpmsg: fix platform_no_drv_owner.cocci warnings 2021-05-27 16:25:19 +01:00
generic ASoC: audio-graph: tidyup graph_parse_node() 2021-05-11 15:46:51 +01:00
hisilicon ASoC: hisilicon: fix missing clk_disable_unprepare() on error in hi6210_i2s_startup() 2021-05-18 14:04:32 +01:00
img
intel Merge branch 'for-5.13' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.14 2021-05-25 16:44:26 +01:00
jz4740 ASoC: jz4740-i2s: fix function name 2021-05-10 17:06:04 +01:00
kirkwood
mediatek ASoC: mediatek: mt8192: Delete a redundant condition branch 2021-05-10 13:05:33 +01:00
meson ASoC: meson: g12a-toacodec: add support for SM1 TOACODEC 2021-05-19 14:19:05 +01:00
mxs
pxa ASoC: pxa: remove useless assignment 2021-03-31 18:03:19 +01:00
qcom ASoC: qcom: lpass-cpu: Use optional clk APIs 2021-05-21 13:12:29 +01:00
rockchip
samsung ASoC: samsung: tm2_wm5110: remove shadowed variable 2021-03-12 20:45:41 +00:00
sh ASoC: rsnd: adjust disabled module 2021-06-01 14:04:15 +01:00
sof Merge branch 'for-5.13' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.14 2021-05-25 16:44:26 +01:00
spear
sprd
sti ASoC: sti: sti_uniperif: add missing MODULE_DEVICE_TABLE 2021-04-13 12:33:45 +01:00
stm ASoC: stm32: do not request a new clock consummer reference 2021-04-28 16:34:53 +01:00
sunxi Merge remote-tracking branch 'asoc/for-5.13' into asoc-next 2021-04-23 19:01:02 +01:00
tegra ASoC: tegra: mark runtime-pm functions as __maybe_unused 2021-04-22 16:27:37 +01:00
ti sound updates for 5.13 2021-04-30 12:48:14 -07:00
uniphier
ux500 ASoC: ux500: mop500: align function prototype 2021-03-31 18:03:28 +01:00
xilinx
xtensa
Kconfig ASoC: topology: adhere to KUNIT formatting standard 2021-04-14 15:26:24 +01:00
Makefile ASoC: topology: adhere to KUNIT formatting standard 2021-04-14 15:26:24 +01:00
soc-ac97.c
soc-acpi.c ASoC: soc-acpi: remove useless initialization 2021-04-19 14:03:29 +01:00
soc-card.c
soc-component.c ASoC: soc-component: Add snd_soc_pcm_component_ack 2021-03-25 13:58:06 +00:00
soc-compress.c ASoC: soc-compress: lock pcm_mutex to resolve lockdep error 2021-04-09 13:39:44 +01:00
soc-core.c Merge branch 'for-5.13' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.14 2021-05-25 16:44:26 +01:00
soc-dai.c ASoC: soc-dai: fix up hw params only if it is needed 2021-05-19 14:19:08 +01:00
soc-dapm.c ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() 2021-03-19 12:24:04 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c
soc-jack.c
soc-link.c
soc-ops.c
soc-pcm.c ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry() 2021-04-16 14:34:13 +01:00
soc-topology-test.c
soc-topology.c ASoC: topology: Fix using uninitialized pointer 2021-05-20 17:57:28 +01:00
soc-utils.c ASoC: soc-utils: add snd_soc_component_is_dummy() 2021-04-16 14:34:12 +01:00