blob: 2699635a99efefe2de7888ded7c8300c7a0af1c9 [file] [log] [blame]
Guennadi Liakhovetski6011bde2010-07-21 10:13:21 +00001/*
2 * SH-Mobile High-Definition Multimedia Interface (HDMI)
3 *
4 * Copyright (C) 2010, Guennadi Liakhovetski <g.liakhovetski@gmx.de>
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
14struct sh_mobile_lcdc_chan_cfg;
15struct device;
Guennadi Liakhovetskic36940e2010-11-02 11:27:16 +000016struct clk;
Guennadi Liakhovetski6011bde2010-07-21 10:13:21 +000017
Kuninori Morimoto6d865772010-08-31 14:46:41 +090018/*
19 * flags format
20 *
Kuninori Morimotoe0defc82012-05-07 21:07:20 -070021 * 0x000000BA
Kuninori Morimoto6d865772010-08-31 14:46:41 +090022 *
23 * A: Audio source select
Kuninori Morimotoe0defc82012-05-07 21:07:20 -070024 * B: Int output option
Kuninori Morimoto6d865772010-08-31 14:46:41 +090025 */
26
27/* Audio source select */
Kuninori Morimotodec6aa42010-09-09 11:48:01 +090028#define HDMI_SND_SRC_MASK (0xF << 0)
29#define HDMI_SND_SRC_I2S (0 << 0) /* default */
30#define HDMI_SND_SRC_SPDIF (1 << 0)
31#define HDMI_SND_SRC_DSD (2 << 0)
32#define HDMI_SND_SRC_HBR (3 << 0)
Kuninori Morimoto6d865772010-08-31 14:46:41 +090033
Kuninori Morimotoe0defc82012-05-07 21:07:20 -070034/* Int output option */
35#define HDMI_OUTPUT_PUSH_PULL (1 << 4) /* System control : output mode */
36#define HDMI_OUTPUT_POLARITY_HI (1 << 5) /* System control : output polarity */
37
38
Guennadi Liakhovetski6011bde2010-07-21 10:13:21 +000039struct sh_mobile_hdmi_info {
Kuninori Morimoto6d865772010-08-31 14:46:41 +090040 unsigned int flags;
Guennadi Liakhovetskic36940e2010-11-02 11:27:16 +000041 long (*clk_optimize_parent)(unsigned long target, unsigned long *best_freq,
42 unsigned long *parent_freq);
Guennadi Liakhovetski6011bde2010-07-21 10:13:21 +000043};
44
45#endif