Subject: Re: [PATCH 2/4][SSB] EXTIF serial port initialization

From: Michael Buesch <[email-masked]>
Date: Mon, 6 Aug 2007 10:51:05 +0200

On Monday 06 August 2007, Arnaldo Carvalho de Melo wrote:
> Em Mon, Aug 06, 2007 at 01:19:59AM +0200, Aurelien Jarno escreveu:
> > The patch below against 2.6.23-rc1-mm2 implements EXTIF serial
> > initialization, currently marked as TODO.
> > 
> > It originally comes from the OpenWrt patches.
> 
> Comments below
>  
> > Cc: Felix Fietkau <[email-masked]>
> > Signed-off-by: Aurelien Jarno <[email-masked]>
> > 
> > --- a/drivers/ssb/driver_mipscore.c
> > +++ b/drivers/ssb/driver_mipscore.c
> > @@ -128,51 +128,52 @@
> >  	ssb_write32(mdev, SSB_IPSFLAG, irqflag);
> >  }
> >  
> > -/* XXX: leave here or move into separate extif driver? */
> > -static int ssb_extif_serial_init(struct ssb_device *dev, struct ssb_serial_ports *ports)
> > +static inline bool serial_exists(u8 *regs)
> >  {
> > +	u8 save_mcr, msr = 0;
> 
> Why declare save_mcr here...
> 
> >  
> > +	if (regs) {
> 
> if it is just used here?

There is almost never an advantage when declaring variables at the beginning
of a statement block instead of the function start.
The only thing you "gain" is that you don't easily see anymore how much
stackspace is used by the funtions.
So I really suggest to declare variables at the beginning of functions,
except for some rare circumstances maybe. Which is not the case here.

But anyway. Just saw this: Drop the inline statement. There is no
need to inline this function.