All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Garrett <mjg59@srcf.ucam.org>
To: Alan Cox <alan@linux.intel.com>
Cc: platform-driver-x86@vger.kernel.org
Subject: Re: [PATCH] gpio: Add PMIC GPIO block support
Date: Thu, 8 Jul 2010 20:37:08 +0100	[thread overview]
Message-ID: <20100708193708.GA5319@srcf.ucam.org> (raw)
In-Reply-To: <20100708170818.16711.74269.stgit@localhost.localdomain>

On Thu, Jul 08, 2010 at 06:09:27PM +0100, Alan Cox wrote:
> +	else if (offset < 14)/* it is GPOSW */
> +		rc = intel_scu_ipc_update_register(GPOSWCTL0 + offset - 8,
> +				GPOSW_DRV | GPOSW_DOU | GPOSW_RDRV,
> +				GPOSW_DRV | (value ? GPOSW_DOU : 0));
> +	else if (offset > 15 && offset < 24)/* it is GPO */

What happened to gpios 14 and 15?

> +
> +static int pmic_gpio_get(struct gpio_chip *chip, unsigned offset)
> +{
> +	u8 r;
> +
> +	/* we only have 8 GPIO pins we can use as input */
> +	if (offset > 8)
> +		return -1;

Is there any chance of this getting passed up to userspace? Using 
something more descriptive would be nice (ditto for a couple of other 
places)

> +	if (intel_scu_ipc_ioread8(GPIO0 + offset, &r))
> +		return -1;

...especially since you get the same error for two different failure 
modes :)

> +static int pmic_irq_type(unsigned irq, unsigned type)
> +{
> +	struct pmic_gpio *pg = get_irq_chip_data(irq);
> +	u32 gpio = irq - pg->irq_base;
> +	unsigned long flags;
> +
> +	if (gpio < 0 || gpio > pg->chip.ngpio)

It's unsigned, don't need to check that it's < 0.

> +static int __devinit platform_pmic_gpio_probe(struct platform_device *pdev)
> +{
> +	struct device *dev = &pdev->dev;
> +	int irq = platform_get_irq(pdev, 0);
> +	struct intel_pmic_gpio_platform_data *pdata = dev->platform_data;

I don't think it's really necessary to indicate that the driver's loaded 
here.

> +	if (!pdata || !pdata->gpio_base || !pdata->irq_base) {
> +		dev_dbg(dev, "incorrect or missing platform data\n");
> +		return -EINVAL;
> +	}

Shouldn't there be an is_mrst() check before trying to dereference this?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

  reply	other threads:[~2010-07-08 19:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-08 17:09 [PATCH] gpio: Add PMIC GPIO block support Alan Cox
2010-07-08 19:37 ` Matthew Garrett [this message]
2010-07-09 13:35   ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2010-07-13  9:56 Alan Cox
2010-07-22 15:01 ` Matthew Garrett

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=20100708193708.GA5319@srcf.ucam.org \
    --to=mjg59@srcf.ucam.org \
    --cc=alan@linux.intel.com \
    --cc=platform-driver-x86@vger.kernel.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.