> The device lm90 can be controlled by the vdd rail.
> Adding the power control support to power on/off the vdd rail.
> And make sure that power is enabled before accessing the device.
> 
> Signed-off-by: Wei Ni <w...@nvidia.com>
> ---
>  drivers/hwmon/lm90.c |   52 
> ++++++++++++++++++++++++++++++++++++++++++++++++++
[...]
> +     if (!data->lm90_reg) {
> +             data->lm90_reg = regulator_get(&client->dev, "vdd");
> +             if (IS_ERR_OR_NULL(data->lm90_reg)) {
> +                     if (PTR_ERR(data->lm90_reg) == -ENODEV)
> +                             dev_info(&client->dev,
> +                                      "No regulator found for vdd. Assuming 
> vdd is always powered.");
> +                     else
> +                             dev_warn(&client->dev,
> +                                      "Error [%ld] in getting the regulator 
> handle for vdd.\n",
> +                                      PTR_ERR(data->lm90_reg));
> +                     data->lm90_reg = NULL;
> +                     mutex_unlock(&data->update_lock);
> +                     return -ENODEV;
> +             }
> +     }
> +     if (is_enable) {
> +             ret = regulator_enable(data->lm90_reg);
> +             msleep(POWER_ON_DELAY);

Can this delay be handled directly from regulator?

[...]
---
N�����r��y����b�X��ǧv�^�)޺{.n�+����{���+j)����w*jg��������ݢj/���z�ޖ��2�ޙ����&�)ߡ�a�����G���h��j:+v���w��٥

Reply via email to