Re: [PATCH 1/5] mfd: Add driver for Maxim 77802 Power Management IC

From: Mark Brown
Date: Mon Jun 09 2014 - 15:47:49 EST


On Mon, Jun 09, 2014 at 11:37:46AM +0200, Javier Martinez Canillas wrote:

> +Optional node:
> +- voltage-regulators : The regulators of max77802 have to be instantiated
> + under subnode named "voltage-regulators" using the following format.

Every other PMIC calls this node regulators...

> + regulator_name {
> + regulator-compatible = LDOn/BUCKn

regulator-compatible is deprecated, use the node name instead.

> +config MFD_MAX77802
> + bool "Maxim Integrated MAX77802 PMIC Support"

Why is this bool and not tristate?

> +int max77802_irq_resume(struct max77802_dev *max77802)
> +{
> + /*
> + * The IRQ that woke us up may still need to be ACK'ed on resume.
> + * If it isn't ever ACK'ed, future IRQs may not be delivered.
> + */
> + if (max77802->irq)
> + max77802_irq_thread(0, max77802);
> +
> + return 0;
> +}

As covered in another subthread all this code looks like it should be
regmap-irq.

> + if (regmap_read(max77802->regmap,
> + MAX77802_REG_DEVICE_ID, &data) < 0) {
> + dev_err(max77802->dev,
> + "device not found on this channel (this is not an error)\n");
> + return -ENODEV;

If this is not an error why is it printed as dev_err()? It does look
like an error to me, though.

> + } else {
> + dev_info(max77802->dev, "device found\n");
> + }

These sort of prints are just noise, remove this unless there is some
revision information you can display. It's also better practice to
check that the device ID is actually what was expected in case there was
an error in the DT.

> +static const struct i2c_device_id max77802_i2c_id[] = {
> + { "max77802", TYPE_MAX77802 },
> + { }
> +};
> +MODULE_DEVICE_TABLE(i2c, max77802_i2c_id);

We have type information here but not in the OF ID table (not that we
ever look at it).

Attachment: signature.asc
Description: Digital signature