Commit graph

205417 commits

Author SHA1 Message Date
Eric Miao
4d4a339dd5 [ARM] mmp: move mmp2 specific timer code to mmp2.c
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:34:45 +08:00
Eric Miao
8022887cda [ARM] mmp: rename pxa_map_io() to mmp_map_io()
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:34:45 +08:00
Eric Miao
4b37cd335b [ARM] mmp: remove never supported .boot_params for MMP
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:34:45 +08:00
Marek Vasut
3a27f6e0a1 [ARM] pxa/balloon3: Add MAX1586 PMIC support
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:48 +08:00
Marek Vasut
e6a8ef5477 [ARM] pxa/balloon3: Add NAND driver
The NAND support is implemented through the gen_nand driver.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:47 +08:00
Marek Vasut
02a453e4a5 [ARM] pxa/balloon3: PCF857x GPIO expander and LEDs
Add supported for PCF8574A GPIO expander and LEDs attached to it.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:46 +08:00
Marek Vasut
a9c0629cde [ARM] pxa/balloon3: PCMCIA Support
This driver adds support for the on-board CF socket.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:45 +08:00
Marek Vasut
12a2449c79 [ARM] pxa/balloon3: Machine file cleanup
Modularize components of the Balloon3 board.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:44 +08:00
Marek Vasut
b0240bf4d4 [ARM] pxa/balloon3: Machine file cleanup
Logically separate parts of the file that are handled by one particular driver.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:44 +08:00
Marek Vasut
773108401d [ARM] pxa/z2: Fix flash layout typo
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:43 +08:00
Marek Vasut
084115946a [ARM] pxa/spitz: Formating and naming fixes
Improve formating so checkpatch passes. Also, change some function and variable
names to make the naming consistent.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:42 +08:00
Marek Vasut
2d679827e5 [ARM] pxa/spitz: Rework spitz
This huge patch mostly shuffles code. The spitz.c file contained terrible mess
and needed a cleanup, here it is:

1) Made every part modular, components are not built in if not selected.
2) Removed loads of preprocessor goo, mostly "#ifdef MACH_AKITA .... #endif" and
   similar code. The kernel size will grow by a few kb now, but the file is much
   more readable.
3) Reworked SD/CF power setting function and made it reentrant.
4) Add ISL6271A regulator support
5) Correctly register WM8750

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:41 +08:00
Marek Vasut
31620e21af [ARM] pxa/palm: Flip Palm LD,TX,T5,Z72 to Palm27x
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:40 +08:00
Marek Vasut
95045947ab [ARM] pxa/palm: Introduce Palm27x
This contains common code for Palm LD, TX, T5, Z72, Treo680, Centro
This code also adds PMIC support for all the devices,

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
2010-08-05 14:32:39 +08:00
Eric Miao
04e4ad2354 [ARM] pxa: removed mostly unused and confusing two sharpsl.h
Only a small part of used code is moved into sharpsl_pm.h.

Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:38 +08:00
Eric Miao
05732d7eb0 [ARM] pxa: use generic gpio_get_value() instead of READ_GPIO_BIT()
READ_GPIO_BIT() is no way generic by accessing GPIO registers directly,
replace it with gpio_get_value().

Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:37 +08:00
Eric Miao
0eefe7189f [ARM] pxa/corgi: remove unused declarations of corgiscoop_device
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:36 +08:00
Eric Miao
7166519d76 [ARM] pxa/spitz: remove unused declarations
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:35 +08:00
Christoph Egger
0846efa872 [ARM] pxa: removing dead IDE_PXA_CF
IDE_PXA_CF doesn't exist in Kconfig, therefore removing all references
for it from the source code.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Acked-by: Juergen Schindele <schindele@nentec.de>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:34 +08:00
Christoph Egger
8973860a22 [ARM] pxa: removing dead XSCALE_CACHE_ERRATA
XSCALE_CACHE_ERRATA doesn't exist in Kconfig, therefore removing all
references for it from the source code.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Cc: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:33 +08:00
Christoph Egger
556a460e5d [ARM] pxa: removing dead CORGI_SSP_DEPRECATED
CORGI_SSP_DEPRECATED doesn't exist in Kconfig, therefore removing all
references for it from the source code.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Acked-by: Kristoffer Ericson <kristoffer.ericson@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:32 +08:00
Christoph Egger
8ae807c581 [ARM] pxa: removing dead ARCH_GUMSTIX_ORIG
ARCH_GUMSTIX_ORIG doesn't exist in Kconfig, therefore removing all
references for it from the source code.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Acked-by: Jaya Kumar <jayakumar.lkml@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:31 +08:00
Christoph Egger
13a542475d [ARM] pxa: removing dead BACKLIGHT_CORGI
BACKLIGHT_CORGI was later renamed to BACKLIGHT_GENERIC and has not been
used since then. As it's now safe to completely transition to LCD_CORGI
driver, which incorprates both the LCD and backlight device.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:30 +08:00
Christoph Egger
7509acdfd1 [ARM] pxa: replacing dead SHARPSL_LOCOMO with SHARP_LOCOMO
SHARP_LOCOMO doesn't exist in Kconfig, therefore replacing all
references for it with SHARP_LOCOMO in the source code.

Signed-off-by: Christoph Egger <siccegge@cs.fau.de>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:29 +08:00
Marek Vasut
0357ae8f8c [ARM] pxa: cpufreq-pxa2xx: fix DRI recomputation routine
This patch:
1) Simpifies the DRI recomputation routine by pulling out the common code
2) Fixes a bug in PXA27x DRI recomputation caused by incorrect parenthesis

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:28 +08:00
Marek Vasut
5852984a8b [ARM] pxa: fix HSIO bus x24 multiplier for pxa3xx
The latest PXA3xx DM has enabled 312MHz for the HSS bus,
which allows x24 multiplier.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:27 +08:00
Marek Vasut
983536e7b5 [ARM] scoop: Add CPR register bit definitions
Add bit definitions of the CPR register of the SCOOP chip into scoop.h. Also,
cleanup the GPCR definitions to match coding style.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:26 +08:00
Marek Vasut
11dd2d9a5e [ARM] pxa/colibri320: Add UDC support
Add support for PXA UDC.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:25 +08:00
Marek Vasut
320bbb86b3 [ARM] pxa/z2: Add regulator support
Register TPS65021 regulator in Zipit Z2.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:24 +08:00
Eric Miao
9c3fca2ee6 [ARM] pxa: PXA_SHARPSL_DETECT_MACH_ID to include head-sharpsl.S
With kexec-based kernel boot loader on Zaurus, the machine ID is
actually correctly passed, and head-sharpsl.S is not necessary.
Introduce PXA_SHARPSL_DETECT_MACH_ID, and include head-sharpsl.S
only when that's explicitly enabled.

Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:23 +08:00
Eric Miao
867fc1c718 [ARM] pxa: move hidden Kconfig options to right place and vice versa
1. TOSA related un-hidden options moved to right under MACH_TOSA
2. SHARPSL_PM related hidden options moved to the end of Kconfig

Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:23 +08:00
Eric Miao
4fa5518c65 [ARM] pxa: remove now unnecessary dma_needs_bounce()
With a correct dev->dma_mask before calling dmabounce_register_dev(),
dma_needs_bounce() is not necessary.

The sa1111, though, is a bit complicated. Until it's fully understood
and fixed, dma_needs_bounce() for sa1111 is kept if CONFIG_SA1111 is
enabled with no side effect (with the condition of machine_is_*)

Thanks for Mike Rapoport to fix one error in the original version of
the patch and get this tested.

Acked-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:21 +08:00
Eric Miao
e478fe4cd5 [ARM] pxa: merge all eseries board code into eseries.c
Cc: Ian Molton <spyro@f2s.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:20 +08:00
Eric Miao
09a5358d1e [ARM] pxa: move pmu device back into mach-pxa/
Not tested and enabled on MMP at this moment, and since the IRQ
is different from mach-pxa, I'd prefer to move the PMU device
back into mach-pxa/. Will introduce the PMU device to MMP once
it's enabled and tested.

Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:19 +08:00
Igor Grinberg
1b84387ac1 [ARM] pxa/cm-x300: enable the IRQ_WAKEUP0 as wakeup source.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:18 +08:00
Igor Grinberg
1288209651 [ARM] pxa: add set_type to the pxa3xx ext_wakeup irq chip.
pxa3xx cpu needs the irq type setup to be able to
wakeup from low power mode on IRQ_WAKEUPx events.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:17 +08:00
Jonathan Cameron
dcd925f951 [ARM] pxa: merge stargate2 and imote2 board files
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Acked-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:16 +08:00
Marek Vasut
5aa9a2cbc0 [ARM] wm97xx_batt: remove now useless header file
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:15 +08:00
Marek Vasut
241cf47311 [ARM] pxa: fix all devices using wm97xx_batt.h
This file is scheduled for removal, therefore fix all devices that use this
file to use the suggested wm97xx.h and pass platform data properly.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Acked-by: Tomas Cech <sleep_walker@suse.cz>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
2010-08-05 14:32:14 +08:00
Ryan Harper
6c99a8528f virtio_blk: Remove VBID ioctl
With the availablility of a sysfs device attribute for examining disk serial
numbers the ioctl is no longer needed.  The user-space changes for this aren't
upstream yet so we don't have any users to worry about.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 13:05:31 +09:30
Ryan Harper
a5eb9e4ff1 virtio_blk: Add 'serial' attribute to virtio-blk devices (v2)
Create a new attribute for virtio-blk devices that will fetch the serial number
of the block device.  This attribute can be used by udev to create disk/by-id
symlinks for devices that don't have a UUID (filesystem) associated with them.

ATA_IDENTIFY strings are special in that they can be up to 20 chars long
and aren't required to be nul-terminated.  The buffer is also zero-padded
meaning that if the serial is 19 chars or less that we get a nul-terminated
string.  When copying this value into a string buffer, we must be careful to
copy up to the nul (if it present) and only 20 if it is longer and not to
attempt to nul terminate; this isn't needed.

Changes since v1:
- Added BUILD_BUG_ON() for PAGE_SIZE check
- Removed min() since BUILD_BUG_ON() handles the check
- Replaced serial_sysfs() by copying id directly to buffer

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: john cooper <john.cooper@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 13:05:30 +09:30
Christoph Hellwig
10bc310c27 virtio_blk: support barriers without FLUSH feature
If we want to support barriers with the cache=writethrough mode in qemu
we need to tell the block layer that we only need queue drains to
implement a barrier.  Follow the model set by SCSI and IDE and assume
that there is no volatile write cache if the host doesn't advertize it.
While this might imply working barriers on old qemu versions or other
hypervisors that actually have a volatile write cache this is only a
cosmetic issue - these hypervisors don't guarantee any data integrity
with or without this patch, but with the patch we at least provide
data ordering.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 13:05:29 +09:30
Rusty Russell
51f3d0f474 module: cleanup comments, remove noinline
On my (32-bit x86) machine, sys_init_module() uses 124 bytes of stack
once load_module() is inlined.

This effectively reverts ffb4ba76 which inlined it due to stack
pressure.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:13 +09:30
Rusty Russell
811d66a0e1 module: group post-relocation functions into post_relocation()
This simply hoists more code out of load_module; we also put the
identification of the extable and dynamic debug table in with the
others in find_module_sections().

We move the taint check to the actual add/remove of the dynamic debug
info: this is certain (find_module_sections is too early).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Yehuda Sadeh <yehuda@hq.newdream.net>
2010-08-05 12:59:13 +09:30
Rusty Russell
6526c534b2 module: move module args strndup_user to just before use
Instead of copying and allocating the args and storing it in
load_info, we can just allocate them right before we need them.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:12 +09:30
Rusty Russell
49668688dd module: pass load_info into other functions
Pass the struct load_info into all the other functions in module
loading.  This neatens things and makes them more consistent.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:10 +09:30
Rusty Russell
36b0360d17 module: fix sysfs cleanup for !CONFIG_SYSFS
Restore the stub module_remove_modinfo_attrs, remove the now-unused
!CONFIG_SYSFS module_sysfs_init.

Also, rename mod_kobject_remove() to mod_sysfs_teardown() as
it is the logical counterpart to mod_sysfs_setup now.

Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:10 +09:30
Rusty Russell
8f6d037815 module: sysfs cleanup
We change the sysfs functions to take struct load_info, and call
them all in mod_sysfs_setup().

We also clean up the #ifdefs a little.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:09 +09:30
Rusty Russell
d913188c75 module: layout_and_allocate
layout_and_allocate() does everything up to and including the final
struct module placement inside the allocated module memory.  We have
to store the symbol layout information in our struct load_info though.

This avoids the nasty code we had before where 'mod' pointed first
to the version inside the temporary allocation containing the entire
file, then later was moved to point to the real struct module: now
the main code only ever sees the final module address.

(Includes fix for the Tony Luck-found Linus-diagnosed failure path
 error).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:09 +09:30
Rusty Russell
511ca6ae43 module: fix crash in get_ksymbol() when oopsing in module init
Andrew had the sole pleasure of tickling this bug in linux-next; when we set
up "info->strtab" it's pointing into the temporary copy of the module.  For
most uses that is fine, but kallsyms keeps a pointer around during module
load (inside mod->strtab).

If we oops for some reason inside a module's init function, kallsyms will use
the mod->strtab pointer into the now-freed temporary module copy.

(Later oopses work fine: after init we overwrite mod->strtab to point to a
 compacted core-only strtab).

Reported-by: Andrew "Grumpy" Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty "Buggy" Russell <rusty@rustcorp.com.au>
Tested-by: Andrew "Happy" Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-05 12:59:08 +09:30