All of lore.kernel.org
 help / color / mirror / Atom feed
From: sboyd@codeaurora.org (Stephen Boyd)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] rtc: snvs: add Freescale rtc-snvs driver
Date: Tue, 03 Jul 2012 11:09:34 -0700	[thread overview]
Message-ID: <4FF3355E.6080900@codeaurora.org> (raw)
In-Reply-To: <20120703140202.GF22705@S2101-09.ap.freescale.net>

On 07/03/12 07:02, Shawn Guo wrote:
> On Mon, Jul 02, 2012 at 12:07:00PM -0700, Stephen Boyd wrote:
>> On 07/02/12 09:09, Shawn Guo wrote:
>>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
>>> index 08cbdb9..511ddcb 100644
>>> --- a/drivers/rtc/Kconfig
>>> +++ b/drivers/rtc/Kconfig
>>> @@ -1087,4 +1087,14 @@ config RTC_DRV_MXC
>>>  	   This driver can also be built as a module, if so, the module
>>>  	   will be called "rtc-mxc".
>>>  
>>> +config RTC_DRV_SNVS
>>> +	tristate "Freescale SNVS RTC support"
>>> +	depends on ARCH_MXC
>> If you want more build coverage you can depend on HAS_IOMEM and drop the
>> ARCH_MXC part.
>>
> Dropping ARCH_MXC sounds like a good idea.  But why do we need to
> depend on HAS_IOMEM?  readl/writel are not always available?

Yes, that is my understanding.

>
> I would add "depends on OF" though.
>
>
>>> +static irqreturn_t snvs_rtc_irq_handler(int irq, void *dev_id)
>>> +{
>>> +	struct device *dev = dev_id;
>>> +	struct snvs_rtc_data *data = dev_get_drvdata(dev);
>> Why not just pass the svsns_rtc_data to request_irq() so you can cast
>> dev_id directly?
>>
> Because snvs_rtc_alarm_irq_enable(dev, 0) is being called in there
> with dev as the first parameter.

Ah, sorry for the noise.

>
>>> +static int __devinit snvs_rtc_probe(struct platform_device *pdev)
>>> +{
>>> +	struct snvs_rtc_data *data;
>>> +	struct resource *res;
>>> +	int ret;
>>> +
>>> +	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
>>> +	if (!data)
>>> +		return -ENOMEM;
>>> +
>>> +	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>>> +	data->ioaddr = devm_request_and_ioremap(&pdev->dev, res);
>>> +	if (!data->ioaddr)
>>> +		return -EADDRNOTAVAIL;
>>> +
>>> +	data->irq = platform_get_irq(pdev, 0);
>> What if this irq fails to exist?
>>
> The later devm_request_irq() call will report error then.

request_irq() takes an unsigned int. Are you relying on there being no
descriptor for that extremely high irq number? Or maybe I'm missing
something in the code.

>
>>> +	{ .compatible = "fsl,sec-v4.0-mon" },
>>> +	{ /* sentinel */ }
>>> +};
>>> +MODULE_DEVICE_TABLE(of, snvs_dt_ids);
>> Surround this of_device table in #ifdef CONFIG_OF?
>>
> Maybe not.  I intend to have the driver OF only.
>

Ok. I guess if someone wants to use it non-OF they can always send a patch.

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

  reply	other threads:[~2012-07-03 18:09 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-02 16:09 [PATCH] rtc: snvs: add Freescale rtc-snvs driver Shawn Guo
2012-07-02 19:07 ` Stephen Boyd
2012-07-03 14:02   ` Shawn Guo
2012-07-03 18:09     ` Stephen Boyd [this message]
2012-07-02 23:37 ` Kim Phillips
2012-07-03 15:04   ` Shawn Guo
2012-07-03 20:29     ` Kim Phillips

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=4FF3355E.6080900@codeaurora.org \
    --to=sboyd@codeaurora.org \
    --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.