From: Olof Johansson Date: Fri, 26 Apr 2013 18:47:45 +0000 (-0700) Subject: Merge branch 'samsung/exynos-multiplatform' into next/drivers X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=340fcb5cb4c91e58a5102beb0b86b9c416b8c956;p=openwrt%2Fstaging%2Fblogic.git Merge branch 'samsung/exynos-multiplatform' into next/drivers This merges in the revert of multiplatform support for exynos. Trivial conflicts on removed code. Also, needed to add "select COMMON_CLK" to the non-multiplatform EXYNOS config option. * samsung/exynos-multiplatform: Revert "ARM: exynos: enable multiplatform support" Signed-off-by: Olof Johansson --- 340fcb5cb4c91e58a5102beb0b86b9c416b8c956 diff --cc arch/arm/Kconfig index f59b687dc325,13b739469c51..ccb6c0c71521 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@@ -860,11 -853,18 +860,19 @@@ config ARCH_S5PV21 help Samsung S5PV210/S5PC110 series based systems - config ARCH_EXYNOS_SINGLE + config ARCH_EXYNOS bool "Samsung EXYNOS" + select ARCH_HAS_CPUFREQ select ARCH_HAS_HOLES_MEMORYMODEL select ARCH_SPARSEMEM_ENABLE + select CLKDEV_LOOKUP ++ select COMMON_CLK + select CPU_V7 + select GENERIC_CLOCKEVENTS + select HAVE_CLK + select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG + select HAVE_S3C_RTC if RTC_CLASS select NEED_MACH_GPIO_H select NEED_MACH_MEMORY_H help diff --cc arch/arm/mach-exynos/common.c index a3ab0ecc7c6a,d63d399c7bae..939bda77defa --- a/arch/arm/mach-exynos/common.c +++ b/arch/arm/mach-exynos/common.c @@@ -857,31 -875,3 +852,30 @@@ static int __init exynos_init_irq_eint( return 0; } arch_initcall(exynos_init_irq_eint); - #endif + +static struct resource exynos4_pmu_resource[] = { + DEFINE_RES_IRQ(EXYNOS4_IRQ_PMU), + DEFINE_RES_IRQ(EXYNOS4_IRQ_PMU_CPU1), +#if defined(CONFIG_SOC_EXYNOS4412) + DEFINE_RES_IRQ(EXYNOS4_IRQ_PMU_CPU2), + DEFINE_RES_IRQ(EXYNOS4_IRQ_PMU_CPU3), +#endif +}; + +static struct platform_device exynos4_device_pmu = { + .name = "arm-pmu", + .num_resources = ARRAY_SIZE(exynos4_pmu_resource), + .resource = exynos4_pmu_resource, +}; + +static int __init exynos_armpmu_init(void) +{ + if (!of_have_populated_dt()) { + if (soc_is_exynos4210() || soc_is_exynos4212()) + exynos4_device_pmu.num_resources = 2; + platform_device_register(&exynos4_device_pmu); + } + + return 0; +} +arch_initcall(exynos_armpmu_init); diff --cc arch/arm/plat-samsung/Kconfig index 77dd30af32f5,a9d52167e16e..6cb19c6aa9d6 --- a/arch/arm/plat-samsung/Kconfig +++ b/arch/arm/plat-samsung/Kconfig @@@ -27,9 -23,9 +23,9 @@@ config PLAT_S5 select GIC_NON_BANKED if ARCH_EXYNOS4 select NO_IOPORT select PLAT_SAMSUNG - select S3C_GPIO_TRACK if PLAT_SAMSUNG_SINGLE + select S3C_GPIO_TRACK select S5P_GPIO_DRVSTR - select SAMSUNG_CLKSRC + select SAMSUNG_CLKSRC if !COMMON_CLK select SAMSUNG_GPIOLIB_4BIT select SAMSUNG_IRQ_VIC_TIMER help