2020-03-26 18:02:15

by Oscar Carter

[permalink] [raw]
Subject: [PATCH v2] staging: vt6656: Use DIV_ROUND_UP macro instead of specific code

Use DIV_ROUND_UP macro instead of specific code with the same purpose.
Also, remove the unused variables.

Signed-off-by: Oscar Carter <[email protected]>
---
Changelog v1 -> v2
- Rebase the original patch [1] against the staging-next branch of the greg's
staging.git tree.

[1] https://lore.kernel.org/lkml/[email protected]/

drivers/staging/vt6656/baseband.c | 21 ++++-----------------
1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/vt6656/baseband.c b/drivers/staging/vt6656/baseband.c
index 0b5729abcbcd..a19a563d8bcc 100644
--- a/drivers/staging/vt6656/baseband.c
+++ b/drivers/staging/vt6656/baseband.c
@@ -23,6 +23,7 @@
*/

#include <linux/bits.h>
+#include <linux/kernel.h>
#include "mac.h"
#include "baseband.h"
#include "rf.h"
@@ -133,7 +134,6 @@ unsigned int vnt_get_frame_time(u8 preamble_type, u8 pkt_type,
{
unsigned int frame_time;
unsigned int preamble;
- unsigned int tmp;
unsigned int rate = 0;

if (tx_rate > RATE_54M)
@@ -147,20 +147,11 @@ unsigned int vnt_get_frame_time(u8 preamble_type, u8 pkt_type,
else
preamble = 192;

- frame_time = (frame_length * 80) / rate;
- tmp = (frame_time * rate) / 80;
-
- if (frame_length != tmp)
- frame_time++;
-
+ frame_time = DIV_ROUND_UP(frame_length * 80, rate);
return preamble + frame_time;
}
- frame_time = (frame_length * 8 + 22) / rate;
- tmp = ((frame_time * rate) - 22) / 8;
-
- if (frame_length != tmp)
- frame_time++;

+ frame_time = DIV_ROUND_UP(frame_length * 8 + 22, rate);
frame_time = frame_time * 4;

if (pkt_type != PK_TYPE_11A)
@@ -214,11 +205,7 @@ void vnt_get_phy_field(struct vnt_private *priv, u32 frame_length,

break;
case RATE_5M:
- count = (bit_count * 10) / 55;
- tmp = (count * 55) / 10;
-
- if (tmp != bit_count)
- count++;
+ count = DIV_ROUND_UP(bit_count * 10, 55);

if (preamble_type == 1)
phy->signal = 0x0a;
--
2.20.1


2020-03-27 08:45:42

by Quentin Deslandes

[permalink] [raw]
Subject: Re: [PATCH v2] staging: vt6656: Use DIV_ROUND_UP macro instead of specific code

On 03/26/20 18:59:02, Oscar Carter wrote:
> Use DIV_ROUND_UP macro instead of specific code with the same purpose.
> Also, remove the unused variables.
>
> Signed-off-by: Oscar Carter <[email protected]>
> ---
> Changelog v1 -> v2
> - Rebase the original patch [1] against the staging-next branch of the greg's
> staging.git tree.
>
> [1] https://lore.kernel.org/lkml/[email protected]/
>
> drivers/staging/vt6656/baseband.c | 21 ++++-----------------
> 1 file changed, 4 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/staging/vt6656/baseband.c b/drivers/staging/vt6656/baseband.c
> index 0b5729abcbcd..a19a563d8bcc 100644
> --- a/drivers/staging/vt6656/baseband.c
> +++ b/drivers/staging/vt6656/baseband.c
> @@ -23,6 +23,7 @@
> */
>
> #include <linux/bits.h>
> +#include <linux/kernel.h>
> #include "mac.h"
> #include "baseband.h"
> #include "rf.h"
> @@ -133,7 +134,6 @@ unsigned int vnt_get_frame_time(u8 preamble_type, u8 pkt_type,
> {
> unsigned int frame_time;
> unsigned int preamble;
> - unsigned int tmp;
> unsigned int rate = 0;
>
> if (tx_rate > RATE_54M)
> @@ -147,20 +147,11 @@ unsigned int vnt_get_frame_time(u8 preamble_type, u8 pkt_type,
> else
> preamble = 192;
>
> - frame_time = (frame_length * 80) / rate;
> - tmp = (frame_time * rate) / 80;
> -
> - if (frame_length != tmp)
> - frame_time++;
> -
> + frame_time = DIV_ROUND_UP(frame_length * 80, rate);
> return preamble + frame_time;
> }
> - frame_time = (frame_length * 8 + 22) / rate;
> - tmp = ((frame_time * rate) - 22) / 8;
> -
> - if (frame_length != tmp)
> - frame_time++;
>
> + frame_time = DIV_ROUND_UP(frame_length * 8 + 22, rate);
> frame_time = frame_time * 4;
>
> if (pkt_type != PK_TYPE_11A)
> @@ -214,11 +205,7 @@ void vnt_get_phy_field(struct vnt_private *priv, u32 frame_length,
>
> break;
> case RATE_5M:
> - count = (bit_count * 10) / 55;
> - tmp = (count * 55) / 10;
> -
> - if (tmp != bit_count)
> - count++;
> + count = DIV_ROUND_UP(bit_count * 10, 55);
>
> if (preamble_type == 1)
> phy->signal = 0x0a;
> --
> 2.20.1

Reviewed-by: Quentin Deslandes <[email protected]>

Thanks,
Quentin