Boris BREZILLON
4883090bed
cris: nand: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Patch all drivers to make use
of this mtd instance instead of using the instance embedded in their
private struct or dynamically allocated.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 12:44:57 -08:00
Boris BREZILLON
ba4ed8605c
staging: mt29f_spinand: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device, use it instead of allocating
a new one.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 12:44:14 -08:00
Brian Norris
2d3743944a
mtd: nand: docg4: simplify error case
...
Other refactorings have left the 'fail' label much simpler, so it
shouldn't have to handle the failed allocation case.
This also fixes a -Wshadow warning.
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com >
2015-12-18 12:43:00 -08:00
Boris BREZILLON
7208b997b7
mtd: nand: s3c2410: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 11:27:03 -08:00
Boris BREZILLON
3eb064e4b0
mtd: nand: update the documentation to reflect framework changes
...
The MTD device is now directly embedded in the nand_chip struct. Update the
mtdnand documentation to mention this aspect and fix the different
examples.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 11:26:01 -08:00
Boris BREZILLON
960823a226
mtd: nand: vf610: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
a3f5437788
mtd: nand: txx9ndfmc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
66c9595d49
mtd: nand: tmio: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
32e9f2d8dd
mtd: nand: sunxi: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
0324e6469a
mtd: nand: sharpsl: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
9c9eef89ec
mtd: nand: sh_flctl: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
de9f56f913
mtd: nand: r852: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
063294a36e
mtd: nand: pxa3xx: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
a0260d21ac
mtd: nand: plat: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
4e3b6d1701
mtd: nand: pasemi: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
53cd2681e0
mtd: nand: orion: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
432420c0fc
mtd: nand: omap2: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
396a9c437b
mtd: nand: nuc900: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
ca921b537a
mtd: nand: ndfc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
ed10f16558
mtd: nand: nandsim: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
a008deb165
mtd: nand: mxc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
5a9f23ffb6
mtd: nand: mpc5121: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
0faf8c39c0
mtd: nand: lpc32xx: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
d25cc7abb1
mtd: nand: jz4740: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
fa100163d3
mtd: nand: hisi504: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
2a690b25f6
mtd: nand: gpmi: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
dc2948ca66
mtd: nand: gpio: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
bdf3a55501
mtd: nand: fsmc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
478d51f021
mtd: nand: fsl_upm: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
5e9fb93dd3
mtd: nand: fsl_ifc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
18ba50c3c0
mtd: nand: fsl_elbc: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
5d07379681
mtd: nand: docg4: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
b0c423c7b6
mtd: nand: diskonchip: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
a5cfb4db89
mtd: nand: davinci: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:54:41 -08:00
Boris BREZILLON
2afd14f927
mtd: nand: cmx270: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
[Brian: dropped a defunct comment]
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:53:44 -08:00
Boris BREZILLON
8cd65d1a63
mtd: nand: cs553x: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:08 -08:00
Boris BREZILLON
e787dfd1be
mtd: nand: cafe: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:07 -08:00
Boris BREZILLON
f1c4c9992b
mtd: nand: brcm: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:07 -08:00
Boris BREZILLON
7085a3bee3
mtd: nand: bf5xx: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:06 -08:00
Boris BREZILLON
ff70f354a9
mtd: nand: au1550nd: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:05 -08:00
Boris BREZILLON
ac01efebb1
mtd: nand: atmel: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:05 -08:00
Boris BREZILLON
187d6ada2a
mtd: nand: ams-delta: use the mtd instance embedded in struct nand_chip
...
struct nand_chip now embeds an mtd device. Make use of this mtd instance
instead of allocating our own.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:04 -08:00
Boris BREZILLON
4578ea9a99
mtd: nand: omap2: create and use mtd_to_omap()
...
Define and use mtd_to_omap() instead of container_of();
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:03 -08:00
Boris BREZILLON
faee6c358b
mtd: nand: nuc900: create and use mtd_to_nuc900()
...
Create and use mtd_to_nuc900() instead of direct container_of() calls.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:02 -08:00
Boris BREZILLON
277af429fb
mtd: nand: fsmc: create and use mtd_to_fsmc()
...
Create and use mtd_to_fsmc() to avoid duplication of
container_of(mtd, struct fsmc_nand_data, mtd) calls.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:25:02 -08:00
Arnd Bergmann
ce7f28531f
mtd: omap_elm: print interrupt resource using %pr
...
When CONFIG_LPAE is set on ARM, resource_size_t is 64-bit wide
and we get a warning about an incorrect format string for printing
the interrupt number in elm_probe:
drivers/mtd/nand/omap_elm.c: In function 'elm_probe':
drivers/mtd/nand/omap_elm.c:417:23: warning: format '%i' expects argument of type 'int', but argument 3 has type 'resource_size_t {aka long long unsigned int}' [-Wformat=]
This patch avoids the type mismatch by printing the interrupt as
a resource using the %pr format string.
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-18 10:16:17 -08:00
Brian Norris
665d2c2848
mtd: bcm47xxnflash: really unregister NAND on device removal
...
The field bcma_nflash::mtd is never set to be non-zero anywhere, but we
test for it in the removal path. So the MTD is never unregistered.
Also, we should use nand_release(), not mtd_device_unregister().
Finally, we don't need to use the 'platdata' for stashing/retrieving our
*driver* data -- that's what *_{get,set}_drvdata() are for.
So, kill off bcm_nflash::mtd, and stash the struct bcm47xxnflash in
drvdata instead. Also move the forward declaration of mtd_info up a bit,
since struct bcma_sflash should be using it.
Caught while inspecting other changes being made to this driver. Compile
tested only.
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
Cc: "Rafał Miłecki" <zajec5@gmail.com >
Cc: linux-wireless@vger.kernel.org
Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com >
2015-12-14 10:11:09 -08:00
Boris BREZILLON
320092a05d
mtd: nand: denali: add missing nand_release() call in denali_remove()
...
Unregister the NAND device from the NAND subsystem when removing a denali
NAND controller, otherwise the MTD attached to the NAND device is still
exposed by the MTD layer, and accesses to this device will likely crash
the system.
Fixes: 2a0a288ec2 ("mtd: denali: split the generic driver and PCI layer")
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com >
Acked-by: Dinh Nguyen <dinguyen@opensource.altera.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-11 12:42:46 -08:00
Brian Norris
207f6582dd
mtd: brcmnand: defer to devm_ioremap_resource() for error checking
...
devm_ioremap_resource() does error checking on the 'res' argument, so
drop the error check in bcm6368_nand.c.
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
Tested-by: Simon Arlott <simon@fire.lp0.eu >
2015-12-10 13:08:08 -08:00
Simon Arlott
af3855dd19
mtd: brcmnand: Add support for the BCM6368
...
The BCM6368 has a NAND interrupt register with combined status and enable
registers.
As the BCM6328, BCM6362 and BCM6368 all use v2.1 controllers, the first
variant that will work with this driver is the BCM63268 using a v4.0
controller.
Set up the device by disabling and acking all interrupts, then handle
the CTRL_READY interrupt.
Signed-off-by: Simon Arlott <simon@fire.lp0.eu >
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com >
Signed-off-by: Brian Norris <computersforpeace@gmail.com >
2015-12-09 18:28:42 -08:00