* [PATCH v2] staging: comedi: amplc_pci224: Convert macro GAT_CONFIG to static inline function
@ 2017-03-12 15:33 simran singhal
2017-03-12 15:45 ` [Outreachy kernel] " Julia Lawall
0 siblings, 1 reply; 2+ messages in thread
From: simran singhal @ 2017-03-12 15:33 UTC (permalink / raw)
To: abbotti; +Cc: hsweeten, gregkh, devel, linux-kernel, outreachy-kernel
Convert macro GAT_CONFIG to static inline function as static inline
functions are preferred over macros. This change is possible since the
arguments at all call sites have the same type.
This was done using Coccinelle:
@r@
expression e;
@@
- #define GAT_CONFIG(chan, src) e
+ static inline unsigned int pci224_gat_config(unsigned int chan,
+ unsigned int src)
+{
+ return ((chan & 3) << 3) | (src & 7);
+}
@r1@
expression dev,reg,chan,src;
@@
-GAT_CONFIG(chan, src)
+pci224_gat_config(chan, src)
Also, the comment describing the macro has been removed manually.
Signed-off-by: simran singhal <singhalsimran0@gmail.com>
---
v2:
-Change the name of static inline function
-put some code from 2 line to 1 line
drivers/staging/comedi/drivers/amplc_pci224.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/comedi/drivers/amplc_pci224.c b/drivers/staging/comedi/drivers/amplc_pci224.c
index 2e6decf..07555cf 100644
--- a/drivers/staging/comedi/drivers/amplc_pci224.c
+++ b/drivers/staging/comedi/drivers/amplc_pci224.c
@@ -216,8 +216,12 @@
#define GAT_GND 1 /* GND (i.e. disabled) */
#define GAT_EXT 2 /* reserved (external gate input) */
#define GAT_NOUTNM2 3 /* inverted output of channel-2 modulo total */
-/* Macro to construct gate input configuration register value. */
-#define GAT_CONFIG(chan, src) ((((chan) & 3) << 3) | ((src) & 7))
+
+static inline unsigned int pci224_gat_config(unsigned int chan,
+ unsigned int src)
+{
+ return ((chan & 3) << 3) | (src & 7);
+}
/*
* Summary of CLK_OUTNM1 and GAT_NOUTNM2 connections for PCI224 and PCI234:
@@ -817,10 +821,10 @@ static void pci224_ao_start_pacer(struct comedi_device *dev,
* source.
*/
/* Make sure Z2-0 is gated on. */
- outb(GAT_CONFIG(0, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
+ outb(pci224_gat_config(0, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
/* Cascading with Z2-2. */
/* Make sure Z2-2 is gated on. */
- outb(GAT_CONFIG(2, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
+ outb(pci224_gat_config(2, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
/* Z2-2 needs 10 MHz clock. */
outb(CLK_CONFIG(2, CLK_10MHZ), devpriv->iobase1 + PCI224_ZCLK_SCE);
/* Z2-0 is clocked from Z2-2's output. */
--
2.7.4
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Outreachy kernel] [PATCH v2] staging: comedi: amplc_pci224: Convert macro GAT_CONFIG to static inline function
2017-03-12 15:33 [PATCH v2] staging: comedi: amplc_pci224: Convert macro GAT_CONFIG to static inline function simran singhal
@ 2017-03-12 15:45 ` Julia Lawall
0 siblings, 0 replies; 2+ messages in thread
From: Julia Lawall @ 2017-03-12 15:45 UTC (permalink / raw)
To: simran singhal
Cc: abbotti, hsweeten, gregkh, devel, linux-kernel, outreachy-kernel
On Sun, 12 Mar 2017, simran singhal wrote:
> Convert macro GAT_CONFIG to static inline function as static inline
> functions are preferred over macros. This change is possible since the
> arguments at all call sites have the same type.
>
> This was done using Coccinelle:
>
> @r@
> expression e;
> @@
> - #define GAT_CONFIG(chan, src) e
> + static inline unsigned int pci224_gat_config(unsigned int chan,
> + unsigned int src)
> +{
> + return ((chan & 3) << 3) | (src & 7);
> +}
It doesn't really make sense to do this part with Coccinelle. It is quite
a one-shot change.
You could say that the uses were updated with Coccinelle and give that
rule.
julia
>
> @r1@
> expression dev,reg,chan,src;
> @@
> -GAT_CONFIG(chan, src)
> +pci224_gat_config(chan, src)
>
> Also, the comment describing the macro has been removed manually.
>
> Signed-off-by: simran singhal <singhalsimran0@gmail.com>
> ---
>
> v2:
> -Change the name of static inline function
> -put some code from 2 line to 1 line
>
> drivers/staging/comedi/drivers/amplc_pci224.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/staging/comedi/drivers/amplc_pci224.c b/drivers/staging/comedi/drivers/amplc_pci224.c
> index 2e6decf..07555cf 100644
> --- a/drivers/staging/comedi/drivers/amplc_pci224.c
> +++ b/drivers/staging/comedi/drivers/amplc_pci224.c
> @@ -216,8 +216,12 @@
> #define GAT_GND 1 /* GND (i.e. disabled) */
> #define GAT_EXT 2 /* reserved (external gate input) */
> #define GAT_NOUTNM2 3 /* inverted output of channel-2 modulo total */
> -/* Macro to construct gate input configuration register value. */
> -#define GAT_CONFIG(chan, src) ((((chan) & 3) << 3) | ((src) & 7))
> +
> +static inline unsigned int pci224_gat_config(unsigned int chan,
> + unsigned int src)
> +{
> + return ((chan & 3) << 3) | (src & 7);
> +}
>
> /*
> * Summary of CLK_OUTNM1 and GAT_NOUTNM2 connections for PCI224 and PCI234:
> @@ -817,10 +821,10 @@ static void pci224_ao_start_pacer(struct comedi_device *dev,
> * source.
> */
> /* Make sure Z2-0 is gated on. */
> - outb(GAT_CONFIG(0, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
> + outb(pci224_gat_config(0, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
> /* Cascading with Z2-2. */
> /* Make sure Z2-2 is gated on. */
> - outb(GAT_CONFIG(2, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
> + outb(pci224_gat_config(2, GAT_VCC), devpriv->iobase1 + PCI224_ZGAT_SCE);
> /* Z2-2 needs 10 MHz clock. */
> outb(CLK_CONFIG(2, CLK_10MHZ), devpriv->iobase1 + PCI224_ZCLK_SCE);
> /* Z2-0 is clocked from Z2-2's output. */
> --
> 2.7.4
>
> --
> You received this message because you are subscribed to the Google Groups "outreachy-kernel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to outreachy-kernel+unsubscribe@googlegroups.com.
> To post to this group, send email to outreachy-kernel@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/outreachy-kernel/20170312153329.GA20729%40singhal-Inspiron-5558.
> For more options, visit https://groups.google.com/d/optout.
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-03-12 15:45 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-12 15:33 [PATCH v2] staging: comedi: amplc_pci224: Convert macro GAT_CONFIG to static inline function simran singhal
2017-03-12 15:45 ` [Outreachy kernel] " Julia Lawall
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®