regulator: Avoid potential NULL dereference in reg_fixed_voltage_probe()
of_get_fixed_voltage_config() may return NULL, return -ENOMEM in this case so we don't dereference NULL pointer. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
bc91396b0b
commit
22d881c068
|
@ -160,12 +160,17 @@ static struct regulator_ops fixed_voltage_ops = {
|
||||||
|
|
||||||
static int __devinit reg_fixed_voltage_probe(struct platform_device *pdev)
|
static int __devinit reg_fixed_voltage_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct fixed_voltage_config *config = pdev->dev.platform_data;
|
struct fixed_voltage_config *config;
|
||||||
struct fixed_voltage_data *drvdata;
|
struct fixed_voltage_data *drvdata;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if (pdev->dev.of_node)
|
if (pdev->dev.of_node)
|
||||||
config = of_get_fixed_voltage_config(&pdev->dev);
|
config = of_get_fixed_voltage_config(&pdev->dev);
|
||||||
|
else
|
||||||
|
config = pdev->dev.platform_data;
|
||||||
|
|
||||||
|
if (!config)
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
drvdata = kzalloc(sizeof(struct fixed_voltage_data), GFP_KERNEL);
|
drvdata = kzalloc(sizeof(struct fixed_voltage_data), GFP_KERNEL);
|
||||||
if (drvdata == NULL) {
|
if (drvdata == NULL) {
|
||||||
|
|
Loading…
Reference in New Issue