- Dec 24, 2010
-
-
Wolfram Sang authored
Side-effects happen when passing 0 to either io_limit or page_size. Give an error in case of this misconfiguration. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Grant Likely <grant.likely@secretlab.ca>
-
Wolfram Sang authored
Information about the pagesize and read-only-status may also come from the devicetree. Parse this data, too, and act accordingly. While we are here, change the initialization printout a bit. write_max is useful to know to detect performance bottlenecks, the rest is superfluous. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Grant Likely <grant.likely@secretlab.ca>
-
- Jun 03, 2010
-
-
Wolfram Sang authored
I2C drivers can use the clientdata-pointer to point to private data. As I2C devices are not really unregistered, but merely detached from their driver, it used to be the drivers obligation to clear this pointer during remove() or a failed probe(). As a couple of drivers forgot to do this, it was agreed that it was cleaner if the i2c-core does this clearance when appropriate, as there is no guarantee for the lifetime of the clientdata-pointer after remove() anyhow. This feature was added to the core with commit e4a7b9b0 to fix the faulty drivers. As there is no need anymore to clear the clientdata-pointer, remove all current occurrences in the drivers to simplify the code and prevent confusion. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Acked-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Greg Kroah-Hartman <gregkh@suse.de> Acked-by:
Richard Purdie <rpurdie@linux.intel.com> Acked-by:
Dmitry Torokhov <dtor@mail.ru> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- May 21, 2010
-
-
Jean Delvare authored
Increase the portability of the at24 driver by letting it read from EEPROM chips connected to cheap SMBus controllers that support neither raw I2C messages nor even I2C block reads. All SMBus controllers should support either word reads or byte reads, so read support becomes universal, much like with the legacy "eeprom" driver. Obviously, this only works with EEPROM chips up to AT24C16, that use 8-bit offset addressing. 16-bit offset addressing is almost impossible to support on SMBus controllers. I did not add universal support for writes, as I had no immediate need for this, but it could be added later if needed (with the same performance issue as byte and word reads have, of course.) Signed-off-by:
Jean Delvare <khali@linux-fr.org> Reviewed-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Konstantin Lazarev <klazarev@sbcglobal.net>
-
Chris Wright authored
This allows bin_attr->read,write,mmap callbacks to check file specific data (such as inode owner) as part of any privilege validation. Signed-off-by:
Chris Wright <chrisw@sous-sol.org> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
- May 14, 2010
-
-
Arce, Abraham authored
Change max6875.c header file to format as in conventions Signed-off-by:
Abraham Arce <x0066660@ti.com> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jiri Kosina <jkosina@suse.cz>
-
Arce, Abraham authored
Change eeprom_93cx6.c header file to format as in conventions Signed-off-by:
Abraham Arce <x0066660@ti.com> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jiri Kosina <jkosina@suse.cz>
-
Arce, Abraham authored
Change eeprom.c header file to format as in conventions Signed-off-by:
Abraham Arce <x0066660@ti.com> Acked-by:
Jean Delvare <khali@linux-fr.org> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jiri Kosina <jkosina@suse.cz>
-
- Mar 14, 2010
-
-
Wolfram Sang authored
Commit 6992f533 ("sysfs: Use one lockdep class per sysfs attribute.") introduced this requirement. First, at25 was fixed manually. Then, other occurences were found with coccinelle and the following semantic patch. Results were reviewed and fixed up: @ init @ identifier struct_name, bin; @@ struct struct_name { ... struct bin_attribute bin; ... }; @ main extends init @ expression E; statement S; identifier name, err; @@ ( struct struct_name *name; | - struct struct_name *name = NULL; + struct struct_name *name; ) ... ( sysfs_bin_attr_init(&name->bin); | + sysfs_bin_attr_init(&name->bin); if (sysfs_create_bin_file(E, &name->bin)) S | + sysfs_bin_attr_init(&name->bin); err = sysfs_create_bin_file(E, &name->bin); ) Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- Mar 13, 2010
-
-
Wolfram Sang authored
Commit 6992f533 introduced this requirement. Reported-by:
Albrecht Dress <albrecht.dress@arcor.de> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Eric W. Biederman <ebiederm@xmission.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- Dec 14, 2009
-
-
Jean Delvare authored
This macro simply declares an enum, so drivers might as well declare it themselves. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Tested-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Jean Delvare authored
Struct i2c_client_address_data only contains one field at this point, which makes its usefulness questionable. Get rid of it and pass simple address lists around instead. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Tested-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Jean Delvare authored
The "kind" parameter always has value -1, and nobody is using it any longer, so we can remove it. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Tested-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- Nov 26, 2009
-
-
Wolfram Sang authored
Writes may take some time on EEPROMs, so for consecutive writes, we already have a loop waiting for the EEPROM to become ready. Use such a loop for reads, too, in case somebody wants to immediately read after a write. Detailed bug report and test case can be found here: http://article.gmane.org/gmane.linux.drivers.i2c/4660 Reported-by:
Aleksandar Ivanov <ivanov.aleks@gmail.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Tested-by:
Aleksandar Ivanov <ivanov.aleks@gmail.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- Oct 04, 2009
-
-
Jean Delvare authored
There is no point in implementing a detect callback for the MAX6875, as this device can't be detected. It was there solely to handle "force" module parameters to instantiate devices, but now we have a better sysfs interface that can do the same. So we can get rid of the ugly module parameters and the detect callback. This basically divides the binary module size by 2. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Acked-by:
Ben Gardner <gardner.ben@gmail.com>
-
- Sep 23, 2009
-
-
Anton Vorontsov authored
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>
-
- Jul 29, 2009
-
-
Sebastian Heutling authored
Under certain circumstances msleep(1) within the loop, which waits for the EEPROM to be finished, might take longer than the timeout. On the next loop the status register might now return to be ready and therefore the loop finishes. The following check now tests if a timeout occurred and if so returns an error although the device reported it was ready. This fix replaces testing the occurrence of the timeout by testing the "not ready" bit in the status register. Signed-off-by:
Sebastian Heutling <heutling@who-ing.de> 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>
-
- Jun 15, 2009
-
-
Wolfram Sang authored
This driver only reads the user EEPROM of that chip, so we can move it to the eeprom-directory in order to further clean up (and later remove) drivers/i2c/chips. The Kconfig text was updated to match the current functionality, dropping the meanwhile obsoleted parts. Defconfigs have been adapted. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Acked-by:
Ben Gardner <gardner.ben@gmail.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- Apr 13, 2009
-
-
Geert Uytterhoeven authored
| drivers/misc/eeprom/at25.c:358: warning: assignment from incompatible pointer type Signed-off-by:
Geert Uytterhoeven <geert@linux-m68k.org> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Geert Uytterhoeven authored
| drivers/misc/eeprom/at24.c:508: warning: assignment from incompatible pointer type Signed-off-by:
Geert Uytterhoeven <geert@linux-m68k.org> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- Apr 02, 2009
-
-
David Brownell authored
- Define new setup() hook to export the accessor - Implement accessor methods Moves some error checking out of the sysfs interface code into the layer below it, which is now shared by both sysfs and memory access code. Signed-off-by:
David Brownell <dbrownell@users.sourceforge.net> Signed-off-by:
Kevin Hilman <khilman@deeprootsystems.com> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Kevin Hilman authored
In the case of at24, the platform code registers a 'setup' callback with the at24_platform_data. When the at24 driver detects an EEPROM, it fills out the read and write functions of the memory_accessor and calls the setup callback passing the memory_accessor struct. The platform code can then use the read/write functions in the memory_accessor struct for reading and writing the EEPROM. Signed-off-by:
Kevin Hilman <khilman@deeprootsystems.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- Mar 28, 2009
-
-
Wolfram Sang authored
This driver has been widely used since inclusion and no problems have been reported. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: David Brownell <david-b@pacbell.net> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- Jan 26, 2009
-
-
Jean Delvare authored
Now that all EEPROM drivers live in the same place, let's harmonize their symbol names. Also fix eeprom's dependencies, it definitely needs sysfs, and is no longer experimental after many years in the kernel tree. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: David Brownell <dbrownell@users.sourceforge.net>
-
Wolfram Sang authored
Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Wolfram Sang authored
Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Wolfram Sang authored
Update Kconfig text to specify this driver as I2C. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Wolfram Sang authored
As drivers/i2c/chips is going to go away, move the driver to drivers/misc/eeprom. Other eeprom drivers may be moved here later, too. Update Kconfig text to specify this driver as I2C. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-