Commit Graph

179378 Commits

Author SHA1 Message Date
Kukjin Kim b6f837575e ARM: S5P6442: Add clock support for S5P6442
This patch adds clock support for S5P6442. This patch adds the clock
register definitions and the various system clocks in S5P6442.

Signed-off-by: Adityapratap Sharma <aditya.ps@samsung.com>
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>
2010-02-24 01:52:15 +00:00
Kukjin Kim 5f7f6a4a0d ARM: S5P6442: Add Samsung S5P6442 CPU support
This patch adds support for Samsung S5P6442 CPU. This patch also adds
an entry for S5P6442 cpu in plat-s5p cpu table.

Signed-off-by: Adityapratap Sharma <aditya.ps@samsung.com>
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>
2010-02-24 01:52:15 +00:00
Vasily Khoruzhick a0af8b3c70 ARM: SAMSUNG: adc: disable/enable IRQ on suspend/resume
IRQ should be disabled on suspend and re-enabled on resume.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:14 +00:00
Vasily Khoruzhick 0fe1309b4d ARM: SAMSUNG: Add resources description for s3c24xx ts driver
Without resources description driver fails during initialization.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:14 +00:00
Ben Dooks 7965b214bf ARM: SAMSUNG: Eliminate plat-s3c
The plat-s3c directory is now clear, so remove the files in it and
expunge it from the build process.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:13 +00:00
Ben Dooks f94327f2ce ARM: SAMSUNG: Move include/mach files out of plat-s3c
Move the include/mach files out of plat-s3c and into the relevant
machine files. This does mean copying the files, but there is nowhere
else to put them.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:12 +00:00
Ben Dooks ae5fa355ec ARM: SAMSUNG: Select NO_IOPORT for plat-samsung
All these platforms select NO_IOPORT, so move it to plat-samsung Kconfig

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:12 +00:00
Ben Dooks 46ba2a7284 ARM: S3C24XX: Move audio-simtec.h to plat-s3c24xx
Continue the clearout of plat-s3c by moving audio-simtec.h to plat-s3c24xx
as there are no current implementations outside of this platform.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:11 +00:00
Ben Dooks 89f1fa080b ARM: SAMSUNG: Move plat-s3c Kconfig entries to plat-samsung and plat-s3c24xx
Move the Kconfig entries from plat-s3c to plat-samsung and plat-s3c24xx
as necessary. The S3C_BOOT entries and the DMA configuration can go to
plat-samsung. The low-level UART configurations are currently S3C2XX
specific and can go to plat-s3c24xx.

Eliminating plat-s3c from the build process will be submitted seperately.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-24 01:52:06 +00:00
Ben Dooks 6c6971dc4e ARM: SAMSUNG: Move the last build from plat-s3c to plat-samsung
Move the init.c and time.c files to plat-samsung from plat-s3c, thus
clearing the last files that are being built in here.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-23 00:03:43 +00:00
Ben Dooks 2c420fe22f ARM: SAMSUNG: Move DMA support to plat-samsung
Move the core of the DMA support to plat-samsung for everyone to use.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-23 00:03:43 +00:00
Ben Dooks 806c17b549 ARM: SAMSUNG: Move pm.c to plat-samsung
Move pm.c to plat-samsung, it should be usable by all Samsung systems

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-23 00:03:43 +00:00
Ben Dooks 7086a9df05 ARM: SAMSUNG: Move map-base to plat-samsung
Move the map-base file to plat-samsung. To make the move easier, we do not
change the S3C_ prefix on many of the items as this would involve going
through altering all the dependencies.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-23 00:03:43 +00:00
Ben Dooks c116c1d725 ARM: SAMSUNG: Move common headers from plat-s3c to plat-samsung
Move common headers from plat-s3c's include/plat directory into plat-samsung.

No need to fix any files, these are still included via <plat/>

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-23 00:03:42 +00:00
Ben Dooks 7f0ff702cd ARM: Merge next-samsung-s3c64xx-platdeletion
Merge branch 'next-samsung-s3c64xx-platdeletion' into next-samsung

Conflicts:

	arch/arm/mach-s3c64xx/Makefile (fixed)
2010-02-22 23:38:26 +00:00
Ben Dooks 110d85acd4 ARM: S3C64XX: Eliminate plat-s3c64xx
Now we've move the support out of plat-s3c64xx for everything, eliminate
the platform directory arch/arm/plat-s3c64xx and remove it from the ARM
build configuration.

Note, PLAT_S3C64XX is kept around for the moment until the drivers that
depend on it can be updated, so it is moved to the mach-s3c64xx Kconfig.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-22 23:26:47 +00:00
Ben Dooks 992426bfe9 ARM: SAMSUNG: Remove dma-plat.h to allow plat-s3c64xx to be removed
dma-plat.h is the last file left in plat-s3c64xx, but to remove it we
must also change the use of dma-plat.h by the core code and the s3c24xx
implementation.

Rename the s3c24xx dma-plat.h in the common plat-samsung directory as it
may be used for other ports. Move the specific dma bits into the
mach-s3c64xx directory and update the build as needed.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-21 23:10:35 +00:00
Ben Dooks 431fb7df24 ARM: SAMSUNG: Move pm-core.h to machine directory
Move the pm-core.h to the machine include directory in the process of
eliminating the plat-s3c64xx.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:34:03 +00:00
Ben Dooks 89f0ce721c ARM: S3C64XX: Remove plat-s3c64xx Kconfig and PLAT_S3C64XX
Remove the Kconfig and PLAT_S3C64XX defines for the previous S3C64XX
directory structure now that the code is moved into mach-s3c64xx.

Note, we cannot currently remove plat-s3c64xx directory as we have a
pair of include files used within plat-s3c and plat-samsung that need
to find a new home.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:34:03 +00:00
Ben Dooks 55bf9267dd ARM: S3C64XX: Combine the clock init code
Turn the init sequence of
	s3c24xx_register_baseclocks(xtal);
	s3c64xx_register_clocks();
	s3c6400_register_clocks(S3C6410_CLKDIV0_ARM_MASK);

into a single call as this is now contained within one file.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:34:02 +00:00
Ben Dooks 62acb2f82d ARM: S3C64XX: Merge s3c6400-clock.c and clock.c into mach-s3c64xx
Merge plat-s3c64xx/s3c6400-clock.c mach-s3c64xx/clock.c placing all the
clock code into one place.

Note, no effort is made in this patch to squash the init functions
together.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:34:01 +00:00
Ben Dooks 6ce8fde296 ARM: S3C64XX: Merge s3c6400-init.c into cpu.c
Since this file is small, and is compiled for both systems in this
architecture merge it into the cpu support file and remove the original
instead of moving it.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:34:01 +00:00
Ben Dooks f7be9abaa5 ARM: S3C64XX: Move core support to mach-s3c64xx
Move the core S3C64XX support to mach-s3c64xx as it is unlikely to be used
outside of this directory. Also move the SoC header files in with it.

This includes the clock, cpu, cpufreq, dma, gpiolib and pll support.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:33:54 +00:00
Ben Dooks 88fc68a280 ARM: S3C64XX: Move device and device setup into mach-s3c64xx
Move the S3C64XX specific device and setup files into mach-s3c64xx as
they are unlikely to be used outside of this code.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:32:01 +00:00
Ben Dooks ed618aff8a ARM: S3C64XX: Move IRQ support into mach-s3c64xx
Move IRQ support to mach-s3c64xx as it is unlikely to be re-used outside
this machine.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:32:00 +00:00
Ben Dooks 3501c9ae9f ARM: S3C64XX: Move headers into machine include directory
Move the register and GPIO definition files from plat-s3c64xx into the
machine include direcotry as they are unlikely to be reused outside
mach-s3c64xx.

This move includes removing the empty <mach/regs-clock.h> and replacing
it with the <plat/regs-clock.h> implementation.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-20 22:31:17 +00:00
Ben Dooks d35b7a829a ARM: Merge next-samsung-s3c244x-merge
Merge branch 'next-samsung-s3c244x-merge' into next-samsung
2010-02-03 01:56:07 +00:00
Ben Dooks 28db4ed52d ARM: Merge next-samsung-devupdates2
Merge branch 'next-samsung-devupdates2' into next-samsung
2010-02-03 01:55:39 +00:00
Maurus Cuelenaere 91492b4a04 ARM: SAMSUNG: Add support for 12bit ADC
The S3C64XX SoC series support 12bit ADC data, enable this and
mask the data accordingly.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:04 +00:00
Ben Dooks cf9814eb6d ARM: S3C64XX: Make audio device code built unconditionally
Making the code depend on CONFIG_SND_S3C24XX_SOC means that if the ASoC
code is build modularily, the boards will fail to link due to the device
code also being built as a module.

As per Mark Brown's suggestions, just compile this always as it is expected
many machines will have audio.

Also move the obj-y line out of the device setup area into a new area just
for devices.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:03 +00:00
Ben Dooks 1de203adf6 ARM: SAMSUNG: Use PLAT_SAMSUNG instead of PLAT_S3C
As part of the development process, it is hoped PLAT_S3C is either removed
from all of the PLAT_SAMSUNG derived platforms or removed entirely. It is
also better to use PLAT_SAMSUNG as this is the current base of all Samsung
devices.

Change the two places that use PLAT_S3C to use PLAT_SAMSUNG

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:02 +00:00
Ben Dooks 3bd9377e87 ARM: SAMSUNG: Add SERIAL_SAMSUNG_UARTS_4 Kconfig option
Add SERIAL_SAMSUNG_UARTS_4 to mop up the number of cases currently using
four Samsung compatible UARTS.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:02 +00:00
Michel Pollet 2103040320 ARM: S3C2412: SoC has the fractional baud rate register
The S3C2412 has a fractional baud rate register, this patch adds the
corresponding flag to the UART definition to allow generation of more
precise baud rates for the various clock combinations.

Signed-off-by: Michel Pollet <buserror@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:01 +00:00
Jassi Brar 4b4c662571 ARM: S3C64XX: SPI: Make platform device compilation selectable
The SPI controller platform devices should be compiled in
independent of the driver support, otherwise we might end
up with dev-spi built as kernel module.
Change this to make every machine select if it has some SPI
device and wants to build device definitions.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:55:01 +00:00
Ben Dooks 2848552cef ARM: SAMSUNG: Add DMA masks to hsotg device
Add the required DMA masks to the hs-otg device definition to allow DMA
to work with it.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-03 01:54:54 +00:00
Ben Dooks 84c9b7271a ARM: S3C244X: Merge plat-s3c24xx s3c2440.h and s3c2442.h into s3c244x.h
Merge these two headers into one, these two SoCs are so similar.

Note, correct fault in mach-smdk2443.h including the wrong header.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:56:46 +00:00
Ben Dooks 58bac7b8de ARM: S3C24XX: Move S3C2440/S3C2442 plat-s3c24xx support to mach-s3c2440
Remove the old common S3C2440 and S3C2442 SoC support from plat-s3c24xx
into mach-s3c2440 now this directory is serving both SoCs.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:56:04 +00:00
Ben Dooks 70556b143a ARM: S3C24XX: Remove old mach-s3c2442
Remove the old mach-s3c2442 directory now all is merged into mach-s3c2440
and remove it from the arch/arm build process.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:55:31 +00:00
Ben Dooks 916ee9249a ARM: S3C244X: Move S3C2442 code into S3C2440
Move the remaining S3C2442 code into mach-s3c2440 as there is only one
file currently in there and these two SoCs are very similar.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:55:31 +00:00
Ben Dooks 1f51bbfd59 ARM: S3C2440: Fix SMDK2440 SoC selection
Fix the entries for SMDK2440 should have allowed for S3C2440 or S3C2440
SoC selection but this depended on ARCH_S3C2440 which has not been around
for a while.

Remove the dependency to allow this to be selected.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:55:31 +00:00
Ben Dooks 491547d43b ARM: S3C2442: Merge s3c2442.c and clock.c
Merge s3c2442.c and clock.c as the s3c242.c does not contain much and
the clock parts are always built for s3c2442 anyway.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:55:26 +00:00
Ben Dooks 5cbcccb370 ARM: S3C24XX: Merge s3c2442 and s3c2440 machines into mach-s3c2440
Move the pair of machines in arch/arm/mach-s3c2442 into the mach-s3c2440
directory as the S3C2440 and S3C2442 are very close.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-02-01 17:55:25 +00:00
Atul Dahiya 87aef30eb3 ARM: S5P: Change S5P_TIMER_IRQ based to 11 for SAMSUNG S5P series.
Currently, S5P_TIMER_IRQ is based at the end of VICs. This patch changes
the S5P_TIMER_IRQ base from end of VICs to 11 in ISA IRQ space.
No of VICs varies between SOCs. This causes an exception on S5P6442.

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>
2010-01-29 10:37:34 +09:00
Kukjin Kim 8131796046 ARM: S5P6440: Move common memory map definitions for S5P
1. Moved common memory map definitions for S5P such as S5P_VA_XXX
   into plat-s5p/include/mach/map-s5p.h from mach-s5p6440/include/mach.
2. Removed unnecessary definitions in the map.h and irq.c
3. Removed the unnecessary support for unaligned UART address
4. Renamed S5P_VA_VICx definitions as VA_VICx
5. Moved the definitons of VIC_BASE to plat-s5p/include/plat/irqs.h

Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-27 17:43:07 +09:00
Kukjin Kim e96b234b7e ARM: S5P6440: Move CPU specific code in plat-s5p to machine directory
The s5p6440-clock.c and s5p6440-init.c code in the plat-s5p is specific to
s5p6440 SoC based systems. So these files are being moved to the machine
directory of s5p6440. And these files are renamed in the machine directory.

Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-27 09:50:11 +09:00
Ben Dooks 159a3ddd6c ARM: Merge next-smdk6410-defconfig
Merge branch 'next-smdk6410-defconfig' into next-samsung
2010-01-26 18:21:40 +09:00
Ben Dooks 50ee2d35a5 ARM: SAMSUNG: Add error printing to s3c24xx_register_clocks
Add an error print to s3c24xx_register_clocks to provide more useful
information when failing to register the clock.

I belive this was originally left out due to the possibility of a
problem with low-level debugging code. However, if the low-level
debug code is not functional by now there will be a whole other set of
problems being presented to the system.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-26 17:44:33 +09:00
Ben Dooks 8428d47a36 ARM: SAMSUNG: Add documentation to the clock registration calls.
Add some kerneldoc documentation to the s3c24xx_register_clock and the
s3c24xx_register_clocks() call.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-26 17:44:32 +09:00
Ben Dooks 2f6c2ac1d9 ARM: S3C64XX: Squash SDHCI setup into one file
Squash the SDHCI setup for both the S3C6400 and S3C6410 into one file and
make the S3C6410 case use the S3C6400 code.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-26 10:38:52 +09:00
Ben Dooks 97ce9d6938 ARM: S3C64XX: Remove useless IO descriptor from S3C6410
The iotable in arch/arm/mach-s3c64xx/s3c6410.c is currently empty and
therefore can be removed from the build.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-01-26 10:18:14 +09:00