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