[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPDyKFo9xZ-z6eM0zG2A+=Bwj0EVyGxm=m28Lh9cHPSB+8qq1w@mail.gmail.com>
Date: Wed, 14 May 2014 12:17:15 +0200
From: Ulf Hansson <ulf.hansson@...aro.org>
To: George Spelvin <linux@...izon.com>
Cc: Pavel Machek <pavel@....cz>, arik@...ery.com,
david.gnedt@...izone.at, eliad@...ery.com, jan.nikitenko@...il.com,
Laurent Pinchart <laurent.pinchart+renesas@...asonboard.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
linux-mmc <linux-mmc@...r.kernel.org>,
"linux-spi@...r.kernel.org" <linux-spi@...r.kernel.org>,
linux-wireless@...r.kernel.org,
John Linville <linville@...driver.com>, luca@...lho.fi,
Tony Lindgren <tony@...mide.com>
Subject: Re: [PATCH 2/3] drivers/mmc/host/mmc_spi.c: Use get/put_unaligned_be32
On 11 May 2014 12:05, George Spelvin <linux@...izon.com> wrote:
> Very minor source and binary size reduction.
>
> Signed-off-by: George Spelvin <linux@...izon.com>
> ---
> I spotted this while making the previous crc7 change.
>
> This looks simple enough, but I don't actually have one of these devices to test.
> At least one other careful desk-check is solicited.
Acked-by: Ulf Hansson <ulf.hansson@...aro.org>
Feel free to take this through the wireless tree as well. I assumes
it's that same patchset as the other spi related fixes?
Kind regards
Ulf Hansson
>
> drivers/mmc/host/mmc_spi.c | 18 ++++++------------
> 1 file changed, 6 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c
> index 338e2202ea..cc8d4a6099 100644
> --- a/drivers/mmc/host/mmc_spi.c
> +++ b/drivers/mmc/host/mmc_spi.c
> @@ -448,7 +448,6 @@ mmc_spi_command_send(struct mmc_spi_host *host,
> {
> struct scratch *data = host->data;
> u8 *cp = data->status;
> - u32 arg = cmd->arg;
> int status;
> struct spi_transfer *t;
>
> @@ -465,14 +464,12 @@ mmc_spi_command_send(struct mmc_spi_host *host,
> * We init the whole buffer to all-ones, which is what we need
> * to write while we're reading (later) response data.
> */
> - memset(cp++, 0xff, sizeof(data->status));
> + memset(cp, 0xff, sizeof(data->status));
>
> - *cp++ = 0x40 | cmd->opcode;
> - *cp++ = (u8)(arg >> 24);
> - *cp++ = (u8)(arg >> 16);
> - *cp++ = (u8)(arg >> 8);
> - *cp++ = (u8)arg;
> - *cp++ = crc7_be(0, &data->status[1], 5) | 0x01;
> + cp[1] = 0x40 | cmd->opcode;
> + put_unaligned_be32(cmd->arg, cp+2);
> + cp[6] = crc7_be(0, cp+1, 5) | 0x01;
> + cp += 7;
>
> /* Then, read up to 13 bytes (while writing all-ones):
> * - N(CR) (== 1..8) bytes of all-ones
> @@ -711,10 +708,7 @@ mmc_spi_writeblock(struct mmc_spi_host *host, struct spi_transfer *t,
> * so we have to cope with this situation and check the response
> * bit-by-bit. Arggh!!!
> */
> - pattern = scratch->status[0] << 24;
> - pattern |= scratch->status[1] << 16;
> - pattern |= scratch->status[2] << 8;
> - pattern |= scratch->status[3];
> + pattern = get_unaligned_be32(scratch->status);
>
> /* First 3 bit of pattern are undefined */
> pattern |= 0xE0000000;
> --
> 1.9.2
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists