Commit graph

135 commits

Author SHA1 Message Date
Sean Young
e27a9960af [MTD] Add Resident Flash Disk (RFD) support
This type of flash translation layer (FTL) is used by the Embedded BIOS
by General Software. It is known as the Resident Flash Disk (RFD), see:

http://www.gensw.com/pages/prod/bios/rfd.htm

Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-11-06 20:08:54 +01:00
Thomas Gleixner
2fc2991175 Merge branch 'master' of /home/tglx/work/mtd/git/linux-2.6.git/ 2005-11-06 15:36:37 +01:00
Linus Torvalds
4fd5f8267d Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel
Manual #include fixups for clashes - there may be some unnecessary
2005-10-31 07:32:56 -08:00
Tim Schmielau
4e57b68178 [PATCH] fix missing includes
I recently picked up my older work to remove unnecessary #includes of
sched.h, starting from a patch by Dave Jones to not include sched.h
from module.h. This reduces the number of indirect includes of sched.h
by ~300. Another ~400 pointless direct includes can be removed after
this disentangling (patch to follow later).
However, quite a few indirect includes need to be fixed up for this.

In order to feed the patches through -mm with as little disturbance as
possible, I've split out the fixes I accumulated up to now (complete for
i386 and x86_64, more archs to follow later) and post them before the real
patch.  This way this large part of the patch is kept simple with only
adding #includes, and all hunks are independent of each other.  So if any
hunk rejects or gets in the way of other patches, just drop it.  My scripts
will pick it up again in the next round.

Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-10-30 17:37:32 -08:00
Russell King
d052d1beff Create platform_device.h to contain all the platform device details.
Convert everyone who uses platform_bus_type to include
linux/platform_device.h.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-29 19:07:23 +01:00
Russell King
13bfb34c10 [ARM] Fix Assabet reboot with SA1100 MTD map driver
Unfortunately, some devices forgot to reset the flash on reboot.
Arrange for the map driver to suspend & resume the flash to
ensure that it is in a sane state before rebooting.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-29 16:14:08 +01:00
Russell King
14e66f767f [ARM] Allow MTD device name to be passed via platform data
Allow SA1100 devices to pass the name of the flash device to the
SA1100 map driver.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-29 16:08:31 +01:00
Russell King
822e5e7269 [ARM] Fix MTD device/partition destruction
We should not delete MTD partitions when we registered a MTD
device.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-29 16:03:24 +01:00
Russell King
0d2ef7d73e [ARM] Add support for init/exit methods in sa1100 MTD map driver
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-29 15:57:20 +01:00
Russell King
57725f0a94 [ARM] Rename 'data' to 'plat' in sa1100 MTD map driver
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-29 15:51:14 +01:00
Greg KH
6fbfddcb52 Merge ../bleed-2.6 2005-10-28 10:13:16 -07:00
Russell King
9480e307cd [PATCH] DRIVER MODEL: Get rid of the obsolete tri-level suspend/resume callbacks
In PM v1, all devices were called at SUSPEND_DISABLE level.  Then
all devices were called at SUSPEND_SAVE_STATE level, and finally
SUSPEND_POWER_DOWN level.  However, with PM v2, to maintain
compatibility for platform devices, I arranged for the PM v2
suspend/resume callbacks to call the old PM v1 suspend/resume
callbacks three times with each level in order so that existing
drivers continued to work.

Since this is obsolete infrastructure which is no longer necessary,
we can remove it.  Here's an (untested) patch to do exactly that.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28 09:52:56 -07:00
Greg Kroah-Hartman
53f4654272 [PATCH] Driver Core: fix up all callers of class_device_create()
The previous patch adding the ability to nest struct class_device
changed the paramaters to the call class_device_create().  This patch
fixes up all in-kernel users of the function.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28 09:52:52 -07:00
Russell King
674c045382 [ARM] 3/4: Remove asm/hardware.h from SA1100 io.h
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-28 14:25:28 +01:00
Linus Torvalds
1dd465cac8 Merge master.kernel.org:/home/rmk/linux-2.6-arm 2005-09-30 08:39:56 -07:00
Deepak Saxena
82810a906f [PATCH] Fix ixp4xx MTD driver module build
Missing ';' breaks module build.

Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-29 08:55:13 -07:00
Russell King
fc611a1a50 [ARM] Don't include mach-types.h unnecessarily
It's pointless to include mach-types.h if you're not going to use
anything from it.  These references were removed as a result of:

grep -lr 'asm/mach-types\.h' . | xargs grep -L 'machine_is_\|MACH_TYPE_\|MACHINE_START\|machine_type'

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-29 11:15:51 +01:00
Grant Coady
66c81f0059 [PATCH] DEBUG redefined in drivers/mtd/devices/docecc.c
Fix namespace clash:

drivers/mtd/devices/docecc.c:43:1: warning: "DEBUG" redefined
In file included from drivers/mtd/devices/docecc.c:40:
include/linux/mtd/mtd.h:219:1: warning: this is the location of the previous definition

Signed-off-by: Grant Coady <gcoady@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-22 22:17:34 -07:00
Richard Purdie
62052d42a5 [PATCH] MTD: Update SharpSL partition definitions
Add partition definitions for the new Sharp Zaurus models Spitz (SL-C3000),
Akita (SL-C1000) and Borzoi (SL-C3100)

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-17 11:49:58 -07:00
Greg Ungerer
f6515db47e [PATCH] uclinux: remove use of mtd_put_device() in uclinux MTD map driver
We should not call mtd_put_device() in the uclinux MTD map driver.
Also consistently use phys/virt fields of maps map_info struct,
instead of mixing it with map_priv_1.

Signed-off-by: Greg Ungerer <gerg@uclinux.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-11 20:43:46 -07:00
Jesper Juhl
f9101210e7 [PATCH] vfree and kfree cleanup in drivers/
This patch does a full cleanup of 'NULL checks before vfree', and a partial
cleanup of calls to kfree for all of drivers/ - the kfree bit is partial in
that I only did the files that also had vfree calls in them.  The patch
also gets rid of some redundant (void *) casts of pointers being passed to
[vk]free, and a some tiny whitespace corrections also crept in.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-10 10:06:30 -07:00
Ingo Molnar
8446f1d391 [PATCH] detect soft lockups
This patch adds a new kernel debug feature: CONFIG_DETECT_SOFTLOCKUP.

When enabled then per-CPU watchdog threads are started, which try to run
once per second.  If they get delayed for more than 10 seconds then a
callback from the timer interrupt detects this condition and prints out a
warning message and a stack dump (once per lockup incident).  The feature
is otherwise non-intrusive, it doesnt try to unlock the box in any way, it
only gets the debug info out, automatically, and on all CPUs affected by
the lockup.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-Off-By: Matthias Urlichs <smurf@smurf.noris.de>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-07 16:57:17 -07:00
Todd Poynor
8b491d7508 [MTD] mtdchar: Return EINVAL for bad seeks instead of fixing up to valid byte
mtdchar return -EINVAL for seek prior to offset 0 or to beyond the last
byte in the device/partition, similar to various other seek methods,
instead of fixing up to first or last byte.

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-08-04 12:52:40 +02:00
Todd Poynor
1da2c9a638 [MTD] Pre-CFI Sharp chip driver: Some speedups and cleanups
Remove useless udelay(100) after status value already read.  Poll
for status OK with reduced udelay if not immediate OK status return.

Fix read and compare of 32-bit status value using 16-bit variable.

Include slab.h since kmalloc/kfree are called.

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-08-04 12:52:09 +02:00
Todd Poynor
65a8de36b4 [MTD] mtd_blkdevs.c: Fix names when many devices/partitions are created
mtdblock (and other mtd modules that use the mtd_blkdevs interface
between the mtd translation layers and the linux block layer) handles
incorrectly more than 10 devices or 26 partitions in the names passed to
the generic disk layer.  This causes the device file names and other
info kept by the generic disk/block layers to have names such as
"mtdblock<".  Use integer formatting for device numbers; use "aa-az"
for partitions 27-52, "ba-bz" for 53-78...

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-08-04 12:51:18 +02:00
Todd Poynor
7ad2b7f595 [MTD] mtd_blkdevs.c: Remove DEVFS leftovers
Remove mtd_blkdevs refs to the no longer functional DEVFS filesystem.

Verified mtdblock continues to work fine via udev with these calls
removed.

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-08-04 12:50:48 +02:00
Todd Poynor
d88f977b85 [MTD] CHIPS: Recognize Spansion CFI 1.4 chips
Modify Amd/Fujitsu CFI NOR flash primary vendor extension table revision
check to recognize version 1.4.  Verified the existing driver can
handle version 1.4 chips without additional info from 1.4 extended table.

Move the primary vendor extension table revision check from common file
to the 3 CFI chip driver files, since the data structures and revisions
handled by those data structures are specific to the chip driver.

Modify the error message printed when the revision is unknown to be a
KERN_ERR instead of WARNING since this will cause mtd to ignore the chip.

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-08-04 12:49:25 +02:00
Olaf Hering
44456d37b5 [PATCH] turn many #if $undefined_string into #ifdef $undefined_string
turn many #if $undefined_string into #ifdef $undefined_string to fix some
warnings after -Wno-def was added to global CFLAGS

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-27 16:26:08 -07:00
Thomas Gleixner
19870da7ea [MTD] NAND: Fix broken bad block scan for 16 bit devices
The previous change to read a single byte from oob breaks the
bad block scan on 16 bit devices, when the byte is on an odd
address. Read the complete oob for now.
Remove the unused arguments from check_short_pattern()
Move the wait for ready function so it is only executed when
consecutive reads happen.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-16 09:27:52 +02:00
Joern Engel
6a8b4d319c [MTD] cfi_cmdset_0002: Plugged a mem leak.
Signed-off-by: Joern Engel <joern@wohnheim.fh-wedel.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-13 19:04:04 +02:00
Todd Poynor
a98a5d04f4 Merge with rsync://fileserver/linux 2005-07-13 00:58:44 +02:00
Thomas Gleixner
1ca70351af [MTD] Make XIP support depend on CONFIG_ARM
ARM is the only known user of this at the moment.
Prevent allyes builds for other archs from failing

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-12 17:51:06 +02:00
Linus Torvalds
200d481f28 Merge master.kernel.org:/pub/scm/linux/kernel/git/tglx/mtd-2.6 2005-07-11 10:18:18 -07:00
Dominik Brodowski
44670d2b50 [PATCH] pcmcia: remove references to pcmcia/version.h
As a follow-up, remove the inclusion of pcmcia/version.h in many files.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:24:07 -07:00
Dominik Brodowski
1e212f3645 [PATCH] pcmcia: move event handler
Move the "event handler" to struct pcmcia_driver -- the unified event handler
will disappear really soon, but switching it to struct pcmcia_driver in the
meantime allows for better "step-by-step" patches.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:24:05 -07:00
Thomas Gleixner
97f927a4d7 [MTD] XIP cleanup
Move the architecture dependend code into include/asm/mtd-xip.h

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-07 16:50:16 +02:00
David Woodhouse
b9c86d595d [MTD] Remove MODULE_DEVICE_TABLE() for ICHx flash driver
This prevents it from automatically getting loaded by hotplug because
we happen to notice you have this chipset. Let's stick with having to
load the drivers which let you overwrite your BIOS _manually_

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-07 15:40:54 +02:00
Ben Dooks
fb8d82a865 [MTD] NAND s3c2410: Add missing NULL pointer check
Fix OOPs if there was no platform set information passed

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-06 22:26:05 +02:00
Artem B. Bityuckiy
b3539219c9 Merge with rsync://fileserver/linux
Update to 2.6.12-rc3
2005-07-06 19:40:38 +02:00
Todd Poynor
10c96f2ec3 [MTD] NOR flash map driver for TI OMAP boards.
From: David Brownell, Jian Zhang <jzhang@ti.com>, Tony Lindgren
<tony@atomide.com> and others.

Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-06 12:25:04 +02:00
Nico Pitre
cbec19aeb3 [MTD] Add mapping driver for Intel PXA27x Mainstone board flash.
From: Nicolas Pitre <nico@cam.org>
Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-06 12:22:16 +02:00
Thomas Gleixner
ba9fb37ba0 [MTD] NAND: Remove unmaintained tx49xx board drivers
The drivers are unmaintained since long and reference include files
which are not available in the kernel. Original author is not longer
responsible and no new maintainer showed up within 3 month.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-06 11:40:12 +02:00
Thomas Gleixner
0c80336e5e [MTD] NAND: sharpsl.c set correct file permissions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-06 11:28:27 +02:00
Thomas Gleixner
f8eb321bee [MTD] cfi_cmdset_0002: Remove bogus include
Including asm/hardware.h has to be done in linux/mtd/xip.h. Otherwise
it breaks allyes compiles.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-05 01:03:06 +02:00
Coywolf Qi Hunt
3a7a882420 [MTD] mtdchar: Return the real error code when create_class() failed
Signed-off-by: Coywolf Qi Hunt <coywolf@sosdg.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-04 20:49:54 +02:00
Todd Poynor
9bc7b38731 [MTD] mtdchar.c: Replace DEVFS by udev
Switch from DEVFS to udev for dynamic creation of device nodes for mtd
char devices.

Creates a new LDM class "mtd" with writeable and read-only devices
registered for each mtdchar device.

From: Paolo Galtieri <pgaltieri@mvista.com>
Signed-off-by: Todd Poynor <tpoynor@mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-07-01 11:05:46 +02:00
Catalin Marinas
747aead34d [PATCH] ARM: 2780/1: AFS partition length calculation fix
Patch from Catalin Marinas

This patch calculates the AFS partition length by expanding the image
length information to the nearest erase block boundary. This
eliminates the problems with JFFS2 erasing the footer.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-06-30 23:01:09 +01:00
Thomas Gleixner
bd7bcf52da [MTD] NAND: Add ST chip IDs.
From: Domenico DI TULLIO <domenico.di-tullio@st.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-06-29 14:36:53 +02:00
?
af2c80e926 [MTD] ms02-nv: Fix 64bit operation
Replace KSEG1ADDR() with CKSEG1ADDR() as the former does not work for
64-bit configurations anymore.

Signed-off-by: Maciej W. Rozycki <macro@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-06-29 14:34:01 +02:00
Ben Dooks
a4f957f16d [MTD] NAND: s3c24xx updates
Fix error in timing generation, Tacls is only in the range 0..3

Add proper support for the s3c2440 NAND controller, which has now
been tested on several s3c2440 implementations.

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2005-06-29 14:30:47 +02:00