* [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
@ 2017-07-19 15:25 ` Philipp Zabel
2017-08-03 21:40 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 052/102] PCI: imx6: " Philipp Zabel
` (3 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: Philipp Zabel @ 2017-07-19 15:25 UTC (permalink / raw)
To: linux-kernel
Cc: Philipp Zabel, Stanimir Varbanov, Bjorn Helgaas, linux-pci,
linux-arm-msm
Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
reset lines") started to transition the reset control request API calls
to explicitly state whether the driver needs exclusive or shared reset
control behavior. Convert all drivers requesting exclusive resets to the
explicit API call so the temporary transition helpers can be removed.
No functional changes.
Cc: Stanimir Varbanov <svarbanov@mm-sol.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
drivers/pci/dwc/pcie-qcom.c | 40 ++++++++++++++++++++++------------------
1 file changed, 22 insertions(+), 18 deletions(-)
diff --git a/drivers/pci/dwc/pcie-qcom.c b/drivers/pci/dwc/pcie-qcom.c
index 68c5f2ab5bc8f..90f7796a7cffe 100644
--- a/drivers/pci/dwc/pcie-qcom.c
+++ b/drivers/pci/dwc/pcie-qcom.c
@@ -212,23 +212,23 @@ static int qcom_pcie_get_resources_v0(struct qcom_pcie *pcie)
if (IS_ERR(res->phy_clk))
return PTR_ERR(res->phy_clk);
- res->pci_reset = devm_reset_control_get(dev, "pci");
+ res->pci_reset = devm_reset_control_get_exclusive(dev, "pci");
if (IS_ERR(res->pci_reset))
return PTR_ERR(res->pci_reset);
- res->axi_reset = devm_reset_control_get(dev, "axi");
+ res->axi_reset = devm_reset_control_get_exclusive(dev, "axi");
if (IS_ERR(res->axi_reset))
return PTR_ERR(res->axi_reset);
- res->ahb_reset = devm_reset_control_get(dev, "ahb");
+ res->ahb_reset = devm_reset_control_get_exclusive(dev, "ahb");
if (IS_ERR(res->ahb_reset))
return PTR_ERR(res->ahb_reset);
- res->por_reset = devm_reset_control_get(dev, "por");
+ res->por_reset = devm_reset_control_get_exclusive(dev, "por");
if (IS_ERR(res->por_reset))
return PTR_ERR(res->por_reset);
- res->phy_reset = devm_reset_control_get(dev, "phy");
+ res->phy_reset = devm_reset_control_get_exclusive(dev, "phy");
return PTR_ERR_OR_ZERO(res->phy_reset);
}
@@ -393,7 +393,7 @@ static int qcom_pcie_get_resources_v1(struct qcom_pcie *pcie)
if (IS_ERR(res->slave_bus))
return PTR_ERR(res->slave_bus);
- res->core = devm_reset_control_get(dev, "core");
+ res->core = devm_reset_control_get_exclusive(dev, "core");
return PTR_ERR_OR_ZERO(res->core);
}
@@ -623,51 +623,55 @@ static int qcom_pcie_get_resources_v3(struct qcom_pcie *pcie)
if (IS_ERR(res->slave_clk))
return PTR_ERR(res->slave_clk);
- res->axi_m_reset = devm_reset_control_get(dev, "axi_m");
+ res->axi_m_reset = devm_reset_control_get_exclusive(dev, "axi_m");
if (IS_ERR(res->axi_m_reset))
return PTR_ERR(res->axi_m_reset);
- res->axi_s_reset = devm_reset_control_get(dev, "axi_s");
+ res->axi_s_reset = devm_reset_control_get_exclusive(dev, "axi_s");
if (IS_ERR(res->axi_s_reset))
return PTR_ERR(res->axi_s_reset);
- res->pipe_reset = devm_reset_control_get(dev, "pipe");
+ res->pipe_reset = devm_reset_control_get_exclusive(dev, "pipe");
if (IS_ERR(res->pipe_reset))
return PTR_ERR(res->pipe_reset);
- res->axi_m_vmid_reset = devm_reset_control_get(dev, "axi_m_vmid");
+ res->axi_m_vmid_reset = devm_reset_control_get_exclusive(dev,
+ "axi_m_vmid");
if (IS_ERR(res->axi_m_vmid_reset))
return PTR_ERR(res->axi_m_vmid_reset);
- res->axi_s_xpu_reset = devm_reset_control_get(dev, "axi_s_xpu");
+ res->axi_s_xpu_reset = devm_reset_control_get_exclusive(dev,
+ "axi_s_xpu");
if (IS_ERR(res->axi_s_xpu_reset))
return PTR_ERR(res->axi_s_xpu_reset);
- res->parf_reset = devm_reset_control_get(dev, "parf");
+ res->parf_reset = devm_reset_control_get_exclusive(dev, "parf");
if (IS_ERR(res->parf_reset))
return PTR_ERR(res->parf_reset);
- res->phy_reset = devm_reset_control_get(dev, "phy");
+ res->phy_reset = devm_reset_control_get_exclusive(dev, "phy");
if (IS_ERR(res->phy_reset))
return PTR_ERR(res->phy_reset);
- res->axi_m_sticky_reset = devm_reset_control_get(dev, "axi_m_sticky");
+ res->axi_m_sticky_reset = devm_reset_control_get_exclusive(dev,
+ "axi_m_sticky");
if (IS_ERR(res->axi_m_sticky_reset))
return PTR_ERR(res->axi_m_sticky_reset);
- res->pipe_sticky_reset = devm_reset_control_get(dev, "pipe_sticky");
+ res->pipe_sticky_reset = devm_reset_control_get_exclusive(dev,
+ "pipe_sticky");
if (IS_ERR(res->pipe_sticky_reset))
return PTR_ERR(res->pipe_sticky_reset);
- res->pwr_reset = devm_reset_control_get(dev, "pwr");
+ res->pwr_reset = devm_reset_control_get_exclusive(dev, "pwr");
if (IS_ERR(res->pwr_reset))
return PTR_ERR(res->pwr_reset);
- res->ahb_reset = devm_reset_control_get(dev, "ahb");
+ res->ahb_reset = devm_reset_control_get_exclusive(dev, "ahb");
if (IS_ERR(res->ahb_reset))
return PTR_ERR(res->ahb_reset);
- res->phy_ahb_reset = devm_reset_control_get(dev, "phy_ahb");
+ res->phy_ahb_reset = devm_reset_control_get_exclusive(dev, "phy_ahb");
if (IS_ERR(res->phy_ahb_reset))
return PTR_ERR(res->phy_ahb_reset);
--
2.11.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 052/102] PCI: imx6: explicitly request exclusive reset control
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
2017-07-19 15:25 ` [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control Philipp Zabel
@ 2017-07-19 15:25 ` Philipp Zabel
2017-08-03 21:41 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 053/102] PCI: tegra: " Philipp Zabel
` (2 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: Philipp Zabel @ 2017-07-19 15:25 UTC (permalink / raw)
To: linux-kernel
Cc: Philipp Zabel, Richard Zhu, Lucas Stach, Bjorn Helgaas, linux-pci
Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
reset lines") started to transition the reset control request API calls
to explicitly state whether the driver needs exclusive or shared reset
control behavior. Convert all drivers requesting exclusive resets to the
explicit API call so the temporary transition helpers can be removed.
No functional changes.
Cc: Richard Zhu <hongxing.zhu@nxp.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
drivers/pci/dwc/pci-imx6.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/pci/dwc/pci-imx6.c b/drivers/pci/dwc/pci-imx6.c
index bf5c3616e3448..5a2ece394ad39 100644
--- a/drivers/pci/dwc/pci-imx6.c
+++ b/drivers/pci/dwc/pci-imx6.c
@@ -778,14 +778,15 @@ static int imx6_pcie_probe(struct platform_device *pdev)
}
break;
case IMX7D:
- imx6_pcie->pciephy_reset = devm_reset_control_get(dev,
- "pciephy");
+ imx6_pcie->pciephy_reset = devm_reset_control_get_exclusive(dev,
+ "pciephy");
if (IS_ERR(imx6_pcie->pciephy_reset)) {
dev_err(dev, "Failed to get PCIEPHY reset control\n");
return PTR_ERR(imx6_pcie->pciephy_reset);
}
- imx6_pcie->apps_reset = devm_reset_control_get(dev, "apps");
+ imx6_pcie->apps_reset = devm_reset_control_get_exclusive(dev,
+ "apps");
if (IS_ERR(imx6_pcie->apps_reset)) {
dev_err(dev, "Failed to get PCIE APPS reset control\n");
return PTR_ERR(imx6_pcie->apps_reset);
--
2.11.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 053/102] PCI: tegra: explicitly request exclusive reset control
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
2017-07-19 15:25 ` [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control Philipp Zabel
2017-07-19 15:25 ` [PATCH 052/102] PCI: imx6: " Philipp Zabel
@ 2017-07-19 15:25 ` Philipp Zabel
2017-08-03 21:42 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
2017-07-19 15:26 ` [PATCH 056/102] PCI: mediatek: " Philipp Zabel
4 siblings, 1 reply; 13+ messages in thread
From: Philipp Zabel @ 2017-07-19 15:25 UTC (permalink / raw)
To: linux-kernel
Cc: Philipp Zabel, Thierry Reding, Bjorn Helgaas, Jonathan Hunter,
linux-tegra, linux-pci
Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
reset lines") started to transition the reset control request API calls
to explicitly state whether the driver needs exclusive or shared reset
control behavior. Convert all drivers requesting exclusive resets to the
explicit API call so the temporary transition helpers can be removed.
No functional changes.
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: linux-tegra@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
drivers/pci/host/pci-tegra.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c
index b3722b7709df8..a64bd0a191767 100644
--- a/drivers/pci/host/pci-tegra.c
+++ b/drivers/pci/host/pci-tegra.c
@@ -1147,15 +1147,15 @@ static int tegra_pcie_resets_get(struct tegra_pcie *pcie)
{
struct device *dev = pcie->dev;
- pcie->pex_rst = devm_reset_control_get(dev, "pex");
+ pcie->pex_rst = devm_reset_control_get_exclusive(dev, "pex");
if (IS_ERR(pcie->pex_rst))
return PTR_ERR(pcie->pex_rst);
- pcie->afi_rst = devm_reset_control_get(dev, "afi");
+ pcie->afi_rst = devm_reset_control_get_exclusive(dev, "afi");
if (IS_ERR(pcie->afi_rst))
return PTR_ERR(pcie->afi_rst);
- pcie->pcie_xrst = devm_reset_control_get(dev, "pcie_x");
+ pcie->pcie_xrst = devm_reset_control_get_exclusive(dev, "pcie_x");
if (IS_ERR(pcie->pcie_xrst))
return PTR_ERR(pcie->pcie_xrst);
--
2.11.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 054/102] PCI: rockchip: explicitly request exclusive reset control
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
` (2 preceding siblings ...)
2017-07-19 15:25 ` [PATCH 053/102] PCI: tegra: " Philipp Zabel
@ 2017-07-19 15:25 ` Philipp Zabel
2017-07-22 13:12 ` Shawn Lin
` (2 more replies)
2017-07-19 15:26 ` [PATCH 056/102] PCI: mediatek: " Philipp Zabel
4 siblings, 3 replies; 13+ messages in thread
From: Philipp Zabel @ 2017-07-19 15:25 UTC (permalink / raw)
To: linux-kernel
Cc: Philipp Zabel, Shawn Lin, Bjorn Helgaas, Heiko Stuebner,
linux-pci, linux-rockchip
Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
reset lines") started to transition the reset control request API calls
to explicitly state whether the driver needs exclusive or shared reset
control behavior. Convert all drivers requesting exclusive resets to the
explicit API call so the temporary transition helpers can be removed.
No functional changes.
Cc: Shawn Lin <shawn.lin@rock-chips.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: linux-pci@vger.kernel.org
Cc: linux-rockchip@lists.infradead.org
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
drivers/pci/host/pcie-rockchip.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c
index 7bb9870f6d8ce..e50d6f5a81f4b 100644
--- a/drivers/pci/host/pcie-rockchip.c
+++ b/drivers/pci/host/pcie-rockchip.c
@@ -903,49 +903,50 @@ static int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip)
if (rockchip->link_gen < 0 || rockchip->link_gen > 2)
rockchip->link_gen = 2;
- rockchip->core_rst = devm_reset_control_get(dev, "core");
+ rockchip->core_rst = devm_reset_control_get_exclusive(dev, "core");
if (IS_ERR(rockchip->core_rst)) {
if (PTR_ERR(rockchip->core_rst) != -EPROBE_DEFER)
dev_err(dev, "missing core reset property in node\n");
return PTR_ERR(rockchip->core_rst);
}
- rockchip->mgmt_rst = devm_reset_control_get(dev, "mgmt");
+ rockchip->mgmt_rst = devm_reset_control_get_exclusive(dev, "mgmt");
if (IS_ERR(rockchip->mgmt_rst)) {
if (PTR_ERR(rockchip->mgmt_rst) != -EPROBE_DEFER)
dev_err(dev, "missing mgmt reset property in node\n");
return PTR_ERR(rockchip->mgmt_rst);
}
- rockchip->mgmt_sticky_rst = devm_reset_control_get(dev, "mgmt-sticky");
+ rockchip->mgmt_sticky_rst = devm_reset_control_get_exclusive(dev,
+ "mgmt-sticky");
if (IS_ERR(rockchip->mgmt_sticky_rst)) {
if (PTR_ERR(rockchip->mgmt_sticky_rst) != -EPROBE_DEFER)
dev_err(dev, "missing mgmt-sticky reset property in node\n");
return PTR_ERR(rockchip->mgmt_sticky_rst);
}
- rockchip->pipe_rst = devm_reset_control_get(dev, "pipe");
+ rockchip->pipe_rst = devm_reset_control_get_exclusive(dev, "pipe");
if (IS_ERR(rockchip->pipe_rst)) {
if (PTR_ERR(rockchip->pipe_rst) != -EPROBE_DEFER)
dev_err(dev, "missing pipe reset property in node\n");
return PTR_ERR(rockchip->pipe_rst);
}
- rockchip->pm_rst = devm_reset_control_get(dev, "pm");
+ rockchip->pm_rst = devm_reset_control_get_exclusive(dev, "pm");
if (IS_ERR(rockchip->pm_rst)) {
if (PTR_ERR(rockchip->pm_rst) != -EPROBE_DEFER)
dev_err(dev, "missing pm reset property in node\n");
return PTR_ERR(rockchip->pm_rst);
}
- rockchip->pclk_rst = devm_reset_control_get(dev, "pclk");
+ rockchip->pclk_rst = devm_reset_control_get_exclusive(dev, "pclk");
if (IS_ERR(rockchip->pclk_rst)) {
if (PTR_ERR(rockchip->pclk_rst) != -EPROBE_DEFER)
dev_err(dev, "missing pclk reset property in node\n");
return PTR_ERR(rockchip->pclk_rst);
}
- rockchip->aclk_rst = devm_reset_control_get(dev, "aclk");
+ rockchip->aclk_rst = devm_reset_control_get_exclusive(dev, "aclk");
if (IS_ERR(rockchip->aclk_rst)) {
if (PTR_ERR(rockchip->aclk_rst) != -EPROBE_DEFER)
dev_err(dev, "missing aclk reset property in node\n");
--
2.11.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 056/102] PCI: mediatek: explicitly request exclusive reset control
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
` (3 preceding siblings ...)
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
@ 2017-07-19 15:26 ` Philipp Zabel
2017-08-03 21:45 ` Bjorn Helgaas
4 siblings, 1 reply; 13+ messages in thread
From: Philipp Zabel @ 2017-07-19 15:26 UTC (permalink / raw)
To: linux-kernel
Cc: Philipp Zabel, Ryder Lee, Bjorn Helgaas, Matthias Brugger,
linux-pci, linux-mediatek
Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
reset lines") started to transition the reset control request API calls
to explicitly state whether the driver needs exclusive or shared reset
control behavior. Convert all drivers requesting exclusive resets to the
explicit API call so the temporary transition helpers can be removed.
No functional changes.
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: linux-pci@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
drivers/pci/host/pcie-mediatek.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/host/pcie-mediatek.c b/drivers/pci/host/pcie-mediatek.c
index 5a9d8589ea0bd..9c9f89bcf24ce 100644
--- a/drivers/pci/host/pcie-mediatek.c
+++ b/drivers/pci/host/pcie-mediatek.c
@@ -303,7 +303,7 @@ static int mtk_pcie_parse_ports(struct mtk_pcie *pcie,
}
snprintf(name, sizeof(name), "pcie-rst%d", index);
- port->reset = devm_reset_control_get_optional(dev, name);
+ port->reset = devm_reset_control_get_optional_exclusive(dev, name);
if (PTR_ERR(port->reset) == -EPROBE_DEFER)
return PTR_ERR(port->reset);
--
2.11.0
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 054/102] PCI: rockchip: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
@ 2017-07-22 13:12 ` Shawn Lin
2017-07-24 8:35 ` Philipp Zabel
2017-08-03 0:31 ` Shawn Lin
2017-08-03 21:43 ` Bjorn Helgaas
2 siblings, 1 reply; 13+ messages in thread
From: Shawn Lin @ 2017-07-22 13:12 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, shawn.lin, Bjorn Helgaas, Heiko Stuebner, linux-pci,
linux-rockchip
Hi Philipp,
On 2017/7/19 23:25, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Shawn Lin <shawn.lin@rock-chips.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Heiko Stuebner <heiko@sntech.de>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-rockchip@lists.infradead.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> ---
> drivers/pci/host/pcie-rockchip.c | 15 ++++++++-------
As mentioned in the thread of conversion for phy-rockchip-pcie,
I would prefer add your patches after the reconstruction work got
merged.
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c
> index 7bb9870f6d8ce..e50d6f5a81f4b 100644
> --- a/drivers/pci/host/pcie-rockchip.c
> +++ b/drivers/pci/host/pcie-rockchip.c
> @@ -903,49 +903,50 @@ static int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip)
> if (rockchip->link_gen < 0 || rockchip->link_gen > 2)
> rockchip->link_gen = 2;
>
> - rockchip->core_rst = devm_reset_control_get(dev, "core");
> + rockchip->core_rst = devm_reset_control_get_exclusive(dev, "core");
> if (IS_ERR(rockchip->core_rst)) {
> if (PTR_ERR(rockchip->core_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing core reset property in node\n");
> return PTR_ERR(rockchip->core_rst);
> }
>
> - rockchip->mgmt_rst = devm_reset_control_get(dev, "mgmt");
> + rockchip->mgmt_rst = devm_reset_control_get_exclusive(dev, "mgmt");
> if (IS_ERR(rockchip->mgmt_rst)) {
> if (PTR_ERR(rockchip->mgmt_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt reset property in node\n");
> return PTR_ERR(rockchip->mgmt_rst);
> }
>
> - rockchip->mgmt_sticky_rst = devm_reset_control_get(dev, "mgmt-sticky");
> + rockchip->mgmt_sticky_rst = devm_reset_control_get_exclusive(dev,
> + "mgmt-sticky");
> if (IS_ERR(rockchip->mgmt_sticky_rst)) {
> if (PTR_ERR(rockchip->mgmt_sticky_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt-sticky reset property in node\n");
> return PTR_ERR(rockchip->mgmt_sticky_rst);
> }
>
> - rockchip->pipe_rst = devm_reset_control_get(dev, "pipe");
> + rockchip->pipe_rst = devm_reset_control_get_exclusive(dev, "pipe");
> if (IS_ERR(rockchip->pipe_rst)) {
> if (PTR_ERR(rockchip->pipe_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pipe reset property in node\n");
> return PTR_ERR(rockchip->pipe_rst);
> }
>
> - rockchip->pm_rst = devm_reset_control_get(dev, "pm");
> + rockchip->pm_rst = devm_reset_control_get_exclusive(dev, "pm");
> if (IS_ERR(rockchip->pm_rst)) {
> if (PTR_ERR(rockchip->pm_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pm reset property in node\n");
> return PTR_ERR(rockchip->pm_rst);
> }
>
> - rockchip->pclk_rst = devm_reset_control_get(dev, "pclk");
> + rockchip->pclk_rst = devm_reset_control_get_exclusive(dev, "pclk");
> if (IS_ERR(rockchip->pclk_rst)) {
> if (PTR_ERR(rockchip->pclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pclk reset property in node\n");
> return PTR_ERR(rockchip->pclk_rst);
> }
>
> - rockchip->aclk_rst = devm_reset_control_get(dev, "aclk");
> + rockchip->aclk_rst = devm_reset_control_get_exclusive(dev, "aclk");
> if (IS_ERR(rockchip->aclk_rst)) {
> if (PTR_ERR(rockchip->aclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing aclk reset property in node\n");
>
--
Best Regards
Shawn Lin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 054/102] PCI: rockchip: explicitly request exclusive reset control
2017-07-22 13:12 ` Shawn Lin
@ 2017-07-24 8:35 ` Philipp Zabel
0 siblings, 0 replies; 13+ messages in thread
From: Philipp Zabel @ 2017-07-24 8:35 UTC (permalink / raw)
To: Shawn Lin
Cc: linux-kernel, Bjorn Helgaas, Heiko Stuebner, linux-pci,
linux-rockchip
Hi Shawn,
On Sat, 2017-07-22 at 21:12 +0800, Shawn Lin wrote:
> Hi Philipp,
>
> On 2017/7/19 23:25, Philipp Zabel wrote:
> > Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> > reset lines") started to transition the reset control request API calls
> > to explicitly state whether the driver needs exclusive or shared reset
> > control behavior. Convert all drivers requesting exclusive resets to the
> > explicit API call so the temporary transition helpers can be removed.
> >
> > No functional changes.
> >
> > Cc: Shawn Lin <shawn.lin@rock-chips.com>
> > Cc: Bjorn Helgaas <bhelgaas@google.com>
> > Cc: Heiko Stuebner <heiko@sntech.de>
> > Cc: linux-pci@vger.kernel.org
> > Cc: linux-rockchip@lists.infradead.org
> > Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> > ---
> > drivers/pci/host/pcie-rockchip.c | 15 ++++++++-------
>
> As mentioned in the thread of conversion for phy-rockchip-pcie,
> I would prefer add your patches after the reconstruction work got
> merged.
Feel free to add them when and where it is most convenient for you.
Please let me know if you want me to rebase them somewhere.
regards
Philipp
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 054/102] PCI: rockchip: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
2017-07-22 13:12 ` Shawn Lin
@ 2017-08-03 0:31 ` Shawn Lin
2017-08-03 21:43 ` Bjorn Helgaas
2 siblings, 0 replies; 13+ messages in thread
From: Shawn Lin @ 2017-08-03 0:31 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, shawn.lin, Bjorn Helgaas, Heiko Stuebner, linux-pci,
linux-rockchip
Hi,
On 2017/7/19 23:25, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Shawn Lin <shawn.lin@rock-chips.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Heiko Stuebner <heiko@sntech.de>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-rockchip@lists.infradead.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Shawn Lin <shawn.lin@rock-chips.com>
> ---
> drivers/pci/host/pcie-rockchip.c | 15 ++++++++-------
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c
> index 7bb9870f6d8ce..e50d6f5a81f4b 100644
> --- a/drivers/pci/host/pcie-rockchip.c
> +++ b/drivers/pci/host/pcie-rockchip.c
> @@ -903,49 +903,50 @@ static int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip)
> if (rockchip->link_gen < 0 || rockchip->link_gen > 2)
> rockchip->link_gen = 2;
>
> - rockchip->core_rst = devm_reset_control_get(dev, "core");
> + rockchip->core_rst = devm_reset_control_get_exclusive(dev, "core");
> if (IS_ERR(rockchip->core_rst)) {
> if (PTR_ERR(rockchip->core_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing core reset property in node\n");
> return PTR_ERR(rockchip->core_rst);
> }
>
> - rockchip->mgmt_rst = devm_reset_control_get(dev, "mgmt");
> + rockchip->mgmt_rst = devm_reset_control_get_exclusive(dev, "mgmt");
> if (IS_ERR(rockchip->mgmt_rst)) {
> if (PTR_ERR(rockchip->mgmt_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt reset property in node\n");
> return PTR_ERR(rockchip->mgmt_rst);
> }
>
> - rockchip->mgmt_sticky_rst = devm_reset_control_get(dev, "mgmt-sticky");
> + rockchip->mgmt_sticky_rst = devm_reset_control_get_exclusive(dev,
> + "mgmt-sticky");
> if (IS_ERR(rockchip->mgmt_sticky_rst)) {
> if (PTR_ERR(rockchip->mgmt_sticky_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt-sticky reset property in node\n");
> return PTR_ERR(rockchip->mgmt_sticky_rst);
> }
>
> - rockchip->pipe_rst = devm_reset_control_get(dev, "pipe");
> + rockchip->pipe_rst = devm_reset_control_get_exclusive(dev, "pipe");
> if (IS_ERR(rockchip->pipe_rst)) {
> if (PTR_ERR(rockchip->pipe_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pipe reset property in node\n");
> return PTR_ERR(rockchip->pipe_rst);
> }
>
> - rockchip->pm_rst = devm_reset_control_get(dev, "pm");
> + rockchip->pm_rst = devm_reset_control_get_exclusive(dev, "pm");
> if (IS_ERR(rockchip->pm_rst)) {
> if (PTR_ERR(rockchip->pm_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pm reset property in node\n");
> return PTR_ERR(rockchip->pm_rst);
> }
>
> - rockchip->pclk_rst = devm_reset_control_get(dev, "pclk");
> + rockchip->pclk_rst = devm_reset_control_get_exclusive(dev, "pclk");
> if (IS_ERR(rockchip->pclk_rst)) {
> if (PTR_ERR(rockchip->pclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pclk reset property in node\n");
> return PTR_ERR(rockchip->pclk_rst);
> }
>
> - rockchip->aclk_rst = devm_reset_control_get(dev, "aclk");
> + rockchip->aclk_rst = devm_reset_control_get_exclusive(dev, "aclk");
> if (IS_ERR(rockchip->aclk_rst)) {
> if (PTR_ERR(rockchip->aclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing aclk reset property in node\n");
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control Philipp Zabel
@ 2017-08-03 21:40 ` Bjorn Helgaas
0 siblings, 0 replies; 13+ messages in thread
From: Bjorn Helgaas @ 2017-08-03 21:40 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, Stanimir Varbanov, Bjorn Helgaas, linux-pci,
linux-arm-msm
On Wed, Jul 19, 2017 at 05:25:55PM +0200, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Stanimir Varbanov <svarbanov@mm-sol.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-arm-msm@vger.kernel.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Applied to pci/host-qcom for v4.14, thanks!
Stanimir, holler if you see any issues.
> ---
> drivers/pci/dwc/pcie-qcom.c | 40 ++++++++++++++++++++++------------------
> 1 file changed, 22 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/pci/dwc/pcie-qcom.c b/drivers/pci/dwc/pcie-qcom.c
> index 68c5f2ab5bc8f..90f7796a7cffe 100644
> --- a/drivers/pci/dwc/pcie-qcom.c
> +++ b/drivers/pci/dwc/pcie-qcom.c
> @@ -212,23 +212,23 @@ static int qcom_pcie_get_resources_v0(struct qcom_pcie *pcie)
> if (IS_ERR(res->phy_clk))
> return PTR_ERR(res->phy_clk);
>
> - res->pci_reset = devm_reset_control_get(dev, "pci");
> + res->pci_reset = devm_reset_control_get_exclusive(dev, "pci");
> if (IS_ERR(res->pci_reset))
> return PTR_ERR(res->pci_reset);
>
> - res->axi_reset = devm_reset_control_get(dev, "axi");
> + res->axi_reset = devm_reset_control_get_exclusive(dev, "axi");
> if (IS_ERR(res->axi_reset))
> return PTR_ERR(res->axi_reset);
>
> - res->ahb_reset = devm_reset_control_get(dev, "ahb");
> + res->ahb_reset = devm_reset_control_get_exclusive(dev, "ahb");
> if (IS_ERR(res->ahb_reset))
> return PTR_ERR(res->ahb_reset);
>
> - res->por_reset = devm_reset_control_get(dev, "por");
> + res->por_reset = devm_reset_control_get_exclusive(dev, "por");
> if (IS_ERR(res->por_reset))
> return PTR_ERR(res->por_reset);
>
> - res->phy_reset = devm_reset_control_get(dev, "phy");
> + res->phy_reset = devm_reset_control_get_exclusive(dev, "phy");
> return PTR_ERR_OR_ZERO(res->phy_reset);
> }
>
> @@ -393,7 +393,7 @@ static int qcom_pcie_get_resources_v1(struct qcom_pcie *pcie)
> if (IS_ERR(res->slave_bus))
> return PTR_ERR(res->slave_bus);
>
> - res->core = devm_reset_control_get(dev, "core");
> + res->core = devm_reset_control_get_exclusive(dev, "core");
> return PTR_ERR_OR_ZERO(res->core);
> }
>
> @@ -623,51 +623,55 @@ static int qcom_pcie_get_resources_v3(struct qcom_pcie *pcie)
> if (IS_ERR(res->slave_clk))
> return PTR_ERR(res->slave_clk);
>
> - res->axi_m_reset = devm_reset_control_get(dev, "axi_m");
> + res->axi_m_reset = devm_reset_control_get_exclusive(dev, "axi_m");
> if (IS_ERR(res->axi_m_reset))
> return PTR_ERR(res->axi_m_reset);
>
> - res->axi_s_reset = devm_reset_control_get(dev, "axi_s");
> + res->axi_s_reset = devm_reset_control_get_exclusive(dev, "axi_s");
> if (IS_ERR(res->axi_s_reset))
> return PTR_ERR(res->axi_s_reset);
>
> - res->pipe_reset = devm_reset_control_get(dev, "pipe");
> + res->pipe_reset = devm_reset_control_get_exclusive(dev, "pipe");
> if (IS_ERR(res->pipe_reset))
> return PTR_ERR(res->pipe_reset);
>
> - res->axi_m_vmid_reset = devm_reset_control_get(dev, "axi_m_vmid");
> + res->axi_m_vmid_reset = devm_reset_control_get_exclusive(dev,
> + "axi_m_vmid");
> if (IS_ERR(res->axi_m_vmid_reset))
> return PTR_ERR(res->axi_m_vmid_reset);
>
> - res->axi_s_xpu_reset = devm_reset_control_get(dev, "axi_s_xpu");
> + res->axi_s_xpu_reset = devm_reset_control_get_exclusive(dev,
> + "axi_s_xpu");
> if (IS_ERR(res->axi_s_xpu_reset))
> return PTR_ERR(res->axi_s_xpu_reset);
>
> - res->parf_reset = devm_reset_control_get(dev, "parf");
> + res->parf_reset = devm_reset_control_get_exclusive(dev, "parf");
> if (IS_ERR(res->parf_reset))
> return PTR_ERR(res->parf_reset);
>
> - res->phy_reset = devm_reset_control_get(dev, "phy");
> + res->phy_reset = devm_reset_control_get_exclusive(dev, "phy");
> if (IS_ERR(res->phy_reset))
> return PTR_ERR(res->phy_reset);
>
> - res->axi_m_sticky_reset = devm_reset_control_get(dev, "axi_m_sticky");
> + res->axi_m_sticky_reset = devm_reset_control_get_exclusive(dev,
> + "axi_m_sticky");
> if (IS_ERR(res->axi_m_sticky_reset))
> return PTR_ERR(res->axi_m_sticky_reset);
>
> - res->pipe_sticky_reset = devm_reset_control_get(dev, "pipe_sticky");
> + res->pipe_sticky_reset = devm_reset_control_get_exclusive(dev,
> + "pipe_sticky");
> if (IS_ERR(res->pipe_sticky_reset))
> return PTR_ERR(res->pipe_sticky_reset);
>
> - res->pwr_reset = devm_reset_control_get(dev, "pwr");
> + res->pwr_reset = devm_reset_control_get_exclusive(dev, "pwr");
> if (IS_ERR(res->pwr_reset))
> return PTR_ERR(res->pwr_reset);
>
> - res->ahb_reset = devm_reset_control_get(dev, "ahb");
> + res->ahb_reset = devm_reset_control_get_exclusive(dev, "ahb");
> if (IS_ERR(res->ahb_reset))
> return PTR_ERR(res->ahb_reset);
>
> - res->phy_ahb_reset = devm_reset_control_get(dev, "phy_ahb");
> + res->phy_ahb_reset = devm_reset_control_get_exclusive(dev, "phy_ahb");
> if (IS_ERR(res->phy_ahb_reset))
> return PTR_ERR(res->phy_ahb_reset);
>
> --
> 2.11.0
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 052/102] PCI: imx6: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 052/102] PCI: imx6: " Philipp Zabel
@ 2017-08-03 21:41 ` Bjorn Helgaas
0 siblings, 0 replies; 13+ messages in thread
From: Bjorn Helgaas @ 2017-08-03 21:41 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, Richard Zhu, Lucas Stach, Bjorn Helgaas, linux-pci
On Wed, Jul 19, 2017 at 05:25:56PM +0200, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Richard Zhu <hongxing.zhu@nxp.com>
> Cc: Lucas Stach <l.stach@pengutronix.de>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Applied to pci/host-imx6 for v4.14, thanks!
Richard, Lucas, holler if you see any issues.
> ---
> drivers/pci/dwc/pci-imx6.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pci/dwc/pci-imx6.c b/drivers/pci/dwc/pci-imx6.c
> index bf5c3616e3448..5a2ece394ad39 100644
> --- a/drivers/pci/dwc/pci-imx6.c
> +++ b/drivers/pci/dwc/pci-imx6.c
> @@ -778,14 +778,15 @@ static int imx6_pcie_probe(struct platform_device *pdev)
> }
> break;
> case IMX7D:
> - imx6_pcie->pciephy_reset = devm_reset_control_get(dev,
> - "pciephy");
> + imx6_pcie->pciephy_reset = devm_reset_control_get_exclusive(dev,
> + "pciephy");
> if (IS_ERR(imx6_pcie->pciephy_reset)) {
> dev_err(dev, "Failed to get PCIEPHY reset control\n");
> return PTR_ERR(imx6_pcie->pciephy_reset);
> }
>
> - imx6_pcie->apps_reset = devm_reset_control_get(dev, "apps");
> + imx6_pcie->apps_reset = devm_reset_control_get_exclusive(dev,
> + "apps");
> if (IS_ERR(imx6_pcie->apps_reset)) {
> dev_err(dev, "Failed to get PCIE APPS reset control\n");
> return PTR_ERR(imx6_pcie->apps_reset);
> --
> 2.11.0
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 053/102] PCI: tegra: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 053/102] PCI: tegra: " Philipp Zabel
@ 2017-08-03 21:42 ` Bjorn Helgaas
0 siblings, 0 replies; 13+ messages in thread
From: Bjorn Helgaas @ 2017-08-03 21:42 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, Thierry Reding, Bjorn Helgaas, Jonathan Hunter,
linux-tegra, linux-pci
On Wed, Jul 19, 2017 at 05:25:57PM +0200, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Jonathan Hunter <jonathanh@nvidia.com>
> Cc: linux-tegra@vger.kernel.org
> Cc: linux-pci@vger.kernel.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Applied to pci/host-tegra for v4.14, thanks!
Tegra folks, holler if you see any issues.
> ---
> drivers/pci/host/pci-tegra.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c
> index b3722b7709df8..a64bd0a191767 100644
> --- a/drivers/pci/host/pci-tegra.c
> +++ b/drivers/pci/host/pci-tegra.c
> @@ -1147,15 +1147,15 @@ static int tegra_pcie_resets_get(struct tegra_pcie *pcie)
> {
> struct device *dev = pcie->dev;
>
> - pcie->pex_rst = devm_reset_control_get(dev, "pex");
> + pcie->pex_rst = devm_reset_control_get_exclusive(dev, "pex");
> if (IS_ERR(pcie->pex_rst))
> return PTR_ERR(pcie->pex_rst);
>
> - pcie->afi_rst = devm_reset_control_get(dev, "afi");
> + pcie->afi_rst = devm_reset_control_get_exclusive(dev, "afi");
> if (IS_ERR(pcie->afi_rst))
> return PTR_ERR(pcie->afi_rst);
>
> - pcie->pcie_xrst = devm_reset_control_get(dev, "pcie_x");
> + pcie->pcie_xrst = devm_reset_control_get_exclusive(dev, "pcie_x");
> if (IS_ERR(pcie->pcie_xrst))
> return PTR_ERR(pcie->pcie_xrst);
>
> --
> 2.11.0
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 054/102] PCI: rockchip: explicitly request exclusive reset control
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
2017-07-22 13:12 ` Shawn Lin
2017-08-03 0:31 ` Shawn Lin
@ 2017-08-03 21:43 ` Bjorn Helgaas
2 siblings, 0 replies; 13+ messages in thread
From: Bjorn Helgaas @ 2017-08-03 21:43 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, Shawn Lin, Bjorn Helgaas, Heiko Stuebner, linux-pci,
linux-rockchip
On Wed, Jul 19, 2017 at 05:25:58PM +0200, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Shawn Lin <shawn.lin@rock-chips.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Heiko Stuebner <heiko@sntech.de>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-rockchip@lists.infradead.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Applied with Shawn's ack to pci/host-rockchip for v4.14, thanks!
> ---
> drivers/pci/host/pcie-rockchip.c | 15 ++++++++-------
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c
> index 7bb9870f6d8ce..e50d6f5a81f4b 100644
> --- a/drivers/pci/host/pcie-rockchip.c
> +++ b/drivers/pci/host/pcie-rockchip.c
> @@ -903,49 +903,50 @@ static int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip)
> if (rockchip->link_gen < 0 || rockchip->link_gen > 2)
> rockchip->link_gen = 2;
>
> - rockchip->core_rst = devm_reset_control_get(dev, "core");
> + rockchip->core_rst = devm_reset_control_get_exclusive(dev, "core");
> if (IS_ERR(rockchip->core_rst)) {
> if (PTR_ERR(rockchip->core_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing core reset property in node\n");
> return PTR_ERR(rockchip->core_rst);
> }
>
> - rockchip->mgmt_rst = devm_reset_control_get(dev, "mgmt");
> + rockchip->mgmt_rst = devm_reset_control_get_exclusive(dev, "mgmt");
> if (IS_ERR(rockchip->mgmt_rst)) {
> if (PTR_ERR(rockchip->mgmt_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt reset property in node\n");
> return PTR_ERR(rockchip->mgmt_rst);
> }
>
> - rockchip->mgmt_sticky_rst = devm_reset_control_get(dev, "mgmt-sticky");
> + rockchip->mgmt_sticky_rst = devm_reset_control_get_exclusive(dev,
> + "mgmt-sticky");
> if (IS_ERR(rockchip->mgmt_sticky_rst)) {
> if (PTR_ERR(rockchip->mgmt_sticky_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing mgmt-sticky reset property in node\n");
> return PTR_ERR(rockchip->mgmt_sticky_rst);
> }
>
> - rockchip->pipe_rst = devm_reset_control_get(dev, "pipe");
> + rockchip->pipe_rst = devm_reset_control_get_exclusive(dev, "pipe");
> if (IS_ERR(rockchip->pipe_rst)) {
> if (PTR_ERR(rockchip->pipe_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pipe reset property in node\n");
> return PTR_ERR(rockchip->pipe_rst);
> }
>
> - rockchip->pm_rst = devm_reset_control_get(dev, "pm");
> + rockchip->pm_rst = devm_reset_control_get_exclusive(dev, "pm");
> if (IS_ERR(rockchip->pm_rst)) {
> if (PTR_ERR(rockchip->pm_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pm reset property in node\n");
> return PTR_ERR(rockchip->pm_rst);
> }
>
> - rockchip->pclk_rst = devm_reset_control_get(dev, "pclk");
> + rockchip->pclk_rst = devm_reset_control_get_exclusive(dev, "pclk");
> if (IS_ERR(rockchip->pclk_rst)) {
> if (PTR_ERR(rockchip->pclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing pclk reset property in node\n");
> return PTR_ERR(rockchip->pclk_rst);
> }
>
> - rockchip->aclk_rst = devm_reset_control_get(dev, "aclk");
> + rockchip->aclk_rst = devm_reset_control_get_exclusive(dev, "aclk");
> if (IS_ERR(rockchip->aclk_rst)) {
> if (PTR_ERR(rockchip->aclk_rst) != -EPROBE_DEFER)
> dev_err(dev, "missing aclk reset property in node\n");
> --
> 2.11.0
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 056/102] PCI: mediatek: explicitly request exclusive reset control
2017-07-19 15:26 ` [PATCH 056/102] PCI: mediatek: " Philipp Zabel
@ 2017-08-03 21:45 ` Bjorn Helgaas
0 siblings, 0 replies; 13+ messages in thread
From: Bjorn Helgaas @ 2017-08-03 21:45 UTC (permalink / raw)
To: Philipp Zabel
Cc: linux-kernel, Ryder Lee, Bjorn Helgaas, Matthias Brugger,
linux-pci, linux-mediatek
On Wed, Jul 19, 2017 at 05:26:00PM +0200, Philipp Zabel wrote:
> Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting
> reset lines") started to transition the reset control request API calls
> to explicitly state whether the driver needs exclusive or shared reset
> control behavior. Convert all drivers requesting exclusive resets to the
> explicit API call so the temporary transition helpers can be removed.
>
> No functional changes.
>
> Cc: Ryder Lee <ryder.lee@mediatek.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Matthias Brugger <matthias.bgg@gmail.com>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-mediatek@lists.infradead.org
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Applied to pci/host-mediatek for v4.14, thanks!
Ryder, Matthias, holler if you see any issues.
> ---
> drivers/pci/host/pcie-mediatek.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pci/host/pcie-mediatek.c b/drivers/pci/host/pcie-mediatek.c
> index 5a9d8589ea0bd..9c9f89bcf24ce 100644
> --- a/drivers/pci/host/pcie-mediatek.c
> +++ b/drivers/pci/host/pcie-mediatek.c
> @@ -303,7 +303,7 @@ static int mtk_pcie_parse_ports(struct mtk_pcie *pcie,
> }
>
> snprintf(name, sizeof(name), "pcie-rst%d", index);
> - port->reset = devm_reset_control_get_optional(dev, name);
> + port->reset = devm_reset_control_get_optional_exclusive(dev, name);
> if (PTR_ERR(port->reset) == -EPROBE_DEFER)
> return PTR_ERR(port->reset);
>
> --
> 2.11.0
>
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2017-08-03 21:45 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20170719152646.25903-1-p.zabel@pengutronix.de>
2017-07-19 15:25 ` [PATCH 051/102] PCI: dwc: pcie-qcom: explicitly request exclusive reset control Philipp Zabel
2017-08-03 21:40 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 052/102] PCI: imx6: " Philipp Zabel
2017-08-03 21:41 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 053/102] PCI: tegra: " Philipp Zabel
2017-08-03 21:42 ` Bjorn Helgaas
2017-07-19 15:25 ` [PATCH 054/102] PCI: rockchip: " Philipp Zabel
2017-07-22 13:12 ` Shawn Lin
2017-07-24 8:35 ` Philipp Zabel
2017-08-03 0:31 ` Shawn Lin
2017-08-03 21:43 ` Bjorn Helgaas
2017-07-19 15:26 ` [PATCH 056/102] PCI: mediatek: " Philipp Zabel
2017-08-03 21:45 ` Bjorn Helgaas
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).