OSDN Git Service

regulator: core: Move registration of regulator device
authorJon Hunter <jonathanh@nvidia.com>
Thu, 21 Apr 2016 16:11:59 +0000 (17:11 +0100)
committerMark Brown <broonie@kernel.org>
Fri, 22 Apr 2016 10:38:47 +0000 (11:38 +0100)
commitc438b9d017362b65f6b1a9e54f7f35e7f873dc7c
tree9ba4ac5fe0000d1b1ba483f6772accfd6dde58b8
parentf89ba3383ee69e2e1473e41ed42614fc7c9d9192
regulator: core: Move registration of regulator device

The public functions to acquire a regulator, such as regulator_get(),
internally look-up the regulator from the list of regulators that have
been registered with the regulator device class. The registration of
a new regulator with the regulator device class happens before the
regulator has been completely setup. Therefore, it is possible that
the regulator could be acquired before it has been setup successfully.
To avoid this move the device registration of the regulator to the end
of the regulator setup and update the error exit path accordingly.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/core.c