summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s3c/include
Commit message (Collapse)AuthorAgeFilesLines
* i2c-s3c2410: Simplify bus frequency calculationDaniel Silverstone2009-04-071-14/+19
| | | | | | | | | | | | | | | | | The platform data for the i2c-s3c2410 driver used to allow a min, max and desired frequency for the I2C bus. This patch reduces it to simply a desired frequency ceiling and corrects all the uses of the platform data appropriately. This means, for example, that on a system with a 66MHz fclk, a request for 100KHz will achieve 65KHz which is safe and acceptable, rather than 378KHz which it would have achieved without this change. Signed-off-by: Simtec Linux Team <linux@simtec.co.uk> Signed-off-by: Daniel Silverstone <dsilvers@simtec.co.uk> [ben-linux@fluff.org: tidy subject and description] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* Merge branch 'origin' into develRussell King2009-03-283-0/+161
|\ | | | | | | | | Conflicts: sound/soc/pxa/pxa2xx-i2s.c
| * Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds2009-03-261-0/+41
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (97 commits) USB: qcserial: add device id for HP devices USB: isp1760: Add a delay before reading the SKIPMAP registers in isp1760-hcd.c USB: allow malformed LANGID descriptors USB: pxa27x_udc: typo fixes and code cleanups USB: gadget: gadget zero uses new suspend/resume hooks USB: gadget: composite device-level suspend/resume hooks USB: r8a66597-hcd: suspend/resume support USB: more u32 conversion after transfer_buffer_length and actual_length USB: Fix cp2101 USB serial device driver termios functions for console use USB: CP2101 New Device ID USB: ipaq: handle 4 endpoint devices USB: S3C: Move usb-control.h to platform include USB: ohci-hcd: Add ARCH_S3C24XX to the ohci-s3c2410.c glue USB: pedantic: spelling correction in comment for ch9.h USB: host: fix sparse warning: Using plain integer as NULL pointer USB: ohci-s3c2410: fix name of bus clock USB: ohci-s3c2410: remove <mach/hardware.h> include USB: serial: rename cp2101 driver to cp210x USB: CP2101 Reduce Error Logging USB: CP2101 Support AN205 baud rates ...
| | * USB: S3C: Move usb-control.h to platform includeBen Dooks2009-03-241-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The usb-control.h is needed by ohci-s3c2410.c for both S3C24XX and S3C64XX architectures, so move it to <plat/usb-control.h> Signed-off-by: Ben Dooks <ben@simtec.co.uk> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | ASoC: Fix Samsung S3C2412_IISMOD_SDF_{MSB,LSB} definitionsBen Dooks2009-03-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The definitions of S3C2412_IISMOD_SDF_MSB and S3C2412_IISMOD_SDF_LSB are incorrect, being the same S3C2412_IISMOD_SDF_IIS which is the only correct one in this series. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Add s3c64xx-i2s supportBen Dooks2009-03-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Add the initial code to support the S3C64XX I2S hardware using the s3c-i2s-v2 core code. Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | S3C: Move <mach/audio.h> to <plat/audio.h>Ben Dooks2009-03-051-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | The <mach/audio.h> file needs to be common to both ARCH_S3C2410 and ARCH_S3C64XX as they share common driver code, so move it to <plat/audio.h>. Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | S3C24XX: Move and update IIS headersBen Dooks2009-03-051-0/+72
| |/ | | | | | | | | | | | | Move the IIS headers to their correct place. Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'next-s3c-pm' of git://aeryn.fluff.org.uk/bjdooks/linux into develRussell King2009-03-261-0/+174
|\ \
| * | [ARM] S3C: Tidy sleep code path to fix call flowBen Dooks2009-03-101-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As noted by Russell King, the sleep code path is not elegant and makes use of leaving items on the stack between calls. Change the code that does the following: if (s3c_cpu_save(regs_save) == 0) { flush_cache_all(); S3C_PMDBG("preparing to sleep\n"); pm_cpu_sleep(); } to simply call s3c_cpu_save, and let that do the necessary calls to quiesce and sleep the system. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Do not kmalloc/kfree during inner suspend code.Ben Dooks2009-03-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PM CRC checking code kmallocs an area to save a set of CRC values during suspend. This triggers a warning due to the call of a function that might sleep whilst the system is not in a valid state to do so. Move the allocation and free to points in the suspend and resume process where they can call a function that might-sleep. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Update UART save over PM suspend/resumeBen Dooks2009-03-081-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the way the UART state is saved over suspend to allow the s3c64xx code to modify the settings on resume to avoid any illegal state changes to the UART clocks. This will also allow us to save the UDIVSLOT register on newer SoCs. Move to using a structure for the UART use the extant Kconfig configuration specifying the number of UARTs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Rename sleep.S functions to be non-cpu specificBen Dooks2009-03-081-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | Rename s3c2410_cpu_resume to s3c_cpu_resume and s3c2410_cpu_save to s3c_cpu_save to remove the CPU specific naming of these functions which are now in the generic PM code. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Rename s3c2410_pm_init to s3c_pm_init.Ben Dooks2009-03-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Since we have moved a large proportion of the PM code to the common support area, remove the cpu specific name from the initialisation function. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Make IRQ_EINT sleep control commonBen Dooks2009-03-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move the IRQ_EINT sleep control to be available to all s3c impelmentations. Since s3c_irqext_wake is not large, place it in arch/arm/plat-s3c/pm.c as adding it to a new file would be a waste of compile time. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Move plat-s3c24xx pm.c support into plat-s3cBen Dooks2009-03-081-0/+27
| | | | | | | | | | | | | | | | | | | | | Move parts of the core and debug suspend code into the plat-s3c for use with the new s3c64xx code. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Split the resume memory check code from pm.cBen Dooks2009-03-081-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Split the optional memory check code out of the pm.c file as it is quite a big #ifdef block and as-such can be moved out and simply compiled when the configuration is set. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Move PM support functions to common locationBen Dooks2009-03-081-3/+33
| | | | | | | | | | | | | | | | | | | | | | | | Start moving the PM code by moving all the common support functions to a common location in arch/arm/plat-s3c. With the move we rename the functions from s3cxxx_ to s3c_ to fit the new location. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C: Nove <plat/pm.h> from plat-s3c24xx to plat-s3fcBen Dooks2009-03-081-0/+73
| |/ | | | | | | | | | | | | | | Move the <plat/pm.h> header to plat-s3c as preparation for moving parts of the s3c24xx pm support which are common into the plat-s3c support. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* | [ARM] 5376/1: S3C24XX: Fix sparse errors in platform uncompress.hDaniel Silverstone2009-02-191-1/+4
|/ | | | | | | | | Ensure __iomem attribute is __force 'd off in the minimal __raw_writel() implementation. Signed-off-by: Simtec Linux Team <linux@simtec.co.uk> Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] s3c: define __io using the typesafe versionRussell King2008-12-181-1/+1
| | | | | | as per 0560cf5aa51216b06874333a2fa26ca034d97bdb Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] S3C24XX: Add fourth UART definition for S3C2443Ben Dooks2008-12-181-1/+1
| | | | | | | | Add the fourth UART definition for the S3C2443, and at the same time fixup the problems caused by the enlarging of the UART array in the previous commits. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* Merge branch 'next-s3c64xx-device' into next-mergedBen Dooks2008-12-1810-2/+1062
|\ | | | | | | | | | | Conflicts: arch/arm/mach-s3c2440/mach-at2440evb.c
| * [ARM] S3C: Add new FB device definitionBen Dooks2008-12-151-0/+1
| | | | | | | | | | | | | | Add a device definition for the new S3C framebuffer driver. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add i2c1 device definitionBen Dooks2008-12-152-0/+3
| | | | | | | | | | | | | | | | Add device definition and support functions for the second i2c device (i2c1). If this is selected, the first i2c bus will become index 0 instead of index -1. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add register defines for new style framebufferBen Dooks2008-12-152-0/+439
| | | | | | | | | | | | | | | | Provide the initial register definitions for the newer style of framebuffer cores found in the Samsung SoCs such as S3C2450, S3C64XX. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Fix SDHCI setup compilationBen Dooks2008-12-151-0/+9
| | | | | | | | | | | | | | | | Fix the compilation of the SDHCI configuration/setup functions to depend on their respective configuration variables. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C6410: Fix gpio configuration for channel 1.Ben Dooks2008-12-151-1/+1
| | | | | | | | | | | | Select the correct GPIO configuration function for channel 1 Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add header for initial i2c device core setup.Ben Dooks2008-12-151-0/+35
| | | | | | | | | | | | | | Add a header to define setup functions for the i2c devices. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Make i2c device definition common to plat-s3cBen Dooks2008-12-152-1/+23
| | | | | | | | | | | | | | Make the device i2c0 common to plat-s3c and move the definitions from arch/arm/plat-s3c24xx/devs.c Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add SDHCI (HSMMC) channel 1 device definitionBen Dooks2008-12-151-1/+13
| | | | | | | | | | | | | | Add device definition and support code for the Samsung HSMMC channel 1 device. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C6410: Add helper for setting SDHCI device informationBen Dooks2008-12-151-0/+87
| | | | | | | | | | | | | | Add the necessary helper functions for setting up the SDHCI device information. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add Samsung SDHCI register definitionsBen Dooks2008-12-151-0/+87
| | | | | | | | | | | | | | Add the specific register definitions for the Samsung SDHCI (HSMMC) block for the S3C2443 and S3C64XX series. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add new GPIO configuration callsBen Dooks2008-12-153-2/+293
| | | | | | | | | | | | | | Add new GPIO configuration calls that mesh with the new gpiolib support. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Add GPIO chip trackingBen Dooks2008-12-151-0/+23
| | | | | | | | | | | | | | | | | | The gpiolib driver keeps its chip array to itself and having a separate array for s3c-only gpios stops any non-s3c gpio being used in one of the s3c specific configuration calls. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Move common GPIO code from plat-s3c24xxBen Dooks2008-12-151-0/+49
| | | | | | | | | | | | | | Move the common parts of the GPIO code into plat-s3c for use with both the s3c24xx and s3c64xx systems. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C: Move HSMMC device definition to plat-s3ecBen Dooks2008-12-151-1/+3
| | | | | | | | | | | | | | Move the definition for the hsmmc device to plat-s3c to be shared between the s3c24xx and s3c64xx platforms. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* | Merge branch 'next-s3c64xx' into next-mergedBen Dooks2008-12-188-3/+45
|\ \
| * | [ARM] S3C: Update time initialisation to fix S3C64XX time problemsBen Dooks2008-12-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The S3C64XX timer is running at the wrong rate due to the assumptions made in the timer initialisation about the way the pwm dividers work. This means that time on the S3C64XX runs twice as fast as it should. Fix the problem by moving to using the clk framework to setup the pwm timer clock muxes, as the pwm-clock code has all the necessary knowledge of how the timer clock inputs are routed. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C64XX: Update TCFG for new timer divider settings.Ben Dooks2008-12-161-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The S3C64XX series has a new TCFG divider setting to allow the clock directly through, which means that we need to update the pwm-clock code to cope with this. Add <mach/pwm-clock.h> containing the specific code to deal with the TCFG divider settings and provide any other per-arch data that the pwm-clock driver needs to function. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * | [ARM] S3C64XX: Fix missing definition of s3c64xx_init_io()Ben Dooks2008-12-151-0/+1
| |/ | | | | | | | | | | | | | | | | | | The function s3c64xx_init_io was missing from <plat/cpu.h> and was masked by the SMDK6410 having an local definition. Fix by removing the SMDK6410 variant and adding it to the relevant <plat/cpu.h> file. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C6400: serial support for S3C6400 and S3C6410 SoCsBen Dooks2008-12-151-0/+6
| | | | | | | | | | | | | | Add support to the Samsung serial driver for the S3C6400 and S3C6410 serial ports. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C64XX: Clock support for S3C6400/S3C6410Ben Dooks2008-12-151-0/+3
| | | | | | | | | | | | | | | | Add the PLL clock initialisation and clock registration and include the clocks sourced via CLKDIVx for most of the on-chip peripherals. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C64XX: Add initial clock frameworkBen Dooks2008-12-151-0/+8
| | | | | | | | | | | | | | | | Add the initial clocks definitions for the s3c6400 and s3c6410. Move the epll and ext clock from the s3c2443 support into the common code. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C64XX: Map timer memory and interruptsBen Dooks2008-12-151-1/+2
| | | | | | | | | | | | | | 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>
| * [ARM] S3C64XX: Add VIC0 and VIC1 sourced interriptsBen Dooks2008-12-151-0/+1
| | | | | | | | | | | | | | Add and initialise the two VIC (PL192) found on the S3C64XX series CPUs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C64XX: Add UARTdevice definitionsBen Dooks2008-12-151-0/+1
| | | | | | | | | | | | | | Add resources and information for the UART deviecs on the S3C64XX CPUs. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
| * [ARM] S3C64XX: Add system boot-time supportBen Dooks2008-12-151-1/+1
| | | | | | | | | | | | | | 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>
| * [ARM] S3C24XX: Split map.h into plat-s3c24xx and mach-s3c2410Ben Dooks2008-12-151-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| * [ARM] S3C24A0: Serial port definitions and driver support.Sandeep Patil2008-12-151-0/+8
| | | | | | | | | | | | | | | | | | | | 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>
OpenPOWER on IntegriCloud