Messages in this thread | | | From | Trent Piepho <> | Subject | Re: [PATCH v2 2/2] spi: add SPI controller driver for UniPhier SoC | Date | Thu, 26 Jul 2018 17:01:36 +0000 |
| |
On Thu, 2018-07-26 at 11:46 +0300, Andy Shevchenko wrote: > > + > > + /* > > + * 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.
| |