aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-s5pv310
AgeCommit message (Collapse)Author
2011-01-06Merge branch 'misc' into develRussell King
Conflicts: arch/arm/Kconfig arch/arm/common/Makefile arch/arm/kernel/Makefile arch/arm/kernel/smp.c
2011-01-05Merge branch 'clksrc' into develRussell King
Conflicts: arch/arm/mach-vexpress/v2m.c arch/arm/plat-omap/counter_32k.c arch/arm/plat-versatile/Makefile
2010-12-22ARM: s5pv310: update clock source registrationRussell King
In d7e81c2 (clocksource: Add clocksource_register_hz/khz interface) new interfaces were added which simplify (and optimize) the selection of the divisor shift/mult constants. Switch over to using this new interface. Acked-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: CPU hotplug: fix hard-coded control register constantsRussell King
Use the definition we've provided in asm/system.h rather than numeric constants. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: CPU hotplug: fix reporting of spurious wakeupsRussell King
The original scheme for reporting spurious wakeups was broken - it tried to use printk() from a context which wasn't coherent with the other CPUs, which risks corrupting the printk() data. Fix this by noting the number spurious wakeups, and only report them when we are properly woken - when we will be coherent with the rest of the system. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: Fix subtle race in CPU pen_release hotplug codeRussell King
There is a subtle race in the CPU hotplug code, where a CPU which has been offlined can online itself before being requested, which results in things going astray on the next online/offline cycle. What happens in the normal online/offline/online cycle is: CPU0 CPU3 requests boot of CPU3 pen_release = 3 flush cache line checks pen_release, reads 3 starts boot pen_release = -1 ... requests CPU3 offline ... ... dies ... checks pen_release, reads -1 requests boot of CPU3 pen_release = 3 flush cache line checks pen_release, reads 3 starts boot pen_release = -1 However, as the write of -1 of pen_release is not fully flushed back to memory, and the checking of pen_release is done with caches disabled, this allows CPU3 the opportunity to read the old value of pen_release: CPU0 CPU3 requests boot of CPU3 pen_release = 3 flush cache line checks pen_release, reads 3 starts boot pen_release = -1 ... requests CPU3 offline ... ... dies ... checks pen_release, reads 3 starts boot pen_release = -1 requests boot of CPU3 pen_release = 3 flush cache line Fix this by grouping the write of pen_release along with its cache line flushing code to ensure that any update to pen_release is always pushed out to physical memory. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: SMP: remove smp_mpidr.hRussell King
With "ARM: CPU hotplug: remove bug checks in platform_cpu_die()", we now do not use hard_smp_processor_id(), we no longer need to read the hardware processor ID. Remove the include providing this function. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: CPU hotplug: remove bug checks in platform_cpu_die()Russell King
platform_cpu_die() is entered from the CPU's own idle thread, which can not be migrated to other CPUs. Moreover, the 'cpu' argument comes from the thread info, which will always be the 'current' CPU. So remove this useless bug check. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: CPU hotplug: move cpu_killed completion to core codeRussell King
We always need to wait for the dying CPU to reach a safe state before taking it down, irrespective of the requirements of the platform. Move the completion code into the ARM SMP hotplug code rather than having each platform re-implement this. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: SMP: consolidate trace_hardirqs_off() into common SMP codeRussell King
All platforms call trace_hardirqs_off() in their secondary startup code, so move this into the core SMP code - it doesn't need to be in the per-platform code. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: SMP: consolidate the common parts of smp_prepare_cpus()Russell King
There is a certain amount of smp_prepare_cpus() which doesn't belong in the platform support code - that is, code which is invariant to the SMP implementation. Move this code into arch/arm/kernel/smp.c, and add a platform_ prefix to the original function. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-20ARM: SMP: Clean up ncores sanity checksRussell King
scu_get_core_count() never returns zero cores, so we don't need to check and correct if ncores is zero. Tegra was missing the check against NR_CPUS, leading to a potential bitfield overflow if this becomes the case. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-14ARM: GIC: consolidate gic_cpu_base_addr to common GIC codeRussell King
Every architecture using the GIC has a gic_cpu_base_addr pointer for GIC 0 for their entry assembly code to use to decode the cause of the current interrupt. Move this into the common GIC code. Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-14ARM: GIC: Remove MMIO address from gic_cpu_init, rename to gic_secondary_initRussell King
We don't need to re-pass the base address for the CPU interfaces to the GIC for secondary CPUs, as it will never be different from the boot CPU - and even if it was, we'd overwrite the boot CPU's base address. Get rid of this argument, and rename to gic_secondary_init(). Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-14ARM: GIC: provide a single initialization function for boot CPURussell King
Provide gic_init() which initializes the GIC distributor and current CPU's GIC interface for the boot (or single) CPU. Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-12-03ARM: SMP: pass an ipi number to smp_cross_call()Russell King
This allows us to use smp_cross_call() to trigger a number of different software generated interrupts, rather than combining them all on one SGI. Recover the SGI number via do_IPI. Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-10-28Merge branch 'for-rmk' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into devel-stable Conflicts: arch/arm/mach-s3c64xx/dev-audio.c
2010-10-26ARM: S5PV310: Support ethernet for SMDKV310 and SMDKC210Daein Moon
This patch adds to support ethernet for SMDKV310 and SMDKC210 board. - define smc911x resources - define configurations of smc911x platform data - define platform device "smsc911x" - initialize srom controller for lan9215 chip Signed-off-by: Daein Moon <moon9124@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-26ARM: S5PV310: Add support SROMCDaein Moon
This patch adds support SROMC for S5PV310 and S5PC210. Signed-off-by: Daein Moon <moon9124@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5P: Change VMALLOC_END to use more vmalloc()/ioremap() areaKukjin Kim
This patch changes VMALLOC_END from 0xE0000000 to 0xF6000000, because some systems want to use more vmalloc()/ioremap() area and now don't use from at 0xE0000000 to 0xF6000000 (the start of Samsung SoCs' VA space) Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add support External InterruptJongsun Han
This patch adds EINT(External Interrupt) support on S5PV310 and S5PC210. All EINTs are transferred to GIC through interrupt combiner. Signed-off-by: Jongsun Han <jongsun.han@samsung.com> Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add the definition for external interruptJongsun Han
This patch adds the definition for both IRQs and GPIO registers for external interrupts. Signed-off-by: Jongsun Han <jongsun.han@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add L2 cache init function in cpu.cKyungmin Park
This patch adds L2 cache initialization code in cpu.c of ARCH_S5PV310. It includes TAG and Data latency, Prefetch, and Power configurations. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Changhwan Youn <chaos.youn@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Remove L2 cache init in machineKyungmin Park
Basically, need L2 cache initialize function in ARCH_S5PV310. So it would be better to move it into ARCH_S5PV310 common part. This patch removes L2 cache initialization code at the each board file. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Changhwan Youn <chaos.youn@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add support GPIOlibJongpill Lee
This patch adds GPIOlib support for S5PV310 and S5PC210. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> [kgene.kim@samsung.com: Fix NR_IRQS] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5P: Add initial map for GPIO2 and GPIO3Jongpill Lee
This patch adds initial map for GPIO2 and GPIO3. S5PV310/S5PC210 has separated GPIO1, GPIO2 and GPIO3. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Update MAX_COMBINER_NRJongpill Lee
This patch updates MAX_COMBINER_NR from 39 to 40 because S5PV310 need 39th combiner for including EINT16_31. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5P: Reduce duplicated EPLL control codesSeungwhan Youn
S5P Samsung SoCs has a EPLL to support various PLL clock sources for other H/W blocks. Until now, to control EPLL, each of SoCs make their own functions in 'mach-s5pxxx/clock.c'. But some of functions, 'xxx_epll_get_rate()' and 'xxx_epll_enable()', are exactly same in all S5P SoCs, so this patch move these duplicated codes to common EPLL functions that use platform wide. Signed-off-by: Seungwhan Youn <sw.youn@samsung.com> Acked-by: Jassi Brar <jassi.brar@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add I2C channel 3, 4, 5, 6, and 7 device supportKyungmin Park
S5PV310 and S5PC210 support more I2C devices than previous SoCs. Add the device support code for them. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Define address & interrupt for all I2C blocksKyungmin Park
S5PV310 and S5PC210 support total 8 (+ 1 dedicated for HDMI) I2C devices. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: I2C0/1 devices support on Universal boardKyungmin Park
Camera devices use the I2C0 and Gyro uese the I2C1 on universal board. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> [kgene.kim@samsung.com: minor title fixes] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Universal OneNAND supportKyungmin Park
OneNAND device support for Universal board. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> [kgene.kim@samsung.com: minor title fixes] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: SAMSUNG: Add clock types into platform dataJeongbae Seo
This patch adds clock types into platform data to support external clock divider instead of internal clock divider. It is defined that what kinds of clock type is used in machine. Signed-off-by: Jeongbae Seo <jeongbae.seo@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add support HSMMC on SMDKV310 and SMDKC210Hyuk Lee
This patch adds support HSMMC for S5PV310(SMDKV310) and S5PC210(SMDKC210). Signed-off-by: Hyuk Lee <hyuk1.lee@samsung.com> Signed-off-by: Jeongbae Seo <jeongbae.seo@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add HSMMC platform dataHyuk Lee
This patch adds initialization HSMMC device information. And HSMMC platform data like card detect, data bus width and capability is configured. Signed-off-by: Hyuk Lee <hyuk1.lee@samsung.com> Signed-off-by: Jeongbae Seo <jeongbae.seo@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25ARM: S5PV310: Add support HSMMC and SDHCI configurationHyuk Lee
This patch adds support HSMMC for S5PV310 and S5PC210 and setup for HSMMC host controller and also related GPIO. At most 4 channel can be used at the same time. A user can configure SDHCI data bus as 8bit or 4bit. Signed-off-by: Hyuk Lee <hyuk1.lee@samsung.com> Signed-off-by: Jeongbae Seo <jeongbae.seo@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-25Merge branch 'next-gpio-update' into for-nextKukjin Kim
2010-10-23ARM: S5PV310: Change to using s3c_gpio_cfgall_range()Kukjin Kim
Change the code setting a range of GPIO pins' configuration and pull state to use the recently introduced s3c_gpio_cfgall_range(). Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-23ARM: S5PV310: Change to using s3c_gpio_cfgpin_range()Kukjin Kim
This patch changes the code setting ranges of GPIO pins in mach-s5pv310 using s3c_gpio_cfgpin() to use the recently introduced s3c_gpio_cfgpin_range(). Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5P: Remove redundant selection PLAT_S5P for S5PC100, S5PV210 and S5PV310Kyungmin Park
The selection PLAT_S5P is selected with plat-s5p/Kconfig. So remove it form each CPU_S5PXXXX config. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> [kgene.kim@samsung.com: edited title] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Place the common SPARSEMEM at ARCH_S5PV310Kyungmin Park
In case of S5PV310/S5PC210, it uses the SPARSEMEM as default memory configuration. So moved to ARCH_S5PV310 config. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> [kgene.kim@samsung.com: edited title] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Fix physical address of System Controller RegisterBoojin Kim
The physical address of SYSCON(System Controller) is wrong. This patch fixs this wrong physical address value from 0x10020000 to 0x10010000. Signed-off-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Optimize interrupt source searching codeChanghwan Youn
It is reported by Junseok Jung that using clz instruction is better instead of using for-loop to find the interrupt source. This patch modifies interrupt source searching code using __ffs(). The __ffs() is implemented using clz instruction. Suggested-by: Junseok Jung <jundols.jung@samsung.com> Signed-off-by: Changhwan Youn <chaos.youn@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Add support Watchdog TimerJemings Ko
This patch adds support Watchdog Timer for S5PV310 and S5PC210. Signed-off-by: Jemings Ko <jemings@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Add support RTCChanghwan Youn
This patch adds support RTC for S5PV310 and S5PC210. Signed-off-by: Changhwan Youn <chaos.youn@samsung.com> Signed-off-by: Jemings Ko <jemings@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Fix clkset_moutcore_listJaecheol Lee
This patch fixes source clocks of moutcore. That should be clk_mout_apll instead of clk_sclk_apll. Signed-off-by: Jaecheol Lee <jc.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: SAMSUNG: Change the 3rd HSMMC interrupt name for compatibilityKukjin Kim
This patch changes the 3rd HSMMC interrupt name for compatibility from IRQ_MMC to IRQ_HSMMC3. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Adds various special clocksJongpill Lee
This patch adds various special clocks for S5PV310/S5PC210. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Add video clocksJongpill Lee
This patch adds video clocks for S5PV310/S5PC210. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2010-10-21ARM: S5PV310: Add various clocksJongpill Lee
This patch adds various clocks for S5PV310/S5PC210. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>