Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
sh_mobile_hdmi.h
Go to the documentation of this file.
1 /*
2  * SH-Mobile High-Definition Multimedia Interface (HDMI)
3  *
4  * Copyright (C) 2010, Guennadi Liakhovetski <[email protected]>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10 
11 #ifndef SH_MOBILE_HDMI_H
12 #define SH_MOBILE_HDMI_H
13 
15 struct device;
16 struct clk;
17 
18 /*
19  * flags format
20  *
21  * 0x00000CBA
22  *
23  * A: Audio source select
24  * B: Int output option
25  * C: Chip specific option
26  */
27 
28 /* Audio source select */
29 #define HDMI_SND_SRC_MASK (0xF << 0)
30 #define HDMI_SND_SRC_I2S (0 << 0) /* default */
31 #define HDMI_SND_SRC_SPDIF (1 << 0)
32 #define HDMI_SND_SRC_DSD (2 << 0)
33 #define HDMI_SND_SRC_HBR (3 << 0)
34 
35 /* Int output option */
36 #define HDMI_OUTPUT_PUSH_PULL (1 << 4) /* System control : output mode */
37 #define HDMI_OUTPUT_POLARITY_HI (1 << 5) /* System control : output polarity */
38 
39 /* Chip specific option */
40 #define HDMI_32BIT_REG (1 << 8)
41 #define HDMI_HAS_HTOP1 (1 << 9)
42 
44  unsigned int flags;
45  long (*clk_optimize_parent)(unsigned long target, unsigned long *best_freq,
46  unsigned long *parent_freq);
47 };
48 
49 #endif