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

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

OMAPDSS: HDMI: Add op to get audio DMA port address offset



It could be possible that the DMA port differs accross diferent HDMI IPs. Thus,
add an IP-specific function to obtain the address offset and size of the DMA
data port.

Signed-off-by: default avatarRicardo Neri <ricardo.neri@ti.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent d18bc455
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -820,6 +820,7 @@ static const struct ti_hdmi_ip_ops omap4_hdmi_functions = {
	.audio_start		=       ti_hdmi_4xxx_audio_start,
	.audio_stop		=       ti_hdmi_4xxx_audio_stop,
	.audio_config		=	ti_hdmi_4xxx_audio_config,
	.audio_get_dma_port	=	ti_hdmi_4xxx_audio_get_dma_port,
#endif

};
+3 −0
Original line number Diff line number Diff line
@@ -102,6 +102,8 @@ struct ti_hdmi_ip_ops {

	int (*audio_config)(struct hdmi_ip_data *ip_data,
		struct omap_dss_audio *audio);

	int (*audio_get_dma_port)(u32 *offset, u32 *size);
#endif

};
@@ -183,5 +185,6 @@ int ti_hdmi_4xxx_audio_start(struct hdmi_ip_data *ip_data);
void ti_hdmi_4xxx_audio_stop(struct hdmi_ip_data *ip_data);
int ti_hdmi_4xxx_audio_config(struct hdmi_ip_data *ip_data,
		struct omap_dss_audio *audio);
int ti_hdmi_4xxx_audio_get_dma_port(u32 *offset, u32 *size);
#endif
#endif
+9 −0
Original line number Diff line number Diff line
@@ -1418,4 +1418,13 @@ void ti_hdmi_4xxx_audio_stop(struct hdmi_ip_data *ip_data)
	REG_FLD_MOD(hdmi_wp_base(ip_data),
		    HDMI_WP_AUDIO_CTRL, false, 30, 30);
}

int ti_hdmi_4xxx_audio_get_dma_port(u32 *offset, u32 *size)
{
	if (!offset || !size)
		return -EINVAL;
	*offset = HDMI_WP_AUDIO_DATA;
	*size = 4;
	return 0;
}
#endif