All of lore.kernel.org
 help / color / mirror / Atom feed
* Question about OF-graph ports
@ 2017-01-19  6:07 Kuninori Morimoto
       [not found] ` <87r33z4maj.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
  0 siblings, 1 reply; 17+ messages in thread
From: Kuninori Morimoto @ 2017-01-19  6:07 UTC (permalink / raw)
  To: Rob Herring, Mark Brown; +Cc: Linux-DT, Linux-ALSA


Hi Rob, Mark
and ALSA SoC ML

I'm working for OF-graph base sound card support.
Now I want to know 1 things which can't solve by myself.
It is OF-graph ports

ALSA SoC needs CPU, Codec, and Sound Card.
If CPU <-> Card <-> Codec case, OF-graph will be

	card {
		ports {
			port@0 {
				card_in: endpoint {
					remote-endpoint = <&cpu_out>;
				};
			};
			port@1 {
				card_out: endpoint {
					remote-endpoint = <&codec_in>;
				};
			};
		};
	};

	cpu {
		port {
			cpu_out: endpoint {
				remote-endpoint = <&card_in>;
			};
		};
	};

	codec {
		port {
			codec_in: endpoint {
				remote-endpoint = <&card_out>;
			};
		};
	};

This is OK.
If CPU has many ports, then ALSA SoC requests 1 Card which has many
DAIs (= Digital Audio Interface).
This case, cpu will have "ports" and many "port", this is OK.

	SoC.0              Codec0
	SoC.1 <-> Card <-> Codec1
	SoC.2              Codec2

In "card", CPU/Codec pair is indicated by "ports" now
(= port0 is CPU, port1 is Codec, etc)

My question is in this case, how to know CPU/Codec pair on "card" ?
Can we have *multi ports*, like this ?

card {
	ports {
		ports@0 {
			port@0 { /* SoC.0 */ };
			port@1 { /* Codec0*/ };
		};
		ports@1 {
			port@0 { /* SoC.1 */ };
			port@1 { /* Codec1*/ };
		};
		ports@2 {
			port@0 { /* SoC.2 */ };
			port@1 { /* Codec2*/ };
		};
	};
};

Or can I use grouping, like this ?

card {
	group =	<port@0 port@1>,
		<port@2 port@3>,
		<port@4 port@5>;
	ports {
		port@0 { /* SoC.0 */ };
		port@1 { /* SoC.1 */ };
		port@2 { /* SoC.2 */ };
		port@3 { /* Codec0*/ };
		port@4 { /* Codec1*/ };
		port@5 { /* Codec2*/ };
	};
};

Best regards
---
Kuninori Morimoto
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2017-01-25 23:59 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-19  6:07 Question about OF-graph ports Kuninori Morimoto
     [not found] ` <87r33z4maj.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-19 11:12   ` Mark Brown
2017-01-19 14:58   ` Rob Herring
     [not found]     ` <CAL_Jsq+pDkfijyKV0ALzZUrH-NVzmLaNj6ivAEFO98NUOXGojw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-01-20  1:46       ` Kuninori Morimoto
     [not found]         ` <871svymrnt.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-20 14:22           ` Rob Herring
     [not found]             ` <CAL_JsqLOwQn_hz3B5gFL-zr-Pm_8PX+b-sAQhLwkioD7E-ODAw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-01-23  6:58               ` Kuninori Morimoto
     [not found]                 ` <87wpdm1cyq.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-23  7:33                   ` [RFC][PATCH] ASoC: add simple-graph-card document Kuninori Morimoto
     [not found]                     ` <87tw8q1bct.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-23 18:14                       ` [alsa-devel] " Sylwester Nawrocki
     [not found]                         ` <6e3976e8-d26c-e39e-e886-4ab00ce79d01-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2017-01-24  0:30                           ` Kuninori Morimoto
     [not found]                             ` <87sho9fgju.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-24 14:10                               ` Sylwester Nawrocki
     [not found]                                 ` <c4541388-904f-9886-7e8a-a609ed9feaa7-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2017-01-24 16:41                                   ` Mark Brown
     [not found]                                     ` <20170124164126.jquggggl7ct5znuc-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2017-01-24 23:55                                       ` Kuninori Morimoto
2017-01-24 23:55                                       ` Kuninori Morimoto
2017-01-25  0:00                                   ` Kuninori Morimoto
2017-01-25  0:09                                   ` Kuninori Morimoto
     [not found]                                     ` <87mveg9f4x.wl%kuninori.morimoto.gx-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2017-01-25 10:27                                       ` Sylwester Nawrocki
     [not found]                                         ` <b1626b5a-31f0-5d82-1c73-633ca85996d0-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2017-01-25 23:59                                           ` Kuninori Morimoto

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.