summaryrefslogtreecommitdiffstats
path: root/arch (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ARM: S3C: Rename s3c_device_usb to s3c_device_ohciBen Dooks2010-01-1524-26/+26
| | | | | | | Prepare for the forthcoming device changes by renaming s3c_device_usb to s3c_device_ohci as this is what the device represents. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add serial port supportKukjin Kim2010-01-152-0/+166
| | | | | | | | This patch adds UART serial port support for S5P6440 CPU. Most of the serial support of Samsung's 6400 CPU is reused for 6440 CPU. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add configuration fileKukjin Kim2010-01-151-0/+969
| | | | | | | This patch adds Samsung's S5P6440 default configuration file. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add Board support fileKukjin Kim2010-01-151-0/+111
| | | | | | | This patch adds Samsung's SMDK6440 board support file. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add new Kconfig and MakefilesKukjin Kim2010-01-157-1/+120
| | | | | | | | | This patch adds the Kconfig and Makefile for the new S5P6440 machine and platform directories. It also updates arch/arm Kconfig and Makefiles to include the support for the new S5P6440 CPU. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add Timer supportKukjin Kim2010-01-152-0/+86
| | | | | | | | This patch adds timer support for S5P6440 CPU. Signed-off-by: Atul Dahiya <atul.dahiya@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add IRQ supportKukjin Kim2010-01-154-0/+286
| | | | | | | | This patch adds IRQ support for S5P6440 CPU. Signed-off-by: Adityapratap Sharma <aditya.ps@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add Clock and PLL supportKukjin Kim2010-01-156-0/+1086
| | | | | | | | | This patch adds clock and pll support for S5P6440. This patch are based on Harald Welte's patches and Ben's plat-samsung. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5P6440: Add new CPU initialization supportKukjin Kim2010-01-1515-0/+652
| | | | | | | This patch adds Samsung's S5P6440 CPU support. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Use common UART IRQ handling codeBen Dooks2010-01-152-113/+4
| | | | | | Use the common UART IRQ handling code for the S5PC100 system. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Move to using standard timer IRQ handling codeBen Dooks2010-01-154-88/+22
| | | | | | | | | Move to using the standard VIC/Timer IRQ handling code added previously to avoid duplicating code. Thanks to Marek Szyprowski for pointing out dual Kconfig change. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Remove definitions deleted by previous clksrc changesBen Dooks2010-01-151-113/+6
| | | | | | | | | | | Remove the definitions we've deleted in the previous updates to the clksrc_clk for arch/arm/plat-s5pc1xx/include/plat/regs-clock.h. Added comments about the removal to the clock header since we only need these defines in one place (and they've now been removed there) we get rid of them from the header. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Change clksrc_clks to use array of clocksBen Dooks2010-01-151-237/+179
| | | | | | | | | | | | | | Remove the individual 'struct clksrc_clks' and place them into an array so that we can simply use s3c_register_clksrcs to register tham all in one go. Since the spdif clock relies on the audio clock, move the audio clocks into their own arrary. Thanks to Marek Szyprowski for testing and pointing out the four clocks what where missed from the clock list. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Move clock definitions around ready to turn into clksrc arraysBen Dooks2010-01-151-123/+127
| | | | | | | Move the clock definitions around ready to turn the clocks into an array of clocks and register them in one go. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S5PC1XX: Move to using generic clksrc_clk for clock codeBen Dooks2010-01-152-292/+97
| | | | | | | | | | | Remove the copy of the old s3c64xx struct clksrc_clk and use the new one in plat-samsung. This eliminates a bug in the set_parent() call where it failed to set the clk->parent after sucesfully updating the clock. The script that was used to automate much of the process will be supplied seperately. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Add config option for number of additional GPIO pins.Kukjin Kim2010-01-151-0/+8
| | | | | | | | | This patch adds a configuration option for specifing the number of additional GPIO pins to be used in addition to the GPIO pins supported onchip. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: Add common entry code for system with two VICsBen Dooks2010-01-157-38/+69
| | | | | | | | | | | | Add a common entry-macro-vic2.S for systems where there are two VICs so that the machine or platform directories just need to setup the correct information before including <asm/entry-macro-vic2.S> into their own entry-macro.S file. Since this code is from the S3C64XX project, we update the S3C64XX machine entry code to use this new header. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move IRQ UART handling for newer devices to plat-samsungBen Dooks2010-01-156-114/+173
| | | | | | | | Move the handling for the UART interrupts out of the s3c64xx specific code and into plat-samsung so that it can be used by all implementations that need it. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move IRQ VIC timer handling out to common header filesBen Dooks2010-01-156-83/+116
| | | | | | | | | Move the VIC based timer interrupt handling out of plat-s3c64xx and into plat-samsung to be re-used for other systems. This also reduces the code size as we now have a common init routine and use the irq_desc to store the interrupt number of the timer. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move gpio-config.c into plat-samsungBen Dooks2010-01-155-34/+36
| | | | | | | The arch/arm/plat-s3c/gpio-config.c file is common to pretty much all the Samsung SoCs, so move it to arch/arm/plat-samsung Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move device definitions in plat-samsungBen Dooks2010-01-1513-54/+54
| | | | | | Move all the platform device definitions from plat-s3c into plat-samsung Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move pwm-clock code into plat-samsungBen Dooks2010-01-153-1/+1
| | | | | | | Move the code for the pwm-clock into plat-samsung, as it is common to all Samsung SoCs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Make clk_default_setrate and clk_ops_def_setrate visibleKukjin Kim2010-01-153-14/+7
| | | | | | | | | This patch makes clk_default_setrate and clk_ops_def_setrate available to code outside plat-samsung clock code. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Do not register set_parent call if no sourceBen Dooks2010-01-151-1/+9
| | | | | | | If there is no source register defined, do not register a clksrc clock with a valid .set_parent in the ops. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Add call to register array of clocksBen Dooks2010-01-156-41/+32
| | | | | | | | Add s3c_register_clocks() to register an array of clocks, printing an error message if there is a problem. Replace all points in the code where this could be used. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Do not allow get/set/round rate calls with no dividerBen Dooks2010-01-151-2/+13
| | | | | | | If the reg_div field is not set, then do not register clk_ops with the get/set/round rate calls as these will fail to work. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move clock.c to arch/arm/plat-samsungBen Dooks2010-01-153-2/+5
| | | | | | | | | | | This is the core implementation of the clock code for all Samsung based SoCs, so move it to arch/arm/plat-samsung (the clock.h file has already been moved). Since the file is built for every Samsung SoC, no changes are needed to the Kconfig system. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Avoid announcing clksrc clocks twiceBen Dooks2010-01-153-8/+22
| | | | | | | | | | | | The new code calls the clock setup code on registration which can be before the clock system has been fully initialised. The following code re-does this setup at the end of the clock registration and thus we get two printings. Update the calls to only print on the last pass or when doing the necessary resume work. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Fixup .reg_src and .reg_div with named initialisersBen Dooks2010-01-151-25/+25
| | | | | | | | | | | | Change these two fields to have named initialisers as per the review comments from Kyungmin Park. sed used: s@\.reg_src\(.*\)=\(.*\){\(.*\),\(.*\),\(.*\)}@.reg_src\1=\2{ .reg =\3, .shift =\4, .size =\5 }@g s@\.reg_div\(.*\)=\(.*\){\(.*\),\(.*\),\(.*\)}@.reg_div\1=\2{ .reg =\3, .shift =\4, .size =\5 }@g Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Reduce size of struct clk.Ben Dooks2010-01-1513-211/+286
| | | | | | | | | | | | | | | Reduce the size of struct clk by 12 bytes and make defining clocks with common implementation functions easier by moving the set_rate, get_rate, round_rate and set_parent calls into a new structure called 'struct clk_ops' and using that instead. This change does make a few clocks larger as they need their own clk_ops, but this is outweighed by the number of clocks with either no ops or having a common set of ops. Update all the users of this. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Remove unused clock definitions from clock headerHarald Welte2010-01-151-70/+1
| | | | | | | | | Clean out the definitions we are no longer using after the new clock code updates. Signed-off-by: Harald Welte <laforge@gnumonks.org> [ben-linux@fluff.org: split from initial patch provided] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Use new clock-clksrc.c code for clocks.Ben Dooks2010-01-152-202/+40
| | | | | | | | | | | | Move the s3c6400-clock.c implementation over to use the new common plat-samsung based clock-clksrc.c. Note, this does not delete the clocks definitions that are now unused in the regs-clock.h to reduce the quantity of change in this commit. Based on original patches by Harald Welte. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Add core clock implementation for clksrc based clocksHarald Welte2010-01-154-0/+258
| | | | | | | | | | | | | Add a core for the clksrc clock implementation, which is found in many of the newer Samsung SoCs into plat-samsung. Signed-off-by: Harald Welte <laforge@gnumonks.org> [ben-linux@fluff.org: split from original patch to make change smaller] [ben-linux@fluff.org: split clk and clksrc changes] [ben-linux@fluff.org: moved to plat-samsung from plat-s3c] [ben-linux@fluff.org: re-wrote headers after splits] [ben-linux@fluff.org: added better documentation to headers] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Compress s3c6400-clock.c codeBen Dooks2010-01-151-180/+154
| | | | | | | | | | | | | | | | The individually named clocks are all static to the code and thus can be compressed into a single array and then the array can be referenced. This removes the need for a seperate array of pointers to clocks. Fix a minor problem of re-initialising the pointers in s3c6400_set_clksrc() as this is also called by the cpufreq code. Move these initialisations to the code that does the registration. Based on Harald Welte's original clock changes patch. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C64XX: Cleanup common init code in s3c6400-clock.cBen Dooks2010-01-151-44/+5
| | | | | | | | | | Remove the four fields from clksrc_clk.clk which are always the same and init them when the clock is registered. This helps remove the amount of repeated code. This is a re-work of Harald Welte's clock changes for the latest kernel. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SAMSUNG: Move <plat/clock.h> to plat-samsungBen Dooks2010-01-151-0/+0
| | | | | | | | Move the <plat/clock.h> header to plat-samsung where it can be used by all the platforms, and readies it for the next round of clock updates where the clock code will be amalgamated. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: MINI2440: Fixup __initdata usageBen Dooks2010-01-151-13/+13
| | | | | | | | Remove some of the __initdata tags which are currently inappropriate for platform_device and some of the platform data. These can be returned once support for copying platform devices and data is added. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: MINI2440: Fix crash on boot due to improper __initdata qualifierUri Yosef2010-01-151-5/+5
| | | | | | | | This patch fix mini2440 crash on boot due to improper __initdata qualifier on mini2440_led1_pdata. Signed-off-by: Uri Yosef <uri.yosef@gmail.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: SMDK6410: Specify no GPIO for B_PWR_5V regulatorMark Brown2010-01-151-0/+1
| | | | | | | | | Since the fixed voltage regulator grew support for GPIO based enables and GPIO 0 is valid on some systems we need to specify that there is no valid GPIO enable control. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* ARM: S3C: NAND: Check the existence of nr_map before copyingRamax Lo2010-01-141-2/+2
| | | | | | | | Since the structure field nr_map is optional, we need to check whether the chip number map is provided to avoid unexpected NULL pointer exception. Signed-off-by: Ramax Lo <ramaxlo@gmail.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* zlib: Fix build of powerpc boot wrapperBenjamin Herrenschmidt2010-01-141-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit ac4c2a3bbe5db5fc570b1d0ee1e474db7cb22585 broke the build of all powerpc boot wrappers. It attempts to add an include of autoconf.h but used the wrong path for it. It also adds -D__KERNEL__ to our boot wrapper, both things that we pretty much didn't do on purpose so far. We want our boot wrapper to remain independent enough of the kernel for various reasons, one of them being that you can "wrap" an existing kernel at distro install time which allows to ship one kernel image and a set of boot wrappers for different platforms, the wrappers don't have to be built out of the same kernel build tree. It's also incorrect to do what the patch does in our boot environment since we may not have a proper alignment exception handler which means we may not be able to fixup the few cases where an unaligned access will need SW emulation (depends on the core variant, could be when crossing page or segment boundaries for example). This patch fixes it by putting the old code back in and using the new "fancy" variant only when CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is set, which happens not to be set on powerpc since we don't include autoconf.h. It also reverts the changes to our boot wrapper Makefile. This means that x86 should, afaik, keep the optimisations since its boot wrapper does include autoconf.h and define __KERNEL__ (though I doubt they make that much different outside of slow embedded processors). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Makefile: do not override LC_CTYPEMichal Marek2010-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | Setting LC_CTYPE=C breaks localized messages in some setups. With only LC_COLLATE=C and LC_NUMERIC=C, we get almost all we need, except for not so defined character classes and tolower()/toupper(). The former is not a big issue, because we can assume that e.g. [:alpha:] will always include a-zA-Z and we only ever process ASCII input. The latter seems only affect arch/sh/tools/gen-mach-types, which we can handle separately. So after this patch the meaning of ranges like [a-z], the behavior of sort and join, etc. should be the same everywhere and at the same time gcc should be able to print localized waring and error messages. LC_NUMERIC=C might not be necessary, but setting it doesn't hurt. Reported-by: Simon Horman <horms@verge.net.au> Reported-by: Sergei Trofimovich <slyfox@inbox.ru> Acked-by: H. Peter Anvin <hpa@zytor.com> Tested-by: Simon Horman <horms@verge.net.au> Tested-by: Masami Hiramatsu <mhiramat@redhat.com> Signed-off-by: Michal Marek <mmarek@suse.cz>
* Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds2010-01-1329-54/+181
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/home/rmk/linux-2.6-arm: ARM: Ensure ARMv6/7 mm files are built using appropriate assembler options ARM: Fix wrong dmb ARM: 5874/1: serial21285: fix disable_irq-from-interrupt-handler deadlock ARM: 5873/1: ARM: Fix the reset logic for ARM RealView boards ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.h ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by missing includes ARM: 5870/1: arch/arm: Fix build failure for defconfigs without CONFIG_ISA_DMA_API set ARM: 5868/1: ARM: fix "BUG: using smp_processor_id() in preemptible code" ARM: 5867/1: Update U300 defconfig ARM: 5866/1: arm ptrace: use unsigned types for kernel pt_regs [ARM] pxa: fix strange characters in zaurus gpio .desc ARM: add missing recvmmsg syscall number [ARM] pxa: fix compiler warnings of unused variable 'id' in cpu_is_pxa9*() [ARM] pxa: update pwm_backlight->notify() to include missed 'struct device *' [ARM] pxa: enable L2 if present in XSC3 [ARM] pxa: do not enable L2 after MMU is enabled
| * ARM: Ensure ARMv6/7 mm files are built using appropriate assembler optionsRussell King2010-01-121-0/+12
| | | | | | | | | | | | | | | | A kernel with both ARMv6 and ARMv7 selected results in build errors. Fix this by specifying the proper architectures for these assembly files. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: Fix wrong dmbRussell King2010-01-121-3/+1
| | | | | | | | | | | | | | | | | | | | The __kuser_cmpxchg code uses an ARMv6 dmb instruction, rather than one based upon the architecture being built for. Switch to using the macro provided for this purpose, which also eliminates the need for an ifdef. Acked-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: 5873/1: ARM: Fix the reset logic for ARM RealView boardsColin Tuckley2010-01-117-15/+57
| | | | | | | | | | | | | | | | | | | | Extend the patch from Philby John to the other "RealView" boards. Rename the constants and offsets to reflect their actual functions. Cc: Philby John <pjohn@in.mvista.com> Signed-off-by: Colin Tuckley <colin.tuckley@arm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.hSantosh Shilimkar2010-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file arch/arm/include/asm/cpu.h needs to include 'linux/cpu.h' to meet its dependency. Otherwise when using "struct cpuinfo_arm" and including just 'asm/cpu.h' throws below error - arch/arm/include/asm/cpu.h:16: error: field 'cpu' has incomplete type To fix this otherway, one can also include both linux/cpu.h and asm/cpu.h but it shoudn't be that way. So this patch fixes this by including the linux/cpu.h in asm/cpu.h, so that including alone asm/cpu.h is enough. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by ↵Peter Hüwe2010-01-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | missing includes This patch fixes a build failure [1] due to missing includes This should make the arm tree build again with lpd7a404_defconfig References: http://kisskb.ellerman.id.au/kisskb/buildresult/1983329/ Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: 5870/1: arch/arm: Fix build failure for defconfigs without ↵Peter Hüwe2010-01-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_ISA_DMA_API set A lot of ARM-defconfigs (those without CONFIG_ISA_DMA_API set) fail to build [1][2][3] due to the changes of the patch [PATCH] PCI: Clean up build for CONFIG_PCI_QUIRKS unset by Rafael J. Wysocki (Sat, 2 Jan 2010 22:57:24 +0100) [4] as the referenced variable 'isa_dma_bridge_buggy' in asm/dma.h is enclosed by the CONFIG_ISA_DMA_API conditional all configs without this setting fail to build. I'm not sure wether moving the condition is the right way to solve the issue, but atleast it fixes the issue :) References: [1] http://kisskb.ellerman.id.au/kisskb/buildresult/1983354/ [2] http://kisskb.ellerman.id.au/kisskb/buildresult/1983333/ [3] http://kisskb.ellerman.id.au/kisskb/buildresult/1983337/ [4] http://lkml.org/lkml/2010/1/2/102 Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * Merge branch 'fix' of ↵Russell King2010-01-0813-23/+26
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6