diff options
author | Olof Johansson <olof@lixom.net> | 2012-01-17 01:46:19 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-01-17 01:46:19 -0500 |
commit | 090e648a20a43d71fc2d63e0d8ff8ec6822e2396 (patch) | |
tree | bc8f67d9c5b0de5a20b251e4fd1f411cc8277deb /arch/arm/mach-s3c64xx | |
parent | 8b0f6d12de91345190f234edba781b2fd03257b6 (diff) | |
parent | 815ed6fc0a4d82bb39ed43d230c4e516214987e7 (diff) |
Merge branch 'samsung-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes
* 'samsung-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
ARM: EXYNOS: Invert VCLK polarity for framebuffer on ORIGEN
ARM: S3C64XX: Fix interrupt configuration for PCA935x on Cragganmore
ARM: S3C64XX: Fix the memory mapped GPIOs on Cragganmore
ARM: S3C64XX: Remove hsmmc1 from Cragganmore
ARM: S3C64XX: Remove unconditional power domain disables
ARM: SAMSUNG: Declare struct platform_device in plat/s3c64xx-spi.h
ARM: SAMSUNG: dma-ops.h needs mach/dma.h
ARM: SAMSUNG: Guard against multiple inclusion of plat/dma.h
Diffstat (limited to 'arch/arm/mach-s3c64xx')
-rw-r--r-- | arch/arm/mach-s3c64xx/include/mach/crag6410.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-s3c64xx/mach-crag6410.c | 13 | ||||
-rw-r--r-- | arch/arm/mach-s3c64xx/pm.c | 13 |
3 files changed, 4 insertions, 23 deletions
diff --git a/arch/arm/mach-s3c64xx/include/mach/crag6410.h b/arch/arm/mach-s3c64xx/include/mach/crag6410.h index 5d55ab018b6b..4cb2f951f1e9 100644 --- a/arch/arm/mach-s3c64xx/include/mach/crag6410.h +++ b/arch/arm/mach-s3c64xx/include/mach/crag6410.h | |||
@@ -21,5 +21,6 @@ | |||
21 | #define CODEC_GPIO_BASE (GPIO_BOARD_START + 8) | 21 | #define CODEC_GPIO_BASE (GPIO_BOARD_START + 8) |
22 | #define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 32) | 22 | #define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 32) |
23 | #define BANFF_PMIC_GPIO_BASE (GPIO_BOARD_START + 64) | 23 | #define BANFF_PMIC_GPIO_BASE (GPIO_BOARD_START + 64) |
24 | #define MMGPIO_GPIO_BASE (GPIO_BOARD_START + 96) | ||
24 | 25 | ||
25 | #endif | 26 | #endif |
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c index 1cc91d794c97..8077f650eb0e 100644 --- a/arch/arm/mach-s3c64xx/mach-crag6410.c +++ b/arch/arm/mach-s3c64xx/mach-crag6410.c | |||
@@ -260,6 +260,7 @@ static struct platform_device crag6410_dm9k_device = { | |||
260 | 260 | ||
261 | static struct resource crag6410_mmgpio_resource[] = { | 261 | static struct resource crag6410_mmgpio_resource[] = { |
262 | [0] = { | 262 | [0] = { |
263 | .name = "dat", | ||
263 | .start = S3C64XX_PA_XM0CSN4 + 1, | 264 | .start = S3C64XX_PA_XM0CSN4 + 1, |
264 | .end = S3C64XX_PA_XM0CSN4 + 1, | 265 | .end = S3C64XX_PA_XM0CSN4 + 1, |
265 | .flags = IORESOURCE_MEM, | 266 | .flags = IORESOURCE_MEM, |
@@ -272,7 +273,7 @@ static struct platform_device crag6410_mmgpio = { | |||
272 | .resource = crag6410_mmgpio_resource, | 273 | .resource = crag6410_mmgpio_resource, |
273 | .num_resources = ARRAY_SIZE(crag6410_mmgpio_resource), | 274 | .num_resources = ARRAY_SIZE(crag6410_mmgpio_resource), |
274 | .dev.platform_data = &(struct bgpio_pdata) { | 275 | .dev.platform_data = &(struct bgpio_pdata) { |
275 | .base = -1, | 276 | .base = MMGPIO_GPIO_BASE, |
276 | }, | 277 | }, |
277 | }; | 278 | }; |
278 | 279 | ||
@@ -328,7 +329,6 @@ static struct platform_device wallvdd_device = { | |||
328 | 329 | ||
329 | static struct platform_device *crag6410_devices[] __initdata = { | 330 | static struct platform_device *crag6410_devices[] __initdata = { |
330 | &s3c_device_hsmmc0, | 331 | &s3c_device_hsmmc0, |
331 | &s3c_device_hsmmc1, | ||
332 | &s3c_device_hsmmc2, | 332 | &s3c_device_hsmmc2, |
333 | &s3c_device_i2c0, | 333 | &s3c_device_i2c0, |
334 | &s3c_device_i2c1, | 334 | &s3c_device_i2c1, |
@@ -355,7 +355,7 @@ static struct platform_device *crag6410_devices[] __initdata = { | |||
355 | 355 | ||
356 | static struct pca953x_platform_data crag6410_pca_data = { | 356 | static struct pca953x_platform_data crag6410_pca_data = { |
357 | .gpio_base = PCA935X_GPIO_BASE, | 357 | .gpio_base = PCA935X_GPIO_BASE, |
358 | .irq_base = 0, | 358 | .irq_base = -1, |
359 | }; | 359 | }; |
360 | 360 | ||
361 | /* VDDARM is controlled by DVS1 connected to GPK(0) */ | 361 | /* VDDARM is controlled by DVS1 connected to GPK(0) */ |
@@ -683,12 +683,6 @@ static struct s3c_sdhci_platdata crag6410_hsmmc2_pdata = { | |||
683 | .cd_type = S3C_SDHCI_CD_PERMANENT, | 683 | .cd_type = S3C_SDHCI_CD_PERMANENT, |
684 | }; | 684 | }; |
685 | 685 | ||
686 | static struct s3c_sdhci_platdata crag6410_hsmmc1_pdata = { | ||
687 | .max_width = 4, | ||
688 | .cd_type = S3C_SDHCI_CD_GPIO, | ||
689 | .ext_cd_gpio = S3C64XX_GPF(11), | ||
690 | }; | ||
691 | |||
692 | static void crag6410_cfg_sdhci0(struct platform_device *dev, int width) | 686 | static void crag6410_cfg_sdhci0(struct platform_device *dev, int width) |
693 | { | 687 | { |
694 | /* Set all the necessary GPG pins to special-function 2 */ | 688 | /* Set all the necessary GPG pins to special-function 2 */ |
@@ -723,7 +717,6 @@ static void __init crag6410_machine_init(void) | |||
723 | gpio_direction_output(S3C64XX_GPF(10), 1); | 717 | gpio_direction_output(S3C64XX_GPF(10), 1); |
724 | 718 | ||
725 | s3c_sdhci0_set_platdata(&crag6410_hsmmc0_pdata); | 719 | s3c_sdhci0_set_platdata(&crag6410_hsmmc0_pdata); |
726 | s3c_sdhci1_set_platdata(&crag6410_hsmmc1_pdata); | ||
727 | s3c_sdhci2_set_platdata(&crag6410_hsmmc2_pdata); | 720 | s3c_sdhci2_set_platdata(&crag6410_hsmmc2_pdata); |
728 | 721 | ||
729 | s3c_i2c0_set_platdata(&i2c0_pdata); | 722 | s3c_i2c0_set_platdata(&i2c0_pdata); |
diff --git a/arch/arm/mach-s3c64xx/pm.c b/arch/arm/mach-s3c64xx/pm.c index 055dac90e0e2..7d3e81b9dd06 100644 --- a/arch/arm/mach-s3c64xx/pm.c +++ b/arch/arm/mach-s3c64xx/pm.c | |||
@@ -346,23 +346,10 @@ int __init s3c64xx_pm_init(void) | |||
346 | 346 | ||
347 | static __init int s3c64xx_pm_initcall(void) | 347 | static __init int s3c64xx_pm_initcall(void) |
348 | { | 348 | { |
349 | u32 val; | ||
350 | |||
351 | pm_cpu_prep = s3c64xx_pm_prepare; | 349 | pm_cpu_prep = s3c64xx_pm_prepare; |
352 | pm_cpu_sleep = s3c64xx_cpu_suspend; | 350 | pm_cpu_sleep = s3c64xx_cpu_suspend; |
353 | pm_uart_udivslot = 1; | 351 | pm_uart_udivslot = 1; |
354 | 352 | ||
355 | /* | ||
356 | * Unconditionally disable power domains that contain only | ||
357 | * blocks which have no mainline driver support. | ||
358 | */ | ||
359 | val = __raw_readl(S3C64XX_NORMAL_CFG); | ||
360 | val &= ~(S3C64XX_NORMALCFG_DOMAIN_G_ON | | ||
361 | S3C64XX_NORMALCFG_DOMAIN_V_ON | | ||
362 | S3C64XX_NORMALCFG_DOMAIN_I_ON | | ||
363 | S3C64XX_NORMALCFG_DOMAIN_P_ON); | ||
364 | __raw_writel(val, S3C64XX_NORMAL_CFG); | ||
365 | |||
366 | #ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK | 353 | #ifdef CONFIG_S3C_PM_DEBUG_LED_SMDK |
367 | gpio_request(S3C64XX_GPN(12), "DEBUG_LED0"); | 354 | gpio_request(S3C64XX_GPN(12), "DEBUG_LED0"); |
368 | gpio_request(S3C64XX_GPN(13), "DEBUG_LED1"); | 355 | gpio_request(S3C64XX_GPN(13), "DEBUG_LED1"); |