static int s5pv310_pcm_cfg_gpio(struct platform_device *pdev)
{
	switch (pdev->id) {
	case 1:
		s3c_gpio_cfgpin(S5PV310_GPC0(0), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC0(1), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC0(2), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC0(3), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC0(4), S3C_GPIO_SFN(3));
		break;
	case 2:
		s3c_gpio_cfgpin(S5PV310_GPC1(0), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC1(1), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC1(2), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC1(3), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPC1(4), S3C_GPIO_SFN(3));
		break;
	case 0:
		s3c_gpio_cfgpin(S5PV310_GPZ(0), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(1), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(2), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(3), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(4), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(5), S3C_GPIO_SFN(3));
		s3c_gpio_cfgpin(S5PV310_GPZ(6), S3C_GPIO_SFN(3));
		break;
	default:
		printk(KERN_DEBUG "Invalid PCM Controller number!");
		return -EINVAL;
	}

	return 0;
}
static int s5pv310_cfg_i2s(struct platform_device *pdev)
{
	/* configure GPIO for i2s port */
	switch (pdev->id) {
	case 1:
		s3c_gpio_cfgpin(S5PV310_GPC0(0), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC0(1), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC0(2), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC0(3), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC0(4), S3C_GPIO_SFN(2));
		break;
	case 2:
		s3c_gpio_cfgpin(S5PV310_GPC1(0), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC1(1), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC1(2), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC1(3), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPC1(4), S3C_GPIO_SFN(2));
		break;
	case -1:
		s3c_gpio_cfgpin(S5PV310_GPZ(0), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(1), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(2), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(3), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(4), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(5), S3C_GPIO_SFN(2));
		s3c_gpio_cfgpin(S5PV310_GPZ(6), S3C_GPIO_SFN(2));
		break;

	default:
		printk(KERN_ERR "Invalid Device %d\n", pdev->id);
		return -EINVAL;
	}

	return 0;
}
static int s5pv310_ac97_cfg_gpio(struct platform_device *pdev)
{
	s3c_gpio_cfgpin(S5PV310_GPC0(0), S3C_GPIO_SFN(4));
	s3c_gpio_cfgpin(S5PV310_GPC0(1), S3C_GPIO_SFN(4));
	s3c_gpio_cfgpin(S5PV310_GPC0(2), S3C_GPIO_SFN(4));
	s3c_gpio_cfgpin(S5PV310_GPC0(3), S3C_GPIO_SFN(4));
	s3c_gpio_cfgpin(S5PV310_GPC0(4), S3C_GPIO_SFN(4));

	return 0;
}
Beispiel #4
0
		},
	}, {
		.chip	= {
			.base	= S5PV310_GPA1(0),
			.ngpio	= S5PV310_GPIO_A1_NR,
			.label	= "GPA1",
		},
	}, {
		.chip	= {
			.base	= S5PV310_GPB(0),
			.ngpio	= S5PV310_GPIO_B_NR,
			.label	= "GPB",
		},
	}, {
		.chip	= {
			.base	= S5PV310_GPC0(0),
			.ngpio	= S5PV310_GPIO_C0_NR,
			.label	= "GPC0",
		},
	}, {
		.chip	= {
			.base	= S5PV310_GPC1(0),
			.ngpio	= S5PV310_GPIO_C1_NR,
			.label	= "GPC1",
		},
	}, {
		.chip	= {
			.base	= S5PV310_GPD0(0),
			.ngpio	= S5PV310_GPIO_D0_NR,
			.label	= "GPD0",
		},
Beispiel #5
0
static int s5pv310_ac97_cfg_gpio(struct platform_device *pdev)
{
	return s3c_gpio_cfgpin_range(S5PV310_GPC0(0), 5, S3C_GPIO_SFN(4));
}