2022-07-30 19:22:56

by Philipp Hortmann

[permalink] [raw]
Subject: [PATCH 2/6] staging: vt6655: Create one function for four macros

Create function vt6655_mac_en_dis_bits_u32_reg with three parameters to
cover functionality of four macros.

Signed-off-by: Philipp Hortmann <[email protected]>
---
drivers/staging/vt6655/device_main.c | 12 ++++++++++--
drivers/staging/vt6655/mac.h | 3 +++
2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/vt6655/device_main.c b/drivers/staging/vt6655/device_main.c
index 3565aa53f007..5f64204dc312 100644
--- a/drivers/staging/vt6655/device_main.c
+++ b/drivers/staging/vt6655/device_main.c
@@ -216,15 +216,23 @@ static void vt6655_mac_dma_ctl(void __iomem *iobase, u8 reg_index)
iowrite32(DMACTL_RUN, iobase + reg_index);
}

-static void MACvEnableProtectMD(void __iomem *iobase)
+static void vt6655_mac_en_dis_bits_u32_reg(void __iomem *iobase, bool en_not_dis, u32 bit_mask)
{
u32 reg_value;

reg_value = ioread32(iobase + MAC_REG_ENCFG);
- reg_value = reg_value | ENCFG_PROTECTMD;
+ if (en_not_dis)
+ reg_value = reg_value | bit_mask;
+ else
+ reg_value = reg_value & ~bit_mask;
iowrite32(reg_value, iobase + MAC_REG_ENCFG);
}

+static void MACvEnableProtectMD(void __iomem *iobase)
+{
+ vt6655_mac_en_dis_bits_u32_reg(iobase, ENABLE, ENCFG_PROTECTMD);
+}
+
/*
* Initialisation of MAC & BBP registers
*/
diff --git a/drivers/staging/vt6655/mac.h b/drivers/staging/vt6655/mac.h
index 84d203c56b1f..31e75df5f02f 100644
--- a/drivers/staging/vt6655/mac.h
+++ b/drivers/staging/vt6655/mac.h
@@ -21,6 +21,9 @@
#include "device.h"

/*--------------------- Export Definitions -------------------------*/
+#define ENABLE 1
+#define DISABLE 0
+
/* Registers in the MAC */
#define MAC_MAX_CONTEXT_SIZE_PAGE0 256
#define MAC_MAX_CONTEXT_SIZE_PAGE1 128
--
2.37.1



2022-08-01 11:28:20

by Dan Carpenter

[permalink] [raw]
Subject: Re: [PATCH 2/6] staging: vt6655: Create one function for four macros

On Sat, Jul 30, 2022 at 09:20:30PM +0200, Philipp Hortmann wrote:
> Create function vt6655_mac_en_dis_bits_u32_reg with three parameters to
> cover functionality of four macros.
>
> Signed-off-by: Philipp Hortmann <[email protected]>
> ---
> drivers/staging/vt6655/device_main.c | 12 ++++++++++--
> drivers/staging/vt6655/mac.h | 3 +++
> 2 files changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/vt6655/device_main.c b/drivers/staging/vt6655/device_main.c
> index 3565aa53f007..5f64204dc312 100644
> --- a/drivers/staging/vt6655/device_main.c
> +++ b/drivers/staging/vt6655/device_main.c
> @@ -216,15 +216,23 @@ static void vt6655_mac_dma_ctl(void __iomem *iobase, u8 reg_index)
> iowrite32(DMACTL_RUN, iobase + reg_index);
> }
>
> -static void MACvEnableProtectMD(void __iomem *iobase)
> +static void vt6655_mac_en_dis_bits_u32_reg(void __iomem *iobase, bool en_not_dis, u32 bit_mask)

Never have "not" in a variable name. Just make this two functions.

static void vt6655_mac_set_bits(void __iomem *iobase, u32 mask)
static void vt6655_mac_clear_bits(void __iomem *iobase, u32 mask)

Rename "bit_mask" to "mask" or "bits" because bit masks are the only type
of mask that there is in the kernel.

regards,
dan carpenter