/*
* Note that these low level api's are active high
*/
-static inline void assert_gpio(unsigned int gpio)
+static inline void deassert_reset(unsigned int gpio)
{
gpio_set_value(gpio, 1);
msleep(500);
}
-static inline void deassert_gpio(unsigned int gpio)
+static inline void assert_reset(unsigned int gpio)
{
gpio_set_value(gpio, 0);
}
regulator_disable(apb->vio);
/* As part of exit, put APB back in reset state */
- gpio_set_value(apb->resetn_gpio, 0);
+ assert_reset(apb->resetn_gpio);
apb->state = APB_STATE_OFF;
/* TODO: May have to send an event to SVC about this exit */
return ret;
}
- apb->state = APB_STATE_OFF;
-
+ /* deassert reset to APB : Active-low signal */
+ deassert_reset(apb->resetn_gpio);
+ apb->state = APB_STATE_ACTIVE;
platform_set_drvdata(pdev, apb);