All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Aring <alex.aring@gmail.com>
To: Jean Sacren <sakiwit@gmail.com>
Cc: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>,
	Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>,
	linux-zigbee-devel@lists.sourceforge.net, netdev@vger.kernel.org
Subject: Re: [PATCH net-next] ieee802154: use helper function to get rid of redundancy
Date: Sun, 1 Jun 2014 18:39:28 +0200	[thread overview]
Message-ID: <20140601163926.GA1527@omega> (raw)
In-Reply-To: <20140601153546.GA20143@mail.gmail.com>

On Sun, Jun 01, 2014 at 09:35:47AM -0600, Jean Sacren wrote:
> From: Alexander Aring <alex.aring@gmail.com>
> Date: Sun, 01 Jun 2014 16:35:53 +0200
> >
> > Hi,
> > 
> > On Sun, Jun 01, 2014 at 08:23:17AM -0600, Jean Sacren wrote:
> > > From: Alexander Aring <alex.aring@gmail.com>
> > > Date: Sun, 01 Jun 2014 09:26:57 +0200
> > > 
> > > Hi Alex,
> > > 
> > > Thank you very much for the feedback.
> > > 
> > > > the at86rf230 driver supports several at86rf2xx chips. You split the
> > > > at86rf212_set_channel which is at86rf212 specific in two function which
> > > > are named at86rf230_foo.
> > > 
> > > I didn't "split" at86rf212_set_channel() in two functions. I spliced
> > > those two sections of code and made at86rf212_set_channel() far
> > > succinct and easy to read.
> > > 
> > 
> > yes, but this driver supports more than one chip and it's easier to read
> > if we have one channel_set function for each chip type. Note you also
> > named the specific channel_set function to a another at86rf230_foo
> > function which is at86rf212 specific only. Sorry that will confuse
> > all the people who will ever read this code.
> > 
> > There is a at86rf230_ops and at86rf212_ops struct. The channel_set
> > function it's much easier to have only one callback for each struct,
> > otherwise you have 4 different channel_set functions and nobody knows
> > for which at86rf2xx type that function is for.
> 
> You mean something like the following will be less confusing?

Yes that's less but there are issues and I don't see any reason why we
should do that.

> 
> diff --git a/drivers/net/ieee802154/at86rf230.c b/drivers/net/ieee802154/at86rf230.c
> index 4517b149ed07..06b494bacc44 100644
> --- a/drivers/net/ieee802154/at86rf230.c
> +++ b/drivers/net/ieee802154/at86rf230.c
> @@ -602,20 +602,21 @@ at86rf212_set_channel(struct at86rf230_local *lp, int page, int channel)
>  {
>  	int rc;
>  
> -	if (channel == 0)
> -		rc = at86rf230_write_subreg(lp, SR_SUB_MODE, 0);
> -	else
> -		rc = at86rf230_write_subreg(lp, SR_SUB_MODE, 1);
> +	if (channel)
> +		channel = 1;
> +
> +	rc = at86rf230_write_subreg(lp, SR_SUB_MODE, channel);
>  	if (rc < 0)
>  		return rc;
>  

First:

This will break the at86rf212_set_channel function. At the end of this
function we need the channel parameter and you overwrite it here.
At the end of this function stands:

"return at86rf230_write_subreg(lp, SR_CHANNEL, channel);"

Second:

The variable channel should be a new variable named sub_mode and initialized
to 0, this fixes the first issue.

But again, I don't see any reasons why we should change that. It's the
same thing like before.

- Alex

  reply	other threads:[~2014-06-01 16:39 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-31 23:39 [PATCH net-next] ieee802154: use helper function to get rid of redundancy Jean Sacren
2014-06-01  7:26 ` Alexander Aring
2014-06-01 14:23   ` Jean Sacren
     [not found]     ` <20140601142317.GA19754-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-01 14:35       ` Alexander Aring
2014-06-01 15:35         ` Jean Sacren
2014-06-01 16:39           ` Alexander Aring [this message]
2014-06-01 17:49             ` Jean Sacren
2014-06-01 17:53               ` Jean Sacren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140601163926.GA1527@omega \
    --to=alex.aring@gmail.com \
    --cc=alex.bluesman.smirnov@gmail.com \
    --cc=dbaryshkov@gmail.com \
    --cc=linux-zigbee-devel@lists.sourceforge.net \
    --cc=netdev@vger.kernel.org \
    --cc=sakiwit@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.