aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2008-12-15[ARM] S3C64XX: Add PLL definitionsBen Dooks
Add definitions for the s3c6400 epll and main pll as well as functions to decode the rate. Add Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Common init code for S3C6400 and S3C6410Ben Dooks
Add the common initialisation code for both the S3C6400 and S3C6410, the UART registration. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Map timer memory and interruptsBen Dooks
Add the physical to virtual memory mapping and the necessary interrupt demuxing for the PWM timer blocks. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Fix PWM build on S3C6400Ben Dooks
The pwm-clock.c needs <mach/map.h> which is included via other means on S3C24XX systems, so ensure it is explicitly included. Remove the includes of regs-clock.h and regs-gpio.h as these are not needed by the build. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C6400: Add <mach/tick.h>Ben Dooks
Add the necessary support for the timer on the S3C6400 and S3C6410 by adding <mach/tick.h> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add VIC0 and VIC1 sourced interriptsBen Dooks
Add and initialise the two VIC (PL192) found on the S3C64XX series CPUs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C6410: Initial CPU support codeBen Dooks
Initial support for the Samsung S3C6410 SoC. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Basic CPU detection and map initialisationBen Dooks
Initialise the basic physical to virtual mappings and then detect the CPU that the system is being run on so that the cpu code code can call the correct initialisation code. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add IRQ definitions for VIC0 and VIC1Ben Dooks
Add IRQ definitions for the VIC0 and VIC1 interrupts on the S3C6400 and S3C6410 SoCs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add UARTdevice definitionsBen Dooks
Add resources and information for the UART deviecs on the S3C64XX CPUs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add system boot-time supportBen Dooks
Add the necessary defines for <mach/uncompress.h> to function and build an working header code block. Signed-off-by: Ben Doioks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add <plat/regs-clock.h>Ben Dooks
Initial clock register defines. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add <mach/debug-macro.S>Ben Dooks
Add the necessary support for the kernel low-level debug macros via <mach/debug-macro.S> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Add <mach/entry-macro.S>Ben Dooks
Add the include for the interrupt entry macros needed to be included by <mach/entry-macro.S> for the kernel interrupt handler. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Initial arch header filesBen Dooks
Add the initial header files for the S3C64XX support to satisfy the minimal requirements to build a kernel. Some definitions will therefore be placeholders or empty functions that will ensure that the system can build and have base functionality. These will be filled in at a later date. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C64XX: Initial arch directoryBen Dooks
Add the initial PLAT_S3C64XX support files and directory structure. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Split timer pending code outBen Dooks
Split the timer pending code out to a seperate per-machine header so that when compiling for mach-s3c2410 or mach-s3c24a0 we can use the right timer code without having to #ifdef the timer driver. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24A0: Initial architecture support filesBen Dooks
Initial architecture support for the S3C24A0 ARCH_S3C24A0. We don't yet add an kconfig entry in the main arch/arm/Kconfig file as the series is not complete, so that is left until enough support is in to be useful. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Split map.h into plat-s3c24xx and mach-s3c2410Ben Dooks
Split the map.h definitions into common S3C24XX code by adding arch/arm/plat-s3c24xx/include/plat/map.h and altering the machine specific header for the S3C24A0. As we add a new <plat/map.h> we move the original one in arch/arm/plat-s3c include directory to be called map-base.h to distinguish the two files. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24A0: Serial port definitions and driver support.Sandeep Patil
Add serial support for S3C24A0, based on current S3C2410 UART driver. It adds necessary new defines in regs-serial.h for S3C24A0 and the code to support this device in drivers/serial/s3c24a0.c Signed-off-by: Sandeep Patil <sandeep.patil@azingo.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24A0: Debug macro definitionsBen Dooks
Add the necessary debug macros for the S3C24A0 to enable kernel debugging, and fix a bug with selecting the wrong default debug implementation from the base include. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24A0: Correct S3C2410_PA_GPIO in S3C24XX_VA_GPIOSandeep Patil
The definition of S3C24XX_VA_GPIO used S3C2410_PA_GPIO where it should have read S3C24XX_PA_GPIO. Signed-off-by: Sandeep Patil <sandeep.patil@azingo.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24A0: arch/arm/mach-s3c24a0/include/mach header filesSandeep Patil
Add initial arch/arm/mach-s3c24a0/include/mach header files for supporting Samsung S3C24A0 SoC. Signed-off-by: Sandeep Patil <sandeep.patil@azingo.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Fix scaler1 clock rate informationBen Dooks
The pwm-scaler0 and pwm-scaler1 clocks have their .id field set to -1 as they are not referenced to any specific device. However, parts of the pwm-clock code used the .id field to identify which scaler clock was being used. Fix the problem by comparing against the pointer to the clock to identify the scalers. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Add set_rate/round_rate methods for pwm-scaler clockBen Dooks
Add the set_rate and round_rate methods for the pwm-scaler clock for use with the time code. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Reduce code lineage of gpiolib.cBen Dooks
All the s3c24xx gpiolib chips share the same get/set calls and all but one bank shares the same calls for .direction_input and .direction_output methods. Change the initialisation process to use an new call to register the chips that fills in any blank calls with the default values to avoid having to fill them in the structure initialisers. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: BUG_ON() if clock has already been registeredBen Dooks
Add a simple check when registering a clock on whether the clock has already been added to the list. Any attempt to re-register a clock will cause the clock list to be come looped and thus produces silent failures when looking up clocks. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Move pwm-clock.c to arch/arm/plat-s3cBen Dooks
Move pwm-clock.c to arch/arm/plat-s3c to be shared with the S3C64XX implementations. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Move core clock support to plat-s3cBen Dooks
Move the core clock registration and definitions in arch/arm/plat-s3c24xx/clock.c to arch/arm/plat-s3c to be shared with the S3C64XX implementations. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Move time.c to arch/arm/plat-s3cBen Dooks
Move time.c to arch/arm/plat-s3c to be shared with the S3C64XX implementations. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Move S3C2410_EXTINT to common regs-irqtype.h headerBen Dooks
Add a common include file (regs-irqtype.h) for the IRQ trigger control register values S3C2410_EXTINT*. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Move headers from plat-s3c24xx to plat-s3cBen Dooks
Move clock.h, cpu.h and devs.h to plat-s3c for use with the s3c64xx support. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Update clock data on resumeBen Dooks
Update the clock settings on resume for suspend/resume support so that if the boot loader changes anything or the system's PLL is reset then we return with the correct settings. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Change clock locking to use spinlocks.Ben Dooks
We cannot sleep if we have cpufreq pm enabled during some of the clock operations, so change to use a spinlock to protect the clock system. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Split pll code out of regs-clock.hBen Dooks
Move the PLL calculation code into it's own header file for re-use with the other plat-s3c24xx based systems such as the S3C24A0. Note, we change the name of s3c2410_get_pll to the more generically named s3c24xx_get_pll as well as the related defintions. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Split DCLK/CLKOUT definitions out of clock.cBen Dooks
Only certain boards need these clocks, and they are not available on some CPUs (such as the S3C24A0) so remove them from arch/arm/plat-s3c24xx/clock.c and into their own file with appropriate Kconfig entries. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Move initialisation code to arch/arm/plat-s3cBen Dooks
We need to add plat-s3c to the build to get the headers that will go in here once moved from include/asm-arm so we may as well put some useful common s3c code in here to stop the errors generated form having nothing built. The cpu setup is now passed the cpu idcode and the table of supported cpus to s3c_init_cpu() to abstract the cpu identification out of the initial io setup. As well as moving the cpu initialisation code, we move the map of the board specific items up to the calling code as none of the map_io() functions actually do anything other than pass this to iotable_init(). This patch does not rename any of the init functions that will be common to s3c24xx and any other s3c architectures as this can be done at a later date as it will touch all the board support files which use functions such as s3c24xx_init_clocks() and s3c24xx_init_uarts(). Note, the header arch/arm/plat-s3c24xx/include/plat/cpu.h still has functions that are used by both the cpu and board initialisation functions. This means that each board has definitions specific to the cpu support included and the vice-versa. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Add default <mach/io.h> headerBen Dooks
Add a default header for <mach/io.h> for systems such as the S3C24A0 which do not need any of the complex code that the S3C2410 uses. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Move vmalloc.h to plat-s3cBen Dooks
vmalloc.h is common across all the current s3c platforms, so move it to arch/arm/plat-s3c/include/mach to be used for all the targets. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Make <mach/timex.h> commonBen Dooks
Move <mach/timex.h> to arch/arm/plat-s3c/include/mach/timex.h so it can be the default for all S3C based architectures. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C2410: Move base clock code to plat-s3c24xxBen Dooks
Move the S3C2410 base clock list to arch/arm/plat-s3c24xx as this code is common to the S3C2410, S3C2440 and S3C2442 cpus. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C: Add <plat/cpu-freq.h> for initial cpufreq definitionsBen Dooks
This is the header file that defines the basic cpu frequency scalling support for the Samsung S3C series of SoC. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-15[ARM] S3C24XX: Default SPI pin configuration for SPIBen Dooks
Add a set of default pin configuration routines for setting up the SPI gpio configuration when using the hardware SPI driver. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-12-13Merge git://git.marvell.com/orion into develRussell King
2008-12-13[ARM] fix xm_x2xx_defconfig build errorsRussell King
drivers/built-in.o: In function `pci_set_consistent_dma_mask': hid-quirks.c:(.text+0x2664): multiple definition of `pci_set_consistent_dma_mask' drivers/built-in.o: In function `pci_set_dma_mask': hid-quirks.c:(.text+0x42c4): multiple definition of `pci_set_dma_mask' because drivers/pci/pci.c was not seeing the definition disabling these functions. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-12-13[ARM] 5343/1: ep93xx: include linux/i2c.hHartley Sweeten
Include <linux/i2c.h> in all ep93xx platforms. Patch "5311/1: add core support for built in i2c bus" will cause build errors due to the following in arch/arm/mach-ep93xx/include/mach/platform.h: +void ep93xx_register_i2c(struct i2c_board_info *devices, int num); The i2c.h header needs to be included in order to define struct i2c_board_info. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-12-13[ARM] 5342/1: ep93xx: platform init cleanupHartley Sweeten
Use EP93XX_*_PHYS_BASE and SZ_* defines in ep93xx platform inits. The following patch changes the flash memory hard-coded resource addresses and MACHINE_START boot_params to EP93XX_*_PHYS_BASE and SZ_* defines to improve readability. Also some minor whitespace cleanup resulting from previous patches. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-12-13[ARM] 5337/1: gumstix: move am200 specific gpio pins into am200epd.Jaya Kumar
The gpio setup for AM200 specific GPIO pins should be done in the AM200 code rather than in generic gumstix code. Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-12-13[ARM] dma: correct dma_supported() implementationRussell King
dma_supported() is supposed to indicate whether the system can support the DMA mask it was passed, which depends on the maximal address which can be returned for DMA allocations. If the mask is smaller than that, we are unable to guarantee that the driver can reliably obtain suitable memory. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-12-13[ARM] netwinder: clean up GPIO namingRussell King
Netwinder was using gpio_xxx names which could clash with the GPIO layer. Add a 'nw_' prefix to ensure that these remain separate. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>