aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2008-01-28[ARM] 4664/1: Add basic support for HTC Magician PDA phonesPhilipp Zabel4-0/+336
This includes irda, gpio keys, pxafb, backlight, ohci and flash (read-only). Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28[ARM] 4649/1: Base support for pxa-based Toshiba e-series PDAs.Ian Molton4-0/+1645
This patch contains the base code to boot the Toshiba e330, e740, e750, e400, and e800 PDAs. Signed-off-by: Ian Molton <spyro@f2s.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28[ARM] 4776/1: Add HWUART clock to fix hwuart supportDmitry Baryshkov1-1/+8
This adds back the registration of HWUART clock on pxa25x Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28cfq-iosched: kill some big inlinesJens Axboe1-16/+11
Use of inlines were a bit over the top, trim them down a bit. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28[ARM] Fix class_device damage caused by 0c55445f201841bfd6c658c47df8311b6722f002Russell King1-7/+7
Lots of compile errors in drivers/mfd/ucb1x00-assabet.c... Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28cfq-iosched: relax IOPRIO_CLASS_IDLE restrictionsJens Axboe2-85/+34
Currently you must be root to set idle io prio class on a process. This is due to the fact that the idle class is implemented as a true idle class, meaning that it will not make progress if someone else is requesting disk access. Unfortunately this means that it opens DOS opportunities by locking down file system resources, hence it is root only at the moment. This patch relaxes the idle class a little, by removing the truly idle part (which entals a grace period with associated timer). The modifications make the idle class as close to zero impact as can be done while still guarenteeing progress. This means we can relax the root only criteria as well. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28[ARM] Fix timer damage from d3d74453c34f8fd87674a8cf5b8a327c68f22e99Russell King21-71/+2
Move the xtime write mode seqlock into timer_tick(), so it only surrounds the call to do_timer(). This avoids a deadlock in update_process_times() ... hrtimer_get_softirq_time() which tries to get a read mode seqlock on xtime, thereby preventing booting. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28[ARM] 4763/1: pxa: fix pxa3xx_get_clk_frequency_khz() to return KHzeric miao1-1/+1
The original code incorrectly returns Hz instead of KHz. Signed-off-by: eric miao <eric.miao@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-28SG: work with the SCSI fixed maximum allocations.James Bottomley3-19/+35
SCSI sg table allocation has a maximum size (of SCSI_MAX_SG_SEGMENTS, currently 128) and this will cause a BUG_ON() in SCSI if something tries an allocation over it. This patch adds a size limit to the chaining allocator to allow the specification of the maximum allocation size for chaining, so we always chain in units of the maximum SCSI allocation size. Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28kernel: add CLONE_IO to specifically request sharing of IO contextsJens Axboe2-4/+11
syslets (or other threads/processes that want io context sharing) can set this to enforce sharing of io context. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28io_context sharing - anticipatory changesJens Axboe1-6/+28
changes to anticipatory io scheduler for io_context sharing Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28block: cfq: make the io contect sharing locklessJens Axboe3-137/+185
The io context sharing introduced a per-ioc spinlock, that would protect the cfq io context lookup. That is a regression from the original, since we never needed any locking there because the ioc/cic were process private. The cic lookup is changed from an rbtree construct to a radix tree, which we can then use RCU to make the reader side lockless. That is the performance critical path, modifying the radix tree is only done on process creation (when that process first does IO, actually) and on process exit (if that process has done IO). As it so happens, radix trees are also much faster for this type of lookup where the key is a pointer. It's a very sparse tree. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28io_context sharing - cfq changesNikanth Karthikesan1-2/+18
changes in the cfq for io_context sharing Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28io context sharing: preliminary supportJens Axboe5-23/+49
Detach task state from ioc, instead keep track of how many processes are accessing the ioc. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28ioprio: move io priority from task_struct to io_contextJens Axboe9-122/+178
This is where it belongs and then it doesn't take up space for a process that doesn't do IO. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28SG: Convert SCSI to use scatterlist helpers for sg chainingJens Axboe3-124/+24
Also change scsi_alloc_sgtable() to just return 0/failure, since it maps to the command passed in. ->request_buffer is now no longer needed, once drivers are adapted to use scsi_sglist() it can be killed. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28SG: Move functions to lib/scatterlist.c and add sg chaining allocator helpersJens Axboe3-101/+307
Manually doing chained sg lists is not trivial, so add some helpers to make sure that drivers get it right. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-01-28Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6Linus Torvalds91-760/+2763
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (54 commits) MAINTIANERS: just use Mike gmail e-mail for contact and pawn the serial driver off onto Sonic [Blackfin] arch: remove old I2C BF54x porting. [Blackfin] arch: Add the semtimedop syscall. Upstream uClibc doesn't compile without it. [Blackfin] arch: fix bug kernel boot message: memory information is not reasonable [Blackfin] arch: use common flash driver to setup partitions rather than the bf5xx-flash driver [Blackfin] arch: Fix bug - kernel build with Debug option enabled fails to boot up [Blackfin] arch: Fix bug Only RTC interrupt can wake up deeper sleep core. [Blackfin] arch: Add proper SW System Reset delay sequence [Blackfin] arch: Update copyright date [Blackfin] arch: GPIO API cleanup and anomaly update [Blackfin] arch: Fix BUG gpio_direction_output API is not compatitable with GENERIC_GPIO API interface [Blackfin] arch: Initial checkin of the memory protection support. [Blackfin] arch: set_bfin_dma_config shouldnt set SYNC or RESTART by default - add argument or option [Blackfin] arch: Add some comments - fix semicolons [Blackfin] arch: move all code related to CPLB handling into a new subdirectory under kernel/ [Blackfin] arch: print out list of modules if kernel is crashing and tell people if the kernel is tainted [Blackfin] arch: enable generic GPIO based I2C driver in STAMP-BF533, EZKIT-BF533 and EZKIT-BF561 boards [Blackfin] arch: Don't oops_in_progress if single step is comming from the kernel [Blackfin] arch: Fix BUG - kernel sometimes would stuck with KEYBOARD_GPIO on [Blackfin] arch: update to latest anomaly sheets ...
2008-01-27[ARM] 4615/4: sam926[13]ek buttons updatedDavid Brownell2-4/+57
From: Nicolas Ferre <nicolas.ferre@rfo.atmel.com> On the at92sam9263ek board, tell the input subsystem about the buttons. This patch is taken from Andrew Victor's at91 patchset, then updated to match the latest kernel code and to use labels printed on the board. Also update the at91sam9261ek buttons to cope with input changes. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Andrew Victor <linux@maxim.org.za> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-27i2c-bfin-twi: Register adapter with a specific bus numberKalle Pokki1-1/+2
All the users of this driver explicitly specify the I2C bus numbers to be used in their platform data. Make the driver respect that. Signed-off-by: Kalle Pokki <kalle.pokki@eke.fi> Cc: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-au1550: Convert to platform driverManuel Lauss3-96/+123
Convert the i2c-au1550 bus driver to platform driver, and register a platform device for the Alchemy Db/Pb series of boards. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-au1550: properly terminate zero-byte transfersManuel Lauss1-3/+8
Zero-bytes transfers would leave the bus transaction unfinished (no i2c stop is sent), with the following transfer actually sending the slave address to the previously addressed device, resulting in weird device failures (e.g. reset minute register values in my RTC). This patch instructs the controller to send an I2C STOP right after the slave address in case of a zero-byte transfer. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27mpc-i2c: Propagate error values properlyJon Smirl1-12/+16
Propagate the error values returned by i2c_wait() instead of overriding them with a meaningless -1. Signed-off-by: Jon Smirl <jonsmirl@gmail.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Add i2c_new_dummy() utilityDavid Brownell2-1/+64
This adds a i2c_new_dummy() primitive to help work with devices that consume multiple addresses, which include many I2C eeproms and at least one RTC. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Drop legacy locking in i2c_new_probed_deviceJean Delvare1-2/+0
It is no longer required to hold adapter->clist_lock to call i2c_check_addr. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: David Brownell <david-b@pacbell.net>
2008-01-27i2c: Limit locking scope in i2c_detach_clientJean Delvare1-1/+2
We only need to hold adapter->clist_lock when we touch the client list. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-remove-redundant-i2c_client-list.patchDavid Brownell1-14/+8
This goes on top of the patch removing most i2c_adapter.clients usage, updating i2c_attach_client: - Don't call device_register() while holding clist_lock. This removes a self-deadlock when on the i2c_driver.probe() path, for drivers that need to attach new devices (e.g. dummies). - Remove a redundant address check. The driver model core does this as a consequence of guaranteeing unique names. - Move the "device registered" diagnostic so that it never lies; previously, on error paths it would falsely report success. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Drivers stop using the redundant client listJean Delvare2-19/+40
The redundant i2c client list maintained by i2c-core is going away soon, so drivers should stop using it now. Instead, they can use the standard iterator provided by the device driver model (device_for_each_child). Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: David Brownell <david-b@pacbell.net> Cc: Michael Hunold <michael@mihu.de>
2008-01-27i2c: Stop using the redundant client listDavid Brownell3-52/+63
The i2c_adapter.clients list of i2c_client nodes duplicates driver model state. This patch starts removing that list, letting us remove most existing users of those i2c-core lists. * The core I2C code now iterates over the driver model's list instead of the i2c-internal one in some places where it's safe: - Passing a command/ioctl to each client, a mechanims used almost exclusively by DVB adapters; - Device address checking, in both i2c-core and i2c-dev. * Provide i2c_verify_client() to use with driver model iterators. * Flag the relevant i2c_adapter and i2c_client fields as deprecated, to help prevent new users from appearing. For the moment the list needs to stick around, since some issues show up when deleting devices created by legacy I2C drivers. (They don't follow standard driver model rules. Removing those devices can cause self-deadlocks.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-viapro: Add support for the VT8237SJean Delvare3-3/+8
Add support for another variant of the VT8237. I couldn't test I2C block support but I assume it is present as well. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-piix4: Drop redundant PCI function number checkJean Delvare1-26/+15
Checking the PCI function number doesn't add any value, and it makes adding dynamic IDs to the driver more difficult. Drop this check. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Let the user specify PCI driver data through new_idJean Delvare2-0/+10
The i2c-amd756 and i2c-viapro drivers make use of the driver_data field of the PCI device ID. When adding device IDs dynamically (by writing to the new_id sysfs file) you cannot set the value of this field by default. It has to be allowed explicitly. Do that, and check the value so that the user can't crash the kernel accidentally. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-01-27i2c-pxa: Add polling transferMike Rapoport3-12/+133
Add polling I2C transfer implementation for PXA I2C. This is needed for cases where I2C transactions have to occur at times interrups are disabled. Signed-off-by: Mike Rapoport <mike@compulab.co.il> Acked-by: eric miao <eric.miao@marvell.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Support i2c_transfer in atomic contextsMike Rapoport1-1/+11
Allow i2c_transfer to be called in contexts where sleeping is not allowed. It is the reponsability of the caller to ensure that the underlying i2c bus driver will not sleep either. Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-sibyte: Remove the bus scan module parameterJean Delvare1-28/+1
The implementation is unsafe, and anyway one can achieve the same from userspace using i2c-dev + i2cdetect. Also tag i2c_sibyte_add_bus __init. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Ralf Baechle <ralf@linux-mips.org>
2008-01-27i2c: Discard unused driver IDsJean Delvare1-60/+0
Discard all I2C driver IDs that aren't used anywhere. That's not just a couple of them, but more like 49 or one quarter of all defined IDs! And this is just a first pass, next will come all IDs that are set but never used, or used but never set. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-i801: Implement I2C block read supportJean Delvare2-28/+56
I2C block read is supported since the ICH5. I couldn't get it to work using the block buffer, so it's using the old-style byte-by-byte mode for now. Note: I'm also updating the driver author... The i2c-i801 driver was really written by Mark Studebaker, even though he based his work on the i2c-piix4 driver which was written by Philip Edelbrock. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-i801: Clear special mode bits as neededJean Delvare1-1/+6
Clear special mode bits (PEC, block buffer) at driver load time, you never know in which state the device was left by its last user. Also make sure that we reset the block buffer mode at the end of every transaction, not only when PEC was used. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-i801: More explicit names for chip featuresJean Delvare1-9/+15
Use separate flags with explicit names to describe the features of the ICH chip. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c-i801: Document which chip support what featureJean Delvare1-24/+33
Provide a clearer documentation of which additional features each ICH chip support, and which of these the driver supports. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c/tps65010: move header to <linux/i2c/...>David Brownell11-17/+14
Move the tps65010 header file from the OMAP arch directory to the more generic <linux/i2c/...> directory, and remove the spurious dependency of this driver on OMAP. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Rename main mutexJean Delvare1-15/+15
Rename the main mutex in i2c-core from core_lists to core_lock. This makes more sense now that the redundant lists are gone. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Drop redundant i2c_driver.listJean Delvare2-24/+35
i2c_driver.list is superfluous, this list duplicates the one maintained by the driver core. Drop it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: David Brownell <dbrownell@users.sourceforge.net>
2008-01-27i2c: Drop redundant i2c_adapter.listJean Delvare3-24/+10
i2c_adapter.list is superfluous, this list duplicates the one maintained by the driver core. Drop it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: David Brownell <dbrownell@users.sourceforge.net>
2008-01-27i2c: Change prototypes of refcounting functionsJean Delvare3-27/+26
Use more standard prototypes for i2c_use_client() and i2c_release_client(). The former now returns a pointer to the client, and the latter no longer returns anything. This matches what all other subsystems do. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: David Brownell <david-b@pacbell.net>
2008-01-27i2c: Use the driver model reference countingJean Delvare3-48/+2
Don't implement our own reference counting mechanism for i2c clients when the driver model already has one. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: David Brownell <david-b@pacbell.net>
2008-01-27i2c: Deprecate drivers for I2C buses on video adaptersJean Delvare2-4/+20
The framebuffer drivers for these pieces of hardware include support for the DDC/I2C buses, so there is no need for separate drivers. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Don't uselessly set i2c_adapter.retriesJean Delvare5-6/+0
I2C adapter drivers are supposed to handle retries on nack by themselves if they do, so there's no point in setting .retries if they don't. As this retry mechanism is going away (at least in its current form), clean this up now so that we don't get build failures later. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: Kill rogue driver IDsJean Delvare3-7/+0
I2C driver IDs are optional, so if you don't need one, just omit it. Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-01-27i2c: normal_i2c can be made const (remaining drivers)Jean Delvare13-18/+20
Signed-off-by: Jean Delvare <khali@linux-fr.org>