All of lore.kernel.org
 help / color / mirror / Atom feed
From: jhovold@gmail.com (Johan Hovold)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH v2] rtc: rtc-at91rm9200: manage IMR depending on revision
Date: Wed, 3 Apr 2013 15:46:43 +0200	[thread overview]
Message-ID: <20130403134643.GD27600@localhost> (raw)
In-Reply-To: <515C067B.6070503@atmel.com>

On Wed, Apr 03, 2013 at 12:37:47PM +0200, Nicolas Ferre wrote:
> On 04/03/2013 11:51 AM, Johan Hovold :
> > On Tue, Apr 02, 2013 at 06:36:06PM +0200, Nicolas Ferre wrote:

[...]

> >> I now use a different compatibility string to figure out what is the IP
> >> revision that has the "boggus IMR" error. I think this way to handle it
> >> is much simpler than the "config" structure one from Johan.
> > 
> > I wouldn't say it's much simpler. My solution is only more generic, but
> > could of course also be reduced to "set a flag if compatible matches
> > sam9x5".
> 
> The advantage is precisely to avoid the need for a "flag". Only function
> pointers that are changed in case of the compatible string matching.

Yeah, you could do it that way. The overhead is negligible in either
solution; mask updates are infrequent and the only difference when
retrieving the mask would be to first check the flag.

An advantage of using the config-struct would perhaps be that it is same
mechanism used in i2c-at91 and atmel_lcdfb (in the arm-soc tree) to deal
with SoC-quirks and is easily extended should need arise.

The diffs of both solutions are also of roughly the same size.

But I don't have any strong preference. You decide.

[...]

> >> diff --git a/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt b/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> index 2a3feab..9b87053 100644
> >> --- a/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> +++ b/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> @@ -1,7 +1,8 @@
> >>  Atmel AT91RM9200 Real Time Clock
> >>  
> >>  Required properties:
> >> -- compatible: should be: "atmel,at91rm9200-rtc"
> >> +- compatible: should be: "atmel,at91rm9200-rtc", "atmel,at91sam9x5-rtc" or
> >> +                         "atmel,at91sam9n12-rtc".
> > 
> > Also at91sam9g45 and at91sam9rl use this driver.
> 
> Yes, sure, I did not want to add every single user of the RTC...
> 
> > As seems to be the case
> > for other peripherals, I suggest we use "atmel,at91sam9x5-rtc" for
> > sam9x5 and "atmel,at91rm9200-rtc" for the other SoCs, that is, the least
> > (and first) common denominator.
> 
> ... I was just following the habit of naming the changes in peripheral
> revision by it first use in a SoC:
> at91rm9200-rtc: from rm9200 up to 9g45
> at91sam9x5-rtc: sam9x5 only (with IMR issue)
> at91sam9n12-rtc: fist SoC that corrects the IMR issue with a new IP
> revision, until now and sama5d3 SoC

Ah, ok.
 
> > Either way, there's not need to add at91sam9n12-rtc in this patch.
> > 
> >>  - reg: physical base address of the controller and length of memory mapped
> >>    region.
> >>  - interrupts: rtc alarm/event interrupt
> > 
> > I'll respond to this mail with a revert-patch, and an updated RFC-series
> > based on top of the DT-patch in Andrew's queue.

Thanks,
Johan

WARNING: multiple messages have this Message-ID (diff)
From: Johan Hovold <jhovold@gmail.com>
To: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Johan Hovold <jhovold@gmail.com>,
	linux-arm-kernel@lists.infradead.org, dgilbert@interlog.com,
	Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>,
	Ludovic Desroches <ludovic.desroches@atmel.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH v2] rtc: rtc-at91rm9200: manage IMR depending on revision
Date: Wed, 3 Apr 2013 15:46:43 +0200	[thread overview]
Message-ID: <20130403134643.GD27600@localhost> (raw)
In-Reply-To: <515C067B.6070503@atmel.com>

On Wed, Apr 03, 2013 at 12:37:47PM +0200, Nicolas Ferre wrote:
> On 04/03/2013 11:51 AM, Johan Hovold :
> > On Tue, Apr 02, 2013 at 06:36:06PM +0200, Nicolas Ferre wrote:

[...]

> >> I now use a different compatibility string to figure out what is the IP
> >> revision that has the "boggus IMR" error. I think this way to handle it
> >> is much simpler than the "config" structure one from Johan.
> > 
> > I wouldn't say it's much simpler. My solution is only more generic, but
> > could of course also be reduced to "set a flag if compatible matches
> > sam9x5".
> 
> The advantage is precisely to avoid the need for a "flag". Only function
> pointers that are changed in case of the compatible string matching.

Yeah, you could do it that way. The overhead is negligible in either
solution; mask updates are infrequent and the only difference when
retrieving the mask would be to first check the flag.

An advantage of using the config-struct would perhaps be that it is same
mechanism used in i2c-at91 and atmel_lcdfb (in the arm-soc tree) to deal
with SoC-quirks and is easily extended should need arise.

The diffs of both solutions are also of roughly the same size.

But I don't have any strong preference. You decide.

[...]

> >> diff --git a/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt b/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> index 2a3feab..9b87053 100644
> >> --- a/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> +++ b/Documentation/devicetree/bindings/rtc/atmel,at91rm9200-rtc.txt
> >> @@ -1,7 +1,8 @@
> >>  Atmel AT91RM9200 Real Time Clock
> >>  
> >>  Required properties:
> >> -- compatible: should be: "atmel,at91rm9200-rtc"
> >> +- compatible: should be: "atmel,at91rm9200-rtc", "atmel,at91sam9x5-rtc" or
> >> +                         "atmel,at91sam9n12-rtc".
> > 
> > Also at91sam9g45 and at91sam9rl use this driver.
> 
> Yes, sure, I did not want to add every single user of the RTC...
> 
> > As seems to be the case
> > for other peripherals, I suggest we use "atmel,at91sam9x5-rtc" for
> > sam9x5 and "atmel,at91rm9200-rtc" for the other SoCs, that is, the least
> > (and first) common denominator.
> 
> ... I was just following the habit of naming the changes in peripheral
> revision by it first use in a SoC:
> at91rm9200-rtc: from rm9200 up to 9g45
> at91sam9x5-rtc: sam9x5 only (with IMR issue)
> at91sam9n12-rtc: fist SoC that corrects the IMR issue with a new IP
> revision, until now and sama5d3 SoC

Ah, ok.
 
> > Either way, there's not need to add at91sam9n12-rtc in this patch.
> > 
> >>  - reg: physical base address of the controller and length of memory mapped
> >>    region.
> >>  - interrupts: rtc alarm/event interrupt
> > 
> > I'll respond to this mail with a revert-patch, and an updated RFC-series
> > based on top of the DT-patch in Andrew's queue.

Thanks,
Johan

  reply	other threads:[~2013-04-03 13:46 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-29 16:03 [RFC 1/5] rtc-at91rm9200: add configuration support Johan Hovold
2013-03-29 16:03 ` Johan Hovold
2013-03-29 16:03 ` [RFC 2/5] rtc-at91rm9200: add device-tree support Johan Hovold
2013-03-29 16:12   ` Johan Hovold
2013-03-29 16:12     ` Johan Hovold
2013-03-29 16:03 ` [RFC 3/5] rtc-at91rm9200: refactor interrupt-register handling Johan Hovold
2013-03-29 16:03 ` [RFC 4/5] rtc-at91rm9200: add shadow interrupt mask Johan Hovold
2013-03-29 16:03 ` [RFC 5/5] rtc-at91rm9200: add support for at91sam9x5 Johan Hovold
2013-03-29 16:39   ` Douglas Gilbert
2013-03-29 16:39     ` Douglas Gilbert
2013-04-02 13:06   ` [RFC PATCH] rtc: rtc-at91rm9200: manage IMR depending on revision Nicolas Ferre
2013-04-02 13:06     ` Nicolas Ferre
2013-04-02 15:32     ` Douglas Gilbert
2013-04-02 15:32       ` Douglas Gilbert
2013-04-02 16:28       ` Nicolas Ferre
2013-04-02 16:28         ` Nicolas Ferre
2013-04-02 16:36     ` [RFC PATCH v2] " Nicolas Ferre
2013-04-02 16:36       ` Nicolas Ferre
2013-04-03  9:51       ` Johan Hovold
2013-04-03  9:51         ` Johan Hovold
2013-04-03  9:54         ` [PATCH] Revert "drivers/rtc/rtc-at91rm9200.c: use a variable for storing IMR" Johan Hovold
2013-04-03  9:54           ` Johan Hovold
2013-04-03 10:03           ` [RFC v2 0/4] rtc-at91rm9200: add support for at91sam9x5 Johan Hovold
2013-04-03 10:03             ` [RFC v2 1/4] rtc-at91rm9200: add configuration support Johan Hovold
2013-04-03 10:03             ` [RFC v2 2/4] rtc-at91rm9200: refactor interrupt-register handling Johan Hovold
2013-04-03 10:03             ` [RFC v2 3/4] rtc-at91rm9200: add shadow interrupt mask Johan Hovold
2013-04-03 10:03             ` [RFC v2 4/4] rtc-at91rm9200: add support for at91sam9x5 Johan Hovold
2013-05-23  8:38             ` [PATCH v3 0/5] rtc-at91rm9200: add shadow interrupt mask Johan Hovold
2013-05-23  8:38               ` Johan Hovold
2013-05-23  8:38               ` [PATCH v3 1/5] rtc-at91rm9200: add match-table compile guard Johan Hovold
2013-05-23  8:38                 ` Johan Hovold
2013-05-23  8:38               ` [PATCH v3 2/5] rtc-at91rm9200: add configuration support Johan Hovold
2013-05-23  8:38                 ` Johan Hovold
2013-05-23  8:38               ` [PATCH v3 3/5] rtc-at91rm9200: refactor interrupt-register handling Johan Hovold
2013-05-23  8:38                 ` Johan Hovold
2013-05-23  8:38               ` [PATCH v3 4/5] rtc-at91rm9200: add shadow interrupt mask Johan Hovold
2013-05-23  8:38                 ` Johan Hovold
2013-05-23  8:38               ` [PATCH v3 5/5] rtc-at91rm9200: use shadow IMR on at91sam9x5 Johan Hovold
2013-05-23  8:38                 ` Johan Hovold
2013-05-29 20:33               ` [PATCH v3 0/5] rtc-at91rm9200: add shadow interrupt mask Andrew Morton
2013-05-29 20:33                 ` Andrew Morton
2013-05-29 20:41                 ` Robert Nelson
2013-05-29 20:41                   ` Robert Nelson
2013-05-29 23:22                   ` Douglas Gilbert
2013-05-29 23:22                     ` Douglas Gilbert
2013-05-30  8:18                     ` Nicolas Ferre
2013-05-30  8:18                       ` Nicolas Ferre
2013-05-30  7:50                   ` Nicolas Ferre
2013-05-30  7:50                     ` Nicolas Ferre
2013-05-30 19:36                     ` Andrew Morton
2013-05-30 19:36                       ` Andrew Morton
2013-05-30 23:17                       ` Douglas Gilbert
2013-05-30 23:17                         ` Douglas Gilbert
2013-05-31  7:54                         ` Nicolas Ferre
2013-05-31  7:54                           ` Nicolas Ferre
2013-05-30  7:41               ` Nicolas Ferre
2013-05-30  7:41                 ` Nicolas Ferre
2013-04-03 10:18           ` [PATCH] Revert "drivers/rtc/rtc-at91rm9200.c: use a variable for storing IMR" Nicolas Ferre
2013-04-03 10:18             ` Nicolas Ferre
2013-04-05 14:14             ` Nicolas Ferre
2013-04-05 14:14               ` Nicolas Ferre
2013-04-05 15:35               ` Greg KH
2013-04-05 15:35                 ` Greg KH
2013-04-05 16:16                 ` Nicolas Ferre
2013-04-05 16:16                   ` Nicolas Ferre
2013-04-03 10:37         ` [RFC PATCH v2] rtc: rtc-at91rm9200: manage IMR depending on revision Nicolas Ferre
2013-04-03 10:37           ` Nicolas Ferre
2013-04-03 13:46           ` Johan Hovold [this message]
2013-04-03 13:46             ` Johan Hovold

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=20130403134643.GD27600@localhost \
    --to=jhovold@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.