On Fri, Jun 22, 2018 at 05:46:14PM -0700, David Collins wrote:

> --- /dev/null
> +++ b/drivers/regulator/qcom-rpmh-regulator.c
> @@ -0,0 +1,746 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/* Copyright (c) 2018, The Linux Foundation. All rights reserved. */
> +

Please make the entire header block C++ so it looks intentional.

> +     cmd.data = bypassed ? PMIC4_BOB_MODE_PASS : pmic_mode;

Please just write normal if statements, the ternery operator isn't
really helping legibility.

> +static const int pmic_mode_map_pmic4_ldo[REGULATOR_MODE_STANDBY + 1] = {
> +     [REGULATOR_MODE_INVALID] = -EINVAL,
> +     [REGULATOR_MODE_STANDBY] = PMIC4_LDO_MODE_RETENTION,
> +     [REGULATOR_MODE_IDLE]    = PMIC4_LDO_MODE_LPM,
> +     [REGULATOR_MODE_NORMAL]  = -EINVAL,
> +     [REGULATOR_MODE_FAST]    = PMIC4_LDO_MODE_HPM,
> +};

This mapping is really weird, I'd expect one of the modes to correspond
to the normal operating mode of the regulator.  

> +static unsigned int rpmh_regulator_pmic4_ldo_of_map_mode(unsigned int mode)
> +{
> +     static const unsigned int of_mode_map[RPMH_REGULATOR_MODE_COUNT] = {
> +             [RPMH_REGULATOR_MODE_RET]  = REGULATOR_MODE_STANDBY,
> +             [RPMH_REGULATOR_MODE_LPM]  = REGULATOR_MODE_IDLE,
> +             [RPMH_REGULATOR_MODE_AUTO] = REGULATOR_MODE_INVALID,
> +             [RPMH_REGULATOR_MODE_HPM]  = REGULATOR_MODE_FAST,
> +     };

Same here, based on that it looks like auto mode is a good map for
normal.

> +     if (mode >= RPMH_REGULATOR_MODE_COUNT)
> +             return -EINVAL;

Why not use ARRAY_SIZE?

Attachment: signature.asc
Description: PGP signature

Reply via email to