提交 dea7503a 编写于 作者: T Tapasweni Pathak 提交者: Greg Kroah-Hartman

staging: octeon-usb: use DIV_ROUND_UP

The kernel.h macro DIV_ROUND_UP performs the computation (((n) + (d) - 1) /
(d)) but is perhaps more readable.

Coccinelle script used :

// <smpl>
@haskernel@
@@
@depends on haskernel@
expression n,d;
@@
(
- (n + d - 1) / d
+ DIV_ROUND_UP(n,d)
|
- (n + (d - 1)) / d
+ DIV_ROUND_UP(n,d)
)
@depends on haskernel@
expression n,d;
@@
- DIV_ROUND_UP((n),d)
+ DIV_ROUND_UP(n,d)
@depends on haskernel@
expression n,d;
@@
- DIV_ROUND_UP(n,(d))
+ DIV_ROUND_UP(n,d)
// </smpl>
Signed-off-by: NTapasweni Pathak <tapaswenipathak@gmail.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 ffceca8c
...@@ -743,7 +743,7 @@ static int cvmx_usb_initialize(struct cvmx_usb_state *usb, ...@@ -743,7 +743,7 @@ static int cvmx_usb_initialize(struct cvmx_usb_state *usb,
* such that USB is as close as possible to 125Mhz * such that USB is as close as possible to 125Mhz
*/ */
{ {
int divisor = (octeon_get_clock_rate()+125000000-1)/125000000; int divisor = DIV_ROUND_UP(octeon_get_clock_rate(), 125000000);
/* Lower than 4 doesn't seem to work properly */ /* Lower than 4 doesn't seem to work properly */
if (divisor < 4) if (divisor < 4)
divisor = 4; divisor = 4;
...@@ -1606,8 +1606,8 @@ static void __cvmx_usb_start_channel_control(struct cvmx_usb_state *usb, ...@@ -1606,8 +1606,8 @@ static void __cvmx_usb_start_channel_control(struct cvmx_usb_state *usb,
* Calculate the number of packets to transfer. If the length is zero * Calculate the number of packets to transfer. If the length is zero
* we still need to transfer one packet * we still need to transfer one packet
*/ */
packets_to_transfer = (bytes_to_transfer + pipe->max_packet - 1) / packets_to_transfer = DIV_ROUND_UP(bytes_to_transfer,
pipe->max_packet; pipe->max_packet);
if (packets_to_transfer == 0) if (packets_to_transfer == 0)
packets_to_transfer = 1; packets_to_transfer = 1;
else if ((packets_to_transfer > 1) && else if ((packets_to_transfer > 1) &&
...@@ -1852,8 +1852,7 @@ static void __cvmx_usb_start_channel(struct cvmx_usb_state *usb, ...@@ -1852,8 +1852,7 @@ static void __cvmx_usb_start_channel(struct cvmx_usb_state *usb,
* zero we still need to transfer one packet * zero we still need to transfer one packet
*/ */
packets_to_transfer = packets_to_transfer =
(bytes_to_transfer + pipe->max_packet - 1) / DIV_ROUND_UP(bytes_to_transfer, pipe->max_packet);
pipe->max_packet;
if (packets_to_transfer == 0) if (packets_to_transfer == 0)
packets_to_transfer = 1; packets_to_transfer = 1;
else if ((packets_to_transfer > 1) && else if ((packets_to_transfer > 1) &&
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册