Commit Graph

159141 Commits

Author SHA1 Message Date
OGAWA Hirofumi
dc5ed7ff40 fat: Check s_dirt in fat_sync_fs()
If we didn't check sb->s_dirt, it will update the FSINFO
unconditionally. It will reduce the filetime of flash base device.

So, this checks sb->s_dirt. sb->s_dirt is racy, however FSINFO is just
hint. So even if there is race, and we hit it, it would not become big
problem.

And this also is as workaround of suspend problem.

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
2010-12-03 06:31:39 -06:00
Mike Frysinger
8c93560c06 spidev: add proper section markers
The driver already uses __devexit_p() in the structure, but looks like
actual __dev{init,exit} markings were forgotten.

The spidev_spi driver also needs renaming to include a "_driver" suffix to
avoid section mismatch warnings.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:50:49 -06:00
Thadeu Lima de Souza Cascardo
ee1511929c spidev: use DECLARE_BITMAP instead of declaring the array
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:49:28 -06:00
David Brownell
0db6265609 spi: handle TX-only/RX-only
Support two new half-duplex SPI implementation restrictions, for links
that talk to TX-only or RX-only devices.  (Existing half-duplex flavors
support both transfer directions, just not at the same time.)

Move spi_async() into the spi.c core, and stop inlining it.  Then make
that function perform error checks and reject messages that demand more
than the underlying controller can support.

Based on a patch from Marek Szyprowski which did this only for the
bitbanged GPIO driver.

Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-12-03 05:46:21 -06:00
Linus Walleij
ba3bc5db6d spi: fixed odd static string conventions in core code
This patch removes convention of passing a static string as a
parameter to another static string.  The convention is intended to
reduce text usage by sharing the common bits of the string, but the
implementation is inherently fragile (a change to one format string
but not the other will nullify any possible advantage), it isn't
necessarily a net win depending on what this compiler does, and it
it reduces code readability.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
[grant.likely@secretlab.ca: removed dev_dbg->dev_err hunk]
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:43:21 -06:00
Feng Tang
8c63257607 spi: enable spi_board_info to be registered after spi_master
Currently spi_register_board_info() has to be called before its related
spi_master be registered, otherwise these board info will be just ignored.

This patch will remove this order limit, it adds a global spi master list
like the existing global board info listr. Whenever a board info or a
spi_master is registered, the spi master list or board info list
will be scanned, and a new spi device will be created if there is a
master-board info match.

Signed-off-by: Feng Tang <feng.tang@intel.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:42:53 -06:00
David Lamparter
85c93099bf spi: free children in spi_unregister_master, not siblings
introduced by 49dce689 ("spi doesn't need class_device") and bad-fixed
by 350d0076 ("spi: fix double-free on spi_unregister_master"),
spi_unregister_master would previously device_unregister all of the spi
master's siblings (instead of its children). hilarity ensues.

fix it to unregister children.

Signed-off-by: David Lamparter <equinox@diac24.net>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:42:33 -06:00
Matt Sealey
f034b79aae spi: prevent mxc_spi nuking when buffers don't exist 2010-12-03 05:38:37 -06:00
Matt Sealey
9433ed8cc5 match e0626e3844e8f430fc1a4417f523a00797df7ca6 with rtc modalias for pmic 2010-12-03 05:37:31 -06:00
Anton Vorontsov
38962b9aff spi: prefix modalias with "spi:"
This makes it consistent with other buses (platform, i2c, vio, ...).  I'm
not sure why we use the prefixes, but there must be a reason.

This was easy enough to do it, and I did it.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Samuel Ortiz <sameo@openedhand.com>
Cc: "John W. Linville" <linville@tuxdriver.com>
Acked-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-12-03 05:36:50 -06:00
Anton Vorontsov
ee15db82e8 spi: add support for device table matching
With this patch spi drivers can use standard spi_driver.id_table and
MODULE_DEVICE_TABLE() mechanisms to bind against the devices.  Just like
we do with I2C drivers.

This is useful when a single driver supports several variants of devices
but it is not possible to detect them in run-time (like non-JEDEC chips
probing in drivers/mtd/devices/m25p80.c), and when platform_data usage is
overkill.

This patch also makes life a lot easier on OpenFirmware platforms, since
with OF we extensively use proper device IDs in modaliases.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-12-03 05:33:34 -06:00
Roman Tereshonkov
2c2a5a31c8 spi: release device claimed by bus_find_device_by_name
In success case the function bus_find_device_by_name calls
get_device. In our context put_device should be called to
decrease the device count usage.

Signed-off-by: Roman Tereshonkov <roman.tereshonkov@nokia.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:33:12 -06:00
Roman Tereshonkov
8cad67c9b2 spi: spi_device memory should be released instead of device.
The memory for dev variable is allocated as a part of
spi_device structure memory which the dev belongs to.
Thus when the memory is released the right pointer is used.

Signed-off-by: Roman Tereshonkov <roman.tereshonkov@nokia.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 05:32:26 -06:00
Dan Carpenter
edcadf3e0d mtd/m25p80: retlen is never NULL
This is just a cleanup, it doesn't fix any bugs.

These functions all check retlen inconsistently and it generates a
warning in Smatch (http://smatch.sf.net).  If retlen were ever NULL it
would cause an oops and the code has been this way since 2006 so someone
would have complained.  Also I looked at other places that implemented
the mtd read and write functions and they dereference retlen without
checking.

I removed the checks.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:04:34 -06:00
Johannes Stezenbach
5e285654a7 mtd: m25p80: make command buffer DMA-safe
spi_write() requires the buffer to be DMA-safe, kmalloc()
it seperately to ensure this.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:04:17 -06:00
Graf Yang
90a29e881d mtd: m25p80: disable SST software protection bits by default
The SST SPI flashes is like Atmel SPI flashes in that the software
protection bits are set by default at power up, so clear them at init
time.

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:04:09 -06:00
Peter Huewe
22ef197963 trivial: mtd: add __init/__exit macros to init/exitfunctions
Trivial patch which adds the __init and __exit macros to the module_init /
module_exit functions to the following modules from drivers/mtd/
 devices/m25p80.c
 devices/slram.c
 linux version 2.6.30
 ftl.c
 nand/cafe_nand.c
 nand/cmx270_nand.c

Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2010-12-03 02:04:01 -06:00
Kevin Cernekee
13ee5760e4 m25p80: Add Spansion S25FL129P serial flashes
Tested 64KiB block size only.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:03:51 -06:00
Graf Yang
c1382d626d mtd: m25p80: add SST WF SPI flash device information
Support SST25WF{512,010,020,040} SPI flashes.

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:03:40 -06:00
Graf Yang
d7a39f6f5a mtd: m25p80: add support for AAI programming with SST SPI flashes
The SST SPI flashes are a bit non-standard in that they can be programmed
one byte at a time (including address!), or they can be written two bytes
at a time with auto address incrementing (AAI).  The latter form is
obviously much better for performance, so let's use it when possible.

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:03:23 -06:00
Siddarth Gore
8243088dca mtd: m25p80: add support for 3 Macronix flash chips
Signed-off-by: Siddarth Gore <gores@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2010-12-03 02:03:16 -06:00
Matt Sealey
c229875348 sii9022: cheap blanking by setting video mode to black. More advanced blanking
with transmitter power-down experimentally coded but not tested.
2010-12-03 02:01:27 -06:00
Matt Sealey
fc6cc6e0d5 fix braces build error 2010-12-03 01:54:49 -06:00
Matt Sealey
f6c0135002 fix udlfb configuration 2010-12-03 01:52:42 -06:00
Matt Sealey
192faac49c put back accidentially removed original spi chipselect code for SPI_MXC 2010-12-03 01:27:44 -06:00
Matt Sealey
3488bb1604 NOR/PMIC add support for all 3 possible SPI drivers 2010-12-03 00:40:51 -06:00
Matt Sealey
bfb9c91d83 Add support for all 3 possible SPI drivers 2010-12-03 00:33:17 -06:00
Matt Sealey
fcde2d5221 Drop in spi_imx from mainline. Not enabled in any config. 2010-12-03 00:32:16 -06:00
Marek Szyprowski
03e7116c64 spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes
This patch adds a new flags argument to bitbang_txrx_be_cpha0 and
bitbang_txrx_be_cpha1 transfer functions. This enables support for
SPI_MASTER_NO_{TX,RX} transfer modes. The change should have no impact
on speed of the existing drivers. bitbank_txrx_* functions are usually
inlined into the drivers. When the argument is equal to constant zero,
the optimizer would be able to eliminate the dead code (flags checks)
easily. Tested on ARM and GCC 4.4.x and in all cases the checks were
eliminated in the inlined function.

Reviewed-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 00:02:40 -06:00
hartleys
66552f8908 spi: move bitbang txrx utility functions to private header
A number of files in drivers/spi fail checkincludes.pl due to the double
include of <linux/spi/spi_bitbang.h>.

The first include is needed to get the struct spi_bitbang definition and
the spi_bitbang_* function prototypes.

The second include happens after defining EXPAND_BITBANG_TXRX to get the
inlined bitbang_txrx_* utility functions.

The <linux/spi/spi_bitbang.h> header is also included by a number of other
spi drivers, as well as some arch/ code, in order to use struct spi_bitbang
and the associated functions.

To fix the double include, and remove any potential confusion about it, move
the inlined bitbang_txrx_* functions to a new private header in drivers/spi
and also remove the need to define EXPAND_BITBANG_TXRX.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-03 00:01:39 -06:00
Brian Niebuhr
287f9b787f spi/bitbang: reinitialize transfer parameters for every message
This patch fixes the setup_transfer logic to account for the case where
multiple messages to different SPI devices are in the queue simultaneously.
With the current logic, the second message in the queue will end up
using the transfer parameters for the previous message in the queue.

The fix is to reinitialize the transfer parameters for each message
rather than only once on the first message.

Signed-off-by: Brian Niebuhr <bniebuhr@efjohnson.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2010-12-02 23:59:26 -06:00
Marc Kleine-Budde
07be632436 i2c-imx: do not allow interruptions when waiting for I2C to complete
The i2c_imx_trx_complete() function is using
wait_event_interruptible_timeout() to wait for the I2C controller to
signal that it has completed an I2C bus operation. If the process that
causes the I2C operation receives a signal, the wait will be
interrupted, returning an error. It is better to let the I2C operation
finished before handling the signal (i.e. returning into userspace).

It is safe to use wait_event_timeout() instead, because the timeout
will allow the process to exit if the I2C bus hangs. It's also better
to allow the I2C operation to finish, because unacknowledged I2C
operations can cause the I2C bus to hang.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Reviewed-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2010-12-02 23:51:35 -06:00
Matt Sealey
2b6144da0f udlfb: update to the version in linus' repo. modified for usb on 2.6.31. 2010-12-02 15:26:28 -06:00
Matt Sealey
3ce62020bc config (mx): oldconfig tweaks to stop it stopping compiles. checked in the wrong one last night. 2010-12-02 12:39:58 -06:00
Matt Sealey
d3ff8eb59e bump to .12 2010-12-02 01:06:45 -06:00
Matt Sealey
1b81f6305a config (mx): sync with smartbook 2010-12-02 01:06:23 -06:00
Matt Sealey
f14b542bdc config (sb): put networking options back in. sync ubuntu config for bsd ptys. bluetooth cleanup. 2010-12-02 00:30:55 -06:00
Matt Sealey
dbd056381a config (sb): fill out crypto 2010-12-01 23:17:42 -06:00
Kay Sievers
98ec231ac0 vfs: get_sb_single() - do not pass options twice
Filesystem code usually destroys the option buffer while
parsing it. This leads to errors when the same buffer is
passed twice. In case we fill a new superblock do not call
remount.

This is needed to quite a warning that the debugfs code
causes every boot.

Cc: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-01 22:15:15 -06:00
Matt Sealey
f09a124fbd rt2870: make Kconfig match mainline (superficial change) 2010-12-01 22:13:26 -06:00
Matt Sealey
0657eecfa0 config (sb): tmpfs acls, OSS compatibility enabled 2010-12-01 22:12:26 -06:00
Matt Sealey
a649174915 config (sb): cleanup input. add Android drivers. remove MXC SCC2 driver. Add cryptoloop, ram block device, cd/dvd packet writing 2010-12-01 20:08:27 -06:00
Matt Sealey
44424638d8 config (sb): bring Smartbook back from the dead. IP/INET and CRYPTO will creep back in when we work out which one of them is making boot stop working. 2010-12-01 15:35:08 -06:00
Matt Sealey
03304a1f08 Add Ralink RT2870/RT3070 binaries to shipped firmware to keep them with the kernel. 2010-12-01 15:33:23 -06:00
Matt Sealey
2a0c7a5ed0 config (mx): enable timer stats, scheduler stats (for power/latencytop), latencytop support, KGDB, cgroups 2010-11-30 13:35:29 -06:00
Matt Sealey
3097dbf09f config: enable timer stats, scheduler stats (for power/latencytop), latencytop support, KGDB, cgroups 2010-11-30 13:25:40 -06:00
Saleem Abdulrasool
4fcc3a542f add efikasb_batt_write 2010-11-29 18:51:51 -06:00
Saleem Abdulrasool
7379fcc430 report energy and charge full design 2010-11-29 18:50:33 -06:00
Saleem Abdulrasool
3124207d02 report energy and charge full 2010-11-29 18:50:30 -06:00
Saleem Abdulrasool
67090153be report energy and charge now 2010-11-29 18:50:27 -06:00