|
@@ -510,6 +510,7 @@ static void __init ams_delta_init(void)
|
|
|
static void modem_pm(struct uart_port *port, unsigned int state, unsigned old)
|
|
|
{
|
|
|
struct modem_private_data *priv = port->private_data;
|
|
|
+ int ret;
|
|
|
|
|
|
if (IS_ERR(priv->regulator))
|
|
|
return;
|
|
@@ -518,9 +519,16 @@ static void modem_pm(struct uart_port *port, unsigned int state, unsigned old)
|
|
|
return;
|
|
|
|
|
|
if (state == 0)
|
|
|
- regulator_enable(priv->regulator);
|
|
|
+ ret = regulator_enable(priv->regulator);
|
|
|
else if (old == 0)
|
|
|
- regulator_disable(priv->regulator);
|
|
|
+ ret = regulator_disable(priv->regulator);
|
|
|
+ else
|
|
|
+ ret = 0;
|
|
|
+
|
|
|
+ if (ret)
|
|
|
+ dev_warn(port->dev,
|
|
|
+ "ams_delta modem_pm: failed to %sable regulator: %d\n",
|
|
|
+ state ? "dis" : "en", ret);
|
|
|
}
|
|
|
|
|
|
static struct plat_serial8250_port ams_delta_modem_ports[] = {
|