Re: ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info

2 messages, 2 authors, 2011-06-09 · open the first message on its own page

Re: ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2011-06-08 18:53:26

On Tue, May 24, 2011 at 02:59, Linux Kernel Mailing List
[off-list ref] wrote:
? ?ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info

? ?The set_vpp() method provided by physmap passes a map_info back to
? ?the platform code, which has little relevance as far as the platform
? ?is concerned (this parameter is completely unused).

? ?Instead, pass the platform_device, which can be used in the pismo
? ?driver to retrieve some important information in a nicer way, instead
? ?of the hack that was in place.

? ?The empty set_vpp function in board-at572d940hf_ek.c is left untouched,
? ?as the board/SoC is scheduled for removal.

? ?Cc: Andrew Victor [off-list ref]
? ?Cc: Nicolas Ferre [off-list ref]
? ?Acked-by: Jean-Christophe PLAGNIOL-VILLARD [off-list ref]
? ?Cc: Philipp Zabel [off-list ref]
? ?Cc: Eric Miao [off-list ref]
? ?Cc: Ben Dooks [off-list ref]
? ?Acked-by: Artem Bityutskiy [off-list ref]
? ?Acked-by: David Woodhouse [off-list ref]
? ?Signed-off-by: Marc Zyngier [off-list ref]
? ?Signed-off-by: Russell King [off-list ref]
quoted hunk
--- a/include/linux/mtd/physmap.h
+++ b/include/linux/mtd/physmap.h
@@ -24,7 +24,7 @@ struct physmap_flash_data {
? ? ? ?unsigned int ? ? ? ? ? ?width;
? ? ? ?int ? ? ? ? ? ? ? ? ? ? (*init)(struct platform_device *);
? ? ? ?void ? ? ? ? ? ? ? ? ? ?(*exit)(struct platform_device *);
- ? ? ? void ? ? ? ? ? ? ? ? ? ?(*set_vpp)(struct map_info *, int);
+ ? ? ? void ? ? ? ? ? ? ? ? ? ?(*set_vpp)(struct platform_device *, int);
? ? ? ?unsigned int ? ? ? ? ? ?nr_parts;
? ? ? ?unsigned int ? ? ? ? ? ?pfow_base;
? ? ? ?char ? ? ? ? ? ? ? ? ? ?*probe_type;
You forgot to update the set_vpp parameter of physmap_configure():

void physmap_configure(unsigned long addr, unsigned long size,
                int bankwidth, void (*set_vpp)(struct map_info *, int) );

causing

drivers/mtd/maps/physmap.c: In function ?physmap_configure?:
drivers/mtd/maps/physmap.c:255: warning: assignment from incompatible
pointer type

Interestingly, there are no (in-tree) users of physmap_configure()?

Gr{oetje,eeting}s,

? ? ? ? ? ? ? ? ? ? ? ? Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?? -- Linus Torvalds

Re: ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info

From: Marc Zyngier <hidden>
Date: 2011-06-09 08:01:31

On 08/06/11 19:53, Geert Uytterhoeven wrote:

Hi Geert,
On Tue, May 24, 2011 at 02:59, Linux Kernel Mailing List
[off-list ref] wrote:
quoted
   ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info

   The set_vpp() method provided by physmap passes a map_info back to
   the platform code, which has little relevance as far as the platform
   is concerned (this parameter is completely unused).

   Instead, pass the platform_device, which can be used in the pismo
   driver to retrieve some important information in a nicer way, instead
   of the hack that was in place.

   The empty set_vpp function in board-at572d940hf_ek.c is left untouched,
   as the board/SoC is scheduled for removal.

   Cc: Andrew Victor [off-list ref]
   Cc: Nicolas Ferre [off-list ref]
   Acked-by: Jean-Christophe PLAGNIOL-VILLARD [off-list ref]
   Cc: Philipp Zabel [off-list ref]
   Cc: Eric Miao [off-list ref]
   Cc: Ben Dooks [off-list ref]
   Acked-by: Artem Bityutskiy [off-list ref]
   Acked-by: David Woodhouse [off-list ref]
   Signed-off-by: Marc Zyngier [off-list ref]
   Signed-off-by: Russell King [off-list ref]
quoted
--- a/include/linux/mtd/physmap.h
+++ b/include/linux/mtd/physmap.h
@@ -24,7 +24,7 @@ struct physmap_flash_data {
       unsigned int            width;
       int                     (*init)(struct platform_device *);
       void                    (*exit)(struct platform_device *);
-       void                    (*set_vpp)(struct map_info *, int);
+       void                    (*set_vpp)(struct platform_device *, int);
       unsigned int            nr_parts;
       unsigned int            pfow_base;
       char                    *probe_type;
You forgot to update the set_vpp parameter of physmap_configure():

void physmap_configure(unsigned long addr, unsigned long size,
                int bankwidth, void (*set_vpp)(struct map_info *, int) );

causing

drivers/mtd/maps/physmap.c: In function ?physmap_configure?:
drivers/mtd/maps/physmap.c:255: warning: assignment from incompatible
pointer type

Interestingly, there are no (in-tree) users of physmap_configure()?
It's already been removed in -next:

commit 3b1b2b07088ed190090f0b1973416b6c8e49a2a1
Author: Dmitry Eremin-Solenikov [off-list ref]
Date:   Thu Jun 2 18:51:14 2011 +0400

    mtd: drop physmap_configure

    physmap_configure() and physmap_set_partitions() have no users in
kernel.
    Out of kernel users should have been converted to regular platform
device
    long ago. Drop support for this obsolete API.

    Signed-off-by: Dmitry Eremin-Solenikov [off-list ref]
    Signed-off-by: Artem Bityutskiy [off-list ref]

Maybe this should be merged to -rc3.

Thanks for the heads up.

	M.
-- 
Jazz is not dead. It just smells funny...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help