aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * [Blackfin] arch: Trash bf54x-hcd driver - we use the musb driverMichael Hennerich2007-12-241-21/+0
| | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Enable peripheral platform resources on the BF527 EZkitMichael Hennerich2007-12-241-0/+98
| | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Fix bug to Enable bf548 to Re-program Clocks while Kernel ↵Sonic Zhang2008-01-274-5/+153
| | | | | | | | | | | | | | | | | | | | boots. Reprogram DDR EBIU register properly for bf548. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Clean up dump_bfin_memRobin Getz2007-12-234-50/+87
| | | | | | | | | | | | | | | | | | | | Clean up dump_bfin_mem so that it will display content from the kernel, as well as l1 instruction, when deferred HW errors happen, print out the last frame info if it makes sense. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: add Hitachi TX09D70VM1CDA TFT LCD driver resource to ↵Michael Hennerich2008-01-272-0/+21
| | | | | | | | | | | | | | | | Blackfin board Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Fix bug to Enable kernel to build for bf548 with PM.Sonic Zhang2007-12-237-15/+64
| | | | | | | | | | | | | | | | | | On BF548-EZKIT, build kernel faills with power management, video and audio enabled. This patch fix this. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: fix bug - make memcpy return the dest addr.Yi Li2007-12-211-6/+2
| | | | | | | | | | | | | | | | | | The memcpy() function returns the src pointer instead of the dst pointer. This patch fix this bug. Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: fix bug SDIO driver fails to build for BF542/BF548Cliff Cai2007-12-212-4/+4
| | | | | | | | | | | | | | | | modified CMD_TIMEOUT and DAT_TIMEOUT to CMD_TIME_OUT and DAT_TIME_OUT Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Added support for 8250-class UARTs in HV Sistemas H8606 ↵Javier Herrero2007-12-211-2/+49
| | | | | | | | | | | | | | | | board, modification in 8250.c driver for correct compilation with Blackfin Signed-off-by: Javier Herrero <jherrero@hvsistemas.es> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Let the pre-processor do the math to save a few cycles - no ↵Robin Getz2007-12-211-3/+1
| | | | | | | | | | | | | | | | functional changes Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: do not use fixed numbers to describe offsets - no ↵Robin Getz2007-12-211-1/+1
| | | | | | | | | | | | | | | | functional changes Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: do not use hard coded addressesRobin Getz2007-12-211-4/+4
| | | | | | | | | | | | Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: fix bug gdb testing on hardware has regressionRobin Getz2007-12-241-7/+30
| | | | | | | | | | | | | | | | | | | | | | | | http://blackfin.uclinux.org/gf/project/toolchain/tracker/?action=TrackerItemEdit&tracker_item_id=3651 As Bernd predicted, this was only necessary because of other problems in the kenel - fixing those, and this is not necessary, so remove it. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: fix bug - trap_tests fails to recover on some tests.Robin Getz2008-01-275-71/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3719 When the CPLBs get a miss, we do: - find a victim in the HW table - remove the victim - find the replacement in the software table - put it into the HW table. If we can't find a replacement in the software table, we accidently leave a duplicate in the HW table. This patch ensures that duplicate is marked as not valid. What we should do is find the replacement in the software table, before we find a victim in the HW table - but its too late in the release cycle to do that much restructuring of this code. Rather that duplicate code, connect Hardware Errors (irq5) into trap_c, so user space processes get killed properly. The rest of irq_panic() can be moved into traps.c (later) There is still a small corner case that causes problems when a pheriperal interrupt goes off a single cycle before a user space hardware error. This causes a kernel panic, rather than the user space process being killed. But, this checkin makes things work in 99.9% of the cases, and is a vast improvement from what is there today (which fails 100% of the time). Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
| * [Blackfin] arch: Add a note describing what is going on - no functional changesRobin Getz2008-01-271-2/+13
| | | | | | | | | | | | Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
* | i2c-bfin-twi: Register adapter with a specific bus numberKalle Pokki2008-01-271-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>
* | i2c-au1550: Convert to platform driverManuel Lauss2008-01-273-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>
* | i2c-au1550: properly terminate zero-byte transfersManuel Lauss2008-01-271-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>
* | mpc-i2c: Propagate error values properlyJon Smirl2008-01-271-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>
* | i2c: Add i2c_new_dummy() utilityDavid Brownell2008-01-272-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>
* | i2c: Drop legacy locking in i2c_new_probed_deviceJean Delvare2008-01-271-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>
* | i2c: Limit locking scope in i2c_detach_clientJean Delvare2008-01-271-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>
* | i2c-remove-redundant-i2c_client-list.patchDavid Brownell2008-01-271-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>
* | i2c: Drivers stop using the redundant client listJean Delvare2008-01-272-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>
* | i2c: Stop using the redundant client listDavid Brownell2008-01-273-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>
* | i2c-viapro: Add support for the VT8237SJean Delvare2008-01-273-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>
* | i2c-piix4: Drop redundant PCI function number checkJean Delvare2008-01-271-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>
* | i2c: Let the user specify PCI driver data through new_idJean Delvare2008-01-272-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>
* | i2c-pxa: Add polling transferMike Rapoport2008-01-273-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>
* | i2c: Support i2c_transfer in atomic contextsMike Rapoport2008-01-271-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>
* | i2c-sibyte: Remove the bus scan module parameterJean Delvare2008-01-271-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>
* | i2c: Discard unused driver IDsJean Delvare2008-01-271-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>
* | i2c-i801: Implement I2C block read supportJean Delvare2008-01-272-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>
* | i2c-i801: Clear special mode bits as neededJean Delvare2008-01-271-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>
* | i2c-i801: More explicit names for chip featuresJean Delvare2008-01-271-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>
* | i2c-i801: Document which chip support what featureJean Delvare2008-01-271-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>
* | i2c/tps65010: move header to <linux/i2c/...>David Brownell2008-01-2711-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>
* | i2c: Rename main mutexJean Delvare2008-01-271-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>
* | i2c: Drop redundant i2c_driver.listJean Delvare2008-01-272-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>
* | i2c: Drop redundant i2c_adapter.listJean Delvare2008-01-273-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>
* | i2c: Change prototypes of refcounting functionsJean Delvare2008-01-273-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>
* | i2c: Use the driver model reference countingJean Delvare2008-01-273-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>
* | i2c: Deprecate drivers for I2C buses on video adaptersJean Delvare2008-01-272-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>
* | i2c: Don't uselessly set i2c_adapter.retriesJean Delvare2008-01-275-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>
* | i2c: Kill rogue driver IDsJean Delvare2008-01-273-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>
* | i2c: normal_i2c can be made const (remaining drivers)Jean Delvare2008-01-2713-18/+20
| | | | | | | | Signed-off-by: Jean Delvare <khali@linux-fr.org>
* | i2c: normal_i2c can be made const (rtc drivers)Jean Delvare2008-01-276-6/+6
| | | | | | | | | | Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Alessandro Zummo <alessandro.zummo@towertech.it>
* | i2c: Constify client address dataMark M. Hoffman2008-01-273-60/+46
| | | | | | | | | | | | | | | | This patch allows much of the I2C client address data to move from initdata into text. Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
* | i2c-algo-pcf: Delete broken 10-bit address supportJean Delvare2008-01-271-72/+13
| | | | | | | | | | | | | | | | The 10-bit address support in i2c-algo-pcf is so heavily broken that it can't have ever been used. Nobody ever complained, so I'll take it that nobody needs it. Let's just delete it. Signed-off-by: Jean Delvare <khali@linux-fr.org>
* | i2c-algo-bit: Fix NAK/ARB commentsDavid Brownell2008-01-271-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Update comments and logging on return path for byte writes. NAK is an error, to be reported or optionally ignored. Timeouts are always errors. Lost arbitration is not currently handled, so don't even list it as an option in the error message. Don't return bogus EFAULT code for inappropriate NAK; EIO is better, there is no bad userspace address in question. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>