Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e151f7f authored by Ricardo Neri's avatar Ricardo Neri Committed by Tomi Valkeinen
Browse files

OMAPDSS: HDMI: Decouple HDMI audio from ASoC



Instead of having OMAPDSS HDMI audio functionality depending on the
ASoC HDMI audio driver, use a new config option so that
potential users, including ASoC, may select if needed.

Signed-off-by: default avatarRicardo Neri <ricardo.neri@ti.com>
parent 3df9fb5c
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -68,6 +68,10 @@ config OMAP4_DSS_HDMI
	  HDMI Interface. This adds the High Definition Multimedia Interface.
	  HDMI Interface. This adds the High Definition Multimedia Interface.
	  See http://www.hdmi.org/ for HDMI specification.
	  See http://www.hdmi.org/ for HDMI specification.


config OMAP4_DSS_HDMI_AUDIO
	bool
	depends on OMAP4_DSS_HDMI

config OMAP2_DSS_SDI
config OMAP2_DSS_SDI
	bool "SDI support"
	bool "SDI support"
	depends on ARCH_OMAP3
	depends on ARCH_OMAP3
+1 −2
Original line number Original line Diff line number Diff line
@@ -573,8 +573,7 @@ static const struct ti_hdmi_ip_ops omap4_hdmi_functions = {
	.dump_core		=	ti_hdmi_4xxx_core_dump,
	.dump_core		=	ti_hdmi_4xxx_core_dump,
	.dump_pll		=	ti_hdmi_4xxx_pll_dump,
	.dump_pll		=	ti_hdmi_4xxx_pll_dump,
	.dump_phy		=	ti_hdmi_4xxx_phy_dump,
	.dump_phy		=	ti_hdmi_4xxx_phy_dump,
#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
	.audio_enable		=       ti_hdmi_4xxx_wp_audio_enable,
	.audio_enable		=       ti_hdmi_4xxx_wp_audio_enable,
	.audio_disable		=       ti_hdmi_4xxx_wp_audio_disable,
	.audio_disable		=       ti_hdmi_4xxx_wp_audio_disable,
	.audio_start		=       ti_hdmi_4xxx_audio_start,
	.audio_start		=       ti_hdmi_4xxx_audio_start,
+2 −4
Original line number Original line Diff line number Diff line
@@ -108,8 +108,7 @@ struct ti_hdmi_ip_ops {


	void (*dump_phy)(struct hdmi_ip_data *ip_data, struct seq_file *s);
	void (*dump_phy)(struct hdmi_ip_data *ip_data, struct seq_file *s);


#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
	int (*audio_enable)(struct hdmi_ip_data *ip_data);
	int (*audio_enable)(struct hdmi_ip_data *ip_data);


	void (*audio_disable)(struct hdmi_ip_data *ip_data);
	void (*audio_disable)(struct hdmi_ip_data *ip_data);
@@ -190,8 +189,7 @@ void ti_hdmi_4xxx_wp_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_pll_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_pll_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_core_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_core_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_phy_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
void ti_hdmi_4xxx_phy_dump(struct hdmi_ip_data *ip_data, struct seq_file *s);
#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
int ti_hdmi_4xxx_wp_audio_enable(struct hdmi_ip_data *ip_data);
int ti_hdmi_4xxx_wp_audio_enable(struct hdmi_ip_data *ip_data);
void ti_hdmi_4xxx_wp_audio_disable(struct hdmi_ip_data *ip_data);
void ti_hdmi_4xxx_wp_audio_disable(struct hdmi_ip_data *ip_data);
int ti_hdmi_4xxx_audio_start(struct hdmi_ip_data *ip_data);
int ti_hdmi_4xxx_audio_start(struct hdmi_ip_data *ip_data);
+2 −4
Original line number Original line Diff line number Diff line
@@ -29,8 +29,7 @@
#include <linux/string.h>
#include <linux/string.h>
#include <linux/seq_file.h>
#include <linux/seq_file.h>
#include <linux/gpio.h>
#include <linux/gpio.h>
#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
#include <sound/asound.h>
#include <sound/asound.h>
#endif
#endif


@@ -1024,8 +1023,7 @@ void ti_hdmi_4xxx_phy_dump(struct hdmi_ip_data *ip_data, struct seq_file *s)
	DUMPPHY(HDMI_TXPHY_PAD_CFG_CTRL);
	DUMPPHY(HDMI_TXPHY_PAD_CFG_CTRL);
}
}


#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
void hdmi_wp_audio_config_format(struct hdmi_ip_data *ip_data,
void hdmi_wp_audio_config_format(struct hdmi_ip_data *ip_data,
					struct hdmi_audio_format *aud_fmt)
					struct hdmi_audio_format *aud_fmt)
{
{
+1 −2
Original line number Original line Diff line number Diff line
@@ -435,8 +435,7 @@ struct hdmi_core_audio_config {
	bool					en_spdif;
	bool					en_spdif;
};
};


#if defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI) || \
#if defined(CONFIG_OMAP4_DSS_HDMI_AUDIO)
	defined(CONFIG_SND_OMAP_SOC_OMAP4_HDMI_MODULE)
int hdmi_config_audio_acr(struct hdmi_ip_data *ip_data,
int hdmi_config_audio_acr(struct hdmi_ip_data *ip_data,
				u32 sample_freq, u32 *n, u32 *cts);
				u32 sample_freq, u32 *n, u32 *cts);
void hdmi_core_audio_infoframe_config(struct hdmi_ip_data *ip_data,
void hdmi_core_audio_infoframe_config(struct hdmi_ip_data *ip_data,