2010-07-21 10:13:21 +00:00
/*
* SH - Mobile High - Definition Multimedia Interface ( HDMI )
*
* Copyright ( C ) 2010 , Guennadi Liakhovetski < g . liakhovetski @ gmx . de >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation .
*/
# ifndef SH_MOBILE_HDMI_H
# define SH_MOBILE_HDMI_H
struct sh_mobile_lcdc_chan_cfg ;
struct device ;
2010-11-02 11:27:16 +00:00
struct clk ;
2010-07-21 10:13:21 +00:00
2010-08-31 14:46:41 +09:00
/*
* flags format
*
2012-05-07 21:07:49 -07:00
* 0x00000CBA
2010-08-31 14:46:41 +09:00
*
* A : Audio source select
2012-05-07 21:07:20 -07:00
* B : Int output option
2012-05-07 21:07:49 -07:00
* C : Chip specific option
2010-08-31 14:46:41 +09:00
*/
/* Audio source select */
2010-09-09 11:48:01 +09:00
# define HDMI_SND_SRC_MASK (0xF << 0)
# define HDMI_SND_SRC_I2S (0 << 0) /* default */
# define HDMI_SND_SRC_SPDIF (1 << 0)
# define HDMI_SND_SRC_DSD (2 << 0)
# define HDMI_SND_SRC_HBR (3 << 0)
2010-08-31 14:46:41 +09:00
2012-05-07 21:07:20 -07:00
/* Int output option */
# define HDMI_OUTPUT_PUSH_PULL (1 << 4) /* System control : output mode */
# define HDMI_OUTPUT_POLARITY_HI (1 << 5) /* System control : output polarity */
2012-05-07 21:07:49 -07:00
/* Chip specific option */
# define HDMI_32BIT_REG (1 << 8)
2012-05-07 21:08:17 -07:00
# define HDMI_HAS_HTOP1 (1 << 9)
2012-05-07 21:07:20 -07:00
2010-07-21 10:13:21 +00:00
struct sh_mobile_hdmi_info {
2010-08-31 14:46:41 +09:00
unsigned int flags ;
2010-11-02 11:27:16 +00:00
long ( * clk_optimize_parent ) ( unsigned long target , unsigned long * best_freq ,
unsigned long * parent_freq ) ;
2010-07-21 10:13:21 +00:00
} ;
# endif