|  | @@ -585,3 +585,106 @@ static struct clksrc_sources clkset_uart = {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  static struct clk *clkset_group1_list[] = {
 | 
	
		
			
				|  |  |  	[0] = &clk_sclk_a2m.clk,
 | 
	
		
			
				|  |  | +	[1] = &clk_mout_mpll.clk,
 | 
	
		
			
				|  |  | +	[2] = &clk_mout_epll.clk,
 | 
	
		
			
				|  |  | +	[3] = &clk_sclk_vpll.clk,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_sources clkset_group1 = {
 | 
	
		
			
				|  |  | +	.sources	= clkset_group1_list,
 | 
	
		
			
				|  |  | +	.nr_sources	= ARRAY_SIZE(clkset_group1_list),
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clk *clkset_sclk_onenand_list[] = {
 | 
	
		
			
				|  |  | +	[0] = &clk_hclk_psys.clk,
 | 
	
		
			
				|  |  | +	[1] = &clk_hclk_dsys.clk,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_sources clkset_sclk_onenand = {
 | 
	
		
			
				|  |  | +	.sources	= clkset_sclk_onenand_list,
 | 
	
		
			
				|  |  | +	.nr_sources	= ARRAY_SIZE(clkset_sclk_onenand_list),
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clk *clkset_sclk_dac_list[] = {
 | 
	
		
			
				|  |  | +	[0] = &clk_sclk_vpll.clk,
 | 
	
		
			
				|  |  | +	[1] = &clk_sclk_hdmiphy,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_sources clkset_sclk_dac = {
 | 
	
		
			
				|  |  | +	.sources	= clkset_sclk_dac_list,
 | 
	
		
			
				|  |  | +	.nr_sources	= ARRAY_SIZE(clkset_sclk_dac_list),
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_clk clk_sclk_dac = {
 | 
	
		
			
				|  |  | +	.clk		= {
 | 
	
		
			
				|  |  | +		.name		= "sclk_dac",
 | 
	
		
			
				|  |  | +		.enable		= s5pv210_clk_mask0_ctrl,
 | 
	
		
			
				|  |  | +		.ctrlbit	= (1 << 2),
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	.sources	= &clkset_sclk_dac,
 | 
	
		
			
				|  |  | +	.reg_src	= { .reg = S5P_CLK_SRC1, .shift = 8, .size = 1 },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_clk clk_sclk_pixel = {
 | 
	
		
			
				|  |  | +	.clk		= {
 | 
	
		
			
				|  |  | +		.name		= "sclk_pixel",
 | 
	
		
			
				|  |  | +		.parent		= &clk_sclk_vpll.clk,
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	.reg_div	= { .reg = S5P_CLK_DIV1, .shift = 0, .size = 4},
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clk *clkset_sclk_hdmi_list[] = {
 | 
	
		
			
				|  |  | +	[0] = &clk_sclk_pixel.clk,
 | 
	
		
			
				|  |  | +	[1] = &clk_sclk_hdmiphy,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_sources clkset_sclk_hdmi = {
 | 
	
		
			
				|  |  | +	.sources	= clkset_sclk_hdmi_list,
 | 
	
		
			
				|  |  | +	.nr_sources	= ARRAY_SIZE(clkset_sclk_hdmi_list),
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_clk clk_sclk_hdmi = {
 | 
	
		
			
				|  |  | +	.clk		= {
 | 
	
		
			
				|  |  | +		.name		= "sclk_hdmi",
 | 
	
		
			
				|  |  | +		.enable		= s5pv210_clk_mask0_ctrl,
 | 
	
		
			
				|  |  | +		.ctrlbit	= (1 << 0),
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	.sources	= &clkset_sclk_hdmi,
 | 
	
		
			
				|  |  | +	.reg_src	= { .reg = S5P_CLK_SRC1, .shift = 0, .size = 1 },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clk *clkset_sclk_mixer_list[] = {
 | 
	
		
			
				|  |  | +	[0] = &clk_sclk_dac.clk,
 | 
	
		
			
				|  |  | +	[1] = &clk_sclk_hdmi.clk,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_sources clkset_sclk_mixer = {
 | 
	
		
			
				|  |  | +	.sources	= clkset_sclk_mixer_list,
 | 
	
		
			
				|  |  | +	.nr_sources	= ARRAY_SIZE(clkset_sclk_mixer_list),
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_clk clk_sclk_mixer = {
 | 
	
		
			
				|  |  | +	.clk		= {
 | 
	
		
			
				|  |  | +		.name		= "sclk_mixer",
 | 
	
		
			
				|  |  | +		.enable		= s5pv210_clk_mask0_ctrl,
 | 
	
		
			
				|  |  | +		.ctrlbit	= (1 << 1),
 | 
	
		
			
				|  |  | +	},
 | 
	
		
			
				|  |  | +	.sources = &clkset_sclk_mixer,
 | 
	
		
			
				|  |  | +	.reg_src = { .reg = S5P_CLK_SRC1, .shift = 4, .size = 1 },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clksrc_clk *sclk_tv[] = {
 | 
	
		
			
				|  |  | +	&clk_sclk_dac,
 | 
	
		
			
				|  |  | +	&clk_sclk_pixel,
 | 
	
		
			
				|  |  | +	&clk_sclk_hdmi,
 | 
	
		
			
				|  |  | +	&clk_sclk_mixer,
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +static struct clk *clkset_sclk_audio0_list[] = {
 | 
	
		
			
				|  |  | +	[0] = &clk_ext_xtal_mux,
 | 
	
		
			
				|  |  | +	[1] = &clk_pcmcdclk0,
 | 
	
		
			
				|  |  | +	[2] = &clk_sclk_hdmi27m,
 | 
	
		
			
				|  |  | +	[3] = &clk_sclk_usbphy0,
 | 
	
		
			
				|  |  | +	[4] = &clk_sclk_usbphy1,
 | 
	
		
			
				|  |  | +	[5] = &clk_sclk_hdmiphy,
 | 
	
		
			
				|  |  | +	[6] = &clk_mout_mpll.clk,
 |