[U-Boot] [PATCH v4 08/24] spi: exynos_spi: Use BIT macro
Jagan Teki
jteki at openedev.com
Sat Oct 24 05:26:52 CEST 2015
On 23 October 2015 at 02:54, Tom Rini <trini at konsulko.com> wrote:
> On Fri, Oct 23, 2015 at 02:20:08AM +0530, Jagan Teki wrote:
>
>> Replace numerical bit shift with BIT macro in exynos_spi
>>
>> :%s/(1 << nr)/BIT(nr)/g
>> where nr = 0, 1, 2 .... 31
>>
>> Cc: Simon Glass <sjg at chromium.org>
>> Signed-off-by: Jagan Teki <jteki at openedev.com>
>> ---
>> drivers/spi/exynos_spi.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/spi/exynos_spi.c b/drivers/spi/exynos_spi.c
>> index 44948c3..ea3c51d 100644
>> --- a/drivers/spi/exynos_spi.c
>> +++ b/drivers/spi/exynos_spi.c
>> @@ -86,7 +86,7 @@ static void spi_request_bytes(struct exynos_spi *regs, int count, int step)
>> writel(0, ®s->swap_cfg);
>> }
>>
>> - assert(count && count < (1 << 16));
>> + assert(count && count < BIT(16));
>> setbits_le32(®s->ch_cfg, SPI_CH_RST);
>> clrbits_le32(®s->ch_cfg, SPI_CH_RST);
>>
>> @@ -345,7 +345,7 @@ static int exynos_spi_xfer(struct udevice *dev, unsigned int bitlen,
>> */
>> bytelen = bitlen / 8;
>> for (upto = 0; !ret && upto < bytelen; upto += todo) {
>> - todo = min(bytelen - upto, (1 << 16) - 4);
>> + todo = min(bytelen - upto, BIT(16) - 4);
>> ret = spi_rx_tx(priv, todo, &din, &dout, flags);
>> if (ret)
>> break;
>
> These look like (1 << 16) is a size, not a bit. Can you read the
> functions in context and confirm that it really is bit 16 here, rather
> than 4KiB (0x10000) ?
Ignoring this change this seems to be 65535 exynos SPI transfer limit,
not a bit.
--
Jagan | openedev
More information about the U-Boot
mailing list