Commit 475acef9 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'reset-fixes-for-v5.18' of git://git.pengutronix.de/pza/linux into arm/fixes

Reset controller fixes for v5.18

Document the deprecated 'hisi,rst-syscon' device tree property for
hisilicon,hi3660-reset, add an error check to reset deassertion in
reset-rzg2l-usbphy-ctrl, restore transfer error handling in Tegra
reset-bpmp, and document the optional 'resets' device tree property
for socionext,uniphier-reset.

* tag 'reset-fixes-for-v5.18' of git://git.pengutronix.de/pza/linux:
  dt-bindings: reset: Add parent "resets" property as optional
  reset: tegra-bpmp: Restore Handle errors in BPMP response
  reset: renesas: Check return value of reset_control_deassert()
  dt-bindings: reset: document deprecated HiSilicon property

Link: https://lore.kernel.org/r/20220406153337.1265414-1-p.zabel@pengutronix.deSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents bc2fb47d 03cb6646
...@@ -24,6 +24,11 @@ properties: ...@@ -24,6 +24,11 @@ properties:
- const: hisilicon,hi3670-reset - const: hisilicon,hi3670-reset
- const: hisilicon,hi3660-reset - const: hisilicon,hi3660-reset
hisi,rst-syscon:
deprecated: true
description: phandle of the reset's syscon, use hisilicon,rst-syscon instead
$ref: /schemas/types.yaml#/definitions/phandle
hisilicon,rst-syscon: hisilicon,rst-syscon:
description: phandle of the reset's syscon. description: phandle of the reset's syscon.
$ref: /schemas/types.yaml#/definitions/phandle $ref: /schemas/types.yaml#/definitions/phandle
......
...@@ -55,6 +55,9 @@ properties: ...@@ -55,6 +55,9 @@ properties:
"#reset-cells": "#reset-cells":
const: 1 const: 1
resets:
maxItems: 1
additionalProperties: false additionalProperties: false
required: required:
......
...@@ -121,7 +121,9 @@ static int rzg2l_usbphy_ctrl_probe(struct platform_device *pdev) ...@@ -121,7 +121,9 @@ static int rzg2l_usbphy_ctrl_probe(struct platform_device *pdev)
return dev_err_probe(dev, PTR_ERR(priv->rstc), return dev_err_probe(dev, PTR_ERR(priv->rstc),
"failed to get reset\n"); "failed to get reset\n");
reset_control_deassert(priv->rstc); error = reset_control_deassert(priv->rstc);
if (error)
return error;
priv->rcdev.ops = &rzg2l_usbphy_ctrl_reset_ops; priv->rcdev.ops = &rzg2l_usbphy_ctrl_reset_ops;
priv->rcdev.of_reset_n_cells = 1; priv->rcdev.of_reset_n_cells = 1;
......
...@@ -20,6 +20,7 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc, ...@@ -20,6 +20,7 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc,
struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc); struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc);
struct mrq_reset_request request; struct mrq_reset_request request;
struct tegra_bpmp_message msg; struct tegra_bpmp_message msg;
int err;
memset(&request, 0, sizeof(request)); memset(&request, 0, sizeof(request));
request.cmd = command; request.cmd = command;
...@@ -30,7 +31,13 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc, ...@@ -30,7 +31,13 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc,
msg.tx.data = &request; msg.tx.data = &request;
msg.tx.size = sizeof(request); msg.tx.size = sizeof(request);
return tegra_bpmp_transfer(bpmp, &msg); err = tegra_bpmp_transfer(bpmp, &msg);
if (err)
return err;
if (msg.rx.ret)
return -EINVAL;
return 0;
} }
static int tegra_bpmp_reset_module(struct reset_controller_dev *rstc, static int tegra_bpmp_reset_module(struct reset_controller_dev *rstc,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment