GitHub/MotorolaMobilityLLC/kernel-slsi.git
14 years agoInput: s3c24xx_ts - depend on SAMSUNG_DEV_TS and update menu entry
Ben Dooks [Wed, 19 May 2010 05:45:01 +0000 (14:45 +0900)]
Input: s3c24xx_ts - depend on SAMSUNG_DEV_TS and update menu entry

Make the driver depend on either ARCH_S3C2410 (as legacy) or the new
device selection of SAMSUNG_DEV_TS.

Change the menuconfig name to reflect this driver is now handling more
devices that just the s3c2410.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
14 years agoInput: s3c24xx_ts - Add FEAT for Samsung touchscreen support
Naveen Krishna [Tue, 18 May 2010 11:44:45 +0000 (20:44 +0900)]
Input: s3c24xx_ts - Add FEAT for Samsung touchscreen support

This patch adds a feature bit field in the touchscreen driver for Samsung SoCs.
Which can be used to distinguish the TSADC module features.

Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
[ben-linux@fluff.org: minor fix to title]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
14 years agoInput: s3c24xx_ts - Implement generic GPIO configuration callback
Naveen Krishna [Tue, 18 May 2010 11:44:38 +0000 (20:44 +0900)]
Input: s3c24xx_ts - Implement generic GPIO configuration callback

This patch implements generic GPIO configuration function in Samsung
touchscreen driver. And makes the touchscreen driver s3c24xx-ts.c
generic to all the Samsung SoCs.

Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
[ben-linux@fluff.org: fixed title ]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
14 years agoARM: SAMSUNG: Move s3c64xx dev-ts.c to plat-samsung and rename configuration
Ben Dooks [Wed, 19 May 2010 05:36:28 +0000 (14:36 +0900)]
ARM: SAMSUNG: Move s3c64xx dev-ts.c to plat-samsung and rename configuration

Move the arch/arm/mach-s3c64xx/dev-ts.c file to arch/arm/plat-samsung and
rename the Kconfig entry appropriately.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Implements cfg_gpio function for Samsung touchscreen
Naveen Krishna [Tue, 18 May 2010 11:44:27 +0000 (20:44 +0900)]
ARM: SAMSUNG: Implements cfg_gpio function for Samsung touchscreen

This patch implements cfg_gpio function for Samsung touchscreen.
And also modifies the H1940 machine respectively.

Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C64XX: Add touchscreen platform device definition
Maurus Cuelenaere [Tue, 4 May 2010 11:12:44 +0000 (13:12 +0200)]
ARM: S3C64XX: Add touchscreen platform device definition

This patch adds the touchscreen platform device definition for S3C64XX boards.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Move mach/ts.h to plat/ts.h
Maurus Cuelenaere [Tue, 4 May 2010 11:12:41 +0000 (13:12 +0200)]
ARM: SAMSUNG: Move mach/ts.h to plat/ts.h

This moves mach-s3c2410/include/mach/ts.h to plat-samsung/include/plat/ts.h in
order to prepare for s3c64xx support in the touchscreen driver.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: Move i2c helpers from plat-s5pc1xx to mach-s5pc100
Marek Szyprowski [Tue, 18 May 2010 10:38:44 +0000 (12:38 +0200)]
ARM: S5PC100: Move i2c helpers from plat-s5pc1xx to mach-s5pc100

Move i2c helpers from plat-s5pc1xx to mach-s5pc100.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: Move frame buffer helpers from plat-s5pc1xx to mach-s5pc100
Marek Szyprowski [Tue, 18 May 2010 10:38:43 +0000 (12:38 +0200)]
ARM: S5PC100: Move frame buffer helpers from plat-s5pc1xx to mach-s5pc100

Move frame buffer helpers from plat-s5pc1xx to mach-s5pc100.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: gpio.h cleanup
Marek Szyprowski [Tue, 18 May 2010 10:38:42 +0000 (12:38 +0200)]
ARM: S5PC100: gpio.h cleanup

This patch renames gpio related registers from s5pc1xx to s5pc100 to
better match the plat-s5p framework style. GPIO_MP* defines now used
anywhere thus has been removed.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: Move gpio support from plat-s5pc1xx to mach-s5pc100
Marek Szyprowski [Tue, 18 May 2010 10:38:41 +0000 (12:38 +0200)]
ARM: S5PC100: Move gpio support from plat-s5pc1xx to mach-s5pc100

Move gpio-lib support from plat-s5pc1xx to mach-s5pc100. Only basic gpio
functionality is now supported. Gpio interrupts are disabled temporarly
and will be added later.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: Use common functions for gpiolib implementation
Marek Szyprowski [Tue, 18 May 2010 10:38:40 +0000 (12:38 +0200)]
ARM: S5PC100: Use common functions for gpiolib implementation

GPIOlib helpers from plat-samsung already have functions for accessing
4bit gpio banks. This patch removes the duplicated functions from
plat-s5pc1xx/gpiolib.c.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agodrivers: serial: S5PC100 serial driver cleanup
Marek Szyprowski [Tue, 18 May 2010 10:38:39 +0000 (12:38 +0200)]
drivers: serial: S5PC100 serial driver cleanup

Remove unnecessary Kconfig entry. S5PC100 has exactly the same driver as
S3C6400/S3C6410/S5P6440.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PC100: Pre-requisite clock patch for plat-s5pc1xx to plat-s5p move
Thomas Abraham [Fri, 14 May 2010 07:27:28 +0000 (16:27 +0900)]
ARM: S5PC100: Pre-requisite clock patch for plat-s5pc1xx to plat-s5p move

This is a pre-requisite clock patch for the plat-s5pc1xx to plat-s5p
movement. The patches that perform the movement of the code from
plat-s5pc1xx to plat-s5p (and mach-s5pc100) should also enable the
build for the mach-s5pc100/clock.c 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>
14 years agoARM: SAMSUNG: Copy common I2C0 device helpers to machine directories
Marek Szyprowski [Tue, 18 May 2010 10:23:35 +0000 (12:23 +0200)]
ARM: SAMSUNG: Copy common I2C0 device helpers to machine directories

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: move driver strength gpio configuration helper to common dir
Marek Szyprowski [Tue, 18 May 2010 10:23:36 +0000 (12:23 +0200)]
ARM: SAMSUNG: move driver strength gpio configuration helper to common dir

Driver strength parameter can be changed not only on S5PC100 but also
on S5PV210/S5PC110 platforms, so move the helper functions to the common
plat-samsung directory.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: Merge for-2635/samsung-rtc
Ben Dooks [Wed, 19 May 2010 09:07:25 +0000 (18:07 +0900)]
ARM: Merge for-2635/samsung-rtc

Merge branch 'for-2635/samsung-rtc' into for-linus/samsung2

Conflicts:
arch/arm/mach-s3c64xx/include/mach/map.h
arch/arm/plat-samsung/Kconfig
arch/arm/plat-samsung/Makefile

14 years agoARM: Merge for-2635/samsung-ts
Ben Dooks [Wed, 19 May 2010 09:05:42 +0000 (18:05 +0900)]
ARM: Merge for-2635/samsung-ts

Merge branch 'for-2635/samsung-ts' into for-linus/samsung2

14 years agoARM: Merge for-2635/s5p-audio
Ben Dooks [Wed, 19 May 2010 09:05:33 +0000 (18:05 +0900)]
ARM: Merge for-2635/s5p-audio

Merge branch 'for-2635/s5p-audio' into for-linus/samsung2

14 years agoARM: Merge for-2635/s5p-dma
Ben Dooks [Wed, 19 May 2010 09:05:15 +0000 (18:05 +0900)]
ARM: Merge for-2635/s5p-dma

Merge branch 'for-2635/s5p-dma' into for-linus/samsung2

Conflicts:
arch/arm/mach-s5pv210/Makefile

14 years agoARM: Merge for-2635/fb-updates1
Ben Dooks [Wed, 19 May 2010 09:04:11 +0000 (18:04 +0900)]
ARM: Merge for-2635/fb-updates1

Merge branch 'for-2635/fb-updates1' into for-linus/samsung2

14 years agoARM: Merge for-2635/s5pv210-clock
Ben Dooks [Wed, 19 May 2010 09:04:10 +0000 (18:04 +0900)]
ARM: Merge for-2635/s5pv210-clock

Merge branch 'for-2635/s5pv210-clock' into for-linus/samsung2

14 years agoARM: Merge for-2635/s5p6440-clock
Ben Dooks [Wed, 19 May 2010 09:04:09 +0000 (18:04 +0900)]
ARM: Merge for-2635/s5p6440-clock

Merge branch 'for-2635/s5p6440-clock' into for-linus/samsung2

14 years agoARM: Merge for-2635/s3c6410-clock
Ben Dooks [Wed, 19 May 2010 09:04:09 +0000 (18:04 +0900)]
ARM: Merge for-2635/s3c6410-clock

Merge branch 'for-2635/s3c6410-clock' into for-linus/samsung2

14 years agoARM: Merge for-2635/gpio2
Ben Dooks [Wed, 19 May 2010 09:04:08 +0000 (18:04 +0900)]
ARM: Merge for-2635/gpio2

Merge branch 'for-2635/gpio2' into for-linus/samsung2

14 years agoARM: Merge for-2635/rx1950
Ben Dooks [Wed, 19 May 2010 09:04:07 +0000 (18:04 +0900)]
ARM: Merge for-2635/rx1950

Merge branch 'for-2635/rx1950' into for-linus/samsung2

14 years agoARM: Merge for-2635/acer-n35
Ben Dooks [Wed, 19 May 2010 09:04:06 +0000 (18:04 +0900)]
ARM: Merge for-2635/acer-n35

Merge branch 'for-2635/acer-n35' into for-linus/samsung2

14 years agoARM: Merge for-2635/samsung-clock
Ben Dooks [Wed, 19 May 2010 09:04:06 +0000 (18:04 +0900)]
ARM: Merge for-2635/samsung-clock

Merge branch 'for-2635/samsung-clock' into for-linus/samsung2

14 years agoARM: Merge for-2635/samsung-hwmon
Ben Dooks [Wed, 19 May 2010 09:04:05 +0000 (18:04 +0900)]
ARM: Merge for-2635/samsung-hwmon

Merge branch 'for-2635/samsung-hwmon' into for-linus/samsung2

14 years agoARM: Merge for-2635/samsung-dma
Ben Dooks [Wed, 19 May 2010 09:04:04 +0000 (18:04 +0900)]
ARM: Merge for-2635/samsung-dma

Merge branch 'for-2635/samsung-dma' into for-linus/samsung2

14 years agoARM: Merge for-2635/s5p-general
Ben Dooks [Wed, 19 May 2010 09:04:03 +0000 (18:04 +0900)]
ARM: Merge for-2635/s5p-general

Merge branch 'for-2635/s5p-general' into for-linus/samsung2

14 years agoARM: Merge for-2635/s3c24xx-general
Ben Dooks [Wed, 19 May 2010 09:04:03 +0000 (18:04 +0900)]
ARM: Merge for-2635/s3c24xx-general

Merge branch 'for-2635/s3c24xx-general' into for-linus/samsung2

14 years agoARM: S5PV210: Add GPIOlib support
Pannaga Bhushan [Wed, 19 May 2010 08:25:32 +0000 (17:25 +0900)]
ARM: S5PV210: Add GPIOlib support

This patch adds GPIOlib support for S5PV210.

Signed-off-by: Pannaga Bhushan <p.bhushan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNGy: fix broken timer irq base
Marek Szyprowski [Fri, 14 May 2010 06:18:52 +0000 (08:18 +0200)]
ARM: SAMSUNGy: fix broken timer irq base

Timer interrupts range was defined as 43-47, what overlaps with VIC0 range
(32-64). This was caused probably by a typo while the common interrupts
definition was refactored. This patch moves timer interrupt range to safe
area of 11-15 (just before uart range).

This fixes the commit 87aef30eb3c5dac0491c83fe3b90bc61f1df24ec
("ARM: S5P: Change S5P_TIMER_IRQ based to 11 for SAMSUNG S5P series.")
which meant to move these into the old (and previously reserved)
ISA space.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
[ben-linux@fluff.org: update description]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SMDK6440: Add audio devices on board
Jassi Brar [Tue, 18 May 2010 07:03:07 +0000 (16:03 +0900)]
ARM: SMDK6440: Add audio devices on board

Add audio platform devices on the smdk by default.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5P6440: Add audio platform devices
Jassi Brar [Tue, 18 May 2010 07:03:02 +0000 (16:03 +0900)]
ARM: S5P6440: Add audio platform devices

Define platform devices for all audio devices found on S5P6440

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SMDK6442: Add audio devices on board
Jassi Brar [Tue, 18 May 2010 07:02:58 +0000 (16:02 +0900)]
ARM: SMDK6442: Add audio devices on board

Add audio platform devices on the smdk by default.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5P6442: Add audio platform devices
Jassi Brar [Tue, 18 May 2010 07:02:50 +0000 (16:02 +0900)]
ARM: S5P6442: Add audio platform devices

Define platform devices for all audio devices found on S5P6442

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SMDKC110: Add audio devices on board
Jassi Brar [Tue, 18 May 2010 07:02:35 +0000 (16:02 +0900)]
ARM: SMDKC110: Add audio devices on board

Add audio platform devices on the smdk by default.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SMDKV210: Add audio devices on board
Jassi Brar [Tue, 18 May 2010 07:02:30 +0000 (16:02 +0900)]
ARM: SMDKV210: Add audio devices on board

Add audio platform devices on the smdk by default.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PV210: Add audio platform devices
Jassi Brar [Tue, 18 May 2010 07:02:26 +0000 (16:02 +0900)]
ARM: S5PV210: Add audio platform devices

Define platform devices for all audio devices found on S5PV210

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Fix additional increment when running through gpios
Ben Dooks [Tue, 18 May 2010 10:07:05 +0000 (19:07 +0900)]
ARM: SAMSUNG: Fix additional increment when running through gpios

The pm-gpio.c code was incrementing the gpio_nr from the nr_gpios
field and the bank-bank offset inside the loop, and also in the
for() loop with a ++.

Remove the ++, as the number is already at the next GPIO, thus
ensuring that we don't skip a gpio bank by accident.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C24XX: Add note on GPIO bank sizes
Ben Dooks [Mon, 17 May 2010 06:12:33 +0000 (15:12 +0900)]
ARM: S3C24XX: Add note on GPIO bank sizes

Add a table for the GPIO bank sizes for each SoC

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C24XX: Remove macros mapping GPIO number to base
Ben Dooks [Mon, 17 May 2010 05:53:48 +0000 (14:53 +0900)]
ARM: S3C24XX: Remove macros mapping GPIO number to base

As part of the cleanup, remove the old macros mapping GPIO numbers
to the base of the register now we have gpiolib to manage the GPIO
mappings for us.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C24XX: Update missed gpio calls to use gpiolib
Ben Dooks [Mon, 17 May 2010 05:28:44 +0000 (14:28 +0900)]
ARM: S3C24XX: Update missed gpio calls to use gpiolib

Update a couple of S3C24XX and S3C2412 files that are still
using the GPIO number to register mapping calls to get the
s3c_gpio_chip and use the base field from that.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C24XX: Start cleanup of GPIO numbering
Ben Dooks [Mon, 17 May 2010 05:13:16 +0000 (14:13 +0900)]
ARM: S3C24XX: Start cleanup of GPIO numbering

Start cleaning up the numbering of GPIO banks by removing the old
bank start definitions currently being used by some of the header
files.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C244X: fix gpiolib port J support
Vasily Khoruzhick [Wed, 12 May 2010 07:22:41 +0000 (10:22 +0300)]
ARM: S3C244X: fix gpiolib port J support

Increase GPIOs number for S3C244X, and make S3C_GPIO_END
point to BANKJ end, otherwise gpiolib refuses to register
BANKJ

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
[ben-linux@fluff.org: Move pm fix to new patch]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SMDK2416: Add support for framebuffer device and ensure correct setup
Ben Dooks [Mon, 3 May 2010 06:29:44 +0000 (15:29 +0900)]
ARM: SMDK2416: Add support for framebuffer device and ensure correct setup

Add support for the LCD display on the SMDJK2416, and correctly name the
framebuffer device.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Set S3C_FB_MAX_WIN in <plat/fb.h>
Ben Dooks [Thu, 13 May 2010 05:44:50 +0000 (14:44 +0900)]
ARM: SAMSUNG: Set S3C_FB_MAX_WIN in <plat/fb.h>

Move the S3C_FB_MAX_WIN to the platform data to avoid
having to include the registers with the platform data.

Set S3C_FB_MAX_WIN to 5, which is the maximum that any
of the current hardware can do and the cost of having
it set to this for all is minimal (at least for the
platform data case), then always leave this as the maximum
for the systems supported.

Also remove the inclusion of <mach/regs-fb.h> from
the device definition in arch/arm/plat-samsung

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C2443: Fix definition of LCD clock bit
Ben Dooks [Fri, 30 Apr 2010 10:34:25 +0000 (19:34 +0900)]
ARM: S3C2443: Fix definition of LCD clock bit

Fix the definition of the LCD clock bit, it is the TFT display
controller on bit 9, not the older STN on bit 10.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C2443: Add initial defines for framebuffer support
Ben Dooks [Fri, 30 Apr 2010 10:08:38 +0000 (19:08 +0900)]
ARM: S3C2443: Add initial defines for framebuffer support

Add the necessary defines to get the s3c-fb device to compile for
s3c2443.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C64XX: Add USB external clock definition
Maurus Cuelenaere [Mon, 17 May 2010 18:17:42 +0000 (20:17 +0200)]
ARM: S3C64XX: Add USB external clock definition

This adds the xusbxti clock to S3C64XX platform.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoS5PV210: DMA: Add platform devices for PL330 DMACs
Jassi Brar [Tue, 18 May 2010 02:59:34 +0000 (11:59 +0900)]
S5PV210: DMA: Add platform devices for PL330 DMACs

Samsung's Soc S5PV210 has three PL330 DMACs. First is dedicated for
Memory->Memory data transfer while the other two meant for data
transfer with peripherals.
Define and add latter two PL330 DMACs as platform devices on the
S5PV210 platform.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoS5P6442: DMA: Add platform devices for PL330 DMACs
Jassi Brar [Tue, 18 May 2010 02:59:27 +0000 (11:59 +0900)]
S5P6442: DMA: Add platform devices for PL330 DMACs

Samsung's Soc S5P6442 has two PL330 DMACs. First is dedicated for
Memory->Memory data transfer while the second is meant for data
transfer with peripherals.
Define and add the peripheral PL330 DMAC as platform device on the
S5P6442 platform.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoS5P6440: DMA: Add platform devices for PL330 DMACs
Jassi Brar [Tue, 18 May 2010 02:59:20 +0000 (11:59 +0900)]
S5P6440: DMA: Add platform devices for PL330 DMACs

Samsung's Soc S5P6440 has one PL330 DMAC.
Define and add the PL330 DMAC as platform device on the
S5P6440 platform.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoS3C: DMA: Add api driver for PL330
Jassi Brar [Tue, 18 May 2010 02:59:06 +0000 (11:59 +0900)]
S3C: DMA: Add api driver for PL330

Latest Samsung SoCs have one or more PL330 as their DMACs. This patch
implements the S3C DMA API for PL330 core driver.

The design has been kept as generic as possible while keeping effort to
add support for new SoCs to the minimum possible level.

Some of the salient features of this driver are:-
 o  Automatic scheduling of client requests onto DMAC if more than
    one DMAC can reach the peripheral. Factors, such as current load
    and number of exclusive but inactive peripherals that are
    supported by the DMAC, are used to decide suitability of a DMAC
    for a particular client.
 o  CIRCULAR buffer option is supported.
 o  The driver scales transparently with the number of DMACs and total
    peripherals in the platform, since all peripherals are added to
    the peripheral pool and DMACs to the controller pool.

For most conservative use of memory, smallest driver size and best
performance, we don't employ legacy data structures of the S3C DMA API.
That should not have any affect since those data structures are completely
invisible to the DMA clients.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Move RTC device definitions in plat-samsung
Atul Dahiya [Tue, 18 May 2010 05:58:56 +0000 (14:58 +0900)]
ARM: SAMSUNG: Move RTC device definitions in plat-samsung

This patch moves RTC device definitions from mach-s3c64xx
to plat-samsung, to enable the other SoCs to use same device
definition.

Signed-off-by: Atul Dahiya <atul.dahiya@samsung.com>
Signed-off-by: Sangbeom Kim <sbkim73@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Moving ADC device definition to plat-samsung.
Naveen Krishna [Thu, 13 May 2010 13:06:36 +0000 (22:06 +0900)]
ARM: SAMSUNG: Moving ADC device definition to plat-samsung.

This patch moves ADC device definition to plat-samsung.
Because that is generic to the S3C64XX and S5P Series SoCs.

Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: h1940: framebuffer configuration fix
Mike Solovyev [Wed, 12 May 2010 11:38:00 +0000 (15:38 +0400)]
ARM: h1940: framebuffer configuration fix

Seems like a typo, wrong setup leads to broken image on ipaq screen.

Signed-off-by: Mike Solovyev <ms@sk.2-ch.org>
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoS3C: DMA: Change argument of s3c2410_dma_devconfig
Jassi Brar [Mon, 17 May 2010 01:35:29 +0000 (10:35 +0900)]
S3C: DMA: Change argument of s3c2410_dma_devconfig

All other functions have the channel argument of type 'unsigned int'
the s3c2410_dma_devconfig also accept the same value as argument but
treat it as type 'int'. Remove this anomaly by make it 'unsigned int'.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PV210: Add sclk clocks of type 'struct clksrc_clk' clock
Thomas Abraham [Mon, 17 May 2010 00:39:03 +0000 (09:39 +0900)]
ARM: S5PV210: Add sclk clocks of type 'struct clksrc_clk' clock

Add sclk clocks of type 'struct clksrc_clk' clock. The 'group2' of
clock clock sources is also added. This patch also changes the the
'id' member value of the uclk1 clock for instance instance 0 since
there are 4 instances of the uclk1 clock.

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>
14 years agoARM: S5PV210: Add sclk_audio and sclk_spdif clocks.
Thomas Abraham [Mon, 17 May 2010 00:39:00 +0000 (09:39 +0900)]
ARM: S5PV210: Add sclk_audio and sclk_spdif clocks.

Add the sclk_audio(0/1/2) clocks and sclk_spdif clock of type
'struct clksrc_clk' clock. Also, add clk_pcmcdclk(0/1/2) clocks
of type 'struct clk' clock.

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>
14 years agoARM: S5PV210: Add sclk_dac, sclk_mixer and sclk_hdmi clocks
Thomas Abraham [Mon, 17 May 2010 00:38:57 +0000 (09:38 +0900)]
ARM: S5PV210: Add sclk_dac, sclk_mixer and sclk_hdmi clocks

Add sclk_dac, sclk_mixer and sclk_hdmi clocks. These clocks
are of type 'struct clksrc_clk' and so have a corresponding
clock list. These clocks are also added to the list of
clocks to be registered at boot time.

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>
14 years agoARM: S5PV210: Add new system clocks
Thomas Abraham [Mon, 17 May 2010 00:38:55 +0000 (09:38 +0900)]
ARM: S5PV210: Add new system clocks

This patch adds the following system clocks.

1. clk_sclk_hdmiphy
2. clk_sclk_usbphy0
3. clk_sclk_usbphy1
4. sclk_dmc (dram memory controller clock)
5. sclk_onenand

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>
14 years agoARM: S5PV210: Add support for VPLL
Thomas Abraham [Mon, 17 May 2010 00:38:52 +0000 (09:38 +0900)]
ARM: S5PV210: Add support for VPLL

This patch adds the following.

1. Adds 'clk_sclk_hdmi27m' clock to represent the HDMI 27MHz clock.
2. Adds 'clk_vpllsrc; clock of type clksrc_clk to represent the
   input clock for VPLL.
3. Adds 'clk_sclk_vpll' clock of type clksrc_clk to represent the
   output of the MUX_VPLL mux.
4. Add clk_sclk_hdmi27m, clk_vpllsrc and clk_sclk_vpll to the list
   of clocks to be registered.
5. Adds boot time print of 'clk_sclk_vpll' clock rate.
6. Adds 'clk_fout_vpll' clock to plat-s5p such that it is reusable
   on other s5p platforms.

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>
14 years agoARM: S5PV210: Remove usage of clk_p66 and add clk_pclk_psys clock
Thomas Abraham [Mon, 17 May 2010 00:38:50 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_p66 and add clk_pclk_psys clock

The clk_p83 clock, which is the PCLK clock for PSYS domain, is of
type 'struct clk' whereas on S5PV210, this clock is suitable to be
of type clksrc_clk clock (since it has a clock divider). So this
patch replaces the 'struct clk' type clock to 'struct clksrc_clk'
type clock for the PCLK PSYS clock.

This patch modifies the following.

1. Removes definitions and usage of 'clk_p66' clock.
2. Adds 'clk_pclk_psys' clock which is of type 'struct clksrc_clk'.
3. Replaces all usage of clk_p66 with clk_pclk_psys clock.
4. Adds clk_pclk_psys into list of clocks to be registered.
5. Removes the sys_clks array since it is no longer required.
   Also the registration of clocks in sys_clks is also removed.
6. Remove the 'GET_DIV' as it is no longer required.

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>
14 years agoARM: S5PV210: Remove usage of clk_p83 and add clk_pclk_dsys clock\
Thomas Abraham [Mon, 17 May 2010 00:38:48 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_p83 and add clk_pclk_dsys clock\

The clk_p83 clock, which is the PCLK clock for DSYS domain, is of
type 'struct clk' whereas on S5PV210, this clock is suitable to be
of type clksrc_clk clock (since it has a clock divider). So this
patch replaces the 'struct clk' type clock to 'struct clksrc_clk'
type clock for the PCLK DSYS clock.

This patch modifies the following.

1. Remove definitions and usage of 'clk_p83' clock.
2. Adds 'clk_pclk_dsys' clock which is of type 'struct clksrc_clk'.
3. Replace all usage of clk_p83 with clk_pclk_dsys clock.
4. Adds clk_pclk_dsys into list of clocks to be registered.

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>
14 years agoARM: S5PV210: Fix clk_get_rate issue with the clk_h100 clock
Thomas Abraham [Mon, 17 May 2010 00:38:44 +0000 (09:38 +0900)]
ARM: S5PV210: Fix clk_get_rate issue with the clk_h100 clock

The clk_h100 clock represents the IMEM clock for the MSYS domain.
This clock rate of this clock is always half of the hclk_msys clock.
There is an issue when getting the clock rate of the clk_h100 clock
(clock get_rate hclk_h100 always returns clock rate that is equal to
the hclk_msys clock rate).

This patch modifies the following.

1. Moves the definition of the clk_h100 clock into the 'init_clocks'
   list with the appropriate parent, ctrlbit, enable and ops fields.

2. The name of the clock is changed from 'clk_h100' to 'hclk_imem'
   to represent more clearly that is represents the IMEM clock in
   the MSYS domain.

3. The function to get the clock rate of the hclk_imem clock is added.

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>
14 years agoARM: S5PV210: Remove usage of clk_p100 and add clk_pclk_msys clock
Thomas Abraham [Mon, 17 May 2010 00:38:42 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_p100 and add clk_pclk_msys clock

The clk_p100 clock, which is the PCLK clock for MSYS domain, is of
type 'struct clk' whereas on S5PV210, this clock is suitable to be
of type clksrc_clk clock (since it has a choice of clock source
and a pre-divider). So this patch replaces the 'struct clk' type
clock to 'struct clksrc_clk' type clock for the PCLK MSYS clock.

This patch modifies the following.

1. Remove definitions and usage of 'clk_p100' clock.
2. Adds 'clk_pclk_msys' clock which is of type 'struct clksrc_clk'.
3. Replace all usage of clk_p100 with clk_pclk_msys clock.
4. Adds clk_pclk_msys into list of clocks to be registered.

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>
14 years agoARM: S5PV210: Remove usage of clk_h133 and add clk_hclk_psys clock
Thomas Abraham [Mon, 17 May 2010 00:38:40 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_h133 and add clk_hclk_psys clock

The clk_h133 clock, which is the HCLK clock for PSYS domain, is of
type 'struct clk' whereas on S5PV210, this clock is suitable to be
of type clksrc_clk clock (since it has a choice of clock source
and a pre-divider). So this patch replaces the 'struct clk' type
clock to 'struct clksrc_clk' type clock for the HCLK PSYS clock.

This patch modifies the following.

1. Remove definitions and usage of 'clk_h133' clock.
2. Adds 'clk_hclk_psys' clock which is of type 'struct clksrc_clk'.
3. Replace all usage of clk_h133 with clk_hclk_psys clock.
4. Adds clk_hclk_psys into list of clocks to be registered.
5. Removes the clock rate calculation of hclk133 and replaces
   it with code that derives the HCLK PSYS clock rate from
   the clk_hclk_psys clock.
6. Modify printing of the system clock rates.

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>
14 years agoARM: S5PV210: Remove usage of clk_h166 and add clk_hclk_dsys clock
Thomas Abraham [Mon, 17 May 2010 00:38:37 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_h166 and add clk_hclk_dsys clock

The clk_h166 clock, which is the HCLK clock for DSYS domain, is of
type 'struct clk' whereas on S5PV210, this clock is suitable to be
of type clksrc_clk clock (since it has a choice of clock source
and a pre-divider). So this patch replaces the 'struct clk' type
clock to 'struct clksrc_clk' type clock for the HCLK DSYS clock.

This patch modifies the following.

1. Remove definitions and usage of 'clk_h166' clock.

2. Adds 'clk_sclk_a2m' clock which is one of possible parent clock
   sources for the DSYS HCLK clock.

3. Adds 'clk_hclk_dsys' clock which is of type 'struct clksrc_clk'.

4. Replace all usage of clk_h166 with clk_hclk_dsys clock.

5. Adds clk_sclk_a2m and clk_hclk_dsys into list of clocks to
   be registered.

6. Removes the clock rate calculation of hclk166 and replaces
   it with code that derives the HCLK DSYS clock rate from
   the clk_hclk_dsys clock.

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>
14 years agoARM: S5PV210: Remove usage of clk_h200 clock and add clk_hclk_msys clock
Thomas Abraham [Mon, 17 May 2010 00:38:34 +0000 (09:38 +0900)]
ARM: S5PV210: Remove usage of clk_h200 clock and add clk_hclk_msys clock

The clk_h200 represents the HCLK for the MSYS domain. This clock
is of type 'struct clk' but on V210, it is more suitable to be of
type 'struct clksrc_clk' (since it is a divided version of the
armclk). The replacement clock is renamed as clk_hclk_msys to
indicate that it represents the HCLK for MSYS domain.

This patch modifies the following.

1. Removes the usage of the clk_h200 clock.
2. Adds the new clock 'clk_hclk_msys'.
3. Adds clk_hclk_msys to the list of sysclks to be registered.
4. Modifies the hclk_msys clock rate calculation procedure to
   be based on the new clk_hclk_msys clock.

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>
14 years agoARM: S5PV210: Add armclk of clksrc_clk clock type
Thomas Abraham [Mon, 17 May 2010 00:38:31 +0000 (09:38 +0900)]
ARM: S5PV210: Add armclk of clksrc_clk clock type

This patch modifies the following.

1. Adds arm clock 'clk_armclk' of type clksrc_clk clock type.
2. Adds arm clock to the list of system clocks 'sysclks' for
   registering it along with other system clocks.
3. Modifies the armclk clock rate calculation procedure to be
   based on the new clk_armclk clock.

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>
14 years agoARM: S5PV210: Rearrange assignment of clock for fout apll/mpll/epll clocks
Thomas Abraham [Mon, 17 May 2010 00:38:28 +0000 (09:38 +0900)]
ARM: S5PV210: Rearrange assignment of clock for fout apll/mpll/epll clocks

The assignment of clock rates for fout apll/mpll/epll is moved further
up in the s5pv210_setup_clocks function because the subsequent patches
require the clock rate of fout clocks to be setup.

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>
14 years agoARM: S5PV210: Register apll/mpll/epll clksrc_clk clocks
Thomas Abraham [Mon, 17 May 2010 00:38:12 +0000 (09:38 +0900)]
ARM: S5PV210: Register apll/mpll/epll clksrc_clk clocks

This patch modifies the following.

1. Registers the mout_apll clksrc_clk clock.

2. The mout_mpll and mout_epll clocks were registered as 'struct clk'
   types and then their parents were setup using the s3c_set_clksrc
   function. This patch reduces the two steps into one by registering
   the mout_mpll and mout_epll clocks using the s3c_register_clksrc
   function.

3. As per point 2 above, the init_parents array is no longer required.
   So the mout clocks are now put together in a new array named 'sysclks'.
   The sysclks array will list the system level clocks and more
   clocks will be added to it in the subsequent patches.

4. The clks array is left empty because of the movement of mpll and epll
   clocks into the sysclks array. It is not deleted since subsequent
   patches will add clocks into this array.

Signed-off-by: Thomas Abraham <thomas.ab <at> samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim <at> samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5PV210: Rearrange the system clock definitions
Thomas Abraham [Mon, 17 May 2010 00:38:01 +0000 (09:38 +0900)]
ARM: S5PV210: Rearrange the system clock definitions

The system clock definitions are currently defined below the
peripheral clock definitions in the V210 clock code. For the V210
clock updates that follow this patch, it is required that the
system clock definitions such as the mout_apll and mout_mpll be
defined prior to the device clock definitions. This patch
re-arranges the system clock defintions for the clock updates that
follow this patch.

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>
14 years agoARM: S3C6410: Declare IISv4 audio-bus clock
Jassi Brar [Tue, 9 Mar 2010 06:10:34 +0000 (15:10 +0900)]
ARM: S3C6410: Declare IISv4 audio-bus clock

Declare 'audio-bus' clock for IISv4 controller of S3C6410.
Even though the name is same as that for IISv3, the id is
set to -1(just one instance of the controller is available)
which helps always fetch the correct clock.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C6410: Declare possible sources of audio-bus2
Jassi Brar [Tue, 9 Mar 2010 06:10:33 +0000 (15:10 +0900)]
ARM: S3C6410: Declare possible sources of audio-bus2

Declare possible sources of CLKAUDIO[2]/audio-bus for IISv4 controller.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C6410: Declare IISCDCLK_V4 Clock
Jassi Brar [Tue, 9 Mar 2010 06:10:32 +0000 (15:10 +0900)]
ARM: S3C6410: Declare IISCDCLK_V4 Clock

Declare the source of clock provided at Xi2sCDCLK2 pin for IISv4 controller.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C6410: Define clk_src2 register
Jassi Brar [Tue, 9 Mar 2010 06:10:31 +0000 (15:10 +0900)]
ARM: S3C6410: Define clk_src2 register

Define S3C6410 specific register - CLK_SRC2

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5P6440: Add clocks of type 'struct clksrc_clk'.
Thomas Abraham [Thu, 13 May 2010 00:27:54 +0000 (09:27 +0900)]
ARM: S5P6440: Add clocks of type 'struct clksrc_clk'.

This patch adds the following.

1. Add new definitions of clock of type 'struct clksrc_clk'.
2. Add gate control function for GATE_SCLK1 which is required
   for new clock additions.

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>
14 years agoARM: S5P6440: Rename clkset_mmc_spi to clkset_group1
Thomas Abraham [Thu, 13 May 2010 00:27:49 +0000 (09:27 +0900)]
ARM: S5P6440: Rename clkset_mmc_spi to clkset_group1

The clock source options avaialable in the clkset_mmc_spi are
applicable to clocks such as sclk_post, sclk_dispcon and
sclk_fimgvg. So this set is renamed as clkset_group1 to indicate
that it can be used as clock sources for other clocks and not
just for sclk_spi and sclk_mmc clocks.

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>
14 years agoARM: S5P6440: Add clocks of type 'struct clk'.
Thomas Abraham [Thu, 13 May 2010 00:27:47 +0000 (09:27 +0900)]
ARM: S5P6440: Add clocks of type 'struct clk'.

Add definitions of clocks of type 'struct clk'.

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>
14 years agoARM: S5P6440: Remove usage of clk_p_low and add clk_pclk_low clock
Thomas Abraham [Thu, 13 May 2010 00:27:29 +0000 (09:27 +0900)]
ARM: S5P6440: Remove usage of clk_p_low and add clk_pclk_low clock

The pclk_low clock is of type 'struct clk' whereas on S5P6440,
the pclk_low clock is more suitable to be of type 'struct clksrc_clk'
(since pclk_low clock is a divided clock of hclk_low clock).

This patch modifies the following.

1. Removes the definition and usage of clk_p_clk clock.
2. Adds the clk_pclk_low clock of type 'struct clksrc_clk' clock.
3. Adds clk_pclk_low to the list of system clocks.
4. The clock rate of pclk_low is derived from the clk_pclk_low clock.

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>
14 years agoARM: S5P6440: Remove usage of clk_h_low and add clk_hclk_low clock
Thomas Abraham [Thu, 13 May 2010 00:27:17 +0000 (09:27 +0900)]
ARM: S5P6440: Remove usage of clk_h_low and add clk_hclk_low clock

The clk_h_low clock is of type 'struct clk' whereas on S5P6440,
the hclk_low clock is more suitable to be of type 'struct clksrc_clk'
(since hclk_low clock is derived from a choice of clock sources and
then divided by a divisor).

This patch modifies the following.

1. Removes the definition and usage of clk_h_clk clock.
2. Adds the clk_hclk_low clock of type 'struct clksrc_clk' clock.
3. Adds clk_hclk_low to the list of system clocks.
4. The clock rate of hclk_low is derived from the clk_hclk_low clock.

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>
14 years agoARM: S5P6440: Remove usage of clk_p and add clk_pclk clock
Thomas Abraham [Thu, 13 May 2010 00:27:13 +0000 (09:27 +0900)]
ARM: S5P6440: Remove usage of clk_p and add clk_pclk clock

The clk_p clock is of type 'struct clk' whereas on S5P6440,
the pclk is more suitable to be of type 'struct clksrc_clk'
(since pclk clock is divided version of hclk).

This patch modifies the following.

1. Adds the 'clk_pclk' clock which is of type 'struct clksrc_clk'.
2. Adds clk_pclk into the list of sysclks.
3. The clock rate 'pclk' is modified to be derived from clk_pclk.

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>
14 years agoARM: S5P6440: Remove usage of clk_h and add clk_hclk clock
Thomas Abraham [Thu, 13 May 2010 00:27:09 +0000 (09:27 +0900)]
ARM: S5P6440: Remove usage of clk_h and add clk_hclk clock

The clk_h clock is of type 'struct clk' whereas on S5P6440,
the hclk is more suitable to be of type 'struct clksrc_clk'
(since hclk clock is divided version of armclk)

This patch modifies the following.

1. Adds the 'clk_hclk' clock which is of type 'struct clksrc_clk'.
2. Removes all references to the clk_h clock.
3. Addes clk_hclk into the list of sysclks.
4. The clock rate 'hclk' is modified to be derived from clk_hclk.

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>
14 years agoARM: S5P6440: Remove usage of clk_arm and add clk_armclk clock
Thomas Abraham [Thu, 13 May 2010 00:27:04 +0000 (09:27 +0900)]
ARM: S5P6440: Remove usage of clk_arm and add clk_armclk clock

The clk_arm clock is of type 'struct clk' whereas on S5P6440,
the arm clock is more suitable to be of type 'struct clksrc_clk'
(since arm clock is divided version of apll clock).

This patch modifies the following.

1. Removes the usage of clk_arm clock (defined in plat-s5p) and
   defines the new clock 'clk_armclk' of type 'struct clksrc_clk'.

2. Rearranges the assignment of clock rate for the fout_a/m/epll
   clocks. This will help in calculating the clock rate of fclk
   from clk_armclk clock and setup the clock rate for fout_m/epll
   for subsequent patches which depend on it.

3. Modifies the clock rate calculation of fclk to be based on
   the newly added clk_armclk clock.

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>
14 years agoARM: S5P6440: Change dout_mpll clock type to clksrc_clk clock type.
Thomas Abraham [Thu, 13 May 2010 00:26:58 +0000 (09:26 +0900)]
ARM: S5P6440: Change dout_mpll clock type to clksrc_clk clock type.

This patch modifies the following.

1. Modifies the dout_mpll clock type as clksrc_clk clock type.
   This modification allows the use of common clock code in
   managing the dout_mpll clock (which otherwise would need
   custom defined functions such as s5p6440_clk_doutmpll_get_rate).

2. s5p6440_clk_doutmpll_get_rate function is removed as it is
   no longer needed.

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>
14 years agoARM: S5P6440: Register apll/mpll/epll mout clocks.
Thomas Abraham [Thu, 13 May 2010 00:26:49 +0000 (09:26 +0900)]
ARM: S5P6440: Register apll/mpll/epll mout clocks.

This patch modifies the following.

1. Registers the mout_apll clksrc_clk clock.

2. The mout_mpll and mout_epll were registered as 'struct clk'
   types and then their parents were setup using the s3c_set_clksrc
   function. This patch reduces the two steps into one by registering
   the mout_mpll and mout_epll clocks using the s3c_register_clksrc
   function.

3. As per point 2 above, the init_parents array is no longer required.
   So the mout clocks are now put together in a new array named 'sysclks'.
   The sysclks array will list the system level clocks and more
   clocks will be added to it in the subsequent patches.

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>
14 years agoARM: SAMSUNG: Move HWMON from plat-s3c24xx to plat-samsung
Maurus Cuelenaere [Tue, 4 May 2010 11:12:32 +0000 (13:12 +0200)]
ARM: SAMSUNG: Move HWMON from plat-s3c24xx to plat-samsung

Move HWMON platform definition from plat-s3c24xx to plat-samsung
and adjust mach-bast to use the new s3c_hwmon_set_platdata().
This allows usage of dev-hwmon by other Samsung SoCs.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Remove static of S5P SoCs sysclass
Kukjin Kim [Tue, 11 May 2010 00:56:37 +0000 (09:56 +0900)]
ARM: SAMSUNG: Remove static of S5P SoCs sysclass

This patch removes static of s5p6440_sysclass, s5p6442_sysclass,
and s5pv210_sysclass for defintion as extern.

Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Remove old email address for ben-linux@fluff.org
Ben Dooks [Fri, 7 May 2010 00:24:05 +0000 (09:24 +0900)]
ARM: SAMSUNG: Remove old email address for ben-linux@fluff.org

The address ben@fluff.org is old, ben-linux@fluff.org has been in use
for a long time, and we should fixup all the occasions of the older
address to avoid confusion.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: RX1950: configure GPG13-15 as input before suspend
Vasily Khoruzhick [Tue, 11 May 2010 06:55:11 +0000 (09:55 +0300)]
ARM: RX1950: configure GPG13-15 as input before suspend

According to datasheet GPG13-15 must be configured as input in NAND
boot mode, otherwise device will not be able to wake up

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: RX1950: Add suspend/resume support for RX1950
Vasily Khoruzhick [Tue, 11 May 2010 06:55:10 +0000 (09:55 +0300)]
ARM: RX1950: Add suspend/resume support for RX1950

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C24XX: Locate kernel at 0x30108000 if PM_H1940 is enabled
Vasily Khoruzhick [Tue, 11 May 2010 06:55:09 +0000 (09:55 +0300)]
ARM: S3C24XX: Locate kernel at 0x30108000 if PM_H1940 is enabled

If PM_H1940 is enabled, kernel _must_ be located upper then 0x30008000,
because this area (0x30000000-0x30100000) can be used by bootloader. If
kernel is located at 0x30008000, bootloader will corrupt kernel's code during
resume.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S3C2440: Add HP iPAQ RX1950 machine support
Vasily Khoruzhick [Tue, 11 May 2010 06:55:07 +0000 (09:55 +0300)]
ARM: S3C2440: Add HP iPAQ RX1950 machine support

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Denis Grigoriev <dgreenday@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: SAMSUNG: Add spinlock locking to GPIO banks
Ben Dooks [Thu, 6 May 2010 06:42:23 +0000 (15:42 +0900)]
ARM: SAMSUNG: Add spinlock locking to GPIO banks

Add locking to each GPIO bank to allow for SMP capable code
to use the gpiolib functions. See the gpio-core.h header file
for more information.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
14 years agoARM: S5P: Add USB External Crystal clock definition
Thomas Abraham [Mon, 19 Apr 2010 11:05:08 +0000 (20:05 +0900)]
ARM: S5P: Add USB External Crystal clock definition

Add USB external crystal clock definition Xusbxti to common S5P 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>
14 years agoARM: S5PV210: Bug fix on PWM Timer
Jongpill Lee [Fri, 19 Mar 2010 06:33:31 +0000 (15:33 +0900)]
ARM: S5PV210: Bug fix on PWM Timer

This patch fixes return value in below functions
- pwm_cfg_src_is_tclk
- tcfg_to_divisor
- pwm_tdiv_has_div1
- pwm_tdiv_div_bits

And this patch changes Copyright ordering.

Signed-off-by: Jongpill Lee <boyko.lee@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>