Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0b9641f5 authored by Gilad Avidov's avatar Gilad Avidov Committed by Greg Kroah-Hartman
Browse files

spmi: remove wakeup command before slave probe



According to spmi spec a slave powers up into startup state and then
transitions into active state. Thus, the wakeup command is not required
before calling the slave's probe. The wakeup command is only needed for
slaves that are in sleep state after receiving the sleep command.

Cc: galak@codeaurora.org
Reviewed-by: default avatarStephen Boyd <sboyd@codeaurora.org>
Reviewed-by: default avatarSagar Dharia <sdharia@codeaurora.org>
Acked-by: default avatarJosh Cartwright <joshc@eso.teric.us>
Signed-off-by: default avatarGilad Avidov <gavidov@codeaurora.org>
Tested-by: default avatarIvan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 03515f32
Loading
Loading
Loading
Loading
+2 −7
Original line number Original line Diff line number Diff line
/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
/*
 * Copyright (c) 2012-2015, The Linux Foundation. All rights reserved.
 *
 *
 * This program is free software; you can redistribute it and/or modify
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
 * it under the terms of the GNU General Public License version 2 and
@@ -316,11 +317,6 @@ static int spmi_drv_probe(struct device *dev)
	struct spmi_device *sdev = to_spmi_device(dev);
	struct spmi_device *sdev = to_spmi_device(dev);
	int err;
	int err;


	/* Ensure the slave is in ACTIVE state */
	err = spmi_command_wakeup(sdev);
	if (err)
		goto fail_wakeup;

	pm_runtime_get_noresume(dev);
	pm_runtime_get_noresume(dev);
	pm_runtime_set_active(dev);
	pm_runtime_set_active(dev);
	pm_runtime_enable(dev);
	pm_runtime_enable(dev);
@@ -335,7 +331,6 @@ static int spmi_drv_probe(struct device *dev)
	pm_runtime_disable(dev);
	pm_runtime_disable(dev);
	pm_runtime_set_suspended(dev);
	pm_runtime_set_suspended(dev);
	pm_runtime_put_noidle(dev);
	pm_runtime_put_noidle(dev);
fail_wakeup:
	return err;
	return err;
}
}