Thread (16 messages) 16 messages, 6 authors, 2018-07-30

[PATCH v2 2/2] spi: add SPI controller driver for UniPhier SoC

From: Keiji Hayashibara <hidden>
Date: 2018-07-30 05:30:33
Also in: linux-devicetree, linux-spi, lkml

Hello Trent and Andy,
From: Trent Piepho [mailto:tpiepho at impinj.com]
Sent: Friday, July 27, 2018 2:02 AM
To: andy.shevchenko at gmail.com; Hayashibara, Keiji/?? ?? <redacted>
Subject: Re: [PATCH v2 2/2] spi: add SPI controller driver for UniPhier SoC

On Thu, 2018-07-26 at 11:46 +0300, Andy Shevchenko wrote:
quoted
quoted
+
+       /*
+        * the supported rates are even numbers from 4 to 254. (4,6,8...254)
+        * round up as we look for equal or less speed
+        */
+       ckrat = DIV_ROUND_UP(clk_get_rate(priv->clk), speed);
+       ckrat = roundup(ckrat, 2);
ckrat += ckrat & 1;
Either way, the compiler produces the same code:

 add r0, r0, #1 
 bic r0, r0, #1

I.e., ckrat = (ckrat + 1) & ~1, one "add" and one "and".

Might as well use the macro so it's clear. There is also round_up(x,y), which I believe is intended to be used
only with power of 2 values of y.
I confirmed round_up() macro.
This macro is optimized to power of 2 argument,
and it matches to this case and clear.

I will replace to round_up() macro.

Thank you.

-----------------
Best Regards,
Keiji Hayashibara
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help