Search Linux Wireless

Re: [PATCH 05/23] bcma: add set/mask macros for 16-bit register access

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2011/12/9 Franky Lin <frankyl@xxxxxxxxxxxx>:
> From: Arend van Spriel <arend@xxxxxxxxxxxx>
>
> The BCMA header only had definitions for 32-bit register access. Used
> those as a template for the 16-bit flavour. Also changed them to inline
> functions to be on the safe side. As offset parameter is used twice there
> would be a problem when used like this: bcma_set32(core, offset++, val);
>
> Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
> Reviewed-by: Alwin Beukers <alwin@xxxxxxxxxxxx>
> Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
> Signed-off-by: Franky Lin <frankyl@xxxxxxxxxxxx>
> ---
>  include/linux/bcma/bcma.h |   32 ++++++++++++++++++++++++++------
>  1 files changed, 26 insertions(+), 6 deletions(-)
>
> diff --git a/include/linux/bcma/bcma.h b/include/linux/bcma/bcma.h
> index 4d4b59d..de6057f 100644
> --- a/include/linux/bcma/bcma.h
> +++ b/include/linux/bcma/bcma.h
> @@ -254,12 +254,32 @@ void bcma_awrite32(struct bcma_device *core, u16 offset, u32 value)
>        core->bus->ops->awrite32(core, offset, value);
>  }
>
> -#define bcma_mask32(cc, offset, mask) \
> -       bcma_write32(cc, offset, bcma_read32(cc, offset) & (mask))
> -#define bcma_set32(cc, offset, set) \
> -       bcma_write32(cc, offset, bcma_read32(cc, offset) | (set))
> -#define bcma_maskset32(cc, offset, mask, set) \
> -       bcma_write32(cc, offset, (bcma_read32(cc, offset) & (mask)) | (set))
> +static inline void bcma_mask32(struct bcma_device *cc, u16 offset, u32 mask)
> +{
> +       bcma_write32(cc, offset, bcma_read32(cc, offset) & mask);
> +}
> +static inline void bcma_set32(struct bcma_device *cc, u16 offset, u32 set)
> +{
> +       bcma_write32(cc, offset, bcma_read32(cc, offset) | set);
> +}
> +static inline void bcma_maskset32(struct bcma_device *cc,
> +                                 u16 offset, u32 mask, u32 set)
> +{
> +       bcma_write32(cc, offset, (bcma_read32(cc, offset) & mask) | set);
> +}

What is an advantage of static inline over define?

-- 
Rafał
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux