Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754800AbbFSQQL (ORCPT ); Fri, 19 Jun 2015 12:16:11 -0400 Received: from regular1.263xmail.com ([211.150.99.139]:48150 "EHLO regular1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754721AbbFSQQE (ORCPT ); Fri, 19 Jun 2015 12:16:04 -0400 X-Greylist: delayed 53005 seconds by postgrey-1.27 at vger.kernel.org; Fri, 19 Jun 2015 12:16:03 EDT X-263anti-spam: KSV:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 X-RL-SENDER: ykk@rock-chips.com X-FST-TO: linux-rockchip@lists.infradead.org X-SENDER-IP: 112.111.49.167 X-LOGIN-NAME: ykk@rock-chips.com X-UNIQUE-TAG: X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 From: Yakir Yang To: linux-rockchip@lists.infradead.org, alsa-devel , dri-devel , linux-kernel@vger.kernel.org, linux-arm-kernel Cc: David Airlie , Philipp Zabel , Russell King , Andy Yan , Yakir Yang , Daniel Kurtz , Fabio Estevam , Mark Brown , Takashi Iwai , Jaroslav Kysela , Heiko Stuebner , Liam Girdwood , Paul Bolle Subject: [PATCH v5 0/6] Add dw_hdmi i2s audio support Date: Sat, 20 Jun 2015 00:13:37 +0800 Message-Id: <1434730417-10629-1-git-send-email-ykk@rock-chips.com> X-Mailer: git-send-email 1.7.9.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4693 Lines: 98 As Russell have send an series patches for dw_hdmi audio, and most important it works well on rockchip platform. Cause some patches have been achieve in Russell's series, so I abondon some patches in this verison. Here are the abondon patches that already be achieved: * drm: bridge/dw_hdmi: adjust n/cts setting order * drm: bridge/dw_hdmi: set ncts_atomic_write & cts_manual * drm: bridge/dw_hdmi: combine hdmi_set_clock_regenerator_n() and hdmi_regenerate_cts() * drm: bridge/dw_hdmi: add enable/disable to dw_hdmi_audio callbacks And I also abondon some interrupt patches that is not a common bug in dw_hdmi driver, but is a rockchip platform bug which HDMI registers would reset by CRU module after system suspend/resume (in this case HPD interrupt mask would reset, then driver can't respond hot plug event after system resume). Here are the abondon patches that used to "fix" dw_hdmi interrupt bug: * drm: bridge/dw_hdmi: add irq control to suspend/resume * drm: bridge/dw_hdmi: wrap irq control in fucntions * drm: rockchip/dw_hdmi_rockchip: add resume/suspend support Here are the leave list that I have make in my series: - add n/cts combinations for more display modes - enable audio support when sink device is HDMI monitor and has audio - rename dw_hdmi-ahb-audio.h to dw_hdmi-audio.h - add dw_hdmi i2s audio driver - add rockchip_hdmi_audio sound card driver - add dt-bindings for documentation for rockchip_hdmi_audio driver Changes in v5: - make more words in commit message. - Take Russell suggest that create "sink_has_audio" and "sink_is_hdmi" in struct hdmi, and keep vmode's mdvi changeless. - Config fc_invidconf to HDMI mode when sink device is HDMI monitor. - Take Mark Brown suggest that remove jack_status recorded, report jack status directly when hdmi plug happend, and remove devm_kfree and devm_free_irq. - Correct the MODULE_LICENSE to "GPL v2" - Move source from sound/soc/codecs to drivers/gpu/drm/bridge/ - Rename dai driver name to "dw-hdmi-i2s-hifi" - Take Mark Brown suggest that remove the no useful code in probe func, and remove the snd_soc_dai_set_fmt() snd_soc_unregister_card(), remove those noisy dev_info() - Rename codec_dai_name to "dw-hdmi-i2s-hifi" Changes in v4: - Take Dainel suggest that introduce drm_detect_monitor_audio() to judge whether source should config audio. - Replace delaywork with irq thread, and add suspend/resume interfaces, replace "dw-hdmi-audio" with consecutive strings. - Add ".pm = &snd_soc_pm_ops," Changes in v3: - Keep audio format config function in dw-hdmi-audio driver and remove audio_config & get_connect_status functions, move jack control to dw-hdmi-audio completely. - Delete the operation of jack in rockchip-hdmi-audio driver, get ready to switch to simple-audio-card driver. - modify cpu-of-node to i2s-controller Changes in v2: - Update dw_hdmi audio control interfaces, and adjust jack report process - give "codec-name" & "codec-dai-name" an const name - remove codec-name and codec-dai-name - rename rockchip,rockchip-hdmi-audio.txt to rockchip,rockchip-dw-hdmi-audio.txt Yakir Yang (6): drm: bridge/dw_hdmi: add audio support for more display resolutions drm: bridge/dw_hdmi: enable audio when sink device is HDMI and has audio drm: bridge/dw_hdmi: rename dw_hdmi-ahb-audio.h to dw_hdmi-audio.h drm: bridge/dw_hdmi-i2s-audio: add audio driver ASoC: rockchip/rockchip-hdmi-audio: add sound driver for hdmi audio dt-bindings: Add documentation for rockchip_hdmi_audio driver .../sound/rockchip,rockchip-dw-hdmi-audio.txt | 12 + drivers/gpu/drm/bridge/Kconfig | 9 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/dw_hdmi-ahb-audio.c | 2 +- .../{dw_hdmi-ahb-audio.h => dw_hdmi-audio.h} | 0 drivers/gpu/drm/bridge/dw_hdmi-i2s-audio.c | 398 +++++++++++++++++++++ drivers/gpu/drm/bridge/dw_hdmi.c | 100 +++++- drivers/gpu/drm/bridge/dw_hdmi.h | 3 + sound/soc/rockchip/Kconfig | 9 + sound/soc/rockchip/Makefile | 2 + sound/soc/rockchip/rockchip_hdmi_audio.c | 138 +++++++ 11 files changed, 658 insertions(+), 16 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rockchip-dw-hdmi-audio.txt rename drivers/gpu/drm/bridge/{dw_hdmi-ahb-audio.h => dw_hdmi-audio.h} (100%) create mode 100644 drivers/gpu/drm/bridge/dw_hdmi-i2s-audio.c create mode 100644 sound/soc/rockchip/rockchip_hdmi_audio.c -- 2.1.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in Please read the FAQ at http://www.tux.org/lkml/