aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Stultz <john.stultz@linaro.org>2017-06-14 14:25:17 -0400
committerWei Xu <xuwei5@hisilicon.com>2017-06-16 10:31:21 -0400
commit0cf6a8e2fb8413b581fc0d960f7831b0e7583406 (patch)
tree420c3f6a5b24fd434e26e1d8bbe45f4eaa73e0db
parent7d8c36674b965fca5ed4a112bc9642703fa657b6 (diff)
arm64: dts: hi6220: Add k3-dma and i2s/hdmi audio support
Add entry for k3-dma driver and i2s/hdmi audio devices. This enables HDMI audio output. Cc: Zhangfei Gao <zhangfei.gao@linaro.org> Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Mark Brown <broonie@kernel.org> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Cc: Wei Xu <xuwei5@hisilicon.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Andy Green <andy@warmcat.com> Cc: Dave Long <dave.long@linaro.org> Cc: Guodong Xu <guodong.xu@linaro.org> Cc: Antonio Borneo <borneo.antonio@gmail.com> Cc: Olof Johansson <olof@lixom.net> Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: John Stultz <john.stultz@linaro.org> v2: * Split core i2s entry into dtsi and hdmi specific bits into hikey dts v4: * Rework simple-card to use many-dai-links method, as there may be other links in the future v5: * Rework audio description to use the audio-card-graph method as requested by Mark. Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
-rw-r--r--arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts34
-rw-r--r--arch/arm64/boot/dts/hisilicon/hi6220.dtsi26
2 files changed, 57 insertions, 3 deletions
diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
index 75bce2d0b1a8..ae8a8c5c21d2 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
+++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
@@ -418,6 +418,11 @@
418 method = "smc"; 418 method = "smc";
419 }; 419 };
420 }; 420 };
421
422 sound_card {
423 compatible = "audio-graph-card";
424 dais = <&i2s0_port0>;
425 };
421}; 426};
422 427
423&uart2 { 428&uart2 {
@@ -458,10 +463,33 @@
458 interrupts = <1 2>; 463 interrupts = <1 2>;
459 pd-gpio = <&gpio0 4 0>; 464 pd-gpio = <&gpio0 4 0>;
460 adi,dsi-lanes = <4>; 465 adi,dsi-lanes = <4>;
466 #sound-dai-cells = <0>;
467
468 ports {
469 #address-cells = <1>;
470 #size-cells = <0>;
471 port@0 {
472 adv7533_in: endpoint {
473 remote-endpoint = <&dsi_out0>;
474 };
475 };
476 port@2 {
477 reg = <2>;
478 codec_endpoint: endpoint {
479 remote-endpoint = <&i2s0_cpu_endpoint>;
480 };
481 };
482 };
483 };
484};
461 485
462 port { 486&i2s0 {
463 adv7533_in: endpoint { 487
464 remote-endpoint = <&dsi_out0>; 488 ports {
489 i2s0_port0: port@0 {
490 i2s0_cpu_endpoint: endpoint {
491 remote-endpoint = <&codec_endpoint>;
492 dai-format = "i2s";
465 }; 493 };
466 }; 494 };
467 }; 495 };
diff --git a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
index 1e5129b19280..bead85228fe7 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
+++ b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
@@ -332,6 +332,19 @@
332 status = "disabled"; 332 status = "disabled";
333 }; 333 };
334 334
335 dma0: dma@f7370000 {
336 compatible = "hisilicon,k3-dma-1.0";
337 reg = <0x0 0xf7370000 0x0 0x1000>;
338 #dma-cells = <1>;
339 dma-channels = <15>;
340 dma-requests = <32>;
341 interrupts = <0 84 4>;
342 clocks = <&sys_ctrl HI6220_EDMAC_ACLK>;
343 dma-no-cci;
344 dma-type = "hi6220_dma";
345 status = "ok";
346 };
347
335 dual_timer0: timer@f8008000 { 348 dual_timer0: timer@f8008000 {
336 compatible = "arm,sp804", "arm,primecell"; 349 compatible = "arm,sp804", "arm,primecell";
337 reg = <0x0 0xf8008000 0x0 0x1000>; 350 reg = <0x0 0xf8008000 0x0 0x1000>;
@@ -834,6 +847,19 @@
834 #thermal-sensor-cells = <1>; 847 #thermal-sensor-cells = <1>;
835 }; 848 };
836 849
850 i2s0: i2s@f7118000{
851 compatible = "hisilicon,hi6210-i2s";
852 reg = <0x0 0xf7118000 0x0 0x8000>; /* i2s unit */
853 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; /* 155 "DigACodec_intr"-32 */
854 clocks = <&sys_ctrl HI6220_DACODEC_PCLK>,
855 <&sys_ctrl HI6220_BBPPLL0_DIV>;
856 clock-names = "dacodec", "i2s-base";
857 dmas = <&dma0 15 &dma0 14>;
858 dma-names = "rx", "tx";
859 hisilicon,sysctrl-syscon = <&sys_ctrl>;
860 #sound-dai-cells = <1>;
861 };
862
837 thermal-zones { 863 thermal-zones {
838 864
839 cls0: cls0 { 865 cls0: cls0 {