Create function vt6655_mac_en_dis_bits_u32_reg with three parameters to cover functionality of four macros. Signed-off-by: Philipp Hortmann <philipp.g.hortmann@xxxxxxxxx> --- 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