 c36940e678
			
		
	
	
	c36940e678
	
	
	
		
			
			The HDMI clock has to be reconfigured for different video modes. However, the precision of the supplying SoC clock on SH-Mobile systems is often insufficient. This patch allows to additionally reconfigure the parent clock to achieve the optimal HDMI clock frequency, in case this is supported by the platform. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
		
			
				
	
	
		
			41 lines
		
	
	
	
		
			972 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			972 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * 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;
 | |
| struct clk;
 | |
| 
 | |
| /*
 | |
|  * flags format
 | |
|  *
 | |
|  * 0x0000000A
 | |
|  *
 | |
|  * A: Audio source select
 | |
|  */
 | |
| 
 | |
| /* Audio source select */
 | |
| #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)
 | |
| 
 | |
| struct sh_mobile_hdmi_info {
 | |
| 	struct sh_mobile_lcdc_chan_cfg	*lcd_chan;
 | |
| 	struct device			*lcd_dev;
 | |
| 	unsigned int			 flags;
 | |
| 	long (*clk_optimize_parent)(unsigned long target, unsigned long *best_freq,
 | |
| 				    unsigned long *parent_freq);
 | |
| };
 | |
| 
 | |
| #endif
 |