Re: [PATCH] usb: musb: cppi_dma.c: use DIV_ROUND_UP macro in cppi_next_(r|t)x_segment()

From: Bin Liu
Date: Fri Mar 24 2017 - 14:28:17 EST


On Wed, Feb 15, 2017 at 11:12:36AM +0300, Ivan Safonov wrote:
> DIV_ROUND_UP is bit useful than series of "/" and "%" operations.
> Replace "/%" sequence with DIV_ROUND_UP macro.
>
> Signed-off-by: Ivan Safonov <insafonov@xxxxxxxxx>
> ---
> drivers/usb/musb/cppi_dma.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/usb/musb/cppi_dma.c b/drivers/usb/musb/cppi_dma.c
> index 1ae48e6..d376188 100644
> --- a/drivers/usb/musb/cppi_dma.c
> +++ b/drivers/usb/musb/cppi_dma.c
> @@ -582,9 +582,9 @@ cppi_next_tx_segment(struct musb *musb, struct cppi_channel *tx)
> maxpacket = length;
> n_bds = 1;
> } else {
> - n_bds = length / maxpacket;
> - if (!length || (length % maxpacket))
> - n_bds++;
> + n_bds = DIV_ROUND_UP(length, maxpacket);
> + if (length == 0)
> + n_bds = 1;

Is it a little better logically if

+ if (length)
+ n_bds = DIV_ROUND_UP(length, maxpacket);
+ else
+ n_bds = 1;

or

+ n_bds = length ? DIV_ROUND_UP(length, maxpacket) : 1;

Regards,
-Bin.