Commit Graph

8687 Commits

Author SHA1 Message Date
Tony Lindgren
b32dd41ed6 omap: Fix i2c platform init code for omap4
Add separate omap_i2c_add_bus functions for mach-omap1
and mach-omap2. Make the mach-omap2 init set the interrupt
dynamically to support.

This is needed to add support for omap4 in a way that
works with multi-omap builds. This will eventually get
fixed in a generic way with the omap hwmods.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-05-20 11:36:43 -07:00
Kalle Jokiniemi
20c9d2c4ab i2c-omap: add mpu wake up latency constraint in i2c
While waiting for completion of the i2c transfer, the
MPU could hit OFF mode and cause several msecs of
delay that made i2c transfers fail more often. The
extra delays and subsequent re-trys cause i2c clocks
to be active more often. This has also an negative
effect on power consumption.

Created a mechanism for passing and using the
constraint setting function in driver code. The used
mpu wake up latency constraints are now set individually
per bus, and they are calculated based on clock rate
and fifo size.

Thanks to Jarkko Nikula, Moiz Sonasath, Paul Walmsley,
and Nishanth Menon for tuning out the details of
this patch.

Updates by Kevin as requested by Tony:

- Remove omap_set_i2c_constraint_func() in favor of conditionally
  adding the flag in omap_i2c_add_bus() in order to keep all the OMAP
  conditional checking in a single location.
- Update set_mpu_wkup_lat prototypes to match OMAP PM layer so
  OMAP PM function can be used directly in pdata.

Cc: Moiz Sonasath <m-sonasath@ti.com>
Cc: Jarkko Nikula <jhnikula@gmail.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Nishanth Menon <nm@ti.com>
Signed-off-by: Kalle Jokiniemi <kalle.jokiniemi@digia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-05-20 00:18:59 +01:00
Linus Torvalds
024a6b9518 Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci
* 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: (48 commits)
  Revert "rtc: omap: let device wakeup capability be configured from chip init logic"
  DM365: Added more PINMUX configurations for AEMIF
  DM365: Make CLKOUTx available
  DM365: Added PINMUX definitions for GPIO30..32
  Davinci: iotable based ioremap() interception
  Davinci: pinmux - use ioremap()
  Davinci: aintc/cpintc - use ioremap()
  Davinci: psc - use ioremap()
  Davinci: timer - use ioremap()
  Davinci: jtag_id - use ioremap()
  Davinci: da8xx: rtc - use ioremap
  Davinci: gpio - use ioremap()
  davinci: edma: fix coding style issue related to breaking lines
  davinci: edma: use BIT() wherever possible
  davinci: edma: fix coding style issue related to usage of braces
  davinci: edma: use a more intuitive name for edma_info
  Davinci: serial - conditional reset via pwremu
  Davinci: serial - use ioremap()
  Davinci: serial - remove unnecessary define
  Davinci: watchdog reset separation across socs
  ...

Fix up trivial conflict in arch/arm/Kconfig due to removal of "select
GENERIC_TIME"
2010-05-19 12:08:50 -07:00
Linus Torvalds
349e1fba7e Merge branch 'for-linus/samsung4' of git://git.fluff.org/bjdooks/linux
* 'for-linus/samsung4' of git://git.fluff.org/bjdooks/linux: (98 commits)
  Input: s3c24xx_ts - depend on SAMSUNG_DEV_TS and update menu entry
  Input: s3c24xx_ts - Add FEAT for Samsung touchscreen support
  Input: s3c24xx_ts - Implement generic GPIO configuration callback
  ARM: SAMSUNG: Move s3c64xx dev-ts.c to plat-samsung and rename configuration
  ARM: SAMSUNG: Implements cfg_gpio function for Samsung touchscreen
  ARM: S3C64XX: Add touchscreen platform device definition
  ARM: SAMSUNG: Move mach/ts.h to plat/ts.h
  ARM: S5PC100: Move i2c helpers from plat-s5pc1xx to mach-s5pc100
  ARM: S5PC100: Move frame buffer helpers from plat-s5pc1xx to mach-s5pc100
  ARM: S5PC100: gpio.h cleanup
  ARM: S5PC100: Move gpio support from plat-s5pc1xx to mach-s5pc100
  ARM: S5PC100: Use common functions for gpiolib implementation
  drivers: serial: S5PC100 serial driver cleanup
  ARM: S5PC100: Pre-requisite clock patch for plat-s5pc1xx to plat-s5p move
  ARM: SAMSUNG: Copy common I2C0 device helpers to machine directories
  ARM: SAMSUNG: move driver strength gpio configuration helper to common dir
  ARM: S5PV210: Add GPIOlib support
  ARM: SAMSUNGy: fix broken timer irq base
  ARM: SMDK6440: Add audio devices on board
  ARM: S5P6440: Add audio platform devices
  ...
2010-05-19 11:49:33 -07:00
Linus Torvalds
1d3c6ff44a Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (224 commits)
  ARM: remove 'select GENERIC_TIME'
  ARM: 6136/1: ARCH_REQUIRE_GPIOLIB selects GENERIC_GPIO
  ARM: 6074/1: oprofile: convert from sysdev to platform device
  ARM: 6073/1: oprofile: remove old files and update KConfig
  ARM: 6072/1: oprofile: use perf-events framework as backend
  ARM: 6071/1: perf-events: allow modules to query the number of hardware counters
  ARM: 6070/1: perf-events: add support for xscale PMUs
  ARM: 6069/1: perf-events: use numeric ID to identify PMU
  ARM: 6064/1: pmu: register IRQs at runtime
  ARM: Optionally allow ARMv6 to use 'normal, bufferable' memory for DMA
  ARM: 6134/1: Handle instruction cache maintenance fault properly
  ARM: nwfpe: allow debugging output to be configured at runtime
  ARM: rename mach_cpu_disable() to platform_cpu_disable()
  ARM: 6132/1: PL330: Add common core driver
  ARM: 6094/1: Extend cache-l2x0 to support the 16-way PL310
  ARM: Move memory mapping into mmu.c
  ARM: Ensure meminfo is sorted prior to sanity_check_meminfo
  ARM: Remove useless linux/bootmem.h includes
  ARM: convert /proc/cpu/aligment to seq_file
  arm: use asm-generic/scatterlist.h
  ...
2010-05-19 11:37:22 -07:00
Ben Dooks
2b6c02abca 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>
2010-05-19 18:25:30 +09:00
Naveen Krishna
5bfdca146e 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>
2010-05-19 18:25:22 +09:00
Maurus Cuelenaere
909de0d67d 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>
2010-05-19 18:25:14 +09:00
Maurus Cuelenaere
73e59b1d6b 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>
2010-05-19 18:25:07 +09:00
Marek Szyprowski
51ffd971ed 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>
2010-05-19 18:23:37 +09:00
Marek Szyprowski
b884c0e070 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>
2010-05-19 18:23:27 +09:00
Marek Szyprowski
c8bb9635f9 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>
2010-05-19 18:23:19 +09:00
Marek Szyprowski
7904449021 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>
2010-05-19 18:23:11 +09:00
Marek Szyprowski
252b8efeba 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>
2010-05-19 18:23:03 +09:00
Thomas Abraham
a443a6373d 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>
2010-05-19 18:22:47 +09:00
Marek Szyprowski
a0f735812e 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>
2010-05-19 18:16:04 +09:00
Marek Szyprowski
838c6d499b 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>
2010-05-19 18:15:02 +09:00
Ben Dooks
14b8a0f92b 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
2010-05-19 18:07:25 +09:00
Ben Dooks
05a690d2db ARM: Merge for-2635/samsung-ts
Merge branch 'for-2635/samsung-ts' into for-linus/samsung2
2010-05-19 18:05:42 +09:00
Ben Dooks
1770a8988f ARM: Merge for-2635/s5p-audio
Merge branch 'for-2635/s5p-audio' into for-linus/samsung2
2010-05-19 18:05:33 +09:00
Ben Dooks
1e8ff636be ARM: Merge for-2635/s5p-dma
Merge branch 'for-2635/s5p-dma' into for-linus/samsung2

Conflicts:
	arch/arm/mach-s5pv210/Makefile
2010-05-19 18:05:15 +09:00
Ben Dooks
32457942b9 ARM: Merge for-2635/fb-updates1
Merge branch 'for-2635/fb-updates1' into for-linus/samsung2
2010-05-19 18:04:11 +09:00
Ben Dooks
6071399674 ARM: Merge for-2635/s5pv210-clock
Merge branch 'for-2635/s5pv210-clock' into for-linus/samsung2
2010-05-19 18:04:10 +09:00
Ben Dooks
d16067b25e ARM: Merge for-2635/s5p6440-clock
Merge branch 'for-2635/s5p6440-clock' into for-linus/samsung2
2010-05-19 18:04:09 +09:00
Ben Dooks
2abbfb26de ARM: Merge for-2635/s3c6410-clock
Merge branch 'for-2635/s3c6410-clock' into for-linus/samsung2
2010-05-19 18:04:09 +09:00
Ben Dooks
ff1b8ba01d ARM: Merge for-2635/gpio2
Merge branch 'for-2635/gpio2' into for-linus/samsung2
2010-05-19 18:04:08 +09:00
Ben Dooks
5fcdb16bd0 ARM: Merge for-2635/rx1950
Merge branch 'for-2635/rx1950' into for-linus/samsung2
2010-05-19 18:04:07 +09:00
Ben Dooks
5a5c419fe9 ARM: Merge for-2635/acer-n35
Merge branch 'for-2635/acer-n35' into for-linus/samsung2
2010-05-19 18:04:06 +09:00
Ben Dooks
71b4439657 ARM: Merge for-2635/samsung-clock
Merge branch 'for-2635/samsung-clock' into for-linus/samsung2
2010-05-19 18:04:06 +09:00
Ben Dooks
f447ea4b1c ARM: Merge for-2635/samsung-hwmon
Merge branch 'for-2635/samsung-hwmon' into for-linus/samsung2
2010-05-19 18:04:05 +09:00
Ben Dooks
c733a7179c ARM: Merge for-2635/samsung-dma
Merge branch 'for-2635/samsung-dma' into for-linus/samsung2
2010-05-19 18:04:04 +09:00
Ben Dooks
359542b2a1 ARM: Merge for-2635/s5p-general
Merge branch 'for-2635/s5p-general' into for-linus/samsung2
2010-05-19 18:04:03 +09:00
Ben Dooks
bc3b67b8e9 ARM: Merge for-2635/s3c24xx-general
Merge branch 'for-2635/s3c24xx-general' into for-linus/samsung2
2010-05-19 18:04:03 +09:00
Pannaga Bhushan
ea5f507063 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>
2010-05-19 18:03:47 +09:00
Marek Szyprowski
1131379b48 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 87aef30eb3
("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>
2010-05-19 18:01:25 +09:00
Jassi Brar
7345520723 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>
2010-05-18 19:09:51 +09:00
Jassi Brar
08885d0a4c 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>
2010-05-18 19:09:50 +09:00
Jassi Brar
78a368234f 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>
2010-05-18 19:09:50 +09:00
Jassi Brar
070c808546 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>
2010-05-18 19:09:50 +09:00
Jassi Brar
95fa6e6cd3 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>
2010-05-18 19:09:49 +09:00
Jassi Brar
9b5f1e08c9 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>
2010-05-18 19:09:49 +09:00
Jassi Brar
602bf0cfbd 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>
2010-05-18 19:09:49 +09:00
Ben Dooks
32b6cb3872 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>
2010-05-18 19:07:05 +09:00
Ben Dooks
4ac2a39767 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>
2010-05-18 19:06:35 +09:00
Ben Dooks
1635ca4aaf 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>
2010-05-18 19:06:34 +09:00
Ben Dooks
7987bd7a70 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>
2010-05-18 19:06:33 +09:00
Ben Dooks
2c8fcfbf73 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>
2010-05-18 19:06:32 +09:00
Vasily Khoruzhick
a0026418d3 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>
2010-05-18 19:06:15 +09:00
Ben Dooks
f64bea4318 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>
2010-05-18 18:46:30 +09:00
Ben Dooks
f077f3fc05 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>
2010-05-18 18:46:27 +09:00