static int __init smdkc110_init(void)
{
	int ret;
	s3cdbg("Entered %s\n", __FUNCTION__);

	s3c_gpio_cfgpin (S5PC11X_GPC1(0), S3C_GPIO_SFN(3));		 //GPC1CON[0] spdif_0_out
	s3c_gpio_setpull(S5PC11X_GPC1(0), S3C_GPIO_PULL_NONE);
	s3c_gpio_setpin (S5PC11X_GPC1(0), S3C_GPIO_PULL_NONE);

	s3c_gpio_cfgpin (S5PC11X_GPC1(1), S3C_GPIO_SFN(3));		 //GPC1CON[1] spdif_extcal
	s3c_gpio_setpull(S5PC11X_GPC1(1), S3C_GPIO_PULL_NONE);	
	s3c_gpio_setpin (S5PC11X_GPC1(1), S3C_GPIO_PULL_NONE);


	//Modified as per 2.6.29
	ret=snd_soc_register_dais(spdif_dai,ARRAY_SIZE(spdif_dai));
	if(ret){
		s3cdbg("spdif_dai registration failed");
		return ret;
	}
	smdkc110_snd_device = platform_device_alloc("soc-audio", 0);
	if (!smdkc110_snd_device){
		s3cdbg("soc-audio allocation failed");
		return -ENOMEM;
	}
	platform_set_drvdata(smdkc110_snd_device, &smdkc110_snd_devdata);
	smdkc110_snd_devdata.dev = &smdkc110_snd_device->dev;
	ret = platform_device_add(smdkc110_snd_device);
	if (ret)
		platform_device_put(smdkc110_snd_device);
	
	return ret;
}
Ejemplo n.º 2
0
			.label	= "GPB",
		},
	}, 
	{
		.base	= S5PC11X_GPC0_BASE,
		.config	= &gpio_cfg,
		.chip	= {
			.base	= S5PC11X_GPC0(0),
			.ngpio	= S5PC11X_GPIO_C0_NR,
			.label	= "GPC0",
		},
	}, {
		.base	= S5PC11X_GPC1_BASE,
		.config	= &gpio_cfg,
		.chip	= {
			.base	= S5PC11X_GPC1(0),
			.ngpio	= S5PC11X_GPIO_C1_NR,
			.label	= "GPC1",
		},
	}, {
		.base	= S5PC11X_GPD0_BASE,
		.config	= &gpio_cfg,
		.chip	= {
			.base	= S5PC11X_GPD0(0),
			.ngpio	= S5PC11X_GPIO_D0_NR,
			.label	= "GPD0",
		},
	}, {
		.base	= S5PC11X_GPD1_BASE,
		.config	= &gpio_cfg,
		.chip	= {