PCI: qcom: Use gpiod_set_value_cansleep() to allow reset via expanders
The reset GPIO can be connected to a I2C or SPI IO expander, which may sleep, so it is safer to use the gpiod_set_value_cansleep() variant instead. Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
This commit is contained in:
parent
8c934095fa
commit
a8c2038f61
|
@ -142,13 +142,13 @@ struct qcom_pcie {
|
||||||
|
|
||||||
static void qcom_ep_reset_assert(struct qcom_pcie *pcie)
|
static void qcom_ep_reset_assert(struct qcom_pcie *pcie)
|
||||||
{
|
{
|
||||||
gpiod_set_value(pcie->reset, 1);
|
gpiod_set_value_cansleep(pcie->reset, 1);
|
||||||
usleep_range(PERST_DELAY_US, PERST_DELAY_US + 500);
|
usleep_range(PERST_DELAY_US, PERST_DELAY_US + 500);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void qcom_ep_reset_deassert(struct qcom_pcie *pcie)
|
static void qcom_ep_reset_deassert(struct qcom_pcie *pcie)
|
||||||
{
|
{
|
||||||
gpiod_set_value(pcie->reset, 0);
|
gpiod_set_value_cansleep(pcie->reset, 0);
|
||||||
usleep_range(PERST_DELAY_US, PERST_DELAY_US + 500);
|
usleep_range(PERST_DELAY_US, PERST_DELAY_US + 500);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue