lkml.org 
[lkml]   [2012]   [Aug]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH 0/5] mfd: replace IORESOURCE_IO by IORESOURCE_MEM
    On Tue, Aug 07, 2012 at 02:28:15PM +0000, Arnd Bergmann wrote:
    > On Tuesday 07 August 2012, Mark Brown wrote:
    > > On Tue, Aug 07, 2012 at 01:11:57PM +0100, Russell King wrote:
    > > > index 589e0e7..bfee885 100644
    > > > --- a/include/linux/ioport.h
    > > > +++ b/include/linux/ioport.h
    > > > @@ -31,6 +31,7 @@ struct resource {
    > > > #define IORESOURCE_TYPE_BITS 0x00001f00 /* Resource type */
    > > > #define IORESOURCE_IO 0x00000100
    > > > #define IORESOURCE_MEM 0x00000200
    > > > +#define IORESOURCE_REG 0x00000300 /* Register offsets */
    > > > #define IORESOURCE_IRQ 0x00000400
    > > > #define IORESOURCE_DMA 0x00000800
    > > > #define IORESOURCE_BUS 0x00001000
    > >
    > > As I've said before I'm fine with the driver changes. I do feel that it
    > > would be better to also renumber all the existing resource types while
    > > we're at it in order to make it clear that these are just plain numbers,
    > > that's the reason nobody wrote this patch previously. This will avoid
    > > any future confusion.
    >
    > This gets into a lot more tricky territory: We have a bunch of drivers
    > doing their own bitmask operations on these, like drivers/video/offb.c
    > testing
    >
    > if ((flags & (IORESOURCE_IO | IORESOURCE_MEM)) == 0)
    > return NULL;
    >
    > or drivers/scsi/gdth.c doing
    >
    > if (!(base0 & IORESOURCE_MEM) ||
    > !(base2 & IORESOURCE_MEM) ||
    > !(base1 & IORESOURCE_IO))
    > return -ENODEV;
    >
    > Now I've looked at the three drivers with the immediate problem of
    > IORESOURCE_IO abuse (max8925, wm831x, 88pm860x) and none of them are
    > doing such bitmask operations, so I'm reasonably sure we are fine
    > for those drivers. I also agree that renumbering the resources in a
    > way that makes it impossible to use bitmasks is a good idea, but
    > that would actually be pretty invasive because then we have to rewrite
    > all the functions that currently do it.

    Don't feed the troll :)

    None of the code you list above would be affected in any way by the
    changes I propose; we're not changing the existing values, and these
    drivers would not see the new IORESOURCE_REG type.

    That's not to say that they wouldn't need fixing (they do), but they
    are not a reason to reject my proposal, even for -stable trees.

    --
    Russell King
    Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
    maintainer of:

    \
     
     \ /
      Last update: 2012-08-07 17:22    [W:2.732 / U:0.384 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site