MMC: logical-bitwise and confusion in tifm_sd_transfer_data()? - Kernel

This is a discussion on MMC: logical-bitwise and confusion in tifm_sd_transfer_data()? - Kernel ; from drivers/mmc/host/tifm_sd.c:183: if ((r_data->flags & MMC_DATA_WRITE) && DATA_CARRY) shouldn't this be bit-wise &? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the ...

+ Reply to Thread
Results 1 to 5 of 5

Thread: MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?

  1. MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?

    from drivers/mmc/host/tifm_sd.c:183:

    if ((r_data->flags & MMC_DATA_WRITE)
    && DATA_CARRY)

    shouldn't this be bit-wise &?
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  2. Re: MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?

    On Sun, 09 Mar 2008 21:31:08 +0100
    Roel Kluin <12o3l@tiscali.nl> wrote:

    > from drivers/mmc/host/tifm_sd.c:183:
    >
    > if ((r_data->flags & MMC_DATA_WRITE)
    > && DATA_CARRY)
    >
    > shouldn't this be bit-wise &?


    First off, I'm not the maintainer of that driver, Alex Dubov is.

    Second, the code seems broken, but not in the way you suggest. It should probably have been:

    if ((r_data->flags & MMC_DATA_WRITE)
    && (host->cmd_flags & DATA_CARRY))

    Alex, could you have a look?

    Rgds
    --
    -- Pierre Ossman

    Linux kernel, MMC maintainer http://www.kernel.org
    PulseAudio, core developer http://pulseaudio.org
    rdesktop, core developer http://www.rdesktop.org
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  3. Re: MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?


    --- Pierre Ossman wrote:

    > On Sun, 09 Mar 2008 21:31:08 +0100
    > Roel Kluin <12o3l@tiscali.nl> wrote:
    >
    > > from drivers/mmc/host/tifm_sd.c:183:
    > >
    > > if ((r_data->flags & MMC_DATA_WRITE)
    > > && DATA_CARRY)
    > >
    > > shouldn't this be bit-wise &?

    >
    > First off, I'm not the maintainer of that driver, Alex Dubov is.
    >
    > Second, the code seems broken, but not in the way you suggest. It should probably have been:
    >
    > if ((r_data->flags & MMC_DATA_WRITE)
    > && (host->cmd_flags & DATA_CARRY))
    >


    Yes, this is the intended meaning. Can you fix it yourself or should I send a separate patch?



    __________________________________________________ __________________________________
    Looking for last minute shopping deals?
    Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsea...egory=shopping
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  4. [PATCH] MMC: DATA_CARRY is not boolean in tifm_sd_transfer_data() (was: MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?)

    Alex Dubov wrote:
    > --- Pierre Ossman wrote:
    >
    >> On Sun, 09 Mar 2008 21:31:08 +0100
    >> Roel Kluin <12o3l@tiscali.nl> wrote:
    >>
    >>> from drivers/mmc/host/tifm_sd.c:183:
    >>>
    >>> if ((r_data->flags & MMC_DATA_WRITE)
    >>> && DATA_CARRY)
    >>>
    >>> shouldn't this be bit-wise &?

    >> First off, I'm not the maintainer of that driver, Alex Dubov is.
    >>
    >> Second, the code seems broken, but not in the way you suggest. It should probably have been:
    >>
    >> if ((r_data->flags & MMC_DATA_WRITE)
    >> && (host->cmd_flags & DATA_CARRY))
    >>

    >
    > Yes, this is the intended meaning. Can you fix it yourself or should I send a separate patch?


    Thanks,
    ---
    DATA_CARRY is not boolean

    Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
    ---
    diff --git a/drivers/mmc/host/tifm_sd.c b/drivers/mmc/host/tifm_sd.c
    index 20d5c7b..1c14a18 100644
    --- a/drivers/mmc/host/tifm_sd.c
    +++ b/drivers/mmc/host/tifm_sd.c
    @@ -180,7 +180,7 @@ static void tifm_sd_transfer_data(struct tifm_sd *host)
    host->sg_pos++;
    if (host->sg_pos == host->sg_len) {
    if ((r_data->flags & MMC_DATA_WRITE)
    - && DATA_CARRY)
    + && (host->cmd_flags & DATA_CARRY))
    writel(host->bounce_buf_data[0],
    host->dev->addr
    + SOCK_MMCSD_DATA);
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  5. Re: [PATCH] MMC: DATA_CARRY is not boolean in tifm_sd_transfer_data() (was: MMC: logical-bitwise and confusion in tifm_sd_transfer_data()?)

    On Tue, 11 Mar 2008 09:00:41 +0100
    Roel Kluin <12o3l@tiscali.nl> wrote:

    > Alex Dubov wrote:
    > >
    > > Yes, this is the intended meaning. Can you fix it yourself or should I send a separate patch?

    >
    > Thanks,
    > ---
    > DATA_CARRY is not boolean
    >
    > Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
    > ---


    Sorry about the delay. I've sent this off to Linus now.

    Rgds
    --
    -- Pierre Ossman

    Linux kernel, MMC maintainer http://www.kernel.org
    PulseAudio, core developer http://pulseaudio.org
    rdesktop, core developer http://www.rdesktop.org
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread